nitm-ai-dev-toolkit 3.0.15
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +109 -0
- package/LICENSE +21 -0
- package/README.md +881 -0
- package/bin/cli.js +398 -0
- package/package.json +41 -0
- package/src/monorepo/.agents/rules/ponytail.md +3 -0
- package/src/monorepo/.agents/skills/acli/SKILL.md +424 -0
- package/src/monorepo/.agents/skills/bkt-cli/SKILL.md +374 -0
- package/src/monorepo/.agents/skills/brainstorming/SKILL.md +54 -0
- package/src/monorepo/.agents/skills/code-simplifier/SKILL.md +109 -0
- package/src/monorepo/.agents/skills/debugger/SKILL.md +123 -0
- package/src/monorepo/.agents/skills/dispatching-parallel-agents/SKILL.md +206 -0
- package/src/monorepo/.agents/skills/executing-plans/SKILL.md +76 -0
- package/src/monorepo/.agents/skills/finishing-a-development-branch/SKILL.md +200 -0
- package/src/monorepo/.agents/skills/gh-cli/SKILL.md +461 -0
- package/src/monorepo/.agents/skills/glab-cli/SKILL.md +468 -0
- package/src/monorepo/.agents/skills/issue-tracker/SKILL.md +119 -0
- package/src/monorepo/.agents/skills/linear-cli/SKILL.md +276 -0
- package/src/monorepo/.agents/skills/logging/SKILL.md +393 -0
- package/src/monorepo/.agents/skills/orient-to-recent-work/SKILL.md +43 -0
- package/src/monorepo/.agents/skills/ponytail/SKILL.md +101 -0
- package/src/monorepo/.agents/skills/ponytail-audit/SKILL.md +41 -0
- package/src/monorepo/.agents/skills/ponytail-debt/SKILL.md +44 -0
- package/src/monorepo/.agents/skills/ponytail-gain/SKILL.md +51 -0
- package/src/monorepo/.agents/skills/ponytail-help/SKILL.md +74 -0
- package/src/monorepo/.agents/skills/ponytail-review/SKILL.md +57 -0
- package/src/monorepo/.agents/skills/project-documentation/SKILL.md +425 -0
- package/src/monorepo/.agents/skills/receiving-code-review/SKILL.md +213 -0
- package/src/monorepo/.agents/skills/requesting-code-review/SKILL.md +105 -0
- package/src/monorepo/.agents/skills/requesting-code-review/code-reviewer.md +146 -0
- package/src/monorepo/.agents/skills/security-reviewer/SKILL.md +144 -0
- package/src/monorepo/.agents/skills/subagent-driven-development/SKILL.md +279 -0
- package/src/monorepo/.agents/skills/subagent-driven-development/code-quality-reviewer-prompt.md +20 -0
- package/src/monorepo/.agents/skills/subagent-driven-development/implementer-prompt.md +78 -0
- package/src/monorepo/.agents/skills/subagent-driven-development/spec-reviewer-prompt.md +61 -0
- package/src/monorepo/.agents/skills/systematic-debugging/CREATION-LOG.md +119 -0
- package/src/monorepo/.agents/skills/systematic-debugging/SKILL.md +296 -0
- package/src/monorepo/.agents/skills/systematic-debugging/condition-based-waiting-example.ts +158 -0
- package/src/monorepo/.agents/skills/systematic-debugging/condition-based-waiting.md +115 -0
- package/src/monorepo/.agents/skills/systematic-debugging/defense-in-depth.md +122 -0
- package/src/monorepo/.agents/skills/systematic-debugging/find-polluter.sh +63 -0
- package/src/monorepo/.agents/skills/systematic-debugging/root-cause-tracing.md +169 -0
- package/src/monorepo/.agents/skills/systematic-debugging/test-academic.md +14 -0
- package/src/monorepo/.agents/skills/systematic-debugging/test-pressure-1.md +58 -0
- package/src/monorepo/.agents/skills/systematic-debugging/test-pressure-2.md +68 -0
- package/src/monorepo/.agents/skills/systematic-debugging/test-pressure-3.md +69 -0
- package/src/monorepo/.agents/skills/test-driven-development/SKILL.md +371 -0
- package/src/monorepo/.agents/skills/test-driven-development/testing-anti-patterns.md +299 -0
- package/src/monorepo/.agents/skills/using-git-worktrees/SKILL.md +291 -0
- package/src/monorepo/.agents/skills/using-superpowers/SKILL.md +87 -0
- package/src/monorepo/.agents/skills/verification-before-completion/SKILL.md +148 -0
- package/src/monorepo/.agents/skills/writing-plans/SKILL.md +116 -0
- package/src/monorepo/.agents/skills/writing-skills/SKILL.md +655 -0
- package/src/monorepo/.agents/skills/writing-skills/anthropic-best-practices.md +1150 -0
- package/src/monorepo/.agents/skills/writing-skills/examples/CLAUDE_MD_TESTING.md +189 -0
- package/src/monorepo/.agents/skills/writing-skills/graphviz-conventions.dot +172 -0
- package/src/monorepo/.agents/skills/writing-skills/persuasion-principles.md +187 -0
- package/src/monorepo/.agents/skills/writing-skills/render-graphs.js +168 -0
- package/src/monorepo/.agents/skills/writing-skills/testing-skills-with-subagents.md +384 -0
- package/src/monorepo/.claude/agents/admin-portal.agent.md +11 -0
- package/src/monorepo/.claude/agents/api-specialist.agent.md +11 -0
- package/src/monorepo/.claude/agents/backend-architect.agent.md +11 -0
- package/src/monorepo/.claude/agents/documenter.agent.md +11 -0
- package/src/monorepo/.claude/agents/feature-builder.agent.md +23 -0
- package/src/monorepo/.claude/agents/frontend-developer.agent.md +11 -0
- package/src/monorepo/.claude/agents/green.agent.md +12 -0
- package/src/monorepo/.claude/agents/implementer.agent.md +12 -0
- package/src/monorepo/.claude/agents/planner.agent.md +12 -0
- package/src/monorepo/.claude/agents/red.agent.md +12 -0
- package/src/monorepo/.claude/agents/refactor.agent.md +12 -0
- package/src/monorepo/.claude/agents/researcher.agent.md +12 -0
- package/src/monorepo/.claude/agents/reviewer.agent.md +11 -0
- package/src/monorepo/.claude/agents/tdd.agent.md +12 -0
- package/src/monorepo/.claude/agents-snippets/admin-portal.md +90 -0
- package/src/monorepo/.claude/agents-snippets/api-specialist.md +57 -0
- package/src/monorepo/.claude/agents-snippets/backend-architect.md +49 -0
- package/src/monorepo/.claude/agents-snippets/documenter.md +58 -0
- package/src/monorepo/.claude/agents-snippets/feature-builder.md +49 -0
- package/src/monorepo/.claude/agents-snippets/frontend-developer.md +49 -0
- package/src/monorepo/.claude/agents-snippets/green.md +18 -0
- package/src/monorepo/.claude/agents-snippets/implementer.md +31 -0
- package/src/monorepo/.claude/agents-snippets/planner.md +40 -0
- package/src/monorepo/.claude/agents-snippets/red.md +14 -0
- package/src/monorepo/.claude/agents-snippets/refactor.md +22 -0
- package/src/monorepo/.claude/agents-snippets/researcher.md +43 -0
- package/src/monorepo/.claude/agents-snippets/reviewer.md +83 -0
- package/src/monorepo/.claude/agents-snippets/tdd.md +18 -0
- package/src/monorepo/.claude/commands/assign-tasks.md +13 -0
- package/src/monorepo/.claude/commands/bootstrap-patch.md +15 -0
- package/src/monorepo/.claude/commands/bootstrap-upgrade.md +15 -0
- package/src/monorepo/.claude/commands/bootstrap.md +15 -0
- package/src/monorepo/.claude/commands/commit-push.md +13 -0
- package/src/monorepo/.claude/commands/constitution.md +15 -0
- package/src/monorepo/.claude/commands/create-skill.md +15 -0
- package/src/monorepo/.claude/commands/implement-feature.md +15 -0
- package/src/monorepo/.claude/commands/implement-fixes.md +15 -0
- package/src/monorepo/.claude/commands/implement.md +15 -0
- package/src/monorepo/.claude/commands/plan.md +15 -0
- package/src/monorepo/.claude/commands/playwright-test.md +13 -0
- package/src/monorepo/.claude/commands/ponytail-audit.md +15 -0
- package/src/monorepo/.claude/commands/ponytail-debt.md +15 -0
- package/src/monorepo/.claude/commands/ponytail-gain.md +15 -0
- package/src/monorepo/.claude/commands/ponytail-help.md +15 -0
- package/src/monorepo/.claude/commands/ponytail-review.md +15 -0
- package/src/monorepo/.claude/commands/ponytail.md +15 -0
- package/src/monorepo/.claude/commands/release-notes.md +13 -0
- package/src/monorepo/.claude/commands/review-pr.md +15 -0
- package/src/monorepo/.claude/commands/review-staged.md +15 -0
- package/src/monorepo/.claude/commands/review.md +15 -0
- package/src/monorepo/.claude/commands/specify.md +15 -0
- package/src/monorepo/.claude/commands/tasks.md +13 -0
- package/src/monorepo/.claude/prompt-snippets/assign-tasks.md +169 -0
- package/src/monorepo/.claude/prompt-snippets/bootstrap-patch.md +199 -0
- package/src/monorepo/.claude/prompt-snippets/bootstrap-upgrade.md +452 -0
- package/src/monorepo/.claude/prompt-snippets/bootstrap.md +764 -0
- package/src/monorepo/.claude/prompt-snippets/commit-push.md +69 -0
- package/src/monorepo/.claude/prompt-snippets/constitution.md +57 -0
- package/src/monorepo/.claude/prompt-snippets/create-skill.md +490 -0
- package/src/monorepo/.claude/prompt-snippets/implement-feature.md +119 -0
- package/src/monorepo/.claude/prompt-snippets/implement-fixes.md +122 -0
- package/src/monorepo/.claude/prompt-snippets/implement.md +56 -0
- package/src/monorepo/.claude/prompt-snippets/plan.md +67 -0
- package/src/monorepo/.claude/prompt-snippets/playwright-test.md +55 -0
- package/src/monorepo/.claude/prompt-snippets/ponytail-audit.md +5 -0
- package/src/monorepo/.claude/prompt-snippets/ponytail-debt.md +5 -0
- package/src/monorepo/.claude/prompt-snippets/ponytail-gain.md +5 -0
- package/src/monorepo/.claude/prompt-snippets/ponytail-help.md +5 -0
- package/src/monorepo/.claude/prompt-snippets/ponytail-review.md +5 -0
- package/src/monorepo/.claude/prompt-snippets/ponytail.md +5 -0
- package/src/monorepo/.claude/prompt-snippets/release-notes.md +134 -0
- package/src/monorepo/.claude/prompt-snippets/review-pr.md +156 -0
- package/src/monorepo/.claude/prompt-snippets/review-staged.md +35 -0
- package/src/monorepo/.claude/prompt-snippets/review.md +139 -0
- package/src/monorepo/.claude/prompt-snippets/specify.md +51 -0
- package/src/monorepo/.claude/prompt-snippets/tasks.md +108 -0
- package/src/monorepo/.claude/rules/agent-conduct.md +14 -0
- package/src/monorepo/.claude/rules/api-server.md +19 -0
- package/src/monorepo/.claude/rules/coding-standards.md +13 -0
- package/src/monorepo/.claude/rules/component-structure.md +18 -0
- package/src/monorepo/.claude/rules/core-libraries.md +16 -0
- package/src/monorepo/.claude/rules/environment-tooling.md +12 -0
- package/src/monorepo/.claude/rules/logging-comments.md +17 -0
- package/src/monorepo/.claude/rules/logging.md +17 -0
- package/src/monorepo/.claude/rules/orient-to-recent-work.md +13 -0
- package/src/monorepo/.claude/rules/prisma-migrations.md +16 -0
- package/src/monorepo/.claude/rules/project-context.md +14 -0
- package/src/monorepo/.claude/rules/server-client-separation.md +17 -0
- package/src/monorepo/.claude/rules/subagent-workflow.md +14 -0
- package/src/monorepo/.claude/rules/testing-quality.md +19 -0
- package/src/monorepo/.claude/rules/testing.md +16 -0
- package/src/monorepo/.claude/rules/ui-accessibility.md +18 -0
- package/src/monorepo/.claude/rules/version-control.md +14 -0
- package/src/monorepo/.claude/rules/what-to-avoid.md +14 -0
- package/src/monorepo/.claude/rules-snippets/agent-conduct.md +51 -0
- package/src/monorepo/.claude/rules-snippets/api-server.md +5 -0
- package/src/monorepo/.claude/rules-snippets/coding-standards.md +45 -0
- package/src/monorepo/.claude/rules-snippets/component-structure.md +6 -0
- package/src/monorepo/.claude/rules-snippets/core-libraries.md +6 -0
- package/src/monorepo/.claude/rules-snippets/deployment.md +41 -0
- package/src/monorepo/.claude/rules-snippets/documentation.md +210 -0
- package/src/monorepo/.claude/rules-snippets/environment-tooling.md +4 -0
- package/src/monorepo/.claude/rules-snippets/logging-comments.md +4 -0
- package/src/monorepo/.claude/rules-snippets/logging.md +107 -0
- package/src/monorepo/.claude/rules-snippets/patterns.md +134 -0
- package/src/monorepo/.claude/rules-snippets/ponytail.md +24 -0
- package/src/monorepo/.claude/rules-snippets/prisma-migrations.md +6 -0
- package/src/monorepo/.claude/rules-snippets/project-context.md +8 -0
- package/src/monorepo/.claude/rules-snippets/server-client-separation.md +5 -0
- package/src/monorepo/.claude/rules-snippets/subagent-workflow.md +134 -0
- package/src/monorepo/.claude/rules-snippets/testing-quality.md +5 -0
- package/src/monorepo/.claude/rules-snippets/testing.md +42 -0
- package/src/monorepo/.claude/rules-snippets/ui-accessibility.md +5 -0
- package/src/monorepo/.claude/rules-snippets/version-control.md +4 -0
- package/src/monorepo/.claude/rules-snippets/what-to-avoid.md +6 -0
- package/src/monorepo/.claude/rules-snippets/workflows.md +81 -0
- package/src/monorepo/.claude/settings.json +7 -0
- package/src/monorepo/.claude/skills/README.md +50 -0
- package/src/monorepo/.cursor/agents/admin-portal.agent.md +11 -0
- package/src/monorepo/.cursor/agents/api-specialist.agent.md +11 -0
- package/src/monorepo/.cursor/agents/backend-architect.agent.md +11 -0
- package/src/monorepo/.cursor/agents/documenter.agent.md +11 -0
- package/src/monorepo/.cursor/agents/feature-builder.agent.md +11 -0
- package/src/monorepo/.cursor/agents/frontend-developer.agent.md +11 -0
- package/src/monorepo/.cursor/agents/green.agent.md +11 -0
- package/src/monorepo/.cursor/agents/implementer.agent.md +11 -0
- package/src/monorepo/.cursor/agents/planner.agent.md +11 -0
- package/src/monorepo/.cursor/agents/red.agent.md +11 -0
- package/src/monorepo/.cursor/agents/refactor.agent.md +11 -0
- package/src/monorepo/.cursor/agents/researcher.agent.md +11 -0
- package/src/monorepo/.cursor/agents/reviewer.agent.md +11 -0
- package/src/monorepo/.cursor/agents/tdd.agent.md +11 -0
- package/src/monorepo/.cursor/commands/assign-tasks.md +13 -0
- package/src/monorepo/.cursor/commands/bootstrap-patch.md +17 -0
- package/src/monorepo/.cursor/commands/bootstrap-upgrade.md +15 -0
- package/src/monorepo/.cursor/commands/bootstrap.md +17 -0
- package/src/monorepo/.cursor/commands/commit-push.md +15 -0
- package/src/monorepo/.cursor/commands/constitution.md +17 -0
- package/src/monorepo/.cursor/commands/create-skill.md +17 -0
- package/src/monorepo/.cursor/commands/implement-feature.md +17 -0
- package/src/monorepo/.cursor/commands/implement-fixes.md +17 -0
- package/src/monorepo/.cursor/commands/implement.md +17 -0
- package/src/monorepo/.cursor/commands/plan.md +17 -0
- package/src/monorepo/.cursor/commands/playwright-test.md +15 -0
- package/src/monorepo/.cursor/commands/ponytail-audit.md +13 -0
- package/src/monorepo/.cursor/commands/ponytail-debt.md +13 -0
- package/src/monorepo/.cursor/commands/ponytail-gain.md +13 -0
- package/src/monorepo/.cursor/commands/ponytail-help.md +13 -0
- package/src/monorepo/.cursor/commands/ponytail-review.md +13 -0
- package/src/monorepo/.cursor/commands/ponytail.md +13 -0
- package/src/monorepo/.cursor/commands/release-notes.md +15 -0
- package/src/monorepo/.cursor/commands/review-pr.md +17 -0
- package/src/monorepo/.cursor/commands/review-staged.md +10 -0
- package/src/monorepo/.cursor/commands/review.md +17 -0
- package/src/monorepo/.cursor/commands/specify.md +17 -0
- package/src/monorepo/.cursor/commands/tasks.md +15 -0
- package/src/monorepo/.cursor/mcp.json +13 -0
- package/src/monorepo/.cursor/rules/agent-conduct.mdc +11 -0
- package/src/monorepo/.cursor/rules/api-server.mdc +11 -0
- package/src/monorepo/.cursor/rules/coding-standards.mdc +11 -0
- package/src/monorepo/.cursor/rules/component-structure.mdc +11 -0
- package/src/monorepo/.cursor/rules/core-libraries.mdc +11 -0
- package/src/monorepo/.cursor/rules/environment-tooling.mdc +11 -0
- package/src/monorepo/.cursor/rules/logging-comments.mdc +11 -0
- package/src/monorepo/.cursor/rules/logging.mdc +10 -0
- package/src/monorepo/.cursor/rules/orient-to-recent-work.mdc +9 -0
- package/src/monorepo/.cursor/rules/ponytail.mdc +9 -0
- package/src/monorepo/.cursor/rules/prisma-migrations.mdc +11 -0
- package/src/monorepo/.cursor/rules/project-context.mdc +11 -0
- package/src/monorepo/.cursor/rules/server-client-separation.mdc +11 -0
- package/src/monorepo/.cursor/rules/subagent-workflow.mdc +11 -0
- package/src/monorepo/.cursor/rules/testing-quality.mdc +11 -0
- package/src/monorepo/.cursor/rules/ui-accessibility.mdc +11 -0
- package/src/monorepo/.cursor/rules/version-control.mdc +11 -0
- package/src/monorepo/.cursor/rules/what-to-avoid.mdc +11 -0
- package/src/monorepo/.cursor/skills/README.md +50 -0
- package/src/monorepo/.github/agents/admin-portal.agent.md +11 -0
- package/src/monorepo/.github/agents/api-specialist.agent.md +11 -0
- package/src/monorepo/.github/agents/backend-architect.agent.md +11 -0
- package/src/monorepo/.github/agents/documenter.agent.md +11 -0
- package/src/monorepo/.github/agents/feature-builder.agent.md +24 -0
- package/src/monorepo/.github/agents/frontend-developer.agent.md +11 -0
- package/src/monorepo/.github/agents/green.agent.md +12 -0
- package/src/monorepo/.github/agents/implementer.agent.md +12 -0
- package/src/monorepo/.github/agents/planner.agent.md +12 -0
- package/src/monorepo/.github/agents/red.agent.md +12 -0
- package/src/monorepo/.github/agents/refactor.agent.md +12 -0
- package/src/monorepo/.github/agents/researcher.agent.md +12 -0
- package/src/monorepo/.github/agents/reviewer.agent.md +11 -0
- package/src/monorepo/.github/agents/tdd.agent.md +13 -0
- package/src/monorepo/.github/copilot-instructions.md +95 -0
- package/src/monorepo/.github/instructions/agent-conduct.instructions.md +14 -0
- package/src/monorepo/.github/instructions/api-server.instructions.md +14 -0
- package/src/monorepo/.github/instructions/coding-standards.instructions.md +13 -0
- package/src/monorepo/.github/instructions/component-structure.instructions.md +14 -0
- package/src/monorepo/.github/instructions/core-libraries.instructions.md +14 -0
- package/src/monorepo/.github/instructions/deployment.instructions.md +13 -0
- package/src/monorepo/.github/instructions/documentation.instructions.md +14 -0
- package/src/monorepo/.github/instructions/environment-tooling.instructions.md +14 -0
- package/src/monorepo/.github/instructions/logging-comments.instructions.md +14 -0
- package/src/monorepo/.github/instructions/logging.instructions.md +14 -0
- package/src/monorepo/.github/instructions/patterns.instructions.md +14 -0
- package/src/monorepo/.github/instructions/prisma-migrations.instructions.md +14 -0
- package/src/monorepo/.github/instructions/project-context.instructions.md +13 -0
- package/src/monorepo/.github/instructions/server-client-separation.instructions.md +14 -0
- package/src/monorepo/.github/instructions/subagent-workflow.instructions.md +14 -0
- package/src/monorepo/.github/instructions/testing-quality.instructions.md +15 -0
- package/src/monorepo/.github/instructions/testing.instructions.md +14 -0
- package/src/monorepo/.github/instructions/ui-accessibility.instructions.md +14 -0
- package/src/monorepo/.github/instructions/version-control.instructions.md +14 -0
- package/src/monorepo/.github/instructions/what-to-avoid.instructions.md +14 -0
- package/src/monorepo/.github/instructions/workflows.instructions.md +14 -0
- package/src/monorepo/.github/prompts/assign-tasks.prompt.md +14 -0
- package/src/monorepo/.github/prompts/bootstrap-patch.prompt.md +15 -0
- package/src/monorepo/.github/prompts/bootstrap-upgrade.prompt.md +15 -0
- package/src/monorepo/.github/prompts/bootstrap.prompt.md +15 -0
- package/src/monorepo/.github/prompts/commit-push.prompt.md +13 -0
- package/src/monorepo/.github/prompts/constitution.prompt.md +15 -0
- package/src/monorepo/.github/prompts/create-skill.prompt.md +15 -0
- package/src/monorepo/.github/prompts/implement-feature.prompt.md +15 -0
- package/src/monorepo/.github/prompts/implement-fixes.prompt.md +15 -0
- package/src/monorepo/.github/prompts/implement.prompt.md +15 -0
- package/src/monorepo/.github/prompts/plan.prompt.md +15 -0
- package/src/monorepo/.github/prompts/playwright-test.prompt.md +13 -0
- package/src/monorepo/.github/prompts/ponytail-audit.prompt.md +13 -0
- package/src/monorepo/.github/prompts/ponytail-debt.prompt.md +13 -0
- package/src/monorepo/.github/prompts/ponytail-gain.prompt.md +13 -0
- package/src/monorepo/.github/prompts/ponytail-help.prompt.md +13 -0
- package/src/monorepo/.github/prompts/ponytail-review.prompt.md +13 -0
- package/src/monorepo/.github/prompts/ponytail.prompt.md +13 -0
- package/src/monorepo/.github/prompts/release-notes.prompt.md +13 -0
- package/src/monorepo/.github/prompts/review-pr.prompt.md +15 -0
- package/src/monorepo/.github/prompts/review-staged.prompt.md +16 -0
- package/src/monorepo/.github/prompts/review.prompt.md +15 -0
- package/src/monorepo/.github/prompts/specify.prompt.md +15 -0
- package/src/monorepo/.github/prompts/tasks.prompt.md +13 -0
- package/src/monorepo/.github/skills/README.md +36 -0
- package/src/monorepo/.mcp.json +13 -0
- package/src/monorepo/.opencode/agents/admin-portal.md +14 -0
- package/src/monorepo/.opencode/agents/api-specialist.md +14 -0
- package/src/monorepo/.opencode/agents/backend-architect.md +14 -0
- package/src/monorepo/.opencode/agents/documenter.md +14 -0
- package/src/monorepo/.opencode/agents/feature-builder.md +15 -0
- package/src/monorepo/.opencode/agents/frontend-developer.md +14 -0
- package/src/monorepo/.opencode/agents/green.md +14 -0
- package/src/monorepo/.opencode/agents/implementer.md +14 -0
- package/src/monorepo/.opencode/agents/planner.md +14 -0
- package/src/monorepo/.opencode/agents/red.md +14 -0
- package/src/monorepo/.opencode/agents/refactor.md +14 -0
- package/src/monorepo/.opencode/agents/researcher.md +14 -0
- package/src/monorepo/.opencode/agents/reviewer.md +14 -0
- package/src/monorepo/.opencode/agents/tdd.md +15 -0
- package/src/monorepo/.opencode/commands/assign-tasks.md +16 -0
- package/src/monorepo/.opencode/commands/bootstrap-patch.md +18 -0
- package/src/monorepo/.opencode/commands/bootstrap-upgrade.md +18 -0
- package/src/monorepo/.opencode/commands/bootstrap.md +18 -0
- package/src/monorepo/.opencode/commands/commit-push.md +16 -0
- package/src/monorepo/.opencode/commands/constitution.md +18 -0
- package/src/monorepo/.opencode/commands/create-skill.md +16 -0
- package/src/monorepo/.opencode/commands/implement-feature.md +18 -0
- package/src/monorepo/.opencode/commands/implement-fixes.md +20 -0
- package/src/monorepo/.opencode/commands/implement.md +18 -0
- package/src/monorepo/.opencode/commands/plan.md +18 -0
- package/src/monorepo/.opencode/commands/playwright-test.md +16 -0
- package/src/monorepo/.opencode/commands/ponytail-audit.md +10 -0
- package/src/monorepo/.opencode/commands/ponytail-debt.md +10 -0
- package/src/monorepo/.opencode/commands/ponytail-gain.md +10 -0
- package/src/monorepo/.opencode/commands/ponytail-help.md +10 -0
- package/src/monorepo/.opencode/commands/ponytail-review.md +10 -0
- package/src/monorepo/.opencode/commands/ponytail.md +10 -0
- package/src/monorepo/.opencode/commands/release-notes.md +16 -0
- package/src/monorepo/.opencode/commands/review-pr.md +18 -0
- package/src/monorepo/.opencode/commands/review-staged.md +11 -0
- package/src/monorepo/.opencode/commands/review.md +18 -0
- package/src/monorepo/.opencode/commands/specify.md +18 -0
- package/src/monorepo/.opencode/commands/tasks.md +16 -0
- package/src/monorepo/.opencode/opencode.json +9 -0
- package/src/monorepo/.opencode/plugins/ponytail.mjs +79 -0
- package/src/monorepo/.opencode/rules/agent-conduct.md +12 -0
- package/src/monorepo/.opencode/rules/api-server.md +11 -0
- package/src/monorepo/.opencode/rules/coding-standards.md +11 -0
- package/src/monorepo/.opencode/rules/component-structure.md +11 -0
- package/src/monorepo/.opencode/rules/core-libraries.md +11 -0
- package/src/monorepo/.opencode/rules/environment-tooling.md +11 -0
- package/src/monorepo/.opencode/rules/logging-comments.md +11 -0
- package/src/monorepo/.opencode/rules/logging.md +11 -0
- package/src/monorepo/.opencode/rules/ponytail.md +3 -0
- package/src/monorepo/.opencode/rules/prisma-migrations.md +11 -0
- package/src/monorepo/.opencode/rules/project-context.md +11 -0
- package/src/monorepo/.opencode/rules/server-client-separation.md +11 -0
- package/src/monorepo/.opencode/rules/subagent-workflow.md +11 -0
- package/src/monorepo/.opencode/rules/testing-quality.md +11 -0
- package/src/monorepo/.opencode/rules/ui-accessibility.md +11 -0
- package/src/monorepo/.opencode/rules/version-control.md +11 -0
- package/src/monorepo/.opencode/rules/what-to-avoid.md +11 -0
- package/src/monorepo/.vscode/mcp.json +13 -0
- package/src/monorepo/AGENTS.md +367 -0
- package/src/monorepo/CLAUDE.md +63 -0
- package/src/monorepo/README.md +182 -0
- package/src/monorepo/apps/app-template/AGENTS.md +169 -0
- package/src/monorepo/apps/app-template/README.md +77 -0
- package/src/monorepo/docs/api/README.md +82 -0
- package/src/monorepo/docs/architecture/README.md +56 -0
- package/src/monorepo/docs/features/README.md +82 -0
- package/src/monorepo/docs/fixes/README.md +117 -0
- package/src/monorepo/hooks/claude-codex-hooks.json +31 -0
- package/src/monorepo/hooks/copilot-hooks.json +21 -0
- package/src/monorepo/hooks/ponytail-activate.js +91 -0
- package/src/monorepo/hooks/ponytail-config.js +122 -0
- package/src/monorepo/hooks/ponytail-instructions.js +92 -0
- package/src/monorepo/hooks/ponytail-mode-tracker.js +55 -0
- package/src/monorepo/hooks/ponytail-runtime.js +51 -0
- package/src/monorepo/hooks/ponytail-statusline.ps1 +21 -0
- package/src/monorepo/hooks/ponytail-statusline.sh +12 -0
- package/src/monorepo/packages/package-template/README.md +63 -0
- package/src/monorepo/templates/README.md +106 -0
- package/src/monorepo/templates/adr.template.md +156 -0
- package/src/monorepo/templates/complex-fix-plan.template.md +154 -0
- package/src/monorepo/templates/complex-fix-spec.template.md +160 -0
- package/src/monorepo/templates/feature-plan.template.md +192 -0
- package/src/monorepo/templates/feature-spec.template.md +148 -0
- package/src/monorepo/templates/monthly-fix-log.template.md +92 -0
- package/src/repo/.agents/rules/ponytail.md +3 -0
- package/src/repo/.agents/skills/acli/SKILL.md +424 -0
- package/src/repo/.agents/skills/bkt-cli/SKILL.md +374 -0
- package/src/repo/.agents/skills/brainstorming/SKILL.md +54 -0
- package/src/repo/.agents/skills/code-simplifier/SKILL.md +109 -0
- package/src/repo/.agents/skills/debugger/SKILL.md +123 -0
- package/src/repo/.agents/skills/dispatching-parallel-agents/SKILL.md +206 -0
- package/src/repo/.agents/skills/executing-plans/SKILL.md +76 -0
- package/src/repo/.agents/skills/finishing-a-development-branch/SKILL.md +200 -0
- package/src/repo/.agents/skills/gh-cli/SKILL.md +461 -0
- package/src/repo/.agents/skills/glab-cli/SKILL.md +468 -0
- package/src/repo/.agents/skills/issue-tracker/SKILL.md +119 -0
- package/src/repo/.agents/skills/linear-cli/SKILL.md +276 -0
- package/src/repo/.agents/skills/logging/SKILL.md +559 -0
- package/src/repo/.agents/skills/orient-to-recent-work/SKILL.md +43 -0
- package/src/repo/.agents/skills/ponytail/SKILL.md +101 -0
- package/src/repo/.agents/skills/ponytail-audit/SKILL.md +41 -0
- package/src/repo/.agents/skills/ponytail-debt/SKILL.md +44 -0
- package/src/repo/.agents/skills/ponytail-gain/SKILL.md +51 -0
- package/src/repo/.agents/skills/ponytail-help/SKILL.md +74 -0
- package/src/repo/.agents/skills/ponytail-review/SKILL.md +57 -0
- package/src/repo/.agents/skills/project-documentation/SKILL.md +367 -0
- package/src/repo/.agents/skills/receiving-code-review/SKILL.md +213 -0
- package/src/repo/.agents/skills/requesting-code-review/SKILL.md +105 -0
- package/src/repo/.agents/skills/requesting-code-review/code-reviewer.md +146 -0
- package/src/repo/.agents/skills/security-reviewer/SKILL.md +144 -0
- package/src/repo/.agents/skills/subagent-driven-development/SKILL.md +279 -0
- package/src/repo/.agents/skills/subagent-driven-development/code-quality-reviewer-prompt.md +20 -0
- package/src/repo/.agents/skills/subagent-driven-development/implementer-prompt.md +78 -0
- package/src/repo/.agents/skills/subagent-driven-development/spec-reviewer-prompt.md +61 -0
- package/src/repo/.agents/skills/systematic-debugging/CREATION-LOG.md +119 -0
- package/src/repo/.agents/skills/systematic-debugging/SKILL.md +296 -0
- package/src/repo/.agents/skills/systematic-debugging/condition-based-waiting-example.ts +158 -0
- package/src/repo/.agents/skills/systematic-debugging/condition-based-waiting.md +115 -0
- package/src/repo/.agents/skills/systematic-debugging/defense-in-depth.md +122 -0
- package/src/repo/.agents/skills/systematic-debugging/find-polluter.sh +63 -0
- package/src/repo/.agents/skills/systematic-debugging/root-cause-tracing.md +169 -0
- package/src/repo/.agents/skills/systematic-debugging/test-academic.md +14 -0
- package/src/repo/.agents/skills/systematic-debugging/test-pressure-1.md +58 -0
- package/src/repo/.agents/skills/systematic-debugging/test-pressure-2.md +68 -0
- package/src/repo/.agents/skills/systematic-debugging/test-pressure-3.md +69 -0
- package/src/repo/.agents/skills/test-driven-development/SKILL.md +371 -0
- package/src/repo/.agents/skills/test-driven-development/testing-anti-patterns.md +299 -0
- package/src/repo/.agents/skills/using-git-worktrees/SKILL.md +291 -0
- package/src/repo/.agents/skills/using-superpowers/SKILL.md +87 -0
- package/src/repo/.agents/skills/verification-before-completion/SKILL.md +148 -0
- package/src/repo/.agents/skills/writing-plans/SKILL.md +116 -0
- package/src/repo/.agents/skills/writing-skills/SKILL.md +655 -0
- package/src/repo/.agents/skills/writing-skills/anthropic-best-practices.md +1150 -0
- package/src/repo/.agents/skills/writing-skills/examples/CLAUDE_MD_TESTING.md +189 -0
- package/src/repo/.agents/skills/writing-skills/graphviz-conventions.dot +172 -0
- package/src/repo/.agents/skills/writing-skills/persuasion-principles.md +187 -0
- package/src/repo/.agents/skills/writing-skills/render-graphs.js +168 -0
- package/src/repo/.agents/skills/writing-skills/testing-skills-with-subagents.md +384 -0
- package/src/repo/.claude/agents/admin-portal.agent.md +12 -0
- package/src/repo/.claude/agents/api-specialist.agent.md +12 -0
- package/src/repo/.claude/agents/backend-architect.agent.md +12 -0
- package/src/repo/.claude/agents/documenter.agent.md +12 -0
- package/src/repo/.claude/agents/feature-builder.agent.md +12 -0
- package/src/repo/.claude/agents/frontend-developer.agent.md +12 -0
- package/src/repo/.claude/agents/green.agent.md +12 -0
- package/src/repo/.claude/agents/implementer.agent.md +12 -0
- package/src/repo/.claude/agents/planner.agent.md +12 -0
- package/src/repo/.claude/agents/red.agent.md +12 -0
- package/src/repo/.claude/agents/refactor.agent.md +12 -0
- package/src/repo/.claude/agents/researcher.agent.md +12 -0
- package/src/repo/.claude/agents/reviewer.agent.md +12 -0
- package/src/repo/.claude/agents/tdd.agent.md +12 -0
- package/src/repo/.claude/agents-snippets/admin-portal.md +90 -0
- package/src/repo/.claude/agents-snippets/api-specialist.md +57 -0
- package/src/repo/.claude/agents-snippets/backend-architect.md +49 -0
- package/src/repo/.claude/agents-snippets/documenter.md +58 -0
- package/src/repo/.claude/agents-snippets/feature-builder.md +49 -0
- package/src/repo/.claude/agents-snippets/frontend-developer.md +49 -0
- package/src/repo/.claude/agents-snippets/green.md +18 -0
- package/src/repo/.claude/agents-snippets/implementer.md +31 -0
- package/src/repo/.claude/agents-snippets/planner.md +40 -0
- package/src/repo/.claude/agents-snippets/red.md +14 -0
- package/src/repo/.claude/agents-snippets/refactor.md +22 -0
- package/src/repo/.claude/agents-snippets/researcher.md +43 -0
- package/src/repo/.claude/agents-snippets/reviewer.md +83 -0
- package/src/repo/.claude/agents-snippets/tdd.md +18 -0
- package/src/repo/.claude/commands/assign-tasks.md +13 -0
- package/src/repo/.claude/commands/bootstrap-patch.md +15 -0
- package/src/repo/.claude/commands/bootstrap-upgrade.md +15 -0
- package/src/repo/.claude/commands/bootstrap.md +15 -0
- package/src/repo/.claude/commands/commit-push.md +13 -0
- package/src/repo/.claude/commands/constitution.md +15 -0
- package/src/repo/.claude/commands/create-skill.md +13 -0
- package/src/repo/.claude/commands/implement-feature.md +15 -0
- package/src/repo/.claude/commands/implement-fixes.md +15 -0
- package/src/repo/.claude/commands/implement.md +15 -0
- package/src/repo/.claude/commands/plan.md +15 -0
- package/src/repo/.claude/commands/playwright-test.md +13 -0
- package/src/repo/.claude/commands/ponytail-audit.md +15 -0
- package/src/repo/.claude/commands/ponytail-debt.md +15 -0
- package/src/repo/.claude/commands/ponytail-gain.md +15 -0
- package/src/repo/.claude/commands/ponytail-help.md +15 -0
- package/src/repo/.claude/commands/ponytail-review.md +15 -0
- package/src/repo/.claude/commands/ponytail.md +15 -0
- package/src/repo/.claude/commands/release-notes.md +13 -0
- package/src/repo/.claude/commands/review-pr.md +15 -0
- package/src/repo/.claude/commands/review-staged.md +15 -0
- package/src/repo/.claude/commands/review.md +15 -0
- package/src/repo/.claude/commands/specify.md +15 -0
- package/src/repo/.claude/commands/tasks.md +13 -0
- package/src/repo/.claude/prompt-snippets/assign-tasks.md +170 -0
- package/src/repo/.claude/prompt-snippets/bootstrap-patch.md +200 -0
- package/src/repo/.claude/prompt-snippets/bootstrap-upgrade.md +357 -0
- package/src/repo/.claude/prompt-snippets/bootstrap.md +1026 -0
- package/src/repo/.claude/prompt-snippets/commit-push.md +70 -0
- package/src/repo/.claude/prompt-snippets/constitution.md +57 -0
- package/src/repo/.claude/prompt-snippets/create-skill.md +490 -0
- package/src/repo/.claude/prompt-snippets/implement-feature.md +124 -0
- package/src/repo/.claude/prompt-snippets/implement-fixes.md +116 -0
- package/src/repo/.claude/prompt-snippets/implement.md +56 -0
- package/src/repo/.claude/prompt-snippets/plan.md +94 -0
- package/src/repo/.claude/prompt-snippets/playwright-test.md +58 -0
- package/src/repo/.claude/prompt-snippets/ponytail-audit.md +5 -0
- package/src/repo/.claude/prompt-snippets/ponytail-debt.md +5 -0
- package/src/repo/.claude/prompt-snippets/ponytail-gain.md +5 -0
- package/src/repo/.claude/prompt-snippets/ponytail-help.md +5 -0
- package/src/repo/.claude/prompt-snippets/ponytail-review.md +5 -0
- package/src/repo/.claude/prompt-snippets/ponytail.md +5 -0
- package/src/repo/.claude/prompt-snippets/release-notes.md +204 -0
- package/src/repo/.claude/prompt-snippets/review-pr.md +156 -0
- package/src/repo/.claude/prompt-snippets/review-staged.md +35 -0
- package/src/repo/.claude/prompt-snippets/review.md +139 -0
- package/src/repo/.claude/prompt-snippets/specify.md +84 -0
- package/src/repo/.claude/prompt-snippets/tasks.md +146 -0
- package/src/repo/.claude/rules/agent-conduct.md +13 -0
- package/src/repo/.claude/rules/api-server.md +16 -0
- package/src/repo/.claude/rules/coding-standards.md +13 -0
- package/src/repo/.claude/rules/component-structure.md +15 -0
- package/src/repo/.claude/rules/core-libraries.md +13 -0
- package/src/repo/.claude/rules/environment-tooling.md +13 -0
- package/src/repo/.claude/rules/logging-comments.md +13 -0
- package/src/repo/.claude/rules/logging.md +13 -0
- package/src/repo/.claude/rules/orient-to-recent-work.md +13 -0
- package/src/repo/.claude/rules/prisma-migrations.md +16 -0
- package/src/repo/.claude/rules/project-context.md +13 -0
- package/src/repo/.claude/rules/server-client-separation.md +13 -0
- package/src/repo/.claude/rules/subagent-workflow.md +13 -0
- package/src/repo/.claude/rules/testing-quality.md +16 -0
- package/src/repo/.claude/rules/testing.md +16 -0
- package/src/repo/.claude/rules/ui-accessibility.md +15 -0
- package/src/repo/.claude/rules/version-control.md +13 -0
- package/src/repo/.claude/rules/what-to-avoid.md +13 -0
- package/src/repo/.claude/rules-snippets/agent-conduct.md +51 -0
- package/src/repo/.claude/rules-snippets/api-server.md +7 -0
- package/src/repo/.claude/rules-snippets/coding-standards.md +45 -0
- package/src/repo/.claude/rules-snippets/component-structure.md +8 -0
- package/src/repo/.claude/rules-snippets/core-libraries.md +6 -0
- package/src/repo/.claude/rules-snippets/deployment.md +38 -0
- package/src/repo/.claude/rules-snippets/documentation.md +621 -0
- package/src/repo/.claude/rules-snippets/environment-tooling.md +6 -0
- package/src/repo/.claude/rules-snippets/logging-comments.md +4 -0
- package/src/repo/.claude/rules-snippets/logging.md +352 -0
- package/src/repo/.claude/rules-snippets/patterns.md +29 -0
- package/src/repo/.claude/rules-snippets/ponytail.md +24 -0
- package/src/repo/.claude/rules-snippets/prisma-migrations.md +8 -0
- package/src/repo/.claude/rules-snippets/project-context.md +25 -0
- package/src/repo/.claude/rules-snippets/server-client-separation.md +7 -0
- package/src/repo/.claude/rules-snippets/subagent-workflow.md +134 -0
- package/src/repo/.claude/rules-snippets/testing-quality.md +5 -0
- package/src/repo/.claude/rules-snippets/testing.md +38 -0
- package/src/repo/.claude/rules-snippets/ui-accessibility.md +7 -0
- package/src/repo/.claude/rules-snippets/version-control.md +6 -0
- package/src/repo/.claude/rules-snippets/what-to-avoid.md +8 -0
- package/src/repo/.claude/rules-snippets/workflows.md +25 -0
- package/src/repo/.claude/settings.json +7 -0
- package/src/repo/.claude/skills/README.md +50 -0
- package/src/repo/.cursor/agents/admin-portal.agent.md +11 -0
- package/src/repo/.cursor/agents/api-specialist.agent.md +11 -0
- package/src/repo/.cursor/agents/backend-architect.agent.md +11 -0
- package/src/repo/.cursor/agents/documenter.agent.md +11 -0
- package/src/repo/.cursor/agents/feature-builder.agent.md +11 -0
- package/src/repo/.cursor/agents/frontend-developer.agent.md +11 -0
- package/src/repo/.cursor/agents/green.agent.md +11 -0
- package/src/repo/.cursor/agents/implementer.agent.md +11 -0
- package/src/repo/.cursor/agents/planner.agent.md +11 -0
- package/src/repo/.cursor/agents/red.agent.md +11 -0
- package/src/repo/.cursor/agents/refactor.agent.md +11 -0
- package/src/repo/.cursor/agents/researcher.agent.md +11 -0
- package/src/repo/.cursor/agents/reviewer.agent.md +11 -0
- package/src/repo/.cursor/agents/tdd.agent.md +11 -0
- package/src/repo/.cursor/commands/assign-tasks.md +13 -0
- package/src/repo/.cursor/commands/bootstrap-patch.md +17 -0
- package/src/repo/.cursor/commands/bootstrap-upgrade.md +15 -0
- package/src/repo/.cursor/commands/bootstrap.md +17 -0
- package/src/repo/.cursor/commands/commit-push.md +15 -0
- package/src/repo/.cursor/commands/constitution.md +17 -0
- package/src/repo/.cursor/commands/create-skill.md +15 -0
- package/src/repo/.cursor/commands/implement-feature.md +17 -0
- package/src/repo/.cursor/commands/implement-fixes.md +17 -0
- package/src/repo/.cursor/commands/implement.md +17 -0
- package/src/repo/.cursor/commands/plan.md +17 -0
- package/src/repo/.cursor/commands/playwright-test.md +15 -0
- package/src/repo/.cursor/commands/ponytail-audit.md +13 -0
- package/src/repo/.cursor/commands/ponytail-debt.md +13 -0
- package/src/repo/.cursor/commands/ponytail-gain.md +13 -0
- package/src/repo/.cursor/commands/ponytail-help.md +13 -0
- package/src/repo/.cursor/commands/ponytail-review.md +13 -0
- package/src/repo/.cursor/commands/ponytail.md +13 -0
- package/src/repo/.cursor/commands/release-notes.md +15 -0
- package/src/repo/.cursor/commands/review-pr.md +17 -0
- package/src/repo/.cursor/commands/review-staged.md +10 -0
- package/src/repo/.cursor/commands/review.md +17 -0
- package/src/repo/.cursor/commands/specify.md +17 -0
- package/src/repo/.cursor/commands/tasks.md +15 -0
- package/src/repo/.cursor/mcp.json +13 -0
- package/src/repo/.cursor/rules/agent-conduct.mdc +11 -0
- package/src/repo/.cursor/rules/api-server.mdc +11 -0
- package/src/repo/.cursor/rules/coding-standards.mdc +11 -0
- package/src/repo/.cursor/rules/component-structure.mdc +11 -0
- package/src/repo/.cursor/rules/core-libraries.mdc +11 -0
- package/src/repo/.cursor/rules/environment-tooling.mdc +11 -0
- package/src/repo/.cursor/rules/logging-comments.mdc +11 -0
- package/src/repo/.cursor/rules/logging.mdc +11 -0
- package/src/repo/.cursor/rules/orient-to-recent-work.mdc +9 -0
- package/src/repo/.cursor/rules/ponytail.mdc +9 -0
- package/src/repo/.cursor/rules/prisma-migrations.mdc +11 -0
- package/src/repo/.cursor/rules/project-context.mdc +11 -0
- package/src/repo/.cursor/rules/server-client-separation.mdc +11 -0
- package/src/repo/.cursor/rules/subagent-workflow.mdc +11 -0
- package/src/repo/.cursor/rules/testing-quality.mdc +11 -0
- package/src/repo/.cursor/rules/ui-accessibility.mdc +11 -0
- package/src/repo/.cursor/rules/version-control.mdc +11 -0
- package/src/repo/.cursor/rules/what-to-avoid.mdc +11 -0
- package/src/repo/.cursor/skills/README.md +50 -0
- package/src/repo/.github/agents/admin-portal.agent.md +11 -0
- package/src/repo/.github/agents/api-specialist.agent.md +11 -0
- package/src/repo/.github/agents/backend-architect.agent.md +11 -0
- package/src/repo/.github/agents/documenter.agent.md +11 -0
- package/src/repo/.github/agents/feature-builder.agent.md +24 -0
- package/src/repo/.github/agents/frontend-developer.agent.md +11 -0
- package/src/repo/.github/agents/green.agent.md +12 -0
- package/src/repo/.github/agents/implementer.agent.md +12 -0
- package/src/repo/.github/agents/planner.agent.md +12 -0
- package/src/repo/.github/agents/red.agent.md +12 -0
- package/src/repo/.github/agents/refactor.agent.md +12 -0
- package/src/repo/.github/agents/researcher.agent.md +12 -0
- package/src/repo/.github/agents/reviewer.agent.md +11 -0
- package/src/repo/.github/agents/tdd.agent.md +13 -0
- package/src/repo/.github/copilot-instructions.md +89 -0
- package/src/repo/.github/instructions/agent-conduct.instructions.md +13 -0
- package/src/repo/.github/instructions/api-server.instructions.md +13 -0
- package/src/repo/.github/instructions/coding-standards.instructions.md +13 -0
- package/src/repo/.github/instructions/component-structure.instructions.md +13 -0
- package/src/repo/.github/instructions/core-libraries.instructions.md +13 -0
- package/src/repo/.github/instructions/deployment.instructions.md +13 -0
- package/src/repo/.github/instructions/documentation.instructions.md +14 -0
- package/src/repo/.github/instructions/environment-tooling.instructions.md +13 -0
- package/src/repo/.github/instructions/logging-comments.instructions.md +13 -0
- package/src/repo/.github/instructions/logging.instructions.md +13 -0
- package/src/repo/.github/instructions/patterns.instructions.md +13 -0
- package/src/repo/.github/instructions/prisma-migrations.instructions.md +13 -0
- package/src/repo/.github/instructions/project-context.instructions.md +13 -0
- package/src/repo/.github/instructions/server-client-separation.instructions.md +13 -0
- package/src/repo/.github/instructions/subagent-workflow.instructions.md +13 -0
- package/src/repo/.github/instructions/testing-quality.instructions.md +13 -0
- package/src/repo/.github/instructions/testing.instructions.md +13 -0
- package/src/repo/.github/instructions/ui-accessibility.instructions.md +13 -0
- package/src/repo/.github/instructions/version-control.instructions.md +13 -0
- package/src/repo/.github/instructions/what-to-avoid.instructions.md +13 -0
- package/src/repo/.github/instructions/workflows.instructions.md +13 -0
- package/src/repo/.github/prompts/assign-tasks.prompt.md +14 -0
- package/src/repo/.github/prompts/bootstrap-patch.prompt.md +16 -0
- package/src/repo/.github/prompts/bootstrap-upgrade.prompt.md +15 -0
- package/src/repo/.github/prompts/bootstrap.prompt.md +16 -0
- package/src/repo/.github/prompts/commit-push.prompt.md +14 -0
- package/src/repo/.github/prompts/constitution.prompt.md +16 -0
- package/src/repo/.github/prompts/create-skill.prompt.md +16 -0
- package/src/repo/.github/prompts/implement-feature.prompt.md +16 -0
- package/src/repo/.github/prompts/implement-fixes.prompt.md +16 -0
- package/src/repo/.github/prompts/implement.prompt.md +16 -0
- package/src/repo/.github/prompts/plan.prompt.md +16 -0
- package/src/repo/.github/prompts/playwright-test.prompt.md +14 -0
- package/src/repo/.github/prompts/ponytail-audit.prompt.md +13 -0
- package/src/repo/.github/prompts/ponytail-debt.prompt.md +13 -0
- package/src/repo/.github/prompts/ponytail-gain.prompt.md +13 -0
- package/src/repo/.github/prompts/ponytail-help.prompt.md +13 -0
- package/src/repo/.github/prompts/ponytail-review.prompt.md +13 -0
- package/src/repo/.github/prompts/ponytail.prompt.md +13 -0
- package/src/repo/.github/prompts/release-notes.prompt.md +14 -0
- package/src/repo/.github/prompts/review-pr.prompt.md +16 -0
- package/src/repo/.github/prompts/review-staged.prompt.md +16 -0
- package/src/repo/.github/prompts/review.prompt.md +16 -0
- package/src/repo/.github/prompts/specify.prompt.md +16 -0
- package/src/repo/.github/prompts/tasks.prompt.md +14 -0
- package/src/repo/.github/skills/README.md +36 -0
- package/src/repo/.mcp.json +13 -0
- package/src/repo/.opencode/agents/admin-portal.md +14 -0
- package/src/repo/.opencode/agents/api-specialist.md +14 -0
- package/src/repo/.opencode/agents/backend-architect.md +14 -0
- package/src/repo/.opencode/agents/documenter.md +14 -0
- package/src/repo/.opencode/agents/feature-builder.md +15 -0
- package/src/repo/.opencode/agents/frontend-developer.md +14 -0
- package/src/repo/.opencode/agents/green.md +14 -0
- package/src/repo/.opencode/agents/implementer.md +14 -0
- package/src/repo/.opencode/agents/planner.md +14 -0
- package/src/repo/.opencode/agents/red.md +14 -0
- package/src/repo/.opencode/agents/refactor.md +14 -0
- package/src/repo/.opencode/agents/researcher.md +14 -0
- package/src/repo/.opencode/agents/reviewer.md +14 -0
- package/src/repo/.opencode/agents/tdd.md +15 -0
- package/src/repo/.opencode/commands/assign-tasks.md +16 -0
- package/src/repo/.opencode/commands/bootstrap-patch.md +18 -0
- package/src/repo/.opencode/commands/bootstrap-upgrade.md +18 -0
- package/src/repo/.opencode/commands/bootstrap.md +18 -0
- package/src/repo/.opencode/commands/commit-push.md +16 -0
- package/src/repo/.opencode/commands/constitution.md +18 -0
- package/src/repo/.opencode/commands/create-skill.md +16 -0
- package/src/repo/.opencode/commands/implement-feature.md +18 -0
- package/src/repo/.opencode/commands/implement-fixes.md +20 -0
- package/src/repo/.opencode/commands/implement.md +18 -0
- package/src/repo/.opencode/commands/plan.md +18 -0
- package/src/repo/.opencode/commands/playwright-test.md +16 -0
- package/src/repo/.opencode/commands/ponytail-audit.md +10 -0
- package/src/repo/.opencode/commands/ponytail-debt.md +10 -0
- package/src/repo/.opencode/commands/ponytail-gain.md +10 -0
- package/src/repo/.opencode/commands/ponytail-help.md +10 -0
- package/src/repo/.opencode/commands/ponytail-review.md +10 -0
- package/src/repo/.opencode/commands/ponytail.md +10 -0
- package/src/repo/.opencode/commands/release-notes.md +16 -0
- package/src/repo/.opencode/commands/review-pr.md +18 -0
- package/src/repo/.opencode/commands/review-staged.md +11 -0
- package/src/repo/.opencode/commands/review.md +18 -0
- package/src/repo/.opencode/commands/specify.md +18 -0
- package/src/repo/.opencode/commands/tasks.md +16 -0
- package/src/repo/.opencode/opencode.json +9 -0
- package/src/repo/.opencode/plugins/ponytail.mjs +79 -0
- package/src/repo/.opencode/rules/agent-conduct.md +11 -0
- package/src/repo/.opencode/rules/api-server.md +11 -0
- package/src/repo/.opencode/rules/coding-standards.md +11 -0
- package/src/repo/.opencode/rules/component-structure.md +11 -0
- package/src/repo/.opencode/rules/core-libraries.md +11 -0
- package/src/repo/.opencode/rules/environment-tooling.md +11 -0
- package/src/repo/.opencode/rules/logging-comments.md +11 -0
- package/src/repo/.opencode/rules/logging.md +11 -0
- package/src/repo/.opencode/rules/ponytail.md +3 -0
- package/src/repo/.opencode/rules/prisma-migrations.md +11 -0
- package/src/repo/.opencode/rules/project-context.md +11 -0
- package/src/repo/.opencode/rules/server-client-separation.md +11 -0
- package/src/repo/.opencode/rules/subagent-workflow.md +11 -0
- package/src/repo/.opencode/rules/testing-quality.md +11 -0
- package/src/repo/.opencode/rules/ui-accessibility.md +11 -0
- package/src/repo/.opencode/rules/version-control.md +11 -0
- package/src/repo/.opencode/rules/what-to-avoid.md +11 -0
- package/src/repo/.vscode/mcp.json +13 -0
- package/src/repo/AGENTS.md +387 -0
- package/src/repo/CLAUDE.md +51 -0
- package/src/repo/README.md +145 -0
- package/src/repo/docs/api/README.md +82 -0
- package/src/repo/docs/architecture/README.md +56 -0
- package/src/repo/docs/features/README.md +82 -0
- package/src/repo/docs/fixes/README.md +117 -0
- package/src/repo/hooks/claude-codex-hooks.json +31 -0
- package/src/repo/hooks/copilot-hooks.json +21 -0
- package/src/repo/hooks/ponytail-activate.js +91 -0
- package/src/repo/hooks/ponytail-config.js +122 -0
- package/src/repo/hooks/ponytail-instructions.js +92 -0
- package/src/repo/hooks/ponytail-mode-tracker.js +55 -0
- package/src/repo/hooks/ponytail-runtime.js +51 -0
- package/src/repo/hooks/ponytail-statusline.ps1 +21 -0
- package/src/repo/hooks/ponytail-statusline.sh +12 -0
- package/src/repo/templates/README.md +80 -0
- package/src/repo/templates/adr.template.md +162 -0
- package/src/repo/templates/complex-fix-plan.template.md +162 -0
- package/src/repo/templates/complex-fix-spec.template.md +163 -0
- package/src/repo/templates/feature-plan.template.md +202 -0
- package/src/repo/templates/feature-spec.template.md +148 -0
- package/src/repo/templates/monthly-fix-log.template.md +91 -0
|
@@ -0,0 +1,200 @@
|
|
|
1
|
+
# Bootstrap Patch
|
|
2
|
+
|
|
3
|
+
Fetch the latest AI instruction templates from the ai-assisted-dev-toolkit repository and apply any updated, new, or missing guidance to this project.
|
|
4
|
+
|
|
5
|
+
## Orchestrator Checkpoint
|
|
6
|
+
|
|
7
|
+
> **🛑 Before starting**: This command involves fetching, diffing, and applying changes across many files.
|
|
8
|
+
> Dispatch parallel subagents for independent file groups (rules, commands, prompts, instructions, skills, agents).
|
|
9
|
+
> See `.claude/rules-snippets/subagent-workflow.md` for patterns.
|
|
10
|
+
|
|
11
|
+
## Usage
|
|
12
|
+
|
|
13
|
+
```
|
|
14
|
+
/bootstrap-patch
|
|
15
|
+
/bootstrap-patch --dry-run
|
|
16
|
+
/bootstrap-patch --category rules
|
|
17
|
+
/bootstrap-patch --category commands,prompts
|
|
18
|
+
```
|
|
19
|
+
|
|
20
|
+
## Process
|
|
21
|
+
|
|
22
|
+
1. **Fetch Latest Templates**:
|
|
23
|
+
|
|
24
|
+
Clone or fetch the latest ai-assisted-dev-toolkit templates:
|
|
25
|
+
|
|
26
|
+
```bash
|
|
27
|
+
TOOLKIT_TEMP=$(mktemp -d)
|
|
28
|
+
git clone --depth 1 https://github.com/ninjasitm/ai-assisted-dev-toolkit.git "$TOOLKIT_TEMP"
|
|
29
|
+
```
|
|
30
|
+
|
|
31
|
+
Determine the correct source path based on project structure:
|
|
32
|
+
- **Single repo**: Use `$TOOLKIT_TEMP/src/repo/`
|
|
33
|
+
- **Monorepo**: Use `$TOOLKIT_TEMP/src/monorepo/`
|
|
34
|
+
|
|
35
|
+
Detection heuristic:
|
|
36
|
+
- If `apps/` and `packages/` directories exist at root → monorepo
|
|
37
|
+
- Otherwise → single repo
|
|
38
|
+
|
|
39
|
+
**Detect Toolkit Version:**
|
|
40
|
+
|
|
41
|
+
Check for a `.toolkit-version` file in the project root:
|
|
42
|
+
- If exists: Read the version string (e.g., `2.0.10`, `3.0.0`)
|
|
43
|
+
- If missing: Assume legacy version (pre-3.0.0)
|
|
44
|
+
|
|
45
|
+
Read the toolkit's version from `$TOOLKIT_TEMP/.toolkit-version` to compare.
|
|
46
|
+
|
|
47
|
+
**Version Comparison:**
|
|
48
|
+
- **Same version**: No structural changes expected
|
|
49
|
+
- **Newer version**: Check for structural changes (new directories, renamed files, format changes)
|
|
50
|
+
|
|
51
|
+
2. **Inventory Current State**:
|
|
52
|
+
|
|
53
|
+
Scan the project's AI configuration directories:
|
|
54
|
+
|
|
55
|
+
| Category | Project Paths | Template Source Paths |
|
|
56
|
+
| ---------------- | ------------------------------------------------------------- | ------------------------------------------- |
|
|
57
|
+
| **Cursor Rules** | `.cursor/rules/*.mdc` | `src/{type}/.cursor/rules/*.mdc` |
|
|
58
|
+
| **Cursor Cmds** | `.cursor/commands/*.md` | `src/{type}/.cursor/commands/*.md` |
|
|
59
|
+
| **Cursor Agents**| `.cursor/agents/*.agent.md` | `src/{type}/.cursor/agents/*.agent.md` |
|
|
60
|
+
| **GH Prompts** | `.github/prompts/*.prompt.md` | `src/{type}/.github/prompts/*.prompt.md` |
|
|
61
|
+
| **GH Instrs** | `.github/instructions/*.instructions.md` | `src/{type}/.github/instructions/*.instructions.md` |
|
|
62
|
+
| **GH Agents** | `.github/agents/*.agent.md` | `src/{type}/.github/agents/*.agent.md` |
|
|
63
|
+
| **Claude Rules** | `.claude/rules/*.md` | `src/{type}/.claude/rules/*.md` |
|
|
64
|
+
| **Claude Cmds** | `.claude/commands/*.md` | `src/{type}/.claude/commands/*.md` |
|
|
65
|
+
| **Claude Agents**| `.claude/agents/*.agent.md` | `src/{type}/.claude/agents/*.agent.md` |
|
|
66
|
+
| **Skills** | `.agents/skills/*/SKILL.md` | `src/{type}/.agents/skills/*/SKILL.md` |
|
|
67
|
+
| **AGENTS.md** | `AGENTS.md` | `src/{type}/AGENTS.md` |
|
|
68
|
+
| **CLAUDE.md** | `CLAUDE.md` | `src/{type}/CLAUDE.md` |
|
|
69
|
+
| **Claude Rules Snippets** | `.claude/rules-snippets/*.md` | `src/{type}/.claude/rules-snippets/*.md` |
|
|
70
|
+
| **Claude Prompt Snippets** | `.claude/prompt-snippets/*.md` | `src/{type}/.claude/prompt-snippets/*.md` |
|
|
71
|
+
| **Claude Agent Snippets** | `.claude/agents-snippets/*.md` | `src/{type}/.claude/agents-snippets/*.md` |
|
|
72
|
+
| **OpenCode Config** | `.opencode/opencode.json` | `src/{type}/.opencode/opencode.json` |
|
|
73
|
+
| **OpenCode Commands** | `.opencode/commands/*.md` | `src/{type}/.opencode/commands/*.md` |
|
|
74
|
+
| **OpenCode Rules** | `.opencode/rules/*.md` | `src/{type}/.opencode/rules/*.md` |
|
|
75
|
+
| **OpenCode Agents** | `.opencode/agents/*.md` | `src/{type}/.opencode/agents/*.md` |
|
|
76
|
+
| **OpenCode Plugins** | `.opencode/plugins/*.mjs` | `src/{type}/.opencode/plugins/*.mjs` |
|
|
77
|
+
| **Hooks** | `hooks/*.{js,sh,ps1}` | `src/{type}/hooks/*.{js,sh,ps1}` |
|
|
78
|
+
| **Agent Rules** | `.agents/rules/*.md` | `src/{type}/.agents/rules/*.md` |
|
|
79
|
+
| **Toolkit Version** | `.toolkit-version` | `.toolkit-version` (root of toolkit) |
|
|
80
|
+
|
|
81
|
+
**⚠️ OpenCode `opencode.json` Schema Validation:**
|
|
82
|
+
|
|
83
|
+
When patching `.opencode/opencode.json`, **only add or modify supported top-level keys**. The schema is defined at `https://opencode.ai/config.json`. Do NOT add unsupported keys.
|
|
84
|
+
|
|
85
|
+
**Supported top-level keys:** `$schema`, `instructions`, `skills`, `agent`, `default_agent`, `model`, `small_model`, `provider`, `mcp`, `tools`, `permission`, `lsp`, `formatter`, `server`, `shell`, `command`, `plugin`, `watcher`, `snapshot`, `share`, `autoupdate`, `compaction`, `attachment`, `logLevel`, `disabled_providers`, `enabled_providers`, `tool_output`, `enterprise`, `experimental`
|
|
86
|
+
|
|
87
|
+
**Do NOT add** keys like `rules`, `agents`, `commands`, `prompts` as top-level keys — OpenCode uses the `.opencode/` directory structure and `instructions` array instead.
|
|
88
|
+
|
|
89
|
+
> **Watch out:** the ponytail template uses the `plugin` key (singular). If you see `plugins` (plural) in your `opencode.json`, that's a typo and the plugin won't load.
|
|
90
|
+
|
|
91
|
+
3. **Diff Analysis** (parallelizable — dispatch one subagent per category):
|
|
92
|
+
|
|
93
|
+
For each category, compare template files against project files:
|
|
94
|
+
|
|
95
|
+
a. **Classify each file**:
|
|
96
|
+
- **🆕 New**: Exists in template but not in project → candidate for addition
|
|
97
|
+
- **📝 Updated**: Exists in both but template has newer content → candidate for merge
|
|
98
|
+
- **✅ Current**: Exists in both and content matches → no action needed
|
|
99
|
+
- **🔧 Customized**: Exists in both, project version has non-placeholder customizations → careful merge
|
|
100
|
+
- **⚠️ Missing in Template**: Exists in project but not in template → project-specific, keep as-is
|
|
101
|
+
|
|
102
|
+
b. **For updated files, generate a structured diff**:
|
|
103
|
+
- Preserve project-specific `{{PLACEHOLDER}}` replacements (already-bootstrapped values)
|
|
104
|
+
- Identify structural additions (new sections, new rules, new steps)
|
|
105
|
+
- Identify structural removals (deprecated guidance, removed sections)
|
|
106
|
+
- Identify content updates (changed instructions, improved wording)
|
|
107
|
+
|
|
108
|
+
c. **Smart Merge Rules**:
|
|
109
|
+
- **Never overwrite** project-specific values that replaced `{{PLACEHOLDER}}`
|
|
110
|
+
- **Always add** new files that don't exist in the project
|
|
111
|
+
- **Merge structural additions** into existing customized files
|
|
112
|
+
- **Flag for review** any removals from files that have been customized
|
|
113
|
+
- **Preserve custom agents/skills** that were added by the project
|
|
114
|
+
|
|
115
|
+
4. **Generate Patch Report**:
|
|
116
|
+
|
|
117
|
+
```markdown
|
|
118
|
+
## 🩹 Bootstrap Patch Report
|
|
119
|
+
|
|
120
|
+
**Toolkit Version**: [commit hash] ([date])
|
|
121
|
+
**Project Type**: repo | monorepo
|
|
122
|
+
**Categories Scanned**: [list]
|
|
123
|
+
|
|
124
|
+
### 🆕 New Files (X files)
|
|
125
|
+
|
|
126
|
+
| File | Category | Description |
|
|
127
|
+
| ---- | -------- | ----------- |
|
|
128
|
+
| `.cursor/rules/new-rule.mdc` | Rules | New coding standard rule |
|
|
129
|
+
|
|
130
|
+
### 📝 Updated Files (X files)
|
|
131
|
+
|
|
132
|
+
| File | Changes | Risk |
|
|
133
|
+
| ---- | ------- | ---- |
|
|
134
|
+
| `.cursor/commands/implement.md` | Added orchestrator checkpoint | Low - additive |
|
|
135
|
+
|
|
136
|
+
### ✅ Current Files (X files)
|
|
137
|
+
[No action needed]
|
|
138
|
+
|
|
139
|
+
### 🔧 Customized Files Requiring Review (X files)
|
|
140
|
+
|
|
141
|
+
| File | Template Changes | Project Customizations | Merge Strategy |
|
|
142
|
+
| ---- | ---------------- | ---------------------- | -------------- |
|
|
143
|
+
| `AGENTS.md` | New section added | Has project-specific content | Manual merge |
|
|
144
|
+
|
|
145
|
+
### Summary
|
|
146
|
+
- **Auto-apply**: X new files + Y updated files with no conflicts
|
|
147
|
+
- **Review needed**: Z customized files with structural changes
|
|
148
|
+
- **No action**: W files already current
|
|
149
|
+
```
|
|
150
|
+
|
|
151
|
+
5. **Confirm and Apply**:
|
|
152
|
+
|
|
153
|
+
- If `--dry-run` flag: Output the report without making changes
|
|
154
|
+
- Otherwise: Present the report and ask the user to confirm with (Y/n)
|
|
155
|
+
- On confirmation:
|
|
156
|
+
a. **New files**: Copy directly from template
|
|
157
|
+
b. **Updated files (no customization)**: Replace with template version
|
|
158
|
+
c. **Updated files (customized)**: Apply structural additions while preserving project values
|
|
159
|
+
d. **Git commit**: Stage and commit all changes with message:
|
|
160
|
+
```bash
|
|
161
|
+
git add -A
|
|
162
|
+
git commit -m "chore: patch AI instructions from toolkit [$(date +%Y-%m-%d)]"
|
|
163
|
+
```
|
|
164
|
+
|
|
165
|
+
6. **Cleanup**:
|
|
166
|
+
|
|
167
|
+
```bash
|
|
168
|
+
rm -rf "$TOOLKIT_TEMP"
|
|
169
|
+
```
|
|
170
|
+
|
|
171
|
+
7. **Post-Patch Validation**:
|
|
172
|
+
|
|
173
|
+
- Verify no `{{PLACEHOLDER}}` syntax was accidentally re-introduced
|
|
174
|
+
- Confirm all files are valid (no broken frontmatter, no syntax errors)
|
|
175
|
+
- List any new placeholders that need manual `bootstrap` to fill
|
|
176
|
+
|
|
177
|
+
## Smart Merge Strategy
|
|
178
|
+
|
|
179
|
+
### Preserving Project Values
|
|
180
|
+
|
|
181
|
+
When a file has been bootstrapped (placeholders replaced with real values), the patch must:
|
|
182
|
+
|
|
183
|
+
1. **Detect replaced placeholders**: Compare file against template, identify where `{{VAR}}` was replaced with a concrete value
|
|
184
|
+
2. **Build a replacement map**: `{"{{PROJECT_NAME}}": "my-app", "{{FRAMEWORK}}": "Next.js", ...}`
|
|
185
|
+
3. **Apply template structural changes**: Add new sections, update instructions
|
|
186
|
+
4. **Re-apply replacement map**: Restore project-specific values in the updated content
|
|
187
|
+
|
|
188
|
+
### Conflict Resolution
|
|
189
|
+
|
|
190
|
+
- **Additive changes** (new sections, new steps): Auto-merge
|
|
191
|
+
- **Modified instructions** (changed wording in existing sections): Replace template text, re-apply value map
|
|
192
|
+
- **Removed sections**: Flag for user review — project may depend on removed guidance
|
|
193
|
+
- **Structural reorganization**: Replace entire file, re-apply value map, flag for review
|
|
194
|
+
|
|
195
|
+
## Guidelines
|
|
196
|
+
|
|
197
|
+
- **Non-destructive by default**: Always show changes before applying
|
|
198
|
+
- **Preserve customizations**: Never lose project-specific configuration
|
|
199
|
+
- **Incremental**: Only apply what's changed, don't re-bootstrap everything
|
|
200
|
+
- **Auditable**: Commit message includes date for tracking patch history
|
|
@@ -0,0 +1,357 @@
|
|
|
1
|
+
# Bootstrap Upgrade to v3.0
|
|
2
|
+
|
|
3
|
+
One-time migration from pre-3.0 inline pattern to 3.0+ snippet-based architecture. Converts all tool directories (`.claude/`, `.github/`, `.cursor/`) to thin wrappers referencing centralized snippets, creates `.opencode/` directory, and cleans up duplicate skills.
|
|
4
|
+
|
|
5
|
+
## Usage
|
|
6
|
+
|
|
7
|
+
```
|
|
8
|
+
/bootstrap-upgrade
|
|
9
|
+
/bootstrap-upgrade --dry-run
|
|
10
|
+
/bootstrap-upgrade --verbose
|
|
11
|
+
/bootstrap-upgrade --dry-run --verbose
|
|
12
|
+
```
|
|
13
|
+
|
|
14
|
+
- `--dry-run`: Show what would be changed without writing files
|
|
15
|
+
- `--verbose`: Log every file operation with paths and content summaries
|
|
16
|
+
|
|
17
|
+
## Orchestrator Checkpoint
|
|
18
|
+
|
|
19
|
+
> **🛑 Before starting**: This command modifies files across 5+ directory trees (`.claude/`, `.github/`, `.cursor/`, `.opencode/`, `.agents/`).
|
|
20
|
+
> Steps 3–6 are **parallelizable** — dispatch one subagent per directory tree (rules, commands, agents, instructions, prompts).
|
|
21
|
+
> See `.claude/rules-snippets/subagent-workflow.md` for patterns.
|
|
22
|
+
|
|
23
|
+
## Process
|
|
24
|
+
|
|
25
|
+
### 1. Pre-flight Checks
|
|
26
|
+
|
|
27
|
+
Run all checks before making any changes:
|
|
28
|
+
|
|
29
|
+
1. **Detect project type**:
|
|
30
|
+
- If `apps/` and `packages/` directories exist at root → `monorepo` (use `src/monorepo/` templates)
|
|
31
|
+
- Otherwise → `repo` (use `src/repo/` templates)
|
|
32
|
+
|
|
33
|
+
2. **Check toolkit version**:
|
|
34
|
+
- If `.toolkit-version` exists and contains `3.0.0` or higher → **abort** with message: "Project already on v3.0+. Run `/bootstrap-patch` for incremental updates."
|
|
35
|
+
- If `.toolkit-version` exists with a version below `3.0.0` → migration needed
|
|
36
|
+
- If `.toolkit-version` is missing → migration needed (legacy project)
|
|
37
|
+
|
|
38
|
+
3. **Confirm migration scope**:
|
|
39
|
+
|
|
40
|
+
```markdown
|
|
41
|
+
## 🔄 Bootstrap Upgrade: pre-3.0 → 3.0+
|
|
42
|
+
|
|
43
|
+
**Project type**: repo | monorepo
|
|
44
|
+
**Current version**: <version or "none (legacy)">
|
|
45
|
+
|
|
46
|
+
### What will happen:
|
|
47
|
+
|
|
48
|
+
1. Create snippet directories: `.claude/rules-snippets/`, `.claude/prompt-snippets/`, `.claude/agents-snippets/`
|
|
49
|
+
2. Extract content from `.claude/` files → snippet files
|
|
50
|
+
3. Convert `.claude/` files to thin wrappers
|
|
51
|
+
4. Convert `.github/` files to thin wrappers
|
|
52
|
+
5. Convert `.cursor/` files to thin wrappers
|
|
53
|
+
6. Create `.opencode/` directory with config and wrappers
|
|
54
|
+
7. Install pre-commit hook (CHANGELOG/Zone.Identifier/secrets enforcement)
|
|
55
|
+
8. Install project hooks (runtime hooks and ponytail support)
|
|
56
|
+
9. Clean up duplicate skill directories
|
|
57
|
+
10. Update `CLAUDE.md` with multi-tool sections
|
|
58
|
+
11. Create `.toolkit-version` with `3.0.0`
|
|
59
|
+
12. Commit all changes
|
|
60
|
+
|
|
61
|
+
Proceed? (Y/n)
|
|
62
|
+
```
|
|
63
|
+
|
|
64
|
+
If `--dry-run`: show the report and **stop** — do not write any files.
|
|
65
|
+
|
|
66
|
+
### 2. Create Snippet Directories
|
|
67
|
+
|
|
68
|
+
```bash
|
|
69
|
+
mkdir -p .claude/rules-snippets
|
|
70
|
+
mkdir -p .claude/prompt-snippets
|
|
71
|
+
mkdir -p .claude/agents-snippets
|
|
72
|
+
```
|
|
73
|
+
|
|
74
|
+
### 3. Extract Content from `.claude/` → Snippet Files
|
|
75
|
+
|
|
76
|
+
**Parallelizable**: Process rules, commands, and agents independently.
|
|
77
|
+
|
|
78
|
+
**Frontmatter extraction rule**: Content between the first `---` and the second `---` is frontmatter. Everything after the second `---` (including leading newline) is the body.
|
|
79
|
+
|
|
80
|
+
| Source | Destination | Example |
|
|
81
|
+
|--------|-------------|---------|
|
|
82
|
+
| `.claude/rules/*.md` body | `.claude/rules-snippets/<name>.md` | `coding-standards.md` |
|
|
83
|
+
| `.claude/commands/*.md` body | `.claude/prompt-snippets/<name>.md` | `bootstrap.md` |
|
|
84
|
+
| `.claude/agents/*.agent.md` body | `.claude/agents-snippets/<name>.md` | `reviewer.agent.md` |
|
|
85
|
+
|
|
86
|
+
For each file: read → extract body after frontmatter → write to snippet destination. **Preserve all `{{PLACEHOLDER}}` values exactly.**
|
|
87
|
+
|
|
88
|
+
### 4. Convert `.claude/` Files to Thin Wrappers
|
|
89
|
+
|
|
90
|
+
**Parallelizable**: Process rules, commands, and agents independently.
|
|
91
|
+
|
|
92
|
+
Replace each file's body with a wrapper that preserves frontmatter and references the snippet:
|
|
93
|
+
|
|
94
|
+
| File Type | Frontmatter to Keep | Reference Line |
|
|
95
|
+
|-----------|---------------------|----------------|
|
|
96
|
+
| `.claude/rules/*.md` | `applyTo`, `description` | `Follow the rules defined in [../rules-snippets/<name>.md](../rules-snippets/<name>.md).` |
|
|
97
|
+
| `.claude/commands/*.md` | `description`, `allowed-tools`, `argument-hint` | `Follow the prompt defined in [../prompt-snippets/<name>.md](../prompt-snippets/<name>.md).` |
|
|
98
|
+
| `.claude/agents/*.agent.md` | `name`, `description`, `tools` | `Follow the agent definition in [../agents-snippets/<name>.md](../agents-snippets/<name>.md).` |
|
|
99
|
+
|
|
100
|
+
Wrapper format:
|
|
101
|
+
```markdown
|
|
102
|
+
---
|
|
103
|
+
<original frontmatter preserved>
|
|
104
|
+
---
|
|
105
|
+
|
|
106
|
+
# <Title from original>
|
|
107
|
+
|
|
108
|
+
<reference line from table above>
|
|
109
|
+
```
|
|
110
|
+
|
|
111
|
+
### 5. Convert `.github/` Files to Thin Wrappers
|
|
112
|
+
|
|
113
|
+
**Parallelizable**: Process instructions, prompts, and agents independently.
|
|
114
|
+
|
|
115
|
+
Same wrapper pattern as Step 4 — preserve frontmatter, replace body with reference:
|
|
116
|
+
|
|
117
|
+
| Source | Frontmatter | Snippet Target | Reference Path |
|
|
118
|
+
|--------|-------------|----------------|----------------|
|
|
119
|
+
| `.github/instructions/*.instructions.md` | `applyTo`, `description` | `.claude/rules-snippets/<name>.md` | `../../.claude/rules-snippets/<name>.md` |
|
|
120
|
+
| `.github/prompts/*.prompt.md` | `description` | `.claude/prompt-snippets/<name>.md` | `../../.claude/prompt-snippets/<name>.md` |
|
|
121
|
+
| `.github/agents/*.agent.md` | `name`, `description`, `tools` | `.claude/agents-snippets/<name>.md` | `../../.claude/agents-snippets/<name>.md` |
|
|
122
|
+
|
|
123
|
+
**Name mapping for instructions**: Strip `.instructions` suffix — `agent-conduct.instructions.md` → `agent-conduct.md`.
|
|
124
|
+
|
|
125
|
+
**Missing snippet?** If an instruction file (e.g., `deployment.instructions.md`) has no matching `.claude/rules/` file, first create the snippet by copying the full content to `.claude/rules-snippets/<name>.md`, then convert to wrapper.
|
|
126
|
+
|
|
127
|
+
For `.github/instructions/` wrappers, include 2–3 key bullet points after the reference line:
|
|
128
|
+
```markdown
|
|
129
|
+
Follow the rules defined in [../../.claude/rules-snippets/<name>.md](../../.claude/rules-snippets/<name>.md).
|
|
130
|
+
|
|
131
|
+
Key points:
|
|
132
|
+
- <first key point from original>
|
|
133
|
+
- <second key point from original>
|
|
134
|
+
```
|
|
135
|
+
|
|
136
|
+
### 6. Convert `.cursor/` Files to Thin Wrappers
|
|
137
|
+
|
|
138
|
+
**Parallelizable**: Process rules, commands, and agents independently.
|
|
139
|
+
|
|
140
|
+
Same pattern as Steps 4–5 — preserve frontmatter, replace body with reference:
|
|
141
|
+
|
|
142
|
+
| Source | Snippet Target | Reference Path |
|
|
143
|
+
|--------|----------------|----------------|
|
|
144
|
+
| `.cursor/rules/*.mdc` | `.claude/rules-snippets/<name>.md` | `../../.claude/rules-snippets/<name>.md` |
|
|
145
|
+
| `.cursor/commands/*.md` | `.claude/prompt-snippets/<name>.md` | `../../.claude/prompt-snippets/<name>.md` |
|
|
146
|
+
| `.cursor/agents/*.agent.md` | `.claude/agents-snippets/<name>.md` | `../../.claude/agents-snippets/<name>.md` |
|
|
147
|
+
|
|
148
|
+
For `.cursor/rules/*.mdc`: preserve the original frontmatter exactly (it may use different field names than `.claude/` rules).
|
|
149
|
+
|
|
150
|
+
### 7. Create `.opencode/` Directory
|
|
151
|
+
|
|
152
|
+
1. **Create `.opencode/opencode.json`** using only supported schema keys:
|
|
153
|
+
|
|
154
|
+
```json
|
|
155
|
+
{
|
|
156
|
+
"$schema": "https://opencode.ai/config.json",
|
|
157
|
+
"instructions": [
|
|
158
|
+
"AGENTS.md",
|
|
159
|
+
".opencode/rules/*.md"
|
|
160
|
+
],
|
|
161
|
+
"skills": {
|
|
162
|
+
"paths": [
|
|
163
|
+
".agents/skills/**/*.md",
|
|
164
|
+
".claude/skills/**/*.md"
|
|
165
|
+
]
|
|
166
|
+
},
|
|
167
|
+
"lsp": true
|
|
168
|
+
}
|
|
169
|
+
```
|
|
170
|
+
|
|
171
|
+
**⚠️ Schema Validation:** Only use supported top-level keys from `https://opencode.ai/config.json`. Do NOT add unsupported keys like `rules`, `commands`, or `agents` as top-level entries — OpenCode discovers these via the `.opencode/` directory structure and the `instructions`/`skills` config arrays.
|
|
172
|
+
|
|
173
|
+
**Supported top-level keys:** `$schema`, `instructions`, `skills`, `agent`, `default_agent`, `model`, `small_model`, `provider`, `mcp`, `tools`, `permission`, `lsp`, `formatter`, `server`, `shell`, `command`, `plugin`, `watcher`, `snapshot`, `share`, `autoupdate`, `compaction`, `attachment`, `logLevel`, `disabled_providers`, `enabled_providers`, `tool_output`, `enterprise`, `experimental`
|
|
174
|
+
|
|
175
|
+
2. **Copy OpenCode plugins**:
|
|
176
|
+
- Copy any `.opencode/plugins/*.mjs` files from the template
|
|
177
|
+
|
|
178
|
+
3. **Create wrappers using `@` import syntax** — one file per snippet:
|
|
179
|
+
|
|
180
|
+
| Directory | Source Snippets | Wrapper Body |
|
|
181
|
+
|-----------|-----------------|--------------|
|
|
182
|
+
| `.opencode/commands/*.md` | `.claude/prompt-snippets/` | `@.claude/prompt-snippets/<name>.md` |
|
|
183
|
+
| `.opencode/rules/*.md` | `.claude/rules-snippets/` | `@.claude/rules-snippets/<name>.md` |
|
|
184
|
+
| `.opencode/agents/*.md` | `.claude/agents-snippets/` | `@.claude/agents-snippets/<name>.md` |
|
|
185
|
+
|
|
186
|
+
Wrapper format for all three:
|
|
187
|
+
```markdown
|
|
188
|
+
---
|
|
189
|
+
description: "<description from snippet frontmatter>"
|
|
190
|
+
---
|
|
191
|
+
|
|
192
|
+
# <Title>
|
|
193
|
+
|
|
194
|
+
@.claude/<snippet-type>/<name>.md
|
|
195
|
+
```
|
|
196
|
+
|
|
197
|
+
### 8. Install Pre-Commit Hook
|
|
198
|
+
|
|
199
|
+
Install the CHANGELOG/secrets enforcement hook to run before every commit:
|
|
200
|
+
|
|
201
|
+
1. Copy `scripts/pre-commit-check.sh` from the template to the target project's `scripts/` directory
|
|
202
|
+
2. Install as a git hook:
|
|
203
|
+
|
|
204
|
+
```bash
|
|
205
|
+
cp scripts/pre-commit-check.sh .git/hooks/pre-commit
|
|
206
|
+
chmod +x .git/hooks/pre-commit
|
|
207
|
+
```
|
|
208
|
+
|
|
209
|
+
This enforces:
|
|
210
|
+
- **CHANGELOG.md** — [Unreleased] must have content when non-trivial files are staged
|
|
211
|
+
- **Zone.Identifier** — `*:Zone.Identifier` files are blocked from commit
|
|
212
|
+
- **Secrets** — `.env`, `.env.*`, `*.key`, `*.pem` files are blocked from commit
|
|
213
|
+
|
|
214
|
+
Use `git commit --no-verify` to bypass.
|
|
215
|
+
|
|
216
|
+
### 9. Install Project Hooks
|
|
217
|
+
|
|
218
|
+
1. Create `hooks/` directory in the target project
|
|
219
|
+
2. Copy all files from the template's `hooks/*` directory (preserve sub-structure)
|
|
220
|
+
3. Make `.js` files executable on Unix: `chmod +x hooks/*.js`
|
|
221
|
+
|
|
222
|
+
### 10. Clean Up Duplicate Skills
|
|
223
|
+
|
|
224
|
+
- Copy `.agents/rules/*.md` from the template
|
|
225
|
+
|
|
226
|
+
**Source of truth**: `.agents/skills/` — all other skill directories are duplicates.
|
|
227
|
+
**Parallelizable with Steps 3–6**: Skill cleanup is independent of file conversion.
|
|
228
|
+
|
|
229
|
+
```bash
|
|
230
|
+
# Remove duplicate skill subdirs (keep README.md if present)
|
|
231
|
+
find .claude/skills -mindepth 1 -maxdepth 1 -type d -exec rm -rf {} +
|
|
232
|
+
find .cursor/skills -mindepth 1 -maxdepth 1 -type d -exec rm -rf {} +
|
|
233
|
+
find .github/skills -mindepth 1 -maxdepth 1 -type d -exec rm -rf {} +
|
|
234
|
+
|
|
235
|
+
# Remove nested duplicates (e.g., subagent-driven-development/subagent-driven-development/)
|
|
236
|
+
rm -rf .agents/skills/subagent-driven-development/subagent-driven-development/
|
|
237
|
+
```
|
|
238
|
+
|
|
239
|
+
### 11. Update `CLAUDE.md`
|
|
240
|
+
|
|
241
|
+
If `CLAUDE.md` is a thin redirect to `AGENTS.md`, add these sections if missing:
|
|
242
|
+
|
|
243
|
+
1. **Snippet Directories** section with links to `rules-snippets/`, `prompt-snippets/`, `agents-snippets/`
|
|
244
|
+
2. **Multi-Tool Support** section with links to `.github/`, `.cursor/`, `.opencode/`
|
|
245
|
+
3. **Related Documentation** entries for snippet dirs, `.opencode/`, and `.toolkit-version`
|
|
246
|
+
|
|
247
|
+
See existing `CLAUDE.md` in the toolkit template (`src/repo/CLAUDE.md`) for the exact format.
|
|
248
|
+
|
|
249
|
+
### 12. Create `.toolkit-version` File
|
|
250
|
+
|
|
251
|
+
```bash
|
|
252
|
+
echo "3.0.0" > .toolkit-version
|
|
253
|
+
```
|
|
254
|
+
|
|
255
|
+
### 13. Validation
|
|
256
|
+
|
|
257
|
+
Run all checks after writing files:
|
|
258
|
+
|
|
259
|
+
| Check | Method | Pass Criteria |
|
|
260
|
+
|-------|--------|---------------|
|
|
261
|
+
| Snippet files exist | `ls -la .claude/{rules,prompt,agents}-snippets/` | All files > 0 bytes |
|
|
262
|
+
| Thin wrappers reference correct paths | Grep each wrapper for its reference line | Every reference points to an existing snippet |
|
|
263
|
+
| No `{{PLACEHOLDER}}` lost | `grep -r '{{' .claude/*-snippets/` | Count matches original files |
|
|
264
|
+
| No broken relative paths | For each wrapper, verify linked snippet exists | All links resolve |
|
|
265
|
+
| `.opencode/` complete | Check `opencode.json` + one file per snippet in commands/, rules/, agents/ | Counts match |
|
|
266
|
+
| Duplicate skills removed | No subdirs in `.claude/skills/`, `.cursor/skills/`, `.github/skills/` (except README.md) | Clean |
|
|
267
|
+
|
|
268
|
+
If `--verbose`: log each check result with file paths.
|
|
269
|
+
|
|
270
|
+
### 14. Generate Upgrade Report
|
|
271
|
+
|
|
272
|
+
Output the report to stdout (and optionally to `docs/upgrade-report-v3.md`):
|
|
273
|
+
|
|
274
|
+
```markdown
|
|
275
|
+
## 🚀 Bootstrap Upgrade Report
|
|
276
|
+
|
|
277
|
+
**From**: pre-3.0 (inline pattern)
|
|
278
|
+
**To**: 3.0+ (snippet-based architecture)
|
|
279
|
+
**Date**: {{DATE}}
|
|
280
|
+
**Dry run**: yes | no
|
|
281
|
+
|
|
282
|
+
### Snippet Directories Created
|
|
283
|
+
- `.claude/rules-snippets/` — X files
|
|
284
|
+
- `.claude/prompt-snippets/` — X files
|
|
285
|
+
- `.claude/agents-snippets/` — X files
|
|
286
|
+
|
|
287
|
+
### Files Converted to Thin Wrappers
|
|
288
|
+
- `.claude/rules/` — X files
|
|
289
|
+
- `.claude/commands/` — X files
|
|
290
|
+
- `.claude/agents/` — X files
|
|
291
|
+
- `.github/instructions/` — X files
|
|
292
|
+
- `.github/prompts/` — X files
|
|
293
|
+
- `.github/agents/` — X files
|
|
294
|
+
- `.cursor/rules/` — X files
|
|
295
|
+
- `.cursor/commands/` — X files
|
|
296
|
+
- `.cursor/agents/` — X files
|
|
297
|
+
|
|
298
|
+
### New Directories Created
|
|
299
|
+
- `.opencode/` — X files (config, commands, rules, agents)
|
|
300
|
+
|
|
301
|
+
### Cleanup
|
|
302
|
+
- Removed X duplicate skill directories
|
|
303
|
+
- Removed X nested duplicates
|
|
304
|
+
|
|
305
|
+
### Files Created
|
|
306
|
+
- `.toolkit-version` — 3.0.0
|
|
307
|
+
|
|
308
|
+
### Validation
|
|
309
|
+
- [x] All snippet files exist and have content
|
|
310
|
+
- [x] All thin wrappers reference correct snippets
|
|
311
|
+
- [x] No {{PLACEHOLDER}} syntax lost
|
|
312
|
+
- [x] No broken relative paths
|
|
313
|
+
- [x] .opencode/ directory complete
|
|
314
|
+
- [x] Duplicate skills removed
|
|
315
|
+
```
|
|
316
|
+
|
|
317
|
+
If `--verbose`: include a file-by-file log of every operation.
|
|
318
|
+
|
|
319
|
+
### 15. Git Commit
|
|
320
|
+
|
|
321
|
+
If not `--dry-run`, stage and commit all changes:
|
|
322
|
+
|
|
323
|
+
```bash
|
|
324
|
+
git add -A
|
|
325
|
+
git commit -m "chore: upgrade AI instructions to toolkit v3.0.0 (snippet architecture)"
|
|
326
|
+
```
|
|
327
|
+
|
|
328
|
+
If `--dry-run`: skip commit, note in report: "Dry run — no changes committed."
|
|
329
|
+
|
|
330
|
+
## Parallelization Summary
|
|
331
|
+
|
|
332
|
+
Steps that can run in parallel (dispatch subagents):
|
|
333
|
+
|
|
334
|
+
| Step | Parallelizable Groups |
|
|
335
|
+
|------|-----------------------|
|
|
336
|
+
| 3 | rules extraction ‖ commands extraction ‖ agents extraction |
|
|
337
|
+
| 4 | rules wrappers ‖ commands wrappers ‖ agents wrappers |
|
|
338
|
+
| 5 | instructions wrappers ‖ prompts wrappers ‖ agents wrappers |
|
|
339
|
+
| 6 | rules wrappers ‖ commands wrappers ‖ agents wrappers |
|
|
340
|
+
| 10 | Independent of 3–6 — can run in parallel with file conversion |
|
|
341
|
+
|
|
342
|
+
Steps that must be sequential: 1 → 2 → (3‖4‖5‖6‖10) → 7 → 8 → 9 → 11 → 12 → 13 → 14 → 15.
|
|
343
|
+
|
|
344
|
+
## Error Handling
|
|
345
|
+
|
|
346
|
+
- If a file has no frontmatter: treat entire file as body content, create wrapper with empty frontmatter fields
|
|
347
|
+
- If a snippet file already exists: **skip** with warning (do not overwrite)
|
|
348
|
+
- If `.opencode/` already exists: merge — add missing files, skip existing ones
|
|
349
|
+
- If git commit fails: show error, suggest manual commit
|
|
350
|
+
- If any validation check fails: report the failure but continue with remaining checks
|
|
351
|
+
|
|
352
|
+
## Notes
|
|
353
|
+
|
|
354
|
+
- This is a **one-time operation** — running it again on an already-migrated project should be a no-op (pre-flight check aborts)
|
|
355
|
+
- All `{{PLACEHOLDER}}` values are preserved exactly — this migration changes file structure, not content
|
|
356
|
+
- Project-specific customizations in file bodies are preserved in the extracted snippets
|
|
357
|
+
- After upgrade, use `/bootstrap-patch` for incremental template updates
|