بنقرة واحدة
writing-plans
Use when you have a spec or requirements for a multi-step task, before touching code
التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
القائمة
Use when you have a spec or requirements for a multi-step task, before touching code
التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
استنادا إلى تصنيف SOC المهني
Use when executing an implementation plan with four or more independent tasks touching different files, via the experimental agent-teams flag — parallel implementer teammates plus continuous async reviewers. Higher token cost; requires CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS=1.
Use when starting creative work — adding features, building components, adding functionality, modifying existing behavior, or any time the user describes a new idea or capability they want to build.
Use when adding, modifying, or removing database tables, columns, indexes, views, functions, or RLS policies — any schema change targeting a shared or production database
Use when facing two or more independent investigations or research tasks in the current session — debugging multiple unrelated failures, exploring different solution approaches, or running parallel reads. Not for executing implementation plans (use subagent-driven-development, agent-team-development, or tmux-parallel-development for those).
Use when you have a written implementation plan to execute in a separate session with review checkpoints
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
| 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/plans/YYYY-MM-DD-<feature-name>.md
Before writing the plan, read the project-init files at repo root if they exist — they encode constraints that should shape the plan:
tech_stack.md — Frameworks, data layer, infra, and tooling. The plan's verification commands and code patterns should match what's actually used here, not a guess. If this file says "Postgres + Drizzle", don't write a plan that uses Prisma.style_guide.md — Naming, formatter/linter, commit format. The plan's tasks should follow these conventions (e.g., generate test files with the project's naming pattern).backlog.md — Check whether the task being planned is already listed under "Next Up". If yes, move it to "In Progress" as part of starting the plan. If no, ask whether the task should be added to the backlog before planning continues.If none of these files exist, suggest running globalcoder-development:project-init first — it's much cheaper than writing a plan that fights the actual stack.
Each step is one action (2-5 minutes):
Every plan MUST start with this header:
# [Feature Name] Implementation Plan
> **For Claude:** REQUIRED SUB-SKILL: Use globalcoder-development:executing-plans to implement this plan task-by-task.
**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 == expected
Step 2: Run test to verify it fails
Run: pytest tests/path/test.py::test_name -v
Expected: FAIL with "function not defined"
Step 3: Write minimal implementation
def function(input):
return expected
Step 4: Run test to verify it passes
Run: pytest tests/path/test.py::test_name -v
Expected: PASS
Step 5: Commit
git add tests/path/test.py src/path/file.py
git commit -m "feat: add specific feature"
## Remember
- Exact file paths always
- Complete code in plan (not "add validation")
- Exact commands with expected output
- Reference relevant skills using `globalcoder-development:<name>` format (do not use `@` — that force-loads files)
- DRY, YAGNI, TDD, frequent commits
## Execution Handoff
After saving the plan, analyze the plan's tasks and offer execution choice:
**"Plan complete and saved to `docs/plans/<filename>.md`. Four execution options:**
**1. Subagent-Driven (this session)** - Sequential: fresh subagent per task, two-stage review between tasks, fast iteration. Best for plans with <4 tasks or sequential dependencies.
**2. Agent Team (this session)** - Parallel: spawns multiple implementer teammates + reviewer teammates, continuous async review. Best for plans with 4+ independent tasks touching different files. Higher token cost.
**3. tmux Parallel (this terminal)** - Spawns `claude` instances in separate tmux windows, one per independent task. Two sub-modes: fire-and-forget (`claude -p`) or observable autopilot (interactive). Best for 2-6 independent tasks. Requires tmux.
**4. Parallel Session (separate)** - Open new session with executing-plans, batch execution with human checkpoints between batches.
**Which approach?"**
**If tmux is not installed** (`which tmux` fails), do not show option 3.
**If all tasks are sequential** (every task depends on the previous), note that options 2 and 3 won't provide parallel benefit and recommend option 1.
**If Subagent-Driven chosen:**
- **REQUIRED SUB-SKILL:** Use globalcoder-development:subagent-driven-development
- Stay in this session
- Fresh subagent per task + code review
**If Agent Team chosen:**
- **REQUIRED SUB-SKILL:** Use globalcoder-development:agent-team-development
- Stay in this session
- Spawns agent team with parallel implementers + async reviewers
- Requires `CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS=1` enabled
**If tmux Parallel chosen:**
- **REQUIRED SUB-SKILL:** Use globalcoder-development:tmux-parallel-development
- Stay in this session as the lead
- Follow up: ask fire-and-forget vs observable autopilot
- Lead orchestrates tmux windows + monitors completion
**If Parallel Session chosen:**
- Guide them to open new session in worktree
- **REQUIRED SUB-SKILL:** New session uses globalcoder-development:executing-plans