Not in the top 1,000 by GitHub stars
Houseofmvps/ultraship
"ULTRASHIP" Claude Code plugin — 39 skills, 33 tools, 11 agents for ship-ready workflows: planning, review, pentesting, safety guardrails, canary monitoring, SEO/AI-readiness check, penetration testing, code review, competitive analysis, incident response. 1 dependency. 180 tests. MIT.
History
Review weekly changes to SKILL.md before updating. Dates mark the weeks in which we observed each version; checks apply to the recorded commits.
View weekly changes
skills/a11y/SKILL.md
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Network or broad shell
First observation → ed232cba0004
No earlier version was observed for comparison.
skills/architecture/SKILL.md
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Network or broad shell
First observation → ed232cba0004
No earlier version was observed for comparison.
skills/brainstorming/SKILL.md
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Network or broad shell
First observation → ed232cba0004
No earlier version was observed for comparison.
skills/canary/SKILL.md
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Network or broad shell
First observation → ed232cba0004
No earlier version was observed for comparison.
skills/clone-patterns/SKILL.md
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Network or broad shell
First observation → ed232cba0004
No earlier version was observed for comparison.
skills/code-review/SKILL.md
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Instructions only
First observation → ed232cba0004
No earlier version was observed for comparison.
skills/compete/SKILL.md
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Network or broad shell
First observation → ed232cba0004
No earlier version was observed for comparison.
skills/cost/SKILL.md
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Network or broad shell
First observation → ed232cba0004
No earlier version was observed for comparison.
skills/demo/SKILL.md
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Network or broad shell
First observation → ed232cba0004
No earlier version was observed for comparison.
skills/deploy/SKILL.md
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Local scripts
First observation → ed232cba0004
No earlier version was observed for comparison.
skills/dispatching-parallel-agents/SKILL.md
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Instructions only
First observation → ed232cba0004
No earlier version was observed for comparison.
skills/evals/SKILL.md
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Network or broad shell
First observation → ed232cba0004
No earlier version was observed for comparison.
skills/executing-plans/SKILL.md
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Instructions only
First observation → ed232cba0004
No earlier version was observed for comparison.
skills/finishing-a-development-branch/SKILL.md
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Instructions only
First observation → ed232cba0004
No earlier version was observed for comparison.
skills/frontend-design/SKILL.md
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Instructions only
First observation → ed232cba0004
No earlier version was observed for comparison.
skills/grow/SKILL.md
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Network or broad shell
First observation → ed232cba0004
No earlier version was observed for comparison.
skills/guard/SKILL.md
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Network or broad shell
First observation → ed232cba0004
No earlier version was observed for comparison.
skills/index-fix/SKILL.md
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Network or broad shell
First observation → ed232cba0004
No earlier version was observed for comparison.
skills/investigate/SKILL.md
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Local scripts
First observation → ed232cba0004
No earlier version was observed for comparison.
skills/launch/SKILL.md
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Local scripts
First observation → ed232cba0004
No earlier version was observed for comparison.
skills/learn/SKILL.md
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Network or broad shell
First observation → ed232cba0004
No earlier version was observed for comparison.
skills/onboard/SKILL.md
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Network or broad shell
First observation → ed232cba0004
No earlier version was observed for comparison.
skills/pentest/SKILL.md
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Network or broad shell
First observation → ed232cba0004
No earlier version was observed for comparison.
skills/perf-audit/SKILL.md
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Network or broad shell
First observation → ed232cba0004
No earlier version was observed for comparison.
skills/receiving-code-review/SKILL.md
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Instructions only
First observation → ed232cba0004
No earlier version was observed for comparison.
skills/release/SKILL.md
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Instructions only
First observation → ed232cba0004
No earlier version was observed for comparison.
skills/requesting-code-review/SKILL.md
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Instructions only
First observation → ed232cba0004
No earlier version was observed for comparison.
skills/rescue/SKILL.md
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Local scripts
First observation → ed232cba0004
No earlier version was observed for comparison.
skills/retro/SKILL.md
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Network or broad shell
First observation → ed232cba0004
No earlier version was observed for comparison.
skills/revise-claude-md/SKILL.md
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Network or broad shell
First observation → ed232cba0004
No earlier version was observed for comparison.
skills/security-audit/SKILL.md
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Network or broad shell
First observation → ed232cba0004
No earlier version was observed for comparison.
skills/seo-audit/SKILL.md
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Network or broad shell
First observation → ed232cba0004
No earlier version was observed for comparison.
skills/seo-strategy/SKILL.md
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Network or broad shell
First observation → ed232cba0004
No earlier version was observed for comparison.
skills/ship-gate/SKILL.md
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Network or broad shell
First observation → ed232cba0004
No earlier version was observed for comparison.
skills/sprint/SKILL.md
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Instructions only
First observation → ed232cba0004
No earlier version was observed for comparison.
skills/staying-current/SKILL.md
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Network or broad shell
First observation → ed232cba0004
No earlier version was observed for comparison.
skills/subagent-driven-development/SKILL.md
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Instructions only
First observation → ed232cba0004
No earlier version was observed for comparison.
skills/systematic-debugging/SKILL.md
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Local scripts
First observation → ed232cba0004
No earlier version was observed for comparison.
skills/test-driven-development/SKILL.md
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Instructions only
First observation → ed232cba0004
No earlier version was observed for comparison.
skills/using-git-worktrees/SKILL.md
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Instructions only
First observation → ed232cba0004
No earlier version was observed for comparison.
skills/using-ultraship/SKILL.md
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Instructions only
First observation → ed232cba0004
No earlier version was observed for comparison.
skills/verification-before-completion/SKILL.md
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Instructions only
First observation → ed232cba0004
No earlier version was observed for comparison.
skills/visual-diff/SKILL.md
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Instructions only
First observation → ed232cba0004
No earlier version was observed for comparison.
skills/writing-plans/SKILL.md
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Instructions only
First observation → ed232cba0004
No earlier version was observed for comparison.
skills/writing-skills/SKILL.md
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Local scripts
First observation → ed232cba0004
No earlier version was observed for comparison.
Verified commit ed232cba00040a3a8294aff08d14a0053cb8a0ae
git clone --filter=blob:none --no-checkout https://github.com/Houseofmvps/ultraship.git .hotskills/houseofmvps-ultraship && git -C .hotskills/houseofmvps-ultraship checkout --detach ed232cba00040a3a8294aff08d14a0053cb8a0ae
# Copy each selected skill directory from .hotskills/houseofmvps-ultraship into .claude/skills/<skill-name>/git clone --filter=blob:none --no-checkout https://github.com/Houseofmvps/ultraship.git .hotskills/houseofmvps-ultraship && git -C .hotskills/houseofmvps-ultraship checkout --detach ed232cba00040a3a8294aff08d14a0053cb8a0ae
# Copy each selected skill directory from .hotskills/houseofmvps-ultraship into .gemini/skills/<skill-name>/Heat
3.4- Star growth, last 7 daysNot available
- Star growth, last 24 hoursNot available
- Rank movement, last 7 daysNot available
- Commits, last 30 daysNot available
- Accounts asking about it through MCP, last 7 daysNot available
- Hot votes this weekNot available
Heat never changes the order by stars, and sponsorship never touches it. How heat works
Stars over time
30-day change not yet available: not enough history.
Individual skills in this repository
- a11y
skills/a11y - architecture
skills/architecture - brainstorming
skills/brainstorming - canary
skills/canary - clone-patterns
skills/clone-patterns - code-review
skills/code-review - compete
skills/compete - cost
skills/cost - demo
skills/demo - deploy
skills/deploy - dispatching-parallel-agents
skills/dispatching-parallel-agents - evals
skills/evals - executing-plans
skills/executing-plans - finishing-a-development-branch
skills/finishing-a-development-branch - frontend-design
skills/frontend-design - grow
skills/grow - guard
skills/guard - index-fix
skills/index-fix - investigate
skills/investigate - launch
skills/launch - learn
skills/learn - onboard
skills/onboard - pentest
skills/pentest - perf-audit
skills/perf-audit - receiving-code-review
skills/receiving-code-review - release
skills/release - requesting-code-review
skills/requesting-code-review - rescue
skills/rescue - retro
skills/retro - revise-claude-md
skills/revise-claude-md - security-audit
skills/security-audit - seo-audit
skills/seo-audit - seo-strategy
skills/seo-strategy - ship-gate
skills/ship-gate - sprint
skills/sprint - staying-current
skills/staying-current - subagent-driven-development
skills/subagent-driven-development - systematic-debugging
skills/systematic-debugging - test-driven-development
skills/test-driven-development - using-git-worktrees
skills/using-git-worktrees - using-ultraship
skills/using-ultraship - verification-before-completion
skills/verification-before-completion - visual-diff
skills/visual-diff - writing-plans
skills/writing-plans - writing-skills
skills/writing-skills
How it works
a11y
When your agent uses it
Accessibility audit + auto-fix (WCAG 2.2 A/AA). Scans built/static HTML for screen-reader, keyboard, and structure failures, fixes the deterministic ones, and escalates to a rendered scan for contrast and focus. Use when the user wants to check or improve accessibility, fix WCAG issues, or pass an a11y review.
What it loads into context
Frontmatter
121 tokensAlways available to the agent
SKILL.md
1,264 tokensWhen the skill is activated
Reference documents
0 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Process
- Key Principles
Scripts executed separately
../../tools/a11y-scanner.mjs../../tools/audit-history.mjs../../tools/audit-history.mjs
Files
../../.claude-plugin/marketplace.jsonasset1,727 bytes../../.claude-plugin/plugin.jsonasset2,308 bytes../../hooks/hooks.jsonasset952 bytes../../hooks/hooks.jsonasset952 bytes../../hooks/hooks.jsonasset952 bytes../../hooks/hooks.jsonasset952 bytesSKILL.mdcore4,935 bytesSKILL.mdcore4,935 bytesSKILL.mdcore4,935 bytesSKILL.mdcore4,935 bytesSKILL.mdcore4,935 bytes../../tools/a11y-scanner.mjsruns15,250 bytes../../tools/audit-history.mjsruns6,372 bytes../../tools/audit-history.mjsruns6,372 bytes
Read SKILL.md
# Accessibility Audit + Auto-Fix (WCAG 2.2)
AI builders ship accessibility violations by default — missing alt text, unlabeled inputs, icon-only buttons, no `lang`, broken heading order. These are legally consequential (ADA, EU Accessibility Act) and most are deterministically detectable and fixable. This skill finds them AND fixes them.
## Process
### Phase 1: Scan
Run the static scanner on the project (point it at built/exported HTML, e.g. `dist/`, `build/`, `out/`, `.next/`, or `public/`):
```bash
node ${CLAUDE_PLUGIN_ROOT}/tools/a11y-scanner.mjs <project-directory>
```
View the complete source on GitHubarchitecture
When your agent uses it
Living Architecture Map — auto-generate Mermaid diagrams of your codebase. Use when user wants to visualize architecture, understand code structure, generate diagrams, or document system design.
What it loads into context
Frontmatter
54 tokensAlways available to the agent
SKILL.md
600 tokensWhen the skill is activated
Reference documents
0 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Process
- Keeping Diagrams Updated
- Key Principle
Scripts executed separately
../../tools/architecture-mapper.mjs
Files
SKILL.mdcore2,839 bytesSKILL.mdcore2,839 bytes../../tools/architecture-mapper.mjsruns15,097 bytes
Read SKILL.md
# Living Architecture Map
Auto-generates and maintains architecture diagrams from your actual code. Always up-to-date.
## Process
### Phase 1: Scan
```bash
node ${CLAUDE_PLUGIN_ROOT}/tools/architecture-mapper.mjs <project-directory>
```
Parse the JSON output for architecture data and diagrams.
View the complete source on GitHubbrainstorming
When your agent uses it
You MUST use this before any creative work - creating features, building components, adding functionality, or modifying behavior. Explores user intent, requirements and design before implementation.
What it loads into context
Frontmatter
50 tokensAlways available to the agent
SKILL.md
2,556 tokensWhen the skill is activated
Reference documents
3,197 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Anti-Pattern: "This Is Too Simple To Need A Design"
- Checklist
- Process Flow
- The Process
- After the Design
- Key Principles
- Visual Companion
Scripts executed separately
scripts/helper.jsscripts/server.cjsscripts/start-server.shscripts/stop-server.sh
Files
SKILL.mdcore11,968 bytesscripts/frame-template.htmlasset7,703 bytesscripts/helper.jsruns2,707 bytesscripts/server.cjsruns10,532 bytesscripts/start-server.shruns4,730 bytesscripts/stop-server.shruns1,277 bytesspec-document-reviewer-prompt.mddoc1,746 bytesvisual-companion.mddoc11,884 bytes
Read SKILL.md
# Brainstorming Ideas Into Designs
Help turn ideas into fully formed designs and specs through natural collaborative dialogue.
Start by understanding the current project context, then ask questions one at a time to refine the idea. Once you understand what you're building, present the design and get user approval.
<HARD-GATE>
Do NOT invoke any implementation skill, write any code, scaffold any project, or take any implementation action until you have presented a design and the user has approved it. This applies to EVERY project regardless of perceived simplicity.
</HARD-GATE>
## Anti-Pattern: "This Is Too Simple To Need A Design"
Every project goes through this process. A todo list, a single-function utility, a config change — all of them. "Simple" projects are where unexamined assumptions cause the most wasted work. The design can be short (a few sentences for truly simple projects), but you MUST present it and get approval.
View the complete source on GitHubcanary
When your agent uses it
Post-deploy canary monitoring — checks site health, detects regressions, monitors for errors after deployment. Use after deploying to verify production is healthy.
What it loads into context
Frontmatter
54 tokensAlways available to the agent
SKILL.md
980 tokensWhen the skill is activated
Reference documents
0 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Process
- Continuous Monitoring Loop
- Integration with Other Skills
- Playwright Browser Checks (Optional)
Scripts executed separately
../../tools/canary-monitor.mjs
Files
SKILL.mdcore4,302 bytesSKILL.mdcore4,302 bytesSKILL.mdcore4,302 bytesSKILL.mdcore4,302 bytes../../tools/canary-monitor.mjsruns8,916 bytes
Read SKILL.md
# Post-Deploy Canary Monitor
After every deploy, canary monitoring verifies your production site is healthy. It checks HTTP status, response time, error patterns, and compares against a baseline to detect regressions.
**Announce at start:** "I'm running post-deploy canary monitoring."
## Process
### Step 1: Run Canary Checks
```bash
node ${CLAUDE_PLUGIN_ROOT}/tools/canary-monitor.mjs <production-url> --checks 3 --interval 2
```
View the complete source on GitHubclone-patterns
When your agent uses it
Learn From the Best — analyze patterns from any codebase and apply them to yours. Use when user wants to adopt best practices from another repo, compare code quality, or learn how top projects are structured.
What it loads into context
Frontmatter
71 tokensAlways available to the agent
SKILL.md
626 tokensWhen the skill is activated
Reference documents
0 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Process
- Key Principle
Scripts executed separately
../../tools/pattern-analyzer.mjs
Files
SKILL.mdcore2,742 bytesSKILL.mdcore2,742 bytesSKILL.mdcore2,742 bytesSKILL.mdcore2,742 bytesSKILL.mdcore2,742 bytesSKILL.mdcore2,742 bytesSKILL.mdcore2,742 bytes../../tools/pattern-analyzer.mjsruns14,622 bytes
Read SKILL.md
# Learn From the Best
Analyze any codebase's patterns and apply the best ones to your project.
## Process
### Phase 1: Analyze Source
Ask for the source project directory (must be cloned locally):
- "Which repo do you want to learn from? Provide the local path."
```bash
node ${CLAUDE_PLUGIN_ROOT}/tools/pattern-analyzer.mjs <source-directory> --compare=<your-project-directory>
```View the complete source on GitHubcode-review
When your agent uses it
Code review with principal-engineer-level depth. Reviews for correctness, performance, security, maintainability, and architecture. Use when completing tasks, reviewing PRs, or before merging.
What it loads into context
Frontmatter
75 tokensAlways available to the agent
SKILL.md
1,398 tokensWhen the skill is activated
Reference documents
0 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Review Dimensions
- Confidence Scoring
- Output Format for /ship
- Review Checklist (use mentally, don't output)
- Key Principles
Files
SKILL.mdcore5,983 bytes
Read SKILL.md
# Code Review
Review code the way a principal engineer would — not just "does it work?" but "will this cause problems at 3am?"
## Review Dimensions
Every review should evaluate these dimensions, in order of importance:
> **Use an LSP if one is connected.** If LSP tools are available (check your tools for a language server — TypeScript, Pyright, gopls, rust-analyzer), use them instead of grep-guessing. `find references` on a changed function tells you the real blast radius; `go to definition` confirms a call signature actually matches; rename/diagnostics surface type errors the eye misses. A review that verifies call sites with an LSP catches breakage that a text-only review ships. If no LSP is connected, fall back to Grep/Glob and say so.
### 1. Correctness
The code must do what it claims to do.
View the complete source on GitHubcompete
When your agent uses it
Competitive X-Ray — analyze any competitor URL vs your site. Use when user wants to compare their site against a competitor, benchmark performance, or understand competitive positioning.
What it loads into context
Frontmatter
59 tokensAlways available to the agent
SKILL.md
1,012 tokensWhen the skill is activated
Reference documents
0 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Process
- Key Principles
Scripts executed separately
../../tools/compete-analyzer.mjs
Files
SKILL.mdcore4,564 bytesSKILL.mdcore4,564 bytes../../tools/compete-analyzer.mjsruns17,212 bytes
Read SKILL.md
# Competitive X-Ray
Know what you're up against. Understand where you win, where you lose, and where the gaps are. This isn't just a technical comparison — it's a strategic assessment.
## Process
### Phase 1: Gather URLs
Ask the user for:
1. **Your site URL** (production URL)
2. **Competitor URL** (the site to compare against)
If the user provided both URLs already, skip asking.
View the complete source on GitHubcost
When your agent uses it
AI Build Cost Tracker — track how much AI is costing you per feature. Use when user wants to track AI spending, understand cost per feature, optimize AI usage, or budget their Claude/GPT costs.
What it loads into context
Frontmatter
59 tokensAlways available to the agent
SKILL.md
1,029 tokensWhen the skill is activated
Reference documents
0 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Process
- Logging Guide
- Key Principles
Scripts executed separately
../../tools/cost-tracker.mjs
Files
SKILL.mdcore4,306 bytesSKILL.mdcore4,306 bytesSKILL.mdcore4,306 bytes../../tools/cost-tracker.mjsruns7,769 bytes
Read SKILL.md
# AI Build Cost Tracker
Know exactly what each feature costs to build with AI. Budget smarter, spend less.
## Process
### Phase 1: Show Current State
```bash
node ${CLAUDE_PLUGIN_ROOT}/tools/cost-tracker.mjs <project-directory> show
```
Parse the JSON output for cost history and summary.
View the complete source on GitHubdemo
When your agent uses it
Demo-Ready Mode — prepare your app for demos, screenshots, and presentations. Use when user wants to demo their app, take screenshots, prepare for a presentation, or clean up dev artifacts.
What it loads into context
Frontmatter
59 tokensAlways available to the agent
SKILL.md
764 tokensWhen the skill is activated
Reference documents
0 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Process
- Key Principle
Scripts executed separately
../../tools/demo-prep.mjs
Files
SKILL.mdcore3,228 bytesSKILL.mdcore3,228 bytesSKILL.mdcore3,228 bytes../../tools/demo-prep.mjsruns13,638 bytes
Read SKILL.md
# Demo-Ready Mode
One command to make your app demo-ready. Clean up dev artifacts, check visual polish, generate a walkthrough script.
## Process
### Phase 1: Scan
```bash
node ${CLAUDE_PLUGIN_ROOT}/tools/demo-prep.mjs <project-directory>
```
Parse the JSON output for demo readiness score and issues.
View the complete source on GitHubdeploy
When your agent uses it
Pre-flight checks then deploy. Validates env vars, migrations, bundle size, runs /ship audit, then deploys via git push or platform CLI.
What it loads into context
Frontmatter
44 tokensAlways available to the agent
SKILL.md
3,721 tokensWhen the skill is activated
Reference documents
0 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Process
- Deploy Checklist for Different Stages
- Key Principles
Scripts executed separately
../../tools/api-smoke-test.mjs../../tools/audit-history.mjs../../tools/audit-history.mjs../../tools/bundle-tracker.mjs../../tools/env-validator.mjs../../tools/health-check.mjs../../tools/migration-checker.mjs
Files
SKILL.mdcore16,542 bytesSKILL.mdcore16,542 bytesSKILL.mdcore16,542 bytesSKILL.mdcore16,542 bytesSKILL.mdcore16,542 bytesSKILL.mdcore16,542 bytesSKILL.mdcore16,542 bytesSKILL.mdcore16,542 bytesSKILL.mdcore16,542 bytesSKILL.mdcore16,542 bytesSKILL.mdcore16,542 bytesSKILL.mdcore16,542 bytesSKILL.mdcore16,542 bytesSKILL.mdcore16,542 bytesSKILL.mdcore16,542 bytesSKILL.mdcore16,542 bytesSKILL.mdcore16,542 bytesSKILL.mdcore16,542 bytes../../tools/api-smoke-test.mjsruns7,723 bytes../../tools/audit-history.mjsruns6,372 bytes../../tools/audit-history.mjsruns6,372 bytes../../tools/bundle-tracker.mjsruns10,369 bytes../../tools/env-validator.mjsruns5,018 bytes../../tools/health-check.mjsruns5,995 bytes../../tools/migration-checker.mjsruns8,202 bytes
Read SKILL.md
# Deploy
Full pre-flight validation → deploy pipeline. Closes the audit-to-production loop.
## Process
### Step 1: Detect Deploy Target
Check project for deploy configuration:
- `vercel.json` or `.vercel/` → Vercel (git push)
- `railway.toml` or `railway.json` → Railway
- `fly.toml` → Fly.io
- `wrangler.toml` → Cloudflare Workers
- `.github/workflows/` with deploy steps → CI/CD pipelineView the complete source on GitHubdispatching-parallel-agents
When your agent uses it
Use when facing 2+ independent tasks that can be worked on without shared state or sequential dependencies
What it loads into context
Frontmatter
30 tokensAlways available to the agent
SKILL.md
1,848 tokensWhen the skill is activated
Reference documents
0 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Overview
- When to Use
- The Pattern
- Agent Prompt Structure
- Common Mistakes
- When NOT to Use
- Real Example from Session
- Key Benefits
- Verification
- Real-World Impact
Files
SKILL.mdcore8,242 bytesSKILL.mdcore8,242 bytes
Read SKILL.md
# Dispatching Parallel Agents
## Overview
You delegate tasks to specialized agents with isolated context. By precisely crafting their instructions and context, you ensure they stay focused and succeed at their task. They should never inherit your session's context or history — you construct exactly what they need. This also preserves your own context for coordination work.
When you have multiple unrelated failures (different test files, different subsystems, different bugs), investigating them sequentially wastes time. Each investigation is independent and can happen in parallel.
**Core principle:** Dispatch one agent per independent problem domain. Let them work concurrently.
**Nesting and scale:** Subagents can spawn their own subagents up to 5 levels deep, so a dispatched agent owning a large domain can fan out helpers for its sub-steps rather than doing everything serially. When the work-list is large, repetitive, or unknown in size (every route, every package in a monorepo, every finding to verify), stop hand-dispatching and escalate to a **dynamic Workflow** — describe the task and include the word "workflow" so an orchestration script pipelines the items across background subagents with a verification stage built in. Rule of thumb: a few independent tasks → dispatch agents here; dozens of items or fan-out-then-verify → a Workflow.
## When to Use
View the complete source on GitHubevals
When your agent uses it
Build a regression + eval harness for AI-written code and AI features. Generates characterization tests that lock current behavior before a refactor, scaffolds a Promptfoo eval suite for chatbots/RAG/classifiers, and wires it into the ship-gate. Use when the user wants evals, regression tests for AI code, to stop AI features drifting, or to test an LLM feature.
What it loads into context
Frontmatter
107 tokensAlways available to the agent
SKILL.md
1,130 tokensWhen the skill is activated
Reference documents
0 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Process
- Key Principles
Scripts executed separately
../../tools/eval-scanner.mjs
Files
SKILL.mdcore4,585 bytesSKILL.mdcore4,585 bytesSKILL.mdcore4,585 bytes../../tools/eval-scanner.mjsruns6,849 bytes
Read SKILL.md
# Evals — Regression Harness for AI Code & AI Features
The defining 2026 problem: AI-written code passes review but **fails at runtime** (New Relic: 82% of teams had an AI-code production failure), and AI *features* (chatbots, RAG, classifiers) drift silently as prompts and models change. The fix the industry converged on: **the regression suite becomes the primary reviewer.** This skill builds that suite.
Two complementary layers:
- **Characterization tests** — lock the *current* behavior of code before an agent refactors it, so a regression is caught immediately.
- **LLM-feature evals** — assert that each AI feature still does its job (stays on-topic, no PII leak, correct format, acceptable latency/cost) on every change.
## Process
### Phase 1: Locate what needs evals
```bash
node ${CLAUDE_PLUGIN_ROOT}/tools/eval-scanner.mjs <project-directory>View the complete source on GitHubexecuting-plans
When your agent uses it
Use when you have a written implementation plan to execute in a separate session with review checkpoints
What it loads into context
Frontmatter
25 tokensAlways available to the agent
SKILL.md
536 tokensWhen the skill is activated
Reference documents
0 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Overview
- The Process
- When to Stop and Ask for Help
- When to Revisit Earlier Steps
- Remember
- Integration
Files
SKILL.mdcore2,449 bytes
Read SKILL.md
# Executing Plans
## Overview
Load plan, review critically, execute all tasks, report when complete.
**Announce at start:** "I'm using the executing-plans skill to implement this plan."
**Note:** Tell your human partner that Superpowers works much better with access to subagents. The quality of its work will be significantly higher if run on a platform with subagent support (such as Claude Code or Codex). If subagents are available, use ultraship:subagent-driven-development instead of this skill.
## The Process
### Step 1: Load and Review Plan
1. Read plan fileView the complete source on GitHubfinishing-a-development-branch
When your agent uses it
Use when implementation is complete, all tests pass, and you need to decide how to integrate the work - guides completion of development work by presenting structured options for merge, PR, or cleanup
What it loads into context
Frontmatter
47 tokensAlways available to the agent
SKILL.md
1,084 tokensWhen the skill is activated
Reference documents
0 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Overview
- The Process
- Quick Reference
- Common Mistakes
- Red Flags
- Integration
Files
SKILL.mdcore4,250 bytesSKILL.mdcore4,250 bytesSKILL.mdcore4,250 bytesSKILL.mdcore4,250 bytesSKILL.mdcore4,250 bytesSKILL.mdcore4,250 bytesSKILL.mdcore4,250 bytesSKILL.mdcore4,250 bytes
Read SKILL.md
# Finishing a Development Branch
## Overview
Guide completion of development work by presenting clear options and handling chosen workflow.
**Core principle:** Verify tests → Present options → Execute choice → Clean up.
**Announce at start:** "I'm using the finishing-a-development-branch skill to complete this work."
## The Process
### Step 1: Verify Tests
View the complete source on GitHubfrontend-design
When your agent uses it
Create distinctive, production-grade frontend interfaces with top-tier product design and UI/UX quality. Use this skill when the user asks to build web components, pages, or applications. Combines product thinking, UX discipline, and creative visual design.
What it loads into context
Frontmatter
92 tokensAlways available to the agent
SKILL.md
3,840 tokensWhen the skill is activated
Reference documents
0 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Product Design Thinking
- UX Design Discipline
- Visual Design — The Aesthetic Direction
- Frontend Aesthetics Guidelines
- Industry-Specific Design Rules
- Spacing & Layout System
- Page-Specific UX Patterns
- Design Quality Checklist
Files
SKILL.mdcore17,245 bytes
Read SKILL.md
This skill combines three disciplines: **product design** (does it solve the right problem?), **UX design** (can users accomplish their goals without friction?), and **visual design** (is it distinctive and polished?). All three must be present. Beautiful but unusable is a failure. Usable but ugly is a failure. Both beautiful and usable but solving the wrong problem is the worst failure.
The user provides frontend requirements: a component, page, application, or interface to build. They may include context about the purpose, audience, or technical constraints.
## Product Design Thinking
Before touching aesthetics, think like a product designer:
**1. User Intent**
- What is the user trying to accomplish on this page/component?
- What is the ONE primary action? (every screen has one — if you can't identify it, the design is confused)
- What information does the user need to make a decision? Show that, hide everything else.
**2. Information Hierarchy**View the complete source on GitHubgrow
When your agent uses it
Post-Ship Growth Intelligence — track how your shipped product is performing. Use when user wants to check growth metrics, SEO trajectory, uptime, deploy frequency, or overall project health over time.
What it loads into context
Frontmatter
64 tokensAlways available to the agent
SKILL.md
1,434 tokensWhen the skill is activated
Reference documents
0 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Process
- Key Principles
Scripts executed separately
../../tools/bing-webmaster.mjs../../tools/growth-tracker.mjs../../tools/gsc-client.mjs
Files
SKILL.mdcore5,768 bytesSKILL.mdcore5,768 bytesSKILL.mdcore5,768 bytesSKILL.mdcore5,768 bytes../../tools/bing-webmaster.mjsruns14,683 bytes../../tools/growth-tracker.mjsruns9,804 bytes../../tools/gsc-client.mjsruns9,799 bytes
Read SKILL.md
# Post-Ship Growth Intelligence
Most indie builders ship and forget. The ones who win ship and measure. This skill makes growth visible, trackable, and actionable — like having a growth-stage CTO and a marketing analyst looking at your dashboards every week.
## Process
### Phase 1: Collect Metrics
```bash
node ${CLAUDE_PLUGIN_ROOT}/tools/growth-tracker.mjs <project-directory> --url=<production-url> --save
```
Parse the JSON output for current snapshot and historical trends.
View the complete source on GitHubguard
When your agent uses it
Safety guardrails — blocks destructive commands (rm -rf, DROP TABLE, force-push, git reset --hard) and optionally restricts file edits to a specific directory. Use when working on critical systems or when you want extra protection.
What it loads into context
Frontmatter
70 tokensAlways available to the agent
SKILL.md
722 tokensWhen the skill is activated
Reference documents
0 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- What Guard Blocks
- How It Works
- Usage
- Integration with Other Skills
- Key Principles
Files
SKILL.mdcore3,178 bytes
Read SKILL.md
# Guard — Safety Guardrails
Guard protects you from accidental destructive actions by intercepting dangerous commands before they execute. It uses Claude Code's PreToolUse hooks to catch risky patterns in real-time.
**Announce at start:** "I'm activating Guard — destructive commands will be blocked until you explicitly approve them."
## What Guard Blocks
### Destructive Bash Commands
- `rm -rf` / `rm -r` on important directories
- `DROP TABLE` / `DROP DATABASE` / `TRUNCATE`
- `git push --force` / `git push -f` (to main/master)
- `git reset --hard`
- `git checkout .` / `git restore .` (discard all changes)View the complete source on GitHubindex-fix
When your agent uses it
Diagnose and fix non-indexed pages using GSC and Bing Webmaster data. Finds exactly why each page isn't indexed and applies the fix.
What it loads into context
Frontmatter
56 tokensAlways available to the agent
SKILL.md
2,090 tokensWhen the skill is activated
Reference documents
0 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Phase 1: Credential Check
- Phase 2: Index Coverage Overview
- Phase 3: Cross-Engine Comparison
- Phase 4: Diagnose Non-Indexed Pages
- Phase 5: Apply Fixes
- Phase 6: Resubmit for Indexing
- Phase 7: Auto-Fix and Resubmit
- Phase 8: Verification Plan
- Phase 9: Prevention
- Key Principles
- Rollback Plan
Scripts executed separately
../../tools/bing-webmaster.mjs../../tools/bing-webmaster.mjs../../tools/gsc-client.mjs../../tools/gsc-client.mjs../../tools/index-doctor.mjs../../tools/sitemap-generator.mjs
Files
SKILL.mdcore8,862 bytesSKILL.mdcore8,862 bytesSKILL.mdcore8,862 bytesSKILL.mdcore8,862 bytesSKILL.mdcore8,862 bytesSKILL.mdcore8,862 bytesSKILL.mdcore8,862 bytesSKILL.mdcore8,862 bytesSKILL.mdcore8,862 bytes../../tools/bing-webmaster.mjsruns14,683 bytes../../tools/bing-webmaster.mjsruns14,683 bytes../../tools/gsc-client.mjsruns9,799 bytes../../tools/gsc-client.mjsruns9,799 bytes../../tools/index-doctor.mjsruns28,552 bytes../../tools/sitemap-generator.mjsruns3,788 bytes
Read SKILL.md
# Index Fix — Get Every Page Indexed
Diagnose why pages aren't indexed in Google and Bing, fix the root causes, and resubmit for indexing. This skill uses real data from GSC URL Inspection API and Bing Webmaster Tools — no guessing.
**Goal: 100% index coverage for pages that SHOULD be indexed. Not every URL belongs in the index — staging pages, admin panels, thin pagination, and intentionally private content should stay excluded.**
## Phase 1: Credential Check
Verify data sources:
1. **GSC** (required): `ULTRASHIP_GSC_CREDENTIALS` or `ULTRASHIP_GSC_ACCESS_TOKEN`
2. **Bing** (recommended): `ULTRASHIP_BING_KEY`
If GSC is not configured, show setup guide and stop — GSC is required for URL inspection.
View the complete source on GitHubinvestigate
When your agent uses it
Root cause investigation — structured debugging with module freeze. No fixes without investigation. Use when encountering any bug, error, or unexpected behavior.
What it loads into context
Frontmatter
55 tokensAlways available to the agent
SKILL.md
1,190 tokensWhen the skill is activated
Reference documents
0 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- The Iron Law
- Process
- Red Flags
- Integration with Guard
- Relationship to Systematic Debugging
Scripts executed separately
../../tools/learnings-manager.mjs
Files
SKILL.mdcore5,481 bytesSKILL.mdcore5,481 bytesSKILL.mdcore5,481 bytesSKILL.mdcore5,481 bytes../../tools/learnings-manager.mjsruns8,763 bytes
Read SKILL.md
# Investigate — Root Cause Analysis
Investigation is the discipline of understanding a problem before fixing it. This skill enforces a strict protocol: **no fixes until the root cause is found.**
> **Enforced:** while this skill is active, `Edit`, `Write`, and `NotebookEdit` are removed via `disallowed-tools`. The no-fixes rule is a hard constraint here, not a request. Once you have found and stated the root cause, conclude the investigation — the fix happens as a separate step outside this skill.
**Announce at start:** "I'm using the investigate skill — no fixes until we find the root cause."
## The Iron Law
```
┌──────────────────────────────────────────────┐
│ NO FIXES WITHOUT ROOT CAUSE INVESTIGATION │
│ │View the complete source on GitHublaunch
When your agent uses it
Launch Day Autopilot — prepare everything for a product launch. Use when user wants to launch, go live, announce, or prepare for Product Hunt / Hacker News / social media launch.
What it loads into context
Frontmatter
45 tokensAlways available to the agent
SKILL.md
1,858 tokensWhen the skill is activated
Reference documents
0 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Process
- Key Principles
Scripts executed separately
../../tools/health-check.mjs../../tools/launch-prep.mjs
Files
SKILL.mdcore7,865 bytesSKILL.mdcore7,865 bytesSKILL.mdcore7,865 bytes../../tools/health-check.mjsruns5,995 bytes../../tools/launch-prep.mjsruns12,262 bytes
Read SKILL.md
# Launch Day Autopilot
A launch is not a deploy. A deploy puts code on a server. A launch puts a product in front of people who need it, at the right time, with the right message, on the right channels. This skill treats launch as a coordinated campaign, not a checkbox.
## Process
### Phase 1: Analyze Project
```bash
node ${CLAUDE_PLUGIN_ROOT}/tools/launch-prep.mjs <project-directory> --url=<production-url>
```
Parse the JSON output for project info, launch copy, checklist, and press kit.
View the complete source on GitHublearn
When your agent uses it
Manage project learnings across sessions. Save, search, recall, digest, prune, and export learnings that compound over time. Use when user wants to record, recall, or share project knowledge.
What it loads into context
Frontmatter
81 tokensAlways available to the agent
SKILL.md
1,019 tokensWhen the skill is activated
Reference documents
0 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Commands
- Workflow Integration
- Storage
Scripts executed separately
../../tools/learnings-manager.mjs../../tools/learnings-manager.mjs
Files
SKILL.mdcore4,426 bytesSKILL.mdcore4,426 bytesSKILL.mdcore4,426 bytesSKILL.mdcore4,426 bytesSKILL.mdcore4,426 bytesSKILL.mdcore4,426 bytesSKILL.mdcore4,426 bytesSKILL.mdcore4,426 bytesSKILL.mdcore4,426 bytes../../tools/learnings-manager.mjsruns8,763 bytes../../tools/learnings-manager.mjsruns8,763 bytes
Read SKILL.md
# Project Learnings Manager
Learnings are structured knowledge that compounds across sessions. They capture what worked, what didn't, decisions made, and patterns discovered — things that can't be derived from code alone.
**Announce at start:** "I'm using the learn skill to manage project learnings."
## Commands
### Save a learning
When the user discovers something worth remembering — a debugging insight, an architecture decision, a deployment gotcha, a tool preference:
```bash
node ${CLAUDE_PLUGIN_ROOT}/tools/learnings-manager.mjs save --title "Title here" --body "Detailed learning content" --tags "tag1,tag2"View the complete source on GitHubonboard
When your agent uses it
Instant Project Onboarding — generate a complete onboarding guide for any project. Use when user wants to onboard a new developer, understand a new codebase, or generate project documentation.
What it loads into context
Frontmatter
55 tokensAlways available to the agent
SKILL.md
531 tokensWhen the skill is activated
Reference documents
0 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Process
- Getting Started
- Key Files
- API Routes
- Database
- Gotchas
Scripts executed separately
../../tools/onboard-generator.mjs
Files
SKILL.mdcore2,410 bytesSKILL.mdcore2,410 bytesSKILL.mdcore2,410 bytes../../tools/onboard-generator.mjsruns13,990 bytes
Read SKILL.md
# Instant Project Onboarding
One command generates everything a new developer needs to be productive in your codebase.
## Process
### Phase 1: Analyze
```bash
node ${CLAUDE_PLUGIN_ROOT}/tools/onboard-generator.mjs <project-directory>
```
Parse the JSON output.
View the complete source on GitHubpentest
When your agent uses it
Automated penetration testing — web, API, browser, GitHub, and local code. Zero false positives. Use when user wants to hack-test their app, find vulnerabilities, or run security pentesting.
What it loads into context
Frontmatter
66 tokensAlways available to the agent
SKILL.md
2,425 tokensWhen the skill is activated
Reference documents
0 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Process
Scripts executed separately
../../tools/pentest-scanner.mjs
Files
SKILL.mdcore10,084 bytesSKILL.mdcore10,084 bytesSKILL.mdcore10,084 bytesSKILL.mdcore10,084 bytes../../tools/pentest-scanner.mjsruns76,741 bytes
Read SKILL.md
You are an elite penetration tester. Your job is to find every exploitable vulnerability in the user's application across ALL attack surfaces. Every finding MUST have proof — no guesses, no maybes, no false positives.
## Process
Run all 5 phases. Skip phases only if the attack surface doesn't exist (e.g., no GitHub repo, no browser URL).
---
### Phase 1: Web & API Penetration Test
Run the pentest scanner tool against the user's deployed URL or local dev server:
```bash
node ${CLAUDE_PLUGIN_ROOT}/tools/pentest-scanner.mjs <target-url> --deepView the complete source on GitHubperf-audit
When your agent uses it
Run Lighthouse performance audit with auto-fix for common issues. Use when user wants to check or improve site performance.
What it loads into context
Frontmatter
51 tokensAlways available to the agent
SKILL.md
949 tokensWhen the skill is activated
Reference documents
0 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Process
- Key Principle
Scripts executed separately
../../tools/lighthouse-runner.mjs
Files
SKILL.mdcore3,825 bytesSKILL.mdcore3,825 bytes../../tools/lighthouse-runner.mjsruns8,154 bytes
Read SKILL.md
# Performance Audit
Run Lighthouse against the project and fix performance issues.
## Process
### Step 1: Find the URL
- Check if dev server is running (try common ports: 3000, 5173, 4321, 8080)
- Check package.json scripts for dev/start commands
- Ask user for URL if not auto-detected
- If no server running, suggest starting one first
### Step 2: Run LighthouseView the complete source on GitHubreceiving-code-review
When your agent uses it
Use when receiving code review feedback, before implementing suggestions, especially if feedback seems unclear or technically questionable - requires technical rigor and verification, not performative agreement or blind implementation
What it loads into context
Frontmatter
41 tokensAlways available to the agent
SKILL.md
1,489 tokensWhen the skill is activated
Reference documents
0 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Overview
- The Response Pattern
- Forbidden Responses
- Handling Unclear Feedback
- Source-Specific Handling
- YAGNI Check for "Professional" Features
- Implementation Order
- When To Push Back
- Acknowledging Correct Feedback
- Gracefully Correcting Your Pushback
- Common Mistakes
- Real Examples
- GitHub Thread Replies
- The Bottom Line
Files
SKILL.mdcore6,314 bytes
Read SKILL.md
# Code Review Reception
## Overview
Code review requires technical evaluation, not emotional performance.
**Core principle:** Verify before implementing. Ask before assuming. Technical correctness over social comfort.
## The Response Pattern
```
WHEN receiving code review feedback:
1. READ: Complete feedback without reactingView the complete source on GitHubrelease
When your agent uses it
Generate changelog from commits, bump version, create GitHub release, publish to npm. Use when user wants to release, publish, or ship a new version.
What it loads into context
Frontmatter
50 tokensAlways available to the agent
SKILL.md
780 tokensWhen the skill is activated
Reference documents
0 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Process
- Key Principles
Files
SKILL.mdcore2,970 bytesSKILL.mdcore2,970 bytesSKILL.mdcore2,970 bytesSKILL.mdcore2,970 bytesSKILL.mdcore2,970 bytesSKILL.mdcore2,970 bytesSKILL.mdcore2,970 bytes
Read SKILL.md
# Release
Full release pipeline: changelog → version bump → commit → tag → GitHub release → npm publish.
## Process
### Step 1: Determine Version Bump
Check recent commits since last tag to determine semver bump:
```bash
git describe --tags --abbrev=0 2>/dev/null || echo "none"
git log $(git describe --tags --abbrev=0 2>/dev/null || git rev-list --max-parents=0 HEAD)..HEAD --oneline
```
View the complete source on GitHubrequesting-code-review
When your agent uses it
Use when completing tasks, implementing major features, or before merging to verify work meets requirements
What it loads into context
Frontmatter
25 tokensAlways available to the agent
SKILL.md
689 tokensWhen the skill is activated
Reference documents
784 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- When to Request Review
- How to Request
- Example
- Integration with Workflows
- Red Flags
Files
SKILL.mdcore2,927 bytesSKILL.mdcore2,927 bytescode-reviewer.mddoc3,385 bytes
Read SKILL.md
# Requesting Code Review
Dispatch ultraship:code-reviewer subagent to catch issues before they cascade. The reviewer gets precisely crafted context for evaluation — never your session's history. This keeps the reviewer focused on the work product, not your thought process, and preserves your own context for continued work.
**Core principle:** Review early, review often.
## When to Request Review
**Mandatory:**
- After each task in subagent-driven development
- After completing major feature
- Before merge to main
**Optional but valuable:**View the complete source on GitHubrescue
When your agent uses it
Production Incident Commander — diagnose and recover from production incidents. Use when something is broken in production, site is down, errors spiking, or user reports a critical bug.
What it loads into context
Frontmatter
51 tokensAlways available to the agent
SKILL.md
1,849 tokensWhen the skill is activated
Reference documents
0 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Severity Classification
- Process
- Key Principles
Scripts executed separately
../../tools/health-check.mjs../../tools/incident-commander.mjs
Files
SKILL.mdcore7,860 bytesSKILL.mdcore7,860 bytesSKILL.mdcore7,860 bytesSKILL.mdcore7,860 bytes../../tools/health-check.mjsruns5,995 bytes../../tools/incident-commander.mjsruns10,738 bytes
Read SKILL.md
# Production Incident Commander
When production is down, every minute costs trust. This skill runs an incident like a principal SRE — fast triage, clear decision-making, structured recovery, and prevention so it never happens again.
## Severity Classification
Before doing anything, classify the incident:
| Severity | Definition | Response Time | Example |
|---|---|---|---|
| **SEV-1** | Service completely down, all users affected | Immediately | Site returns 500, database unreachable |
| **SEV-2** | Major feature broken, many users affected | Within 15 min | Auth broken, payments failing, data loss |
| **SEV-3** | Minor feature broken, some users affected | Within 1 hour | One API endpoint slow, email not sending |
| **SEV-4** | Cosmetic or edge case | Next business day | UI glitch on one browser, non-critical error log |View the complete source on GitHubretro
When your agent uses it
Sprint retrospective — analyzes git velocity, commit patterns, test health, and shipping cadence. Use after a sprint, at the end of the week, or when the user wants to reflect on progress.
What it loads into context
Frontmatter
64 tokensAlways available to the agent
SKILL.md
801 tokensWhen the skill is activated
Reference documents
0 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Process
- Multi-Project Mode
- Output
Scripts executed separately
../../tools/learnings-manager.mjs../../tools/learnings-manager.mjs../../tools/retro-analyzer.mjs../../tools/retro-analyzer.mjs
Files
SKILL.mdcore3,536 bytesSKILL.mdcore3,536 bytesSKILL.mdcore3,536 bytesSKILL.mdcore3,536 bytesSKILL.mdcore3,536 bytes../../tools/learnings-manager.mjsruns8,763 bytes../../tools/learnings-manager.mjsruns8,763 bytes../../tools/retro-analyzer.mjsruns9,313 bytes../../tools/retro-analyzer.mjsruns9,313 bytes
Read SKILL.md
# Sprint Retrospective
Retrospectives turn shipping data into actionable insights. This skill analyzes your git history, commit patterns, test health, and shipping velocity to surface what's working and what needs attention.
**Announce at start:** "I'm running a sprint retrospective on this project."
## Process
### Step 1: Gather Data
Run the retro analyzer:
```bash
node ${CLAUDE_PLUGIN_ROOT}/tools/retro-analyzer.mjs <project-directory> --days 7View the complete source on GitHubrevise-claude-md
When your agent uses it
Audit and improve CLAUDE.md files in repositories. Use when user asks to check, audit, update, improve, or fix CLAUDE.md files. Scans for all CLAUDE.md files, evaluates quality against templates, outputs quality report, then makes targeted updates. Also use when the user mentions "CLAUDE.md maintenance" or "project memory optimization".
What it loads into context
Frontmatter
98 tokensAlways available to the agent
SKILL.md
1,482 tokensWhen the skill is activated
Reference documents
2,292 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Workflow
Files
SKILL.mdcore6,034 bytesSKILL.mdcore6,034 bytesSKILL.mdcore6,034 bytesreferences/quality-criteria.mddoc2,617 bytesreferences/templates.mddoc3,687 bytesreferences/update-guidelines.mddoc3,197 bytes
Read SKILL.md
# CLAUDE.md Improver
Audit, evaluate, and improve CLAUDE.md files across a codebase to ensure Claude Code has optimal project context.
**This skill can write to CLAUDE.md files.** After presenting a quality report and getting user approval, it updates CLAUDE.md files with targeted improvements.
## Workflow
### Phase 1: Discovery
Find all CLAUDE.md files in the repository:
```bash
find . -name "CLAUDE.md" -o -name ".claude.md" -o -name ".claude.local.md" 2>/dev/null | head -50View the complete source on GitHubsecurity-audit
When your agent uses it
Run security audit — dependency vulnerabilities, secret scanning, OWASP pattern detection, HTTP headers. Use when user wants to harden their project.
What it loads into context
Frontmatter
77 tokensAlways available to the agent
SKILL.md
3,455 tokensWhen the skill is activated
Reference documents
0 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Process
- Key Principle
Scripts executed separately
../../tools/dep-doctor.mjs../../tools/secret-scanner.mjs../../tools/vibe-security-scanner.mjs
Files
SKILL.mdcore15,489 bytesSKILL.mdcore15,489 bytesSKILL.mdcore15,489 bytesSKILL.mdcore15,489 bytesSKILL.mdcore15,489 bytesSKILL.mdcore15,489 bytesSKILL.mdcore15,489 bytes../../tools/dep-doctor.mjsruns11,144 bytes../../tools/secret-scanner.mjsruns6,144 bytes../../tools/vibe-security-scanner.mjsruns11,864 bytes
Read SKILL.md
# Security Audit
Comprehensive security scan. Finds issues AND fixes them.
## Process
### Step 1: Dependency Audit
Detect package manager from lockfile and run audit:
- `pnpm-lock.yaml` → `pnpm audit`
- `package-lock.json` → `npm audit`
- `yarn.lock` → `yarn audit`
If critical/high vulnerabilities found, run the appropriate fix command (non-breaking only):View the complete source on GitHubseo-audit
When your agent uses it
Run SEO audit (39 rules) with AI visibility checks — GEO (20 rules for AI bot access, snippet restrictions) and AEO (4 schema checks). Auto-fix included. Use when user wants to check or improve search visibility.
What it loads into context
Frontmatter
96 tokensAlways available to the agent
SKILL.md
2,513 tokensWhen the skill is activated
Reference documents
0 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Process
- Key Principle
Scripts executed separately
../../tools/audit-history.mjs../../tools/audit-history.mjs../../tools/bing-webmaster.mjs../../tools/bing-webmaster.mjs../../tools/content-scorer.mjs../../tools/gsc-client.mjs../../tools/gsc-client.mjs../../tools/llms-txt-generator.mjs../../tools/llms-txt-generator.mjs../../tools/og-validator.mjs../../tools/redirect-checker.mjs../../tools/robots-generator.mjs../../tools/robots-generator.mjs../../tools/seo-scanner.mjs../../tools/sitemap-generator.mjs../../tools/sitemap-generator.mjs../../tools/structured-data-generator.mjs../../tools/structured-data-generator.mjs
Files
SKILL.mdcore10,797 bytesSKILL.mdcore10,797 bytesSKILL.mdcore10,797 bytesSKILL.mdcore10,797 bytesSKILL.mdcore10,797 bytesSKILL.mdcore10,797 bytesSKILL.mdcore10,797 bytesSKILL.mdcore10,797 bytesSKILL.mdcore10,797 bytes../../tools/audit-history.mjsruns6,372 bytes../../tools/audit-history.mjsruns6,372 bytes../../tools/bing-webmaster.mjsruns14,683 bytes../../tools/bing-webmaster.mjsruns14,683 bytes../../tools/content-scorer.mjsruns13,904 bytes../../tools/gsc-client.mjsruns9,799 bytes../../tools/gsc-client.mjsruns9,799 bytes../../tools/llms-txt-generator.mjsruns2,675 bytes../../tools/llms-txt-generator.mjsruns2,675 bytes../../tools/og-validator.mjsruns8,033 bytes../../tools/redirect-checker.mjsruns6,375 bytes../../tools/robots-generator.mjsruns909 bytes../../tools/robots-generator.mjsruns909 bytes../../tools/seo-scanner.mjsruns40,348 bytes../../tools/sitemap-generator.mjsruns3,788 bytes../../tools/sitemap-generator.mjsruns3,788 bytes../../tools/structured-data-generator.mjsruns3,782 bytes../../tools/structured-data-generator.mjsruns3,782 bytes
Read SKILL.md
# SEO Audit + AI Visibility
Search optimization audit with AI visibility signals. Finds issues AND fixes them.
## Process
### Phase 1: Scan
Run the SEO scanner on the project:
```bash
node ${CLAUDE_PLUGIN_ROOT}/tools/seo-scanner.mjs <project-directory>
```
Parse the JSON output for findings and scores (seo, geo, aeo).View the complete source on GitHubseo-strategy
When your agent uses it
Top 1% SEO strategist — ruthlessly analyzes GSC, Bing, and GA4 data to dominate search rankings, win AI citations, and build lead funnels. Every recommendation backed by data.
What it loads into context
Frontmatter
66 tokensAlways available to the agent
SKILL.md
5,922 tokensWhen the skill is activated
Reference documents
0 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Iron Rules
- Phase 1: Data Collection
- Phase 2: Elite Analysis Framework
- Phase 3: AI Search Domination (AEO + GEO)
- Phase 4: Lead Funnel Architecture
- Phase 5: Strategy Document
- Weekly KPI Stack (The Ruthless Shortlist)
- Final Check
Scripts executed separately
../../tools/audit-history.mjs../../tools/audit-history.mjs../../tools/bing-webmaster.mjs../../tools/bing-webmaster.mjs../../tools/compete-analyzer.mjs../../tools/content-scorer.mjs../../tools/ga4-client.mjs../../tools/ga4-client.mjs../../tools/ga4-client.mjs../../tools/index-doctor.mjs../../tools/keyword-intelligence.mjs../../tools/keyword-intelligence.mjs../../tools/llms-txt-generator.mjs../../tools/robots-generator.mjs../../tools/seo-scanner.mjs../../tools/structured-data-generator.mjs
Files
SKILL.mdcore24,103 bytesSKILL.mdcore24,103 bytesSKILL.mdcore24,103 bytesSKILL.mdcore24,103 bytesSKILL.mdcore24,103 bytesSKILL.mdcore24,103 bytesSKILL.mdcore24,103 bytesSKILL.mdcore24,103 bytesSKILL.mdcore24,103 bytesSKILL.mdcore24,103 bytesSKILL.mdcore24,103 bytesSKILL.mdcore24,103 bytesSKILL.mdcore24,103 bytesSKILL.mdcore24,103 bytesSKILL.mdcore24,103 bytesSKILL.mdcore24,103 bytes../../tools/audit-history.mjsruns6,372 bytes../../tools/audit-history.mjsruns6,372 bytes../../tools/bing-webmaster.mjsruns14,683 bytes../../tools/bing-webmaster.mjsruns14,683 bytes../../tools/compete-analyzer.mjsruns17,212 bytes../../tools/content-scorer.mjsruns13,904 bytes../../tools/ga4-client.mjsruns29,140 bytes../../tools/ga4-client.mjsruns29,140 bytes../../tools/ga4-client.mjsruns29,140 bytes../../tools/index-doctor.mjsruns28,552 bytes../../tools/keyword-intelligence.mjsruns53,691 bytes../../tools/keyword-intelligence.mjsruns53,691 bytes../../tools/llms-txt-generator.mjsruns2,675 bytes../../tools/robots-generator.mjsruns909 bytes../../tools/seo-scanner.mjsruns40,348 bytes../../tools/structured-data-generator.mjsruns3,782 bytes
Read SKILL.md
# SEO Strategy — Elite Analyst Mode
You are the world's best SEO strategist, AEO expert, and GEO specialist combined. You are ruthless about ranking. You don't give generic advice — you give data-backed, specific, executable strategies that WILL move the needle. You think like someone who charges $25K/month for SEO consulting.
**Your mission: Rank #1 for every high-intent keyword. Get cited in every AI search engine. Build a traffic machine that converts visitors into leads and revenue.**
## Iron Rules
1. **Every recommendation cites a specific number from the data.** "Your keyword X has 2,400 impressions but position 14.2 and 0.8% CTR — here's exactly how to fix it."
2. **Prioritize by revenue impact, not vanity metrics.** A transactional keyword with 100 impressions is worth more than an informational keyword with 10,000.
3. **Fix before create.** Don't suggest new content until every existing page is optimized.
4. **One page per keyword cluster.** Never split ranking power. Consolidate ruthlessly.
5. **Think in systems, not tasks.** Build topic clusters, internal link architectures, and content flywheels — not one-off pages.
View the complete source on GitHubship-gate
When your agent uses it
Turn the /ship scorecard into a blocking, config-as-code quality gate. Sets per-category score thresholds, hard-fails on leaked secrets or critical findings, and wires the gate into a pre-push hook and CI so nothing below the bar merges. Use when the user wants a merge gate, CI quality gate, pre-push check, or to enforce ship-readiness.
What it loads into context
Frontmatter
113 tokensAlways available to the agent
SKILL.md
1,059 tokensWhen the skill is activated
Reference documents
0 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- When to use
- Process
- Key Principles
Scripts executed separately
../../tools/lib/ship-scoring.mjs../../tools/ship-gate.mjs../../tools/ship-gate.mjs../../tools/ship-gate.mjs
Files
SKILL.mdcore4,036 bytesSKILL.mdcore4,036 bytesSKILL.mdcore4,036 bytesSKILL.mdcore4,036 bytesSKILL.mdcore4,036 bytes../../tools/lib/ship-scoring.mjsruns4,021 bytes../../tools/ship-gate.mjsruns11,177 bytes../../tools/ship-gate.mjsruns11,177 bytes../../tools/ship-gate.mjsruns11,177 bytes
Read SKILL.md
# Ship-Gate — Deterministic Quality Gate
The 2026 consensus on AI-written code is "did it pass the gates," not "did a senior read every line." This skill promotes the `/ship` scorecard from advisory to a **blocking, deterministic gate**: same scoring as `/ship` (shared `tools/lib/ship-scoring.mjs`), compared against thresholds in `.ultraship/ship-gate.json`, exiting non-zero so it can fail a push or a CI job.
## When to use
The user wants a merge gate, a CI quality check, a pre-push guard, or to enforce a minimum ship-readiness score before code goes out.
## Process
### Phase 1: Initialize the config
```bash
node ${CLAUDE_PLUGIN_ROOT}/tools/ship-gate.mjs init <project-directory>View the complete source on GitHubsprint
When your agent uses it
Sprint workflow pipeline — chains plan → build → test → review → ship skills into a structured sprint. Use when starting a new feature or project iteration to follow the full lifecycle.
What it loads into context
Frontmatter
49 tokensAlways available to the agent
SKILL.md
1,434 tokensWhen the skill is activated
Reference documents
0 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- The Pipeline
- Phase 1: Plan
- Phase 2: Build
- Phase 3: Test
- Phase 4: Review
- Phase 5: Ship
- Phase 6: Verify
- Workflow Rules
- Quick Sprint (for small changes)
- Sprint Status
Files
SKILL.mdcore6,172 bytes
Read SKILL.md
# Sprint Workflow Pipeline
A sprint is the full lifecycle of shipping a feature — from planning through deployment. This skill chains Ultraship skills into a structured pipeline where each phase produces artifacts that feed the next.
**Announce at start:** "I'm using the sprint workflow to guide this feature from plan to ship."
## The Pipeline
```
┌──────────┐ ┌──────────┐ ┌──────────┐ ┌──────────┐ ┌──────────┐ ┌──────────┐
│ PLAN │───▶│ BUILD │───▶│ TEST │───▶│ REVIEW │───▶│ SHIP │───▶│ VERIFY │
│ │ │ │ │ │ │ │ │ │ │ │
│ /write- │ │ /execute-│ │ /tdd │ │ /review │ │ /deploy │ │ /canary │
│ plan │ │ plan │ │ │ │ │ │ /ship │ │ /retro │View the complete source on GitHubstaying-current
When your agent uses it
Use whenever answering anything version-sensitive — library/framework/SDK APIs, package versions, model IDs, pricing, CLI flags, config, or "latest/newest" anything. Verify against current sources instead of training data.
What it loads into context
Frontmatter
62 tokensAlways available to the agent
SKILL.md
749 tokensWhen the skill is activated
Reference documents
0 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- The rule
- Where to verify
- How to apply
- Anti-patterns
- Note on Claude/Anthropic specifically
Files
SKILL.mdcore3,402 bytesSKILL.mdcore3,402 bytes
Read SKILL.md
# Staying Current
Training data has a cutoff. Libraries ship breaking changes, prices change, model IDs get renamed, and APIs get deprecated after that cutoff. Answering version-sensitive questions from memory is the single most common way an otherwise-correct agent ships wrong code. This skill is the standing rule for not doing that.
The Ultraship **Currency Guard** hook (`UserPromptSubmit`) already fires on every prompt and injects a reminder when it detects version-sensitive language. This skill is what you do when that fires — or any time you're about to state a fact whose correct answer changes over time.
## The rule
**Before stating any of the following, verify it against a current source. Never answer from training data alone:**
- Library / framework / SDK API signatures, imports, hooks, options
- Package versions, compatibility, and what's deprecated
- CLI flags and config file schemas
- Model IDs, model names, context windows, and capabilitiesView the complete source on GitHubsubagent-driven-development
When your agent uses it
Use when executing implementation plans with independent tasks in the current session
What it loads into context
Frontmatter
21 tokensAlways available to the agent
SKILL.md
3,084 tokensWhen the skill is activated
Reference documents
1,480 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- When to Use
- Task Sizing
- The Process
- Model Selection
- Handling Implementer Status
- Prompt Templates
- Example Workflow
- Advantages
- Red Flags
- Integration
Files
SKILL.mdcore13,686 bytescode-quality-reviewer-prompt.mddoc1,113 bytesimplementer-prompt.mddoc4,689 bytesspec-reviewer-prompt.mddoc1,092 bytes
Read SKILL.md
# Subagent-Driven Development
Execute plan by dispatching fresh subagent per task, with two-stage review after each: spec compliance review first, then code quality review.
**Why subagents:** You delegate tasks to specialized agents with isolated context. By precisely crafting their instructions and context, you ensure they stay focused and succeed at their task. They should never inherit your session's context or history — you construct exactly what they need. This also preserves your own context for coordination work.
**Core principle:** Fresh subagent per task + two-stage review (spec then quality) = high quality, fast iteration
## When to Use
```dot
digraph when_to_use {
"Have implementation plan?" [shape=diamond];
"Tasks mostly independent?" [shape=diamond];View the complete source on GitHubsystematic-debugging
When your agent uses it
Use when encountering any bug, test failure, or unexpected behavior, before proposing fixes
What it loads into context
Frontmatter
37 tokensAlways available to the agent
SKILL.md
2,302 tokensWhen the skill is activated
Reference documents
5,734 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Overview
- The Iron Law
- When to Use
- The Four Phases
- Red Flags - STOP and Follow Process
- your human partner's Signals You're Doing It Wrong
- Common Rationalizations
- Quick Reference
- When Process Reveals "No Root Cause"
- Supporting Techniques
- Real-World Impact
Scripts executed separately
condition-based-waiting-example.tsfind-polluter.sh
Files
CREATION-LOG.mddoc4,268 bytesSKILL.mdcore9,922 bytesSKILL.mdcore9,922 bytescondition-based-waiting-example.tsruns5,054 bytescondition-based-waiting.mddoc3,516 bytesdefense-in-depth.mddoc3,650 bytesfind-polluter.shruns1,528 bytesroot-cause-tracing.mddoc5,327 bytestest-academic.mddoc653 bytestest-pressure-1.mddoc1,900 bytestest-pressure-2.mddoc2,283 bytestest-pressure-3.mddoc2,692 bytes
Read SKILL.md
# Systematic Debugging
## Overview
Random fixes waste time and create new bugs. Quick patches mask underlying issues.
**Core principle:** ALWAYS find root cause before attempting fixes. Symptom fixes are failure.
**Violating the letter of this process is violating the spirit of debugging.**
## The Iron Law
```
NO FIXES WITHOUT ROOT CAUSE INVESTIGATION FIRSTView the complete source on GitHubtest-driven-development
When your agent uses it
Use when implementing any feature or bugfix, before writing implementation code
What it loads into context
Frontmatter
21 tokensAlways available to the agent
SKILL.md
2,406 tokensWhen the skill is activated
Reference documents
1,915 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Overview
- When to Use
- The Iron Law
- Red-Green-Refactor
- Good Tests
- Why Order Matters
- Common Rationalizations
- Red Flags - STOP and Start Over
- Example: Bug Fix
- Verification Checklist
- When Stuck
- Debugging Integration
- Testing Anti-Patterns
- Final Rule
Files
SKILL.mdcore9,867 bytesSKILL.mdcore9,867 bytesSKILL.mdcore9,867 bytesSKILL.mdcore9,867 bytesSKILL.mdcore9,867 bytestesting-anti-patterns.mddoc8,251 bytes
Read SKILL.md
# Test-Driven Development (TDD)
## Overview
Write the test first. Watch it fail. Write minimal code to pass.
**Core principle:** If you didn't watch the test fail, you don't know if it tests the right thing.
**Violating the letter of the rules is violating the spirit of the rules.**
## When to Use
**Always:**
- New featuresView the complete source on GitHubusing-git-worktrees
When your agent uses it
Use when starting feature work that needs isolation from current workspace or before executing implementation plans - creates isolated git worktrees with smart directory selection and safety verification
What it loads into context
Frontmatter
39 tokensAlways available to the agent
SKILL.md
1,342 tokensWhen the skill is activated
Reference documents
0 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Overview
- Directory Selection Process
- Safety Verification
- Creation Steps
- Quick Reference
- Common Mistakes
- Example Workflow
- Red Flags
- Integration
Files
SKILL.mdcore5,599 bytesSKILL.mdcore5,599 bytesSKILL.mdcore5,599 bytesSKILL.mdcore5,599 bytesSKILL.mdcore5,599 bytesSKILL.mdcore5,599 bytesSKILL.mdcore5,599 bytesSKILL.mdcore5,599 bytes
Read SKILL.md
# Using Git Worktrees
## Overview
Git worktrees create isolated workspaces sharing the same repository, allowing work on multiple branches simultaneously without switching.
**Core principle:** Systematic directory selection + safety verification = reliable isolation.
**Announce at start:** "I'm using the using-git-worktrees skill to set up an isolated workspace."
## Directory Selection Process
Follow this priority order:
View the complete source on GitHubusing-ultraship
When your agent uses it
Use when starting any conversation - establishes how to find and use skills, requiring Skill tool invocation before ANY response including clarifying questions
What it loads into context
Frontmatter
34 tokensAlways available to the agent
SKILL.md
2,026 tokensWhen the skill is activated
Reference documents
612 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Instruction Priority
- How to Access Skills
- Platform Adaptation
- The Rule
- Red Flags
- Skill Priority
- Skill Types
- User Instructions
- Available Skills Catalog
- Available Slash Commands
Files
SKILL.mdcore8,699 bytesreferences/codex-tools.mddoc960 bytesreferences/gemini-tools.mddoc1,494 bytes
Read SKILL.md
<SUBAGENT-STOP>
If you were dispatched as a subagent to execute a specific task, skip this skill.
</SUBAGENT-STOP>
<IMPORTANT>
**Memory-first rule:** At the START of every session, read MEMORY.md, CLAUDE.md, and relevant memory files BEFORE performing any task. This ensures persistent context across sessions. Never skip this step — never claim something is missing or not done without first checking memory. Memory records can become stale, so verify against current state when acting on them.
</IMPORTANT>
<IMPORTANT>
When a skill is relevant to your current task, invoke it before responding. If you're unsure whether a skill applies, lean toward invoking it — skills are lightweight and you can adapt after loading.
</IMPORTANT>
<IMPORTANT>
**Currency-first rule:** Do not answer version-sensitive questions from training data — library/SDK APIs, package versions, model IDs, pricing, CLI flags, "latest" anything. Verify against current sources first (context7 MCP for library docs, WebSearch/WebFetch for everything else, the project lockfile for installed versions). The `staying-current` skill is the full policy; the Currency Guard hook will remind you when a prompt looks version-sensitive. If you can't verify, say so rather than guessing.View the complete source on GitHubverification-before-completion
When your agent uses it
Use when about to claim work is complete, fixed, or passing, before committing or creating PRs - requires running verification commands and confirming output before making any success claims; evidence before assertions always
What it loads into context
Frontmatter
47 tokensAlways available to the agent
SKILL.md
974 tokensWhen the skill is activated
Reference documents
0 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Overview
- The Iron Law
- The Gate Function
- Common Failures
- Red Flags - STOP
- Rationalization Prevention
- Key Patterns
- Why This Matters
- When To Apply
- The Bottom Line
Files
SKILL.mdcore4,201 bytes
Read SKILL.md
# Verification Before Completion
## Overview
Claiming work is complete without verification is dishonesty, not efficiency.
**Core principle:** Evidence before claims, always.
**Violating the letter of this rule is violating the spirit of this rule.**
## The Iron Law
```
NO COMPLETION CLAIMS WITHOUT FRESH VERIFICATION EVIDENCEView the complete source on GitHubvisual-diff
When your agent uses it
Visual Regression Testing — screenshot comparison before and after changes. Use when user wants to check for visual regressions, compare UI changes, or verify CSS/layout changes didn't break anything.
What it loads into context
Frontmatter
44 tokensAlways available to the agent
SKILL.md
732 tokensWhen the skill is activated
Reference documents
0 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Process
- Key Pages to Always Test
- Key Principle
Files
SKILL.mdcore3,242 bytes
Read SKILL.md
# Visual Regression Testing
Automated screenshot comparison using Playwright. Catch visual bugs before they ship.
## Process
### Phase 1: Determine Test Scope
Ask the user:
1. **What URL(s) to test?** (localhost, staging, or production)
2. **What changed?** (CSS update, component refactor, dependency upgrade, etc.)
If the user already described what changed, skip asking.
View the complete source on GitHubwriting-plans
When your agent uses it
Use when you have a spec or requirements for a multi-step task, before touching code
What it loads into context
Frontmatter
25 tokensAlways available to the agent
SKILL.md
1,469 tokensWhen the skill is activated
Reference documents
361 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Overview
- Scope Check
- File Structure
- Bite-Sized Task Granularity
- Plan Document Header
- Task Structure
- Risk Register
- Dependencies Between Tasks
- Remember
- Plan Review Loop
- Execution Handoff
Files
SKILL.mdcore6,405 bytesSKILL.mdcore6,405 bytesSKILL.mdcore6,405 bytesSKILL.mdcore6,405 bytesplan-document-reviewer-prompt.mddoc1,714 bytes
Read SKILL.md
# Writing Plans
## Overview
Write comprehensive implementation plans assuming the engineer has zero context for our codebase and questionable taste. Document everything they need to know: which files to touch for each task, code, testing, docs they might need to check, how to test it. Give them the whole plan as bite-sized tasks. DRY. YAGNI. TDD. Frequent commits.
Assume they are a skilled developer, but know almost nothing about our toolset or problem domain. Assume they don't know good test design very well.
**Announce at start:** "I'm using the writing-plans skill to create the implementation plan."
**Context:** This should be run in a dedicated worktree (created by brainstorming skill).
**Save plans to:** `docs/ultraship/plans/YYYY-MM-DD-<feature-name>.md`
- (User preferences for plan location override this default)View the complete source on GitHubwriting-skills
When your agent uses it
Use when creating new skills, editing existing skills, or verifying skills work before deployment
What it loads into context
Frontmatter
24 tokensAlways available to the agent
SKILL.md
5,019 tokensWhen the skill is activated
Reference documents
16,419 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Overview
- What is a Skill?
- TDD Mapping for Skills
- When to Create a Skill
- Skill Types
- Directory Structure
- SKILL.md Structure
- Claude Search Optimization (CSO)
- Flowchart Usage
- Code Examples
- File Organization
- The Iron Law (Same as TDD)
- Testing All Skill Types
- Common Rationalizations for Skipping Testing
- Bulletproofing Skills Against Rationalization
- RED-GREEN-REFACTOR for Skills
- Anti-Patterns
- STOP: Before Moving to Next Skill
- Skill Creation Checklist (TDD Adapted)
- Discovery Workflow
- The Bottom Line
Scripts executed separately
render-graphs.js
Files
SKILL.mdcore22,457 bytesSKILL.mdcore22,457 bytesSKILL.mdcore22,457 bytesanthropic-best-practices.mddoc45,825 bytesexamples/CLAUDE_MD_TESTING.mddoc5,423 bytesgraphviz-conventions.dotasset5,970 bytespersuasion-principles.mddoc5,908 bytesrender-graphs.jsruns4,857 bytestesting-skills-with-subagents.mddoc12,556 bytes
Read SKILL.md
# Writing Skills
## Overview
**Writing skills IS Test-Driven Development applied to process documentation.**
**Personal skills live in agent-specific directories (`~/.claude/skills` for Claude Code, `~/.agents/skills/` for Codex)**
You write test cases (pressure scenarios with subagents), watch them fail (baseline behavior), write the skill (documentation), watch tests pass (agents comply), and refactor (close loopholes).
**Core principle:** If you didn't watch an agent fail without the skill, you don't know if the skill teaches the right thing.
**REQUIRED BACKGROUND:** You MUST understand ultraship:test-driven-development before using this skill. That skill defines the fundamental RED-GREEN-REFACTOR cycle. This skill adapts TDD to documentation.
View the complete source on GitHubSkills included
- a11y
- architecture
- brainstorming
- canary
- clone-patterns
- code-review
- compete
- cost
- demo
- deploy
- dispatching-parallel-agents
- evals
- executing-plans
- finishing-a-development-branch
- frontend-design
- grow
- guard
- index-fix
- investigate
- launch
- learn
- onboard
- pentest
- perf-audit
- receiving-code-review
- release
- requesting-code-review
- rescue
- retro
- revise-claude-md
- security-audit
- seo-audit
- seo-strategy
- ship-gate
- sprint
- staying-current
- subagent-driven-development
- systematic-debugging
- test-driven-development
- using-git-worktrees
- using-ultraship
- verification-before-completion
- visual-diff
- writing-plans
- writing-skills
Repository facts
- License
- MIT
- Created
- Mar 24, 2026
- Last pushed
- Jul 8, 2026
- Forks
- 13
- Open issues
- 1
- Project activity
- Slowing
Before you install
Network or broad shellAutomated signals, not a guarantee
Checked Nov 7, 2026
Not fully analyzed: some files were too long, unreadable or missing. This never lowers the level.
Show 178 notes
hooks/hooks.json:1Analysis incomplete: Referenced executable target unavailable; not analyzedhooks/hooks.json:1Analysis incomplete: Referenced executable target unavailable; not analyzedhooks/hooks.json:1Analysis incomplete: Referenced executable target unavailable; not analyzedskills/a11y/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedskills/a11y/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedskills/a11y/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedskills/a11y/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedtools/audit-history.mjs:1Analysis incomplete: Referenced executable target unavailable; not analyzedskills/architecture/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedhooks/hooks.json:1Plugin-wide analysis incomplete; see repository notesskills/canary/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedskills/canary/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedskills/canary/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedskills/clone-patterns/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedskills/clone-patterns/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedskills/clone-patterns/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedskills/clone-patterns/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedskills/clone-patterns/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedskills/clone-patterns/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedhooks/hooks.json:1Plugin-wide analysis incomplete; see repository notes
- 22 broad permissionsin 22 files: a11y/SKILL.md:1 architecture/SKILL.md:1 canary/SKILL.md:1 and 19 more
- 9 dangerous shell commandsin 7 files: brainstorming/scripts/stop-server.sh:45 guard/SKILL.md:3 brainstorming/scripts/start-server.sh:96 and 4 more
- 137 network referencesin 18 files: tools/bing-webmaster.mjs:19 tools/gsc-client.mjs:45 tools/index-doctor.mjs:55 and 15 more
- No hidden or obfuscated text
- No instruction overrides
- 88 executable scriptsin 47 files: tools/audit-history.mjs:1 tools/bing-webmaster.mjs:1 tools/gsc-client.mjs:1 and 44 more
- 61 references to secretsin 16 files: tools/index-doctor.mjs:12 tools/gsc-client.mjs:12 tools/env-validator.mjs:69 and 13 more
- No requests to vote in Hot
Show all 317 signals by file
.claude-plugin/marketplace.json
- Network accessline 18
"email": "houseofmvps2024@gmail.com" }, "homepage": "https://github.com/Houseofmvps/ultraship", - Network accessline 19
}, "homepage": "https://github.com/Houseofmvps/ultraship", "repository": "https://github.com/Houseofmvps/ultraship", - Network accessline 20
"homepage": "https://github.com/Houseofmvps/ultraship", - Network accessline 21
"repository": "https://github.com/Houseofmvps/ultraship",
.claude-plugin/plugin.json
- Network accessline 7
"email": "houseofmvps2024@gmail.com" }, "homepage": "https://github.com/Houseofmvps/ultraship", - Network accessline 8
}, "homepage": "https://github.com/Houseofmvps/ultraship", "repository": "https://github.com/Houseofmvps/ultraship", - Network accessline 9
"homepage": "https://github.com/Houseofmvps/ultraship", - Network accessline 10
"repository": "https://github.com/Houseofmvps/ultraship", - Access to secretsline 43
[Credential-related source omitted] - Access to secretsline 55
[Credential-related source omitted]
skills/a11y/SKILL.md
- Broad permissionsline 1
Bash, Read, Edit, Grep, Glob
skills/architecture/SKILL.md
- Broad permissionsline 1
Bash, Read, Grep, Glob, Write
skills/brainstorming/scripts/frame-template.html
- Network accessline 197
<body> <div class="header"> <h1><a href="https://github.com/obra/superpowers" style="color: inherit; text-decoration: none;">Superpowers Brainstorming</a></h1> - Network accessline 198
<div class="header"> <h1><a href="https://github.com/obra/superpowers" style="color: inherit; text-decoration: none;">Superpowers Brainstorming</a></h1> <div class="status">Connected</div> - Network accessline 199
<h1><a href="https://github.com/obra/superpowers" style="color: inherit; text-decoration: none;">Superpowers Brainstorming</a></h1>
skills/brainstorming/scripts/helper.js
- Executable scriptline 1
Executable file
skills/brainstorming/scripts/server.cjs
- Executable scriptline 1
Executable file
skills/brainstorming/scripts/start-server.sh
skills/brainstorming/scripts/stop-server.sh
skills/brainstorming/visual-companion.md
- Network accessline 39
# Returns: {"type":"server-started","port":52341,"url":"http://localhost:52341",
skills/canary/SKILL.md
- Broad permissionsline 1
Bash, Read, Grep
skills/clone-patterns/SKILL.md
- Broad permissionsline 1
Bash, Read, Grep, Glob
skills/compete/SKILL.md
- Broad permissionsline 1
Bash, Read, Grep, Glob
skills/cost/SKILL.md
- Broad permissionsline 1
Bash, Read, Write, Grep
skills/demo/SKILL.md
- Broad permissionsline 1
Bash, Read, Edit, Grep, Glob
skills/deploy/SKILL.md
skills/evals/SKILL.md
skills/grow/SKILL.md
- Broad permissionsline 1
Bash, Read, Grep, Glob
skills/guard/SKILL.md
- Broad permissionsline 1
Bash, Read - Dangerous shell operationline 3
description: Safety guardrails — blocks destructive commands (rm -rf, DROP TABLE, force-push, git reset --hard) and optionally restricts file edits to a specific directory. Use when working on critical systems or when you want extra protect - Dangerous shell operationline 17
- `rm -rf` / `rm -r` on important directories
skills/index-fix/SKILL.md
skills/learn/SKILL.md
- Broad permissionsline 1
Bash, Read, Write, Grep
skills/onboard/SKILL.md
- Broad permissionsline 1
Bash, Read, Grep, Glob, Write
skills/pentest/SKILL.md
skills/perf-audit/SKILL.md
- Broad permissionsline 1
Bash, Read, Edit, Grep, Glob
skills/release/SKILL.md
- Network accessline 98
Tag: v1.0.7 Commits: 12 since last release GitHub: https://github.com/Houseofmvps/ultraship/releases/tag/v1.0.7 - Network accessline 99
Commits: 12 since last release GitHub: https://github.com/Houseofmvps/ultraship/releases/tag/v1.0.7 npm: https://www.npmjs.com/package/ultraship - Network accessline 100
GitHub: https://github.com/Houseofmvps/ultraship/releases/tag/v1.0.7 - Network accessline 101
npm: https://www.npmjs.com/package/ultraship
skills/retro/SKILL.md
- Broad permissionsline 1
Bash, Read, Grep, Glob
skills/revise-claude-md/SKILL.md
- Broad permissionsline 1
Read, Glob, Grep, Bash, Edit
skills/security-audit/SKILL.md
- Broad permissionsline 1
Bash, Read, Grep, Glob - Access to secretsline 36
[Credential-related source omitted] - Dangerous shell operationline 58
eval( → Suggest safer alternatives - Network accessline 82
- **Path traversal**: Grep for user input flowing into `fs.readFile`, `fs.readFileSync`, `fs.createReadStream`, `path.join`, `path.resolve`, or `res.sendFile`. If the input is not validated against `../` sequences (or null bytes on older No - Network accessline 83
- **Command injection**: Grep for `child_process.exec`, `child_process.execSync`, `shell: true` in spawn options, or any function that passes user input to a shell. An attacker who controls even part of a shell command can chain arbitrary c - Network accessline 84
- **Server-Side Request Forgery (SSRF)**: Look for user-provided URLs passed to `fetch`, `axios`, `http.get`, or any HTTP client. Without validation, an attacker can make your server request internal services (`http://169.254.169.254` for c - Network accessline 100
If a dev server is running, use curl or fetch to check response headers: - Access to secretsline 145
[Credential-related source omitted]
skills/seo-audit/SKILL.md
- Broad permissionsline 1
Bash, Read, Edit, Grep, Glob
skills/seo-strategy/SKILL.md
skills/ship-gate/SKILL.md
- Broad permissionsline 1
Bash, Read, Edit, Grep, Glob
skills/staying-current/SKILL.md
- Broad permissionsline 1
Bash, Read, WebSearch, WebFetch
skills/systematic-debugging/SKILL.md
skills/systematic-debugging/condition-based-waiting-example.ts
- Executable scriptline 1
Executable file
skills/systematic-debugging/find-polluter.sh
- Executable scriptline 1
#!/usr/bin/env bash
skills/writing-skills/anthropic-best-practices.md
- Network accessline 13
The [context window](https://platform.claude.com/docs/en/build-with-claude/context-windows) is a public good. Your Skill shares the context window with everything else Claude needs to know, including: - Network accessline 249
<img src="https://mintcdn.com/anthropic-claude-docs/4Bny2bjzuGBK7o00/images/agent-skills-simple-file.png?fit=max&auto=format&n=4Bny2bjzuGBK7o00&q=85&s=87782ff239b297d9a9e8e1b72ed72db9" alt="Simple SKILL.md file showing YAML frontmatter and - Network accessline 253
<img src="https://mintcdn.com/anthropic-claude-docs/4Bny2bjzuGBK7o00/images/agent-skills-bundling-content.png?fit=max&auto=format&n=4Bny2bjzuGBK7o00&q=85&s=a5e0aa41e3d53985a7e3e43668a33ea3" alt="Bundling additional reference files like refe - Network accessline 919
<img src="https://mintcdn.com/anthropic-claude-docs/4Bny2bjzuGBK7o00/images/agent-skills-executable-scripts.png?fit=max&auto=format&n=4Bny2bjzuGBK7o00&q=85&s=4bbc45f2c2e0bee9f2f0d5da669bad00" alt="Bundling executable scripts alongside instr
skills/writing-skills/render-graphs.js
- Executable scriptline 1
#!/usr/bin/env node
tools/a11y-scanner.mjs
- Executable scriptline 1
#!/usr/bin/env node
tools/api-smoke-test.mjs
- Executable scriptline 1
#!/usr/bin/env node
tools/architecture-mapper.mjs
tools/audit-history.mjs
- Executable scriptline 1
#!/usr/bin/env node - Executable scriptline 1
Executable file; content unavailable - Executable scriptline 1
#!/usr/bin/env node - Executable scriptline 1
Executable file; content unavailable - Executable scriptline 1
#!/usr/bin/env node - Executable scriptline 1
Executable file; content unavailable - Executable scriptline 1
#!/usr/bin/env node - Executable scriptline 1
Executable file; content unavailable
tools/bing-webmaster.mjs
- Executable scriptline 1
#!/usr/bin/env node - Executable scriptline 1
#!/usr/bin/env node - Executable scriptline 1
Executable file; content unavailable - Executable scriptline 1
#!/usr/bin/env node - Executable scriptline 1
Executable file; content unavailable - Executable scriptline 1
#!/usr/bin/env node - Executable scriptline 1
Executable file; content unavailable - Network accessline 19
// // Setup guide: // 1. Go to https://www.bing.com/webmasters - Network accessline 19
// // Setup guide: // 1. Go to https://www.bing.com/webmasters - Network accessline 19
// // Setup guide: // 1. Go to https://www.bing.com/webmasters - Network accessline 19
// // Setup guide: // 1. Go to https://www.bing.com/webmasters - Network accessline 20
// Setup guide: // 1. Go to https://www.bing.com/webmasters // 2. Add and verify your site - Network accessline 20
// Setup guide: // 1. Go to https://www.bing.com/webmasters // 2. Add and verify your site - Network accessline 20
// Setup guide: // 1. Go to https://www.bing.com/webmasters // 2. Add and verify your site - Network accessline 20
// Setup guide: // 1. Go to https://www.bing.com/webmasters // 2. Add and verify your site - Network accessline 21
// 1. Go to https://www.bing.com/webmasters - Network accessline 21
// 1. Go to https://www.bing.com/webmasters - Network accessline 21
// 1. Go to https://www.bing.com/webmasters - Network accessline 21
// 1. Go to https://www.bing.com/webmasters - Network accessline 78
[Credential-related source omitted] - Network accessline 78
[Credential-related source omitted] - Network accessline 78
[Credential-related source omitted] - Network accessline 78
[Credential-related source omitted] - Access to secretsline 78
[Credential-related source omitted] - Access to secretsline 78
[Credential-related source omitted] - Access to secretsline 78
[Credential-related source omitted] - Access to secretsline 78
[Credential-related source omitted] - Network accessline 79
if (!apiKey) { error('No Bing API key configured.\n\nSetup:\n1. Go to https://www.bing.com/webmasters\n2. Add and verify your site\n3. Go to Settings → API Access → API Key\n4. Set ULTRASHIP_BING_KEY=your-api-key\n\nOr configure via plu - Network accessline 79
if (!apiKey) { error('No Bing API key configured.\n\nSetup:\n1. Go to https://www.bing.com/webmasters\n2. Add and verify your site\n3. Go to Settings → API Access → API Key\n4. Set ULTRASHIP_BING_KEY=your-api-key\n\nOr configure via plu - Network accessline 79
if (!apiKey) { error('No Bing API key configured.\n\nSetup:\n1. Go to https://www.bing.com/webmasters\n2. Add and verify your site\n3. Go to Settings → API Access → API Key\n4. Set ULTRASHIP_BING_KEY=your-api-key\n\nOr configure via plu - Network accessline 79
if (!apiKey) { error('No Bing API key configured.\n\nSetup:\n1. Go to https://www.bing.com/webmasters\n2. Add and verify your site\n3. Go to Settings → API Access → API Key\n4. Set ULTRASHIP_BING_KEY=your-api-key\n\nOr configure via plu - Network accessline 80
error('No Bing API key configured.\n\nSetup:\n1. Go to https://www.bing.com/webmasters\n2. Add and verify your site\n3. Go to Settings → API Access → API Key\n4. Set ULTRASHIP_BING_KEY=your-api-key\n\nOr configure via plugin settings: /plug - Network accessline 80
error('No Bing API key configured.\n\nSetup:\n1. Go to https://www.bing.com/webmasters\n2. Add and verify your site\n3. Go to Settings → API Access → API Key\n4. Set ULTRASHIP_BING_KEY=your-api-key\n\nOr configure via plugin settings: /plug - Network accessline 80
error('No Bing API key configured.\n\nSetup:\n1. Go to https://www.bing.com/webmasters\n2. Add and verify your site\n3. Go to Settings → API Access → API Key\n4. Set ULTRASHIP_BING_KEY=your-api-key\n\nOr configure via plugin settings: /plug - Network accessline 80
error('No Bing API key configured.\n\nSetup:\n1. Go to https://www.bing.com/webmasters\n2. Add and verify your site\n3. Go to Settings → API Access → API Key\n4. Set ULTRASHIP_BING_KEY=your-api-key\n\nOr configure via plugin settings: /plug - Network accessline 218
host, key: apiKey, keyLocation: `https://${host}/${apiKey}.txt`, - Network accessline 218
host, key: apiKey, keyLocation: `https://${host}/${apiKey}.txt`, - Network accessline 218
host, key: apiKey, keyLocation: `https://${host}/${apiKey}.txt`, - Network accessline 218
host, key: apiKey, keyLocation: `https://${host}/${apiKey}.txt`, - Network accessline 219
key: apiKey, keyLocation: `https://${host}/${apiKey}.txt`, urlList: urls, - Network accessline 219
key: apiKey, keyLocation: `https://${host}/${apiKey}.txt`, urlList: urls, - Network accessline 219
key: apiKey, keyLocation: `https://${host}/${apiKey}.txt`, urlList: urls, - Network accessline 219
key: apiKey, keyLocation: `https://${host}/${apiKey}.txt`, urlList: urls, - Network accessline 220
keyLocation: `https://${host}/${apiKey}.txt`, - Network accessline 220
keyLocation: `https://${host}/${apiKey}.txt`, - Network accessline 220
keyLocation: `https://${host}/${apiKey}.txt`, - Network accessline 220
keyLocation: `https://${host}/${apiKey}.txt`, - Network accessline 244
urls_submitted: urls.length, urls, note: 'IndexNow notifies Bing instantly. For it to work, place a key file at https://yourdomain.com/{apikey}.txt containing your API key.', - Network accessline 244
urls_submitted: urls.length, urls, note: 'IndexNow notifies Bing instantly. For it to work, place a key file at https://yourdomain.com/{apikey}.txt containing your API key.', - Network accessline 244
urls_submitted: urls.length, urls, note: 'IndexNow notifies Bing instantly. For it to work, place a key file at https://yourdomain.com/{apikey}.txt containing your API key.', - Network accessline 244
urls_submitted: urls.length, urls, note: 'IndexNow notifies Bing instantly. For it to work, place a key file at https://yourdomain.com/{apikey}.txt containing your API key.', - Network accessline 245
urls, note: 'IndexNow notifies Bing instantly. For it to work, place a key file at https://yourdomain.com/{apikey}.txt containing your API key.', best_practice: 'Only use IndexNow for pages with SUBSTANTIAL content chang - Network accessline 245
urls, note: 'IndexNow notifies Bing instantly. For it to work, place a key file at https://yourdomain.com/{apikey}.txt containing your API key.', best_practice: 'Only use IndexNow for pages with SUBSTANTIAL content chang - Network accessline 245
urls, note: 'IndexNow notifies Bing instantly. For it to work, place a key file at https://yourdomain.com/{apikey}.txt containing your API key.', best_practice: 'Only use IndexNow for pages with SUBSTANTIAL content chang - Network accessline 245
urls, note: 'IndexNow notifies Bing instantly. For it to work, place a key file at https://yourdomain.com/{apikey}.txt containing your API key.', best_practice: 'Only use IndexNow for pages with SUBSTANTIAL content chang - Network accessline 246
note: 'IndexNow notifies Bing instantly. For it to work, place a key file at https://yourdomain.com/{apikey}.txt containing your API key.', - Network accessline 246
note: 'IndexNow notifies Bing instantly. For it to work, place a key file at https://yourdomain.com/{apikey}.txt containing your API key.', - Network accessline 246
note: 'IndexNow notifies Bing instantly. For it to work, place a key file at https://yourdomain.com/{apikey}.txt containing your API key.', - Network accessline 246
note: 'IndexNow notifies Bing instantly. For it to work, place a key file at https://yourdomain.com/{apikey}.txt containing your API key.',
tools/bundle-tracker.mjs
- Executable scriptline 1
#!/usr/bin/env node
tools/canary-monitor.mjs
- Executable scriptline 1
#!/usr/bin/env node
tools/compete-analyzer.mjs
tools/content-scorer.mjs
tools/cost-tracker.mjs
- Executable scriptline 1
#!/usr/bin/env node
tools/demo-prep.mjs
- Executable scriptline 1
#!/usr/bin/env node
tools/dep-doctor.mjs
- Executable scriptline 1
#!/usr/bin/env node
tools/env-validator.mjs
- Executable scriptline 1
#!/usr/bin/env node - Access to secretsline 69
[Credential-related source omitted] - Access to secretsline 70
[Credential-related source omitted] - Access to secretsline 104
[Credential-related source omitted] - Access to secretsline 128
[Credential-related source omitted] - Access to secretsline 135
[Credential-related source omitted] - Access to secretsline 141
[Credential-related source omitted] - Access to secretsline 144
[Credential-related source omitted]
tools/eval-scanner.mjs
- Executable scriptline 1
#!/usr/bin/env node
tools/ga4-client.mjs
- Executable scriptline 1
#!/usr/bin/env node - Executable scriptline 1
Executable file; content unavailable - Executable scriptline 1
Executable file; content unavailable - Access to secretsline 23
[Credential-related source omitted] - Network accessline 57
const payload = Buffer.from(JSON.stringify({ iss: key.client_email, scope: 'https://www.googleapis.com/auth/analytics.readonly', - Network accessline 58
iss: key.client_email, scope: 'https://www.googleapis.com/auth/analytics.readonly', aud: 'https://oauth2.googleapis.com/token', - Network accessline 59
scope: 'https://www.googleapis.com/auth/analytics.readonly', - Network accessline 60
aud: 'https://oauth2.googleapis.com/token', - Access to secretsline 84
[Credential-related source omitted] - Access to secretsline 164
[Credential-related source omitted]
tools/growth-tracker.mjs
- Executable scriptline 1
#!/usr/bin/env node
tools/gsc-client.mjs
- Executable scriptline 1
#!/usr/bin/env node - Executable scriptline 1
#!/usr/bin/env node - Executable scriptline 1
Executable file; content unavailable - Executable scriptline 1
#!/usr/bin/env node - Executable scriptline 1
Executable file; content unavailable - Access to secretsline 12
[Credential-related source omitted] - Access to secretsline 12
[Credential-related source omitted] - Access to secretsline 12
[Credential-related source omitted] - Network accessline 45
const payload = Buffer.from(JSON.stringify({ iss: key.client_email, scope: 'https://www.googleapis.com/auth/webmasters', - Network accessline 45
const payload = Buffer.from(JSON.stringify({ iss: key.client_email, scope: 'https://www.googleapis.com/auth/webmasters', - Network accessline 45
const payload = Buffer.from(JSON.stringify({ iss: key.client_email, scope: 'https://www.googleapis.com/auth/webmasters', - Network accessline 46
iss: key.client_email, scope: 'https://www.googleapis.com/auth/webmasters', aud: 'https://oauth2.googleapis.com/token', - Network accessline 46
iss: key.client_email, scope: 'https://www.googleapis.com/auth/webmasters', aud: 'https://oauth2.googleapis.com/token', - Network accessline 46
iss: key.client_email, scope: 'https://www.googleapis.com/auth/webmasters', aud: 'https://oauth2.googleapis.com/token', - Network accessline 47
scope: 'https://www.googleapis.com/auth/webmasters', - Network accessline 47
scope: 'https://www.googleapis.com/auth/webmasters', - Network accessline 47
scope: 'https://www.googleapis.com/auth/webmasters', - Network accessline 48
aud: 'https://oauth2.googleapis.com/token', - Network accessline 48
aud: 'https://oauth2.googleapis.com/token', - Network accessline 48
aud: 'https://oauth2.googleapis.com/token', - Access to secretsline 72
[Credential-related source omitted] - Access to secretsline 72
[Credential-related source omitted] - Access to secretsline 72
[Credential-related source omitted] - Access to secretsline 127
[Credential-related source omitted] - Access to secretsline 127
[Credential-related source omitted] - Access to secretsline 127
[Credential-related source omitted]
tools/health-check.mjs
tools/incident-commander.mjs
tools/index-doctor.mjs
- Executable scriptline 1
#!/usr/bin/env node - Executable scriptline 1
#!/usr/bin/env node - Access to secretsline 12
[Credential-related source omitted] - Access to secretsline 12
[Credential-related source omitted] - Access to secretsline 38
[Credential-related source omitted] - Access to secretsline 38
[Credential-related source omitted] - Network accessline 55
const payload = Buffer.from(JSON.stringify({ iss: key.client_email, scope: 'https://www.googleapis.com/auth/webmasters', - Network accessline 55
const payload = Buffer.from(JSON.stringify({ iss: key.client_email, scope: 'https://www.googleapis.com/auth/webmasters', - Network accessline 56
iss: key.client_email, scope: 'https://www.googleapis.com/auth/webmasters', aud: 'https://oauth2.googleapis.com/token', - Network accessline 56
iss: key.client_email, scope: 'https://www.googleapis.com/auth/webmasters', aud: 'https://oauth2.googleapis.com/token', - Network accessline 57
scope: 'https://www.googleapis.com/auth/webmasters', - Network accessline 57
scope: 'https://www.googleapis.com/auth/webmasters', - Network accessline 58
aud: 'https://oauth2.googleapis.com/token', - Network accessline 58
aud: 'https://oauth2.googleapis.com/token', - Access to secretsline 82
[Credential-related source omitted] - Access to secretsline 82
[Credential-related source omitted] - Network accessline 365
if (!siteUrl) { error('Site URL required. Example: node index-doctor.mjs diagnose https://example.com https://example.com/sitemap.xml'); - Network accessline 365
if (!siteUrl) { error('Site URL required. Example: node index-doctor.mjs diagnose https://example.com https://example.com/sitemap.xml'); - Network accessline 366
error('Site URL required. Example: node index-doctor.mjs diagnose https://example.com https://example.com/sitemap.xml'); - Network accessline 366
error('Site URL required. Example: node index-doctor.mjs diagnose https://example.com https://example.com/sitemap.xml'); - Access to secretsline 505
[Credential-related source omitted] - Access to secretsline 505
[Credential-related source omitted] - Access to secretsline 629
[Credential-related source omitted] - Access to secretsline 629
[Credential-related source omitted]
tools/keyword-intelligence.mjs
- Executable scriptline 1
#!/usr/bin/env node - Executable scriptline 1
Executable file; content unavailable - Access to secretsline 23
[Credential-related source omitted] - Access to secretsline 80
[Credential-related source omitted] - Network accessline 95
const payload = Buffer.from(JSON.stringify({ iss: key.client_email, scope: 'https://www.googleapis.com/auth/webmasters', - Network accessline 96
iss: key.client_email, scope: 'https://www.googleapis.com/auth/webmasters', aud: 'https://oauth2.googleapis.com/token', - Network accessline 97
scope: 'https://www.googleapis.com/auth/webmasters', - Network accessline 98
aud: 'https://oauth2.googleapis.com/token', - Access to secretsline 121
[Credential-related source omitted] - Access to secretsline 136
[Credential-related source omitted] - Network accessline 468
if (!siteUrl) { error('Site URL required. Example: node keyword-intelligence.mjs analyze https://example.com 28'); - Network accessline 469
error('Site URL required. Example: node keyword-intelligence.mjs analyze https://example.com 28');
tools/launch-prep.mjs
- Executable scriptline 1
#!/usr/bin/env node
tools/learnings-manager.mjs
tools/lib/ship-scoring.mjs
- Executable scriptline 1
Executable file
tools/lighthouse-runner.mjs
- Executable scriptline 1
#!/usr/bin/env node
tools/llms-txt-generator.mjs
tools/migration-checker.mjs
- Executable scriptline 1
#!/usr/bin/env node
tools/og-validator.mjs
- Executable scriptline 1
#!/usr/bin/env node
tools/onboard-generator.mjs
tools/pattern-analyzer.mjs
- Executable scriptline 1
#!/usr/bin/env node
tools/pentest-scanner.mjs
- Executable scriptline 1
#!/usr/bin/env node - Access to secretsline 89
[Credential-related source omitted] - Dangerous shell operationline 388
fix: `Remove 'unsafe-eval' from ${dir}. Refactor code to avoid eval().`, - Network accessline 524
const findings = []; const testUrls = [targetUrl, ...endpoints.slice(0, 5)]; const evilOrigins = ['https://evil.ultraship.test', 'null', 'https://evil.com']; - Network accessline 526
const evilOrigins = ['https://evil.ultraship.test', 'null', 'https://evil.com']; - Network accessline 837
const evilUrl = 'https://evil.ultraship.test/stolen';
tools/redirect-checker.mjs
- Executable scriptline 1
#!/usr/bin/env node
tools/retro-analyzer.mjs
tools/robots-generator.mjs
- Executable scriptline 1
#!/usr/bin/env node - Executable scriptline 1
Executable file; content unavailable - Executable scriptline 1
#!/usr/bin/env node - Network accessline 8
const dir = process.argv[2] || '.'; const baseUrl = (process.argv[3] || 'https://example.com').replace(/\/$/, ''); - Network accessline 8
const dir = process.argv[2] || '.'; const baseUrl = (process.argv[3] || 'https://example.com').replace(/\/$/, ''); - Network accessline 9
const baseUrl = (process.argv[3] || 'https://example.com').replace(/\/$/, ''); - Network accessline 9
const baseUrl = (process.argv[3] || 'https://example.com').replace(/\/$/, '');
tools/secret-scanner.mjs
tools/seo-scanner.mjs
tools/ship-gate.mjs
tools/sitemap-generator.mjs
- Executable scriptline 1
#!/usr/bin/env node - Executable scriptline 1
#!/usr/bin/env node - Executable scriptline 1
Executable file; content unavailable - Network accessline 9
const dir = process.argv[2] || '.'; const baseUrl = (process.argv[3] || 'https://example.com').replace(/\/$/, ''); - Network accessline 9
const dir = process.argv[2] || '.'; const baseUrl = (process.argv[3] || 'https://example.com').replace(/\/$/, ''); - Network accessline 10
const baseUrl = (process.argv[3] || 'https://example.com').replace(/\/$/, ''); - Network accessline 10
const baseUrl = (process.argv[3] || 'https://example.com').replace(/\/$/, ''); - Network accessline 89
const xml = `<?xml version="1.0" encoding="UTF-8"?> <urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9"> - Network accessline 89
const xml = `<?xml version="1.0" encoding="UTF-8"?> <urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9"> - Network accessline 90
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9"> - Network accessline 90
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
tools/structured-data-generator.mjs
- Executable scriptline 1
#!/usr/bin/env node - Executable scriptline 1
Executable file; content unavailable - Executable scriptline 1
#!/usr/bin/env node - Network accessline 39
function buildSchema(type) { const base = { '@context': 'https://schema.org', - Network accessline 39
function buildSchema(type) { const base = { '@context': 'https://schema.org', - Network accessline 40
const base = { '@context': 'https://schema.org', '@type': type, - Network accessline 40
const base = { '@context': 'https://schema.org', '@type': type, - Network accessline 41
'@context': 'https://schema.org', - Network accessline 41
'@context': 'https://schema.org', - Network accessline 77
price: '0', priceCurrency: 'USD', availability: 'https://schema.org/InStock', - Network accessline 77
price: '0', priceCurrency: 'USD', availability: 'https://schema.org/InStock', - Network accessline 78
priceCurrency: 'USD', availability: 'https://schema.org/InStock', }, - Network accessline 78
priceCurrency: 'USD', availability: 'https://schema.org/InStock', }, - Network accessline 79
availability: 'https://schema.org/InStock', - Network accessline 79
availability: 'https://schema.org/InStock',
How the signals fit together
Facts from a static read of the files at the pinned commit. They describe what the code does, not why.
Some files could not be read; the facts below still hold.
Declared and executed: 14 facts
- Allows Bash without restrictions, though it has no scripts or shell blocksguard/SKILL.md:5High confidence
- Allows Bash without restrictions, though it has no scripts or shell blocksstaying-current/SKILL.md:4High confidence
- Contacts yourdomain.com, which SKILL.md, the README and the plugin manifest do not mentiontools/bing-webmaster.mjs:246High confidence
- Contacts www.googleapis.com, which SKILL.md, the README and the plugin manifest do not mentiontools/ga4-client.mjs:59High confidence
- Contacts oauth2.googleapis.com, which SKILL.md, the README and the plugin manifest do not mentiontools/ga4-client.mjs:60High confidence
- Contacts www.googleapis.com, which SKILL.md, the README and the plugin manifest do not mentiontools/gsc-client.mjs:47High confidence
- Contacts oauth2.googleapis.com, which SKILL.md, the README and the plugin manifest do not mentiontools/gsc-client.mjs:48High confidence
- Contacts www.googleapis.com, which SKILL.md, the README and the plugin manifest do not mentiontools/index-doctor.mjs:57High confidence
- Contacts oauth2.googleapis.com, which SKILL.md, the README and the plugin manifest do not mentiontools/index-doctor.mjs:58High confidence
- Contacts www.googleapis.com, which SKILL.md, the README and the plugin manifest do not mentiontools/keyword-intelligence.mjs:97High confidence
- Contacts oauth2.googleapis.com, which SKILL.md, the README and the plugin manifest do not mentiontools/keyword-intelligence.mjs:98High confidence
- Contacts evil.com, which SKILL.md, the README and the plugin manifest do not mentiontools/pentest-scanner.mjs:526High confidence
- Contacts www.sitemaps.org, which SKILL.md, the README and the plugin manifest do not mentiontools/sitemap-generator.mjs:90High confidence
- Contacts schema.org, which SKILL.md, the README and the plugin manifest do not mentiontools/structured-data-generator.mjs:41High confidence
Signal confidence: 304 facts
- Broad permissions in the frontmatter of the SKILL.mda11y/SKILL.md:1High confidence
- Broad permissions in the frontmatter of the SKILL.mdarchitecture/SKILL.md:1High confidence
- Executable script in code of a file that runsbrainstorming/scripts/helper.js:1High confidence
- Executable script in code of a file that runsbrainstorming/scripts/server.cjs:1High confidence
- Executable script in code of a file that runsbrainstorming/scripts/start-server.sh:1High confidence
- Dangerous shell operation in code of a file that runsbrainstorming/scripts/start-server.sh:96High confidence
- Executable script in code of a file that runsbrainstorming/scripts/stop-server.sh:1High confidence
- Dangerous shell operation in code of a file that runsbrainstorming/scripts/stop-server.sh:45High confidence
- Dangerous shell operation in code of a file that runsbrainstorming/scripts/stop-server.sh:49High confidence
- Network access in code of documentationbrainstorming/visual-companion.md:39Low confidence
- Broad permissions in the frontmatter of the SKILL.mdcanary/SKILL.md:1High confidence
- Broad permissions in the frontmatter of the SKILL.mdclone-patterns/SKILL.md:1High confidence
- Broad permissions in the frontmatter of the SKILL.mdcompete/SKILL.md:1High confidence
- Broad permissions in the frontmatter of the SKILL.mdcost/SKILL.md:1High confidence
- Broad permissions in the frontmatter of the SKILL.mddemo/SKILL.md:1High confidence
- Network access in code of the SKILL.mddeploy/SKILL.md:221High confidence
- Network access in code of the SKILL.mddeploy/SKILL.md:222High confidence
- Network access in code of the SKILL.mddeploy/SKILL.md:223High confidence
- Broad permissions in the frontmatter of the SKILL.mdevals/SKILL.md:1High confidence
- Network access in prose of the SKILL.mdevals/SKILL.md:37Low confidence
- Broad permissions in the frontmatter of the SKILL.mdgrow/SKILL.md:1High confidence
- Broad permissions in the frontmatter of the SKILL.mdguard/SKILL.md:1High confidence
- Dangerous shell operation in the frontmatter of the SKILL.mdguard/SKILL.md:3Low confidence
- Dangerous shell operation in prose of the SKILL.mdguard/SKILL.md:17Low confidence
- Broad permissions in the frontmatter of the SKILL.mdindex-fix/SKILL.md:1High confidence
- Access to secrets in prose of the SKILL.mdindex-fix/SKILL.md:17Low confidence
- Broad permissions in the frontmatter of the SKILL.mdlearn/SKILL.md:1High confidence
- Broad permissions in the frontmatter of the SKILL.mdonboard/SKILL.md:1High confidence
- Broad permissions in the frontmatter of the SKILL.mdpentest/SKILL.md:1High confidence
- Dangerous shell operation in prose of the SKILL.mdpentest/SKILL.md:136Low confidence
- Broad permissions in the frontmatter of the SKILL.mdperf-audit/SKILL.md:1High confidence
- Network access in code of the SKILL.mdrelease/SKILL.md:98High confidence
- Network access in code of the SKILL.mdrelease/SKILL.md:99High confidence
- Network access in code of the SKILL.mdrelease/SKILL.md:100High confidence
- Network access in code of the SKILL.mdrelease/SKILL.md:101High confidence
- Broad permissions in the frontmatter of the SKILL.mdretro/SKILL.md:1High confidence
- Broad permissions in the frontmatter of the SKILL.mdrevise-claude-md/SKILL.md:1High confidence
- Broad permissions in the frontmatter of the SKILL.mdsecurity-audit/SKILL.md:1High confidence
- Access to secrets in prose of the SKILL.mdsecurity-audit/SKILL.md:36Low confidence
- Dangerous shell operation in code of the SKILL.mdsecurity-audit/SKILL.md:58High confidence
- Network access in prose of the SKILL.mdsecurity-audit/SKILL.md:82Low confidence
- Network access in prose of the SKILL.mdsecurity-audit/SKILL.md:83Low confidence
- Network access in prose of the SKILL.mdsecurity-audit/SKILL.md:84Low confidence
- Network access in prose of the SKILL.mdsecurity-audit/SKILL.md:100Low confidence
- Access to secrets in prose of the SKILL.mdsecurity-audit/SKILL.md:145Low confidence
- Broad permissions in the frontmatter of the SKILL.mdseo-audit/SKILL.md:1High confidence
- Broad permissions in the frontmatter of the SKILL.mdseo-strategy/SKILL.md:1High confidence
- Access to secrets in prose of the SKILL.mdseo-strategy/SKILL.md:27Low confidence
- Access to secrets in prose of the SKILL.mdseo-strategy/SKILL.md:29Low confidence
- Access to secrets in code of the SKILL.md: a variable, placeholder or call, not a stored valueseo-strategy/SKILL.md:43Low confidence
and 254 more
Works with
| Agent | Status | Evidence | Install to |
|---|---|---|---|
| Claude Code | Native | Manifest .claude-plugin/marketplace.json | .claude/skills/<skill-name>/ |
| Codex | Compatible | Standard SKILL.md skills/a11y/SKILL.md | .agents/skills/<skill-name>/ |
| Cursor | Compatible | Standard SKILL.md skills/a11y/SKILL.md | .cursor/skills/<skill-name>/ |
| Gemini CLI | Native | Path GEMINI.md | .gemini/skills/<skill-name>/ |
| GitHub Copilot | Compatible | Standard SKILL.md skills/a11y/SKILL.md | .github/skills/<skill-name>/ |
| OpenCode | Compatible | Standard SKILL.md skills/a11y/SKILL.md | .opencode/skills/<skill-name>/ |
- Native The repository ships a manifest, folder or frontmatter field for this agent.
- Compatible A standard SKILL.md that this agent can read.
- Unknown No evidence either way.
Derived automatically from paths, manifests and frontmatter. Not tested on each agent.