{"id":"9cebb257-9c42-4451-9e78-c299fe9c331e","shortId":"2hPVfd","kind":"skill","title":"writing-plans","tagline":"Use when you have a spec or requirements for a multi-step task, before touching code. Triggers on: \"create a plan\", \"write implementation steps\", \"break down the task\", any planning request. Creates comprehensive implementation plans with bite-sized tasks and exact file paths.","description":"# Writing Plans\n\n## Overview\n\nWrite 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.\n\nAssume 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.\n\n**Announce at start:** \"I'm using the writing-plans skill to create the implementation plan.\"\n\n**Context:** This should be run in a dedicated worktree (created by brainstorming skill).\n\n**Save plans to:** `docs/plans/YYYY-MM-DD-<feature-name>.md`\n\n## Bite-Sized Task Granularity\n\n**Each step is one action (2-5 minutes):**\n- \"Write the failing test\" - step\n- \"Run it to make sure it fails\" - step\n- \"Implement the minimal code to make the test pass\" - step\n- \"Run the tests and make sure they pass\" - step\n- \"Commit\" - step\n\n## Plan Document Header\n\n**Every plan MUST start with this header:**\n\n```markdown\n# [Feature Name] Implementation Plan\n\n> **For Claude:** REQUIRED SUB-SKILL: Use superpowers:executing-plans to implement this plan task-by-task.\n\n**Goal:** [One sentence describing what this builds]\n\n**Architecture:** [2-3 sentences about approach]\n\n**Tech Stack:** [Key technologies/libraries]\n\n---\n```\n\n## Task Structure\n\n````markdown\n### Task N: [Component Name]\n\n**Files:**\n- Create: `exact/path/to/file.py`\n- Modify: `exact/path/to/existing.py:123-145`\n- Test: `tests/exact/path/to/test.py`\n\n**Step 1: Write the failing test**\n\n```python\ndef test_specific_behavior():\n    result = function(input)\n    assert result == expected\n```\n\n**Step 2: Run test to verify it fails**\n\nRun: `pytest tests/path/test.py::test_name -v`\nExpected: FAIL with \"function not defined\"\n\n**Step 3: Write minimal implementation**\n\n```python\ndef function(input):\n    return expected\n```\n\n**Step 4: Run test to verify it passes**\n\nRun: `pytest tests/path/test.py::test_name -v`\nExpected: PASS\n\n**Step 5: Commit**\n\n```bash\ngit add tests/path/test.py src/path/file.py\ngit commit -m \"feat: add specific feature\"\n```\n````\n\n## Remember\n- Exact file paths always\n- Complete code in plan (not \"add validation\")\n- Exact commands with expected output\n- Reference relevant skills with @ syntax\n- DRY, YAGNI, TDD, frequent commits\n\n## Execution Handoff\n\nAfter saving the plan, offer execution choice:\n\n**\"Plan complete and saved to `docs/plans/<filename>.md`. Two execution options:**\n\n**1. Subagent-Driven (this session)** - I dispatch fresh subagent per task, review between tasks, fast iteration\n\n**2. Parallel Session (separate)** - Open new session with executing-plans, batch execution with checkpoints\n\n**Which approach?\"**\n\n**If Subagent-Driven chosen:**\n- **REQUIRED SUB-SKILL:** Use superpowers:subagent-driven-development\n- Stay in this session\n- Fresh subagent per task + code review\n\n**If Parallel Session chosen:**\n- Guide them to open new session in worktree\n- **REQUIRED SUB-SKILL:** New session uses superpowers:executing-plans\n\n## Examples\n\n### Example 1: Simple Feature Plan\nFeature: \"Add dark mode toggle\"\nPlan structure: 1. Create toggle component, 2. Add theme context, 3. Update CSS variables, 4. Test all pages\nOutput: 4-task plan with exact file paths and code snippets\n\n### Example 2: Complex Feature Plan\nFeature: \"Implement user authentication\"\nPlan structure: 1. Database schema, 2. Auth API endpoints, 3. Login form, 4. Session management, 5. Protected routes, 6. Tests\nOutput: 6-task plan with dependencies and integration points\n\n### Example 3: Refactoring Plan\nFeature: \"Reorganize component folder structure\"\nPlan structure: 1. Create new structure, 2. Move files, 3. Update imports, 4. Run tests, 5. Delete old folders\nOutput: 5-task plan with exact mv commands and import patterns\n\n## Troubleshooting\n\n### Issue: Plan seems too detailed\nSolution: Bite-sized tasks are intentional. Each step should take 2-5 minutes. This prevents context loss and enables parallel execution.\n\n### Issue: Plan is missing dependencies\nSolution: Add explicit \"depends on Task X\" notes. Clarify which tasks can run in parallel vs sequentially.\n\n### Issue: Code examples in plan are incomplete\nSolution: Complete code is required. Don't write \"add validation\" — write the exact validation code. Implementer should copy-paste, not guess.","tags":["writing","plans","synapse","deve1993","agent-skills","ai-agents","ai-coding","ai-workspace","anti-poisoning","auto-learning-ai","automation","claude-code"],"capabilities":["skill","source-deve1993","skill-writing-plans","topic-agent-skills","topic-ai-agents","topic-ai-coding","topic-ai-workspace","topic-anti-poisoning","topic-auto-learning-ai","topic-automation","topic-claude-code","topic-code-quality","topic-cursor","topic-developer-tools","topic-devops"],"categories":["Synapse"],"synonyms":[],"warnings":[],"endpointUrl":"https://skills.sh/deve1993/Synapse/writing-plans","protocol":"skill","transport":"skills-sh","auth":{"type":"none","details":{"cli":"npx skills add deve1993/Synapse","source_repo":"https://github.com/deve1993/Synapse","install_from":"skills.sh"}},"qualityScore":"0.453","qualityRationale":"deterministic score 0.45 from registry signals: · indexed on github topic:agent-skills · 7 github stars · SKILL.md body (4,444 chars)","verified":false,"liveness":"unknown","lastLivenessCheck":null,"agentReviews":{"count":0,"score_avg":null,"cost_usd_avg":null,"success_rate":null,"latency_p50_ms":null,"narrative_summary":null,"summary_updated_at":null},"enrichmentModel":"deterministic:skill-github:v1","enrichmentVersion":1,"enrichedAt":"2026-05-18T19:14:15.455Z","embedding":null,"createdAt":"2026-05-18T13:21:48.699Z","updatedAt":"2026-05-18T19:14:15.455Z","lastSeenAt":"2026-05-18T19:14:15.455Z","tsv":"'-145':279 '-3':258 '-5':179,624 '1':283,407,491,502,540,578 '123':278 '2':178,257,300,424,506,530,543,582,623 '3':320,510,547,568,585 '4':331,514,519,550,588 '5':347,553,591,596 '6':556,559 'action':177 'add':351,358,371,496,507,640,671 'almost':116 'alway':365 'announc':134 'api':545 'approach':261,440 'architectur':256 'assert':296 'assum':56,108,124 'auth':544 'authent':537 'bash':349 'batch':435 'behavior':292 'bite':42,100,169,614 'bite-s':41,99,168,613 'brainstorm':161 'break':29 'build':255 'check':88 'checkpoint':438 'choic':396 'chosen':445,469 'clarifi':647 'claud':231 'code':20,81,197,367,464,527,657,665,677 'codebas':64 'command':374,602 'commit':107,213,348,355,387 'complet':366,398,664 'complex':531 'compon':271,505,573 'comprehens':37,53 'context':61,150,509,628 'copi':681 'copy-past':680 'creat':23,36,146,159,274,503,579 'css':512 'dark':497 'databas':541 'dedic':157 'def':289,325 'defin':318 'delet':592 'depend':563,638,642 'describ':252 'design':131 'detail':611 'develop':113,455 'dispatch':414 'doc':83 'docs/plans':402 'docs/plans/yyyy-mm-dd-':166 'document':68,216 'domain':123 'dri':103,383 'driven':410,444,454 'enabl':631 'endpoint':546 'engin':58 'everi':218 'everyth':69 'exact':46,362,373,523,600,675 'exact/path/to/existing.py':277 'exact/path/to/file.py':275 'exampl':489,490,529,567,658 'execut':239,388,395,405,433,436,487,633 'executing-plan':238,432,486 'expect':298,313,329,344,376 'explicit':641 'fail':183,192,286,306,314 'fast':422 'feat':357 'featur':226,360,493,495,532,534,571 'file':47,75,273,363,524,584 'folder':574,594 'form':549 'frequent':106,386 'fresh':415,460 'function':294,316,326 'git':350,354 'give':93 'goal':249 'good':129 'granular':172 'guess':684 'guid':470 'handoff':389 'header':217,224 'implement':27,38,54,148,194,228,242,323,535,678 'import':587,604 'incomplet':662 'input':295,327 'integr':565 'intent':618 'issu':607,634,656 'iter':423 'key':264 'know':73,115,128 'login':548 'loss':629 'm':138,356 'make':189,199,208 'manag':552 'markdown':225,268 'md':167,403 'might':85 'minim':196,322 'minut':180,625 'miss':637 'mode':498 'modifi':276 'move':583 'multi':15 'multi-step':14 'must':220 'mv':601 'n':270 'name':227,272,311,342 'need':71,86 'new':429,474,482,580 'note':646 'noth':117 'offer':394 'old':593 'one':176,250 'open':428,473 'option':406 'output':377,518,558,595 'overview':51 'page':517 'parallel':425,467,632,653 'pass':202,211,337,345 'past':682 'path':48,364,525 'pattern':605 'per':417,462 'plan':3,25,34,39,50,55,97,143,149,164,215,219,229,240,244,369,393,397,434,488,494,500,521,533,538,561,570,576,598,608,635,660 'point':566 'prevent':627 'problem':122 'protect':554 'pytest':308,339 'python':288,324 'question':66 'refactor':569 'refer':378 'relev':379 'rememb':361 'reorgan':572 'request':35 'requir':11,232,446,478,667 'result':293,297 'return':328 'review':419,465 'rout':555 'run':154,186,204,301,307,332,338,589,651 'save':163,391,400 'schema':542 'seem':609 'sentenc':251,259 'separ':427 'sequenti':655 'session':412,426,430,459,468,475,483,551 'simpl':492 'size':43,101,170,615 'skill':112,144,162,235,380,449,481 'skill-writing-plans' 'snippet':528 'solut':612,639,663 'source-deve1993' 'spec':9 'specif':291,359 'src/path/file.py':353 'stack':263 'start':136,221 'stay':456 'step':16,28,174,185,193,203,212,214,282,299,319,330,346,620 'structur':267,501,539,575,577,581 'sub':234,448,480 'sub-skil':233,447,479 'subag':409,416,443,453,461 'subagent-driven':408,442 'subagent-driven-develop':452 'superpow':237,451,485 'sure':190,209 'syntax':382 'take':622 'task':17,32,44,80,102,171,246,248,266,269,418,421,463,520,560,597,616,644,649 'task-by-task':245 'tast':67 'tdd':105,385 'tech':262 'technologies/libraries':265 'test':82,91,130,184,201,206,280,287,290,302,310,333,341,515,557,590 'tests/exact/path/to/test.py':281 'tests/path/test.py':309,340,352 'theme':508 'toggl':499,504 'toolset':120 'topic-agent-skills' 'topic-ai-agents' 'topic-ai-coding' 'topic-ai-workspace' 'topic-anti-poisoning' 'topic-auto-learning-ai' 'topic-automation' 'topic-claude-code' 'topic-code-quality' 'topic-cursor' 'topic-developer-tools' 'topic-devops' 'touch':19,77 'trigger':21 'troubleshoot':606 'two':404 'updat':511,586 'use':4,139,236,450,484 'user':536 'v':312,343 'valid':372,672,676 'variabl':513 'verifi':304,335 'vs':654 'well':133 'whole':96 'worktre':158,477 'write':2,26,49,52,142,181,284,321,670,673 'writing-plan':1,141 'x':645 'yagni':104,384 'zero':60","prices":[{"id":"76ded321-a76a-4259-a649-687def0ae43b","listingId":"9cebb257-9c42-4451-9e78-c299fe9c331e","amountUsd":"0","unit":"free","nativeCurrency":null,"nativeAmount":null,"chain":null,"payTo":null,"paymentMethod":"skill-free","isPrimary":true,"details":{"org":"deve1993","category":"Synapse","install_from":"skills.sh"},"createdAt":"2026-05-18T13:21:48.699Z"}],"sources":[{"listingId":"9cebb257-9c42-4451-9e78-c299fe9c331e","source":"github","sourceId":"deve1993/Synapse/writing-plans","sourceUrl":"https://github.com/deve1993/Synapse/tree/main/skills/writing-plans","isPrimary":false,"firstSeenAt":"2026-05-18T13:21:48.699Z","lastSeenAt":"2026-05-18T19:14:15.455Z"}],"details":{"listingId":"9cebb257-9c42-4451-9e78-c299fe9c331e","quickStartSnippet":null,"exampleRequest":null,"exampleResponse":null,"schema":null,"openapiUrl":null,"agentsTxtUrl":null,"citations":[],"useCases":[],"bestFor":[],"notFor":[],"kindDetails":{"org":"deve1993","slug":"writing-plans","github":{"repo":"deve1993/Synapse","stars":7,"topics":["agent-skills","ai-agents","ai-coding","ai-workspace","anti-poisoning","auto-learning-ai","automation","claude-code","code-quality","cursor","developer-tools","devops","fullstack-development","multi-agent-systems","nextjs","opencode","persistent-memory","self-improving","telegram-bot"],"license":"other","html_url":"https://github.com/deve1993/Synapse","pushed_at":"2026-05-15T21:34:01Z","description":"Self-improving AI brain for Claude Code & Desktop — 28 MCP tools, 253 skills, collective memory, project tracking, work logs. One server, all your sessions share the same knowledge. Deploy on Coolify in 2 minutes.","skill_md_sha":"aee8761e7748870db1bf6a4f76b3f544f800409e","skill_md_path":"skills/writing-plans/SKILL.md","default_branch":"main","skill_tree_url":"https://github.com/deve1993/Synapse/tree/main/skills/writing-plans"},"layout":"multi","source":"github","category":"Synapse","frontmatter":{"name":"writing-plans","description":"Use when you have a spec or requirements for a multi-step task, before touching code. Triggers on: \"create a plan\", \"write implementation steps\", \"break down the task\", any planning request. Creates comprehensive implementation plans with bite-sized tasks and exact file paths."},"skills_sh_url":"https://skills.sh/deve1993/Synapse/writing-plans"},"updatedAt":"2026-05-18T19:14:15.455Z"}}