a11y
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…
Use when you have a spec or requirements for a multi-step task, before touching code
$ npx -y skills add Houseofmvps/ultraship --skill writing-plans --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
/writing-plansContext preview
The summary Claude sees to decide when to auto-load this skill.
Use when you have a spec or requirements for a multi-step task, before touching code
name: writing-plans description: Use when you have a spec or requirements for a multi-step task, before touching code
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`
If the spec covers multiple independent subsystems, it should have been broken into sub-project specs during brainstorming. If it wasn't, suggest breaking this into separate plans — one per subsystem. Each plan should produce working, testable software on its own.
Before defining tasks, map out which files will be created or modified and what each one is responsible for. This is where decomposition decisions get locked in.
This structure informs the task decomposition. Each task should produce self-contained changes that make sense independently.
**Each step is one action (2-5 minutes):**
**Every plan MUST start with this header:**
# [Feature Name] Implementation Plan > **For agentic workers:** REQUIRED SUB-SKILL: Use ultraship:subagent-driven-development (recommended) or ultraship:executing-plans to implement this plan task-by-task. Steps use checkbox (`- [ ]`) syntax for tracking. **Goal:** [One sentence describing what this builds] **Architecture:** [2-3 sentences about approach] **Tech Stack:** [Key technologies/libraries] ---
### Task N: [Component Name]
**Files:**
- Create: `exact/path/to/file.py`
- Modify: `exact/path/to/existing.py:123-145`
- Test: `tests/exact/path/to/test.py`
- [ ] **Step 1: Write the failing test**
```python
def test_specific_behavior():
result = function(input)
assert result == expectedRun: `pytest tests/path/test.py::test_name -v` Expected: FAIL with "function not defined"
def function(input):
return expectedRun: `pytest tests/path/test.py::test_name -v` Expected: PASS
git add tests/path/test.py src/path/file.py git commit -m "feat: add specific feature"
## Risk Register Every plan should include a brief risk section at the top: | Risk | Likelihood | Impact | Mitigation | |---|---|---|---| | [e.g., API schema changes mid-implementation] | Medium | High | Pin API version, add integration test | | [e.g., Migration breaks existing data] | Low | Critical | Backup before migration, test with prod-like data | | [e.g., Third-party rate limit hit during testing] | Medium | Low | Use mock in tests, real API only in integration | Only include risks that are specific to this plan. Don't pad with generic risks. If there are no meaningful risks, omit the section. ## Dependencies Between Tasks If Task 3 depends on Task 1's database schema, say so explicitly. The execution agent has no memory of task ordering intent — it needs to see: - "Task 3 requires Task 1 to be complete (uses the `users` table created there)" - "Tasks 4 and 5 are independent — can run in parallel" ## Remember - Exact file paths always - Complete code in plan (not "add validation") - Exact commands with expected output - Reference relevant skills with @ syntax - DRY, YAGNI, TDD, frequent commits - Include rollback notes for risky tasks (e.g., "If migration fails: `drizzle-kit drop`") ## Plan Review Loop After writing the complete plan: 1. Dispatch a single plan-document-reviewer subagent (see plan-document-reviewer-prompt.md) with precisely crafted review context — never your session history. This keeps the reviewer focused on the plan, not your thought process. - Provide: path to the plan document, path to spec document 2. If ❌ Issues Found: fix the issues, re-dispatch reviewer for the whole plan 3. If ✅ Approved: proceed to execution handoff **Review loop guidance:** - Same agent that wrote the plan fixes it (preserves context) - If loop exceeds 3 iterations, surface to human for guidance - Reviewers are advisory — explain disagreements if you believe feedback is incorrect ## Execution Handoff After saving the plan, offer execution choice: **"Plan complete and saved to `docs/ultraship/plans/<filename>.md`. Two execution options:** **1. Subagent-Driven (recommended)** - I dispatch a fresh subagent per task, review between tasks, fast iteration **2. Inline Execution**
"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.
Repo: Houseofmvps/ultraship
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…
Living Architecture Map — auto-generate Mermaid diagrams of your codebase. Use when user wants to visualize architecture, understand code structure, generate…
You MUST use this before any creative work - creating features, building components, adding functionality, or modifying behavior. Explores user intent,…
Post-deploy canary monitoring — checks site health, detects regressions, monitors for errors after deployment. Use after deploying to verify production is…
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…
Code review with principal-engineer-level depth. Reviews for correctness, performance, security, maintainability, and architecture. Use when completing tasks,…