opencodekit 0.15.20 → 0.16.0
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/dist/index.js +7 -7
- package/dist/template/.opencode/AGENTS.md +21 -20
- package/dist/template/.opencode/agent/build.md +351 -0
- package/dist/template/.opencode/{agents → agent}/explore.md +1 -1
- package/dist/template/.opencode/{agents → agent}/general.md +54 -4
- package/dist/template/.opencode/{agents → agent}/looker.md +1 -1
- package/dist/template/.opencode/{agents → agent}/painter.md +1 -1
- package/dist/template/.opencode/{agents → agent}/plan.md +52 -0
- package/dist/template/.opencode/{agents → agent}/review.md +1 -1
- package/dist/template/.opencode/{agents → agent}/scout.md +3 -3
- package/dist/template/.opencode/{agents → agent}/vision.md +1 -1
- package/dist/template/.opencode/command/create.md +277 -0
- package/dist/template/.opencode/{commands → command}/design.md +5 -7
- package/dist/template/.opencode/{commands → command}/handoff.md +43 -1
- package/dist/template/.opencode/{commands → command}/init.md +25 -47
- package/dist/template/.opencode/{commands → command}/plan.md +35 -16
- package/dist/template/.opencode/{commands → command}/research.md +4 -10
- package/dist/template/.opencode/{commands → command}/resume.md +38 -22
- package/dist/template/.opencode/command/ship.md +156 -0
- package/dist/template/.opencode/command/start.md +613 -0
- package/dist/template/.opencode/{commands → command}/ui-review.md +5 -7
- package/dist/template/.opencode/command/verify.md +279 -0
- package/dist/template/.opencode/memory/_templates/README.md +57 -19
- package/dist/template/.opencode/memory/_templates/prd.md +29 -0
- package/dist/template/.opencode/memory/_templates/project/tech-stack.md +50 -0
- package/dist/template/.opencode/memory/_templates/proposal.md +38 -0
- package/dist/template/.opencode/memory/_templates/spec.md +66 -0
- package/dist/template/.opencode/memory/_templates/tasks.md +198 -0
- package/dist/template/.opencode/memory/observations/2026-01-31-decision-created-dedicated-worker-agent-for-swarm.md +20 -0
- package/dist/template/.opencode/memory/observations/2026-01-31-decision-rollback-to-v1-1-47-for-copilot-claude-r.md +21 -0
- package/dist/template/.opencode/memory/observations/2026-01-31-decision-simplified-swarm-to-task-tool-pattern.md +44 -0
- package/dist/template/.opencode/memory/observations/2026-01-31-decision-swarm-architecture-task-tool-over-tmux.md +33 -0
- package/dist/template/.opencode/memory/observations/2026-01-31-decision-worker-skills-defined-for-swarm-delegati.md +30 -0
- package/dist/template/.opencode/memory/observations/2026-01-31-learning-gpt-reasoning-config-for-github-copilot.md +51 -0
- package/dist/template/.opencode/memory/observations/2026-01-31-learning-opencode-custom-tools-api.md +48 -0
- package/dist/template/.opencode/memory/observations/2026-01-31-learning-opencode-v1-1-48-skills-as-slash-command.md +21 -0
- package/dist/template/.opencode/memory/observations/2026-01-31-learning-swarm-system-simplified-removed-mailbox-.md +30 -0
- package/dist/template/.opencode/memory/observations/2026-01-31-learning-v1-1-48-native-copilot-reasoning-via-pr-.md +45 -0
- package/dist/template/.opencode/memory/observations/2026-01-31-warning-cannot-add-custom-config-to-opencode-jso.md +18 -0
- package/dist/template/.opencode/memory/observations/2026-01-31-warning-opencode-v1-1-48-claude-thinking-block-s.md +51 -0
- package/dist/template/.opencode/memory/observations/2026-02-01-decision-add-skills-vs-commands-to-global-agents-.md +15 -0
- package/dist/template/.opencode/memory/observations/2026-02-01-decision-build-agent-auto-loads-skills-contextual.md +31 -0
- package/dist/template/.opencode/memory/observations/2026-02-01-decision-fixed-agent-configuration-for-opencodeki.md +25 -0
- package/dist/template/.opencode/memory/observations/2026-02-01-decision-focused-agents-md-upgrade-for-opencode-k.md +14 -0
- package/dist/template/.opencode/memory/observations/2026-02-01-decision-implement-tier-1-permission-upgrades.md +15 -0
- package/dist/template/.opencode/memory/observations/2026-02-01-decision-instructions-config-explicit-paths-not-w.md +40 -0
- package/dist/template/.opencode/memory/observations/2026-02-01-decision-merged-context-into-memory-project-singl.md +42 -0
- package/dist/template/.opencode/memory/observations/2026-02-01-decision-oracle-tool-should-use-review-agent-not-.md +14 -0
- package/dist/template/.opencode/memory/observations/2026-02-01-decision-plan-agent-auto-loads-skills-contextuall.md +31 -0
- package/dist/template/.opencode/memory/observations/2026-02-01-decision-plan-phased-oracle-command-merge-into-ne.md +14 -0
- package/dist/template/.opencode/memory/observations/2026-02-01-decision-prd-workflow-uses-prd-and-prd-task-skill.md +23 -0
- package/dist/template/.opencode/memory/observations/2026-02-01-decision-prefer-review-agent-via-opencode-cli-ove.md +14 -0
- package/dist/template/.opencode/memory/observations/2026-02-01-decision-remove-oracle-tool-add-ship-command-with.md +14 -0
- package/dist/template/.opencode/memory/observations/2026-02-01-decision-remove-oracle-tool-and-add-ship-command-.md +14 -0
- package/dist/template/.opencode/memory/observations/2026-02-01-decision-remove-oracle-tool-and-add-ship-command.md +14 -0
- package/dist/template/.opencode/memory/observations/2026-02-01-decision-remove-skills-vs-commands-section-from-a.md +14 -0
- package/dist/template/.opencode/memory/observations/2026-02-01-decision-replace-oracle-tool-with-ship-command-fl.md +14 -0
- package/dist/template/.opencode/memory/observations/2026-02-01-decision-replace-oracle-with-ship-command-workflo.md +14 -0
- package/dist/template/.opencode/memory/observations/2026-02-01-decision-replace-proxypal-oracle-with-cli-review-.md +14 -0
- package/dist/template/.opencode/memory/observations/2026-02-01-decision-simplified-dist-template-only-tech-stack.md +50 -0
- package/dist/template/.opencode/memory/observations/2026-02-01-decision-simplified-templates-only-tech-stack-md.md +26 -0
- package/dist/template/.opencode/memory/observations/2026-02-01-decision-subagents-load-minimal-skills-stay-lean.md +29 -0
- package/dist/template/.opencode/memory/observations/2026-02-01-decision-user-approved-permission-upgrades-in-ope.md +15 -0
- package/dist/template/.opencode/memory/observations/2026-02-01-discovery-verify-command-already-implemented.md +28 -0
- package/dist/template/.opencode/memory/observations/2026-02-01-feature-openspec-phase-b-complete-template-upgra.md +43 -0
- package/dist/template/.opencode/memory/observations/2026-02-01-learning-build-agent-should-use-dynamic-lsp-not-f.md +14 -0
- package/dist/template/.opencode/memory/observations/2026-02-01-learning-kimi-k2-5-model-requires-temperature-1-0.md +22 -0
- package/dist/template/.opencode/memory/observations/2026-02-01-learning-opencode-context-injection-already-imple.md +27 -0
- package/dist/template/.opencode/memory/observations/2026-02-01-learning-opencode-context-injection-uses-instruct.md +35 -0
- package/dist/template/.opencode/memory/observations/2026-02-01-learning-update-build-agent-prompt-to-use-context.md +14 -0
- package/dist/template/.opencode/memory/observations/2026-02-01-learning-upgrade-agents-md-using-opencode-expert-.md +14 -0
- package/dist/template/.opencode/memory/observations/2026-02-01-learning-upgrade-agents-md-with-opencode-expert-g.md +14 -0
- package/dist/template/.opencode/memory/observations/2026-02-01-learning-upgrade-agents-md-with-opencode-expert-r.md +14 -0
- package/dist/template/.opencode/memory/observations/2026-02-01-learning-user-prefers-copilot-gpt-5-2-codex-mediu.md +14 -0
- package/dist/template/.opencode/memory/observations/2026-02-01-learning-user-wants-general-agent-prompt-contextu.md +15 -0
- package/dist/template/.opencode/memory/observations/2026-02-01-learning-user-wants-general-agent-prompt-reviewed.md +15 -0
- package/dist/template/.opencode/memory/project/command-rules.md +122 -0
- package/dist/template/.opencode/memory/project/tech-stack.md +50 -0
- package/dist/template/.opencode/memory/research/ccpm-analysis.md +334 -0
- package/dist/template/.opencode/memory/research/openspec-analysis.md +226 -0
- package/dist/template/.opencode/opencode.json +176 -65
- package/dist/template/.opencode/package.json +2 -2
- package/dist/template/.opencode/{plugins → plugin}/copilot-auth.ts +107 -177
- package/dist/template/.opencode/{plugins → plugin}/sdk/copilot/chat/openai-compatible-chat-language-model.ts +12 -2
- package/dist/template/.opencode/{plugins → plugin}/sdk/copilot/chat/openai-compatible-chat-options.ts +1 -1
- package/dist/template/.opencode/{plugins → plugin}/sdk/copilot/openai-compatible-error.ts +1 -1
- package/dist/template/.opencode/{plugins → plugin}/swarm-enforcer.ts +18 -23
- package/dist/template/.opencode/{skills → skill}/beads/SKILL.md +41 -0
- package/dist/template/.opencode/skill/beads-bridge/SKILL.md +294 -0
- package/dist/template/.opencode/skill/resend/SKILL.md +167 -0
- package/dist/template/.opencode/skill/resend/references/react-email.md +287 -0
- package/dist/template/.opencode/skill/resend/references/receive-email.md +248 -0
- package/dist/template/.opencode/skill/resend/references/send-email.md +318 -0
- package/dist/template/.opencode/skill/swarm-coordination/SKILL.md +690 -0
- package/dist/template/.opencode/skill/tool-priority/SKILL.md +259 -0
- package/dist/template/.opencode/tool/beads-sync.ts +657 -0
- package/dist/template/.opencode/{tools → tool}/swarm-delegate.ts +13 -8
- package/dist/template/.opencode/{tools → tool}/swarm-monitor.ts +14 -170
- package/dist/template/.opencode/{tools → tool}/swarm-plan.ts +232 -1
- package/package.json +3 -1
- package/dist/template/.opencode/agents/build.md +0 -584
- package/dist/template/.opencode/commands/accessibility-check.md +0 -331
- package/dist/template/.opencode/commands/agent-browser.md +0 -21
- package/dist/template/.opencode/commands/analyze-mockup.md +0 -423
- package/dist/template/.opencode/commands/analyze-project.md +0 -295
- package/dist/template/.opencode/commands/brainstorm.md +0 -373
- package/dist/template/.opencode/commands/cloudflare.md +0 -70
- package/dist/template/.opencode/commands/commit.md +0 -245
- package/dist/template/.opencode/commands/complete-next-task.md +0 -77
- package/dist/template/.opencode/commands/create.md +0 -171
- package/dist/template/.opencode/commands/design-audit.md +0 -480
- package/dist/template/.opencode/commands/edit-image.md +0 -242
- package/dist/template/.opencode/commands/finish.md +0 -237
- package/dist/template/.opencode/commands/fix-ci.md +0 -109
- package/dist/template/.opencode/commands/fix-types.md +0 -104
- package/dist/template/.opencode/commands/fix-ui.md +0 -117
- package/dist/template/.opencode/commands/fix.md +0 -168
- package/dist/template/.opencode/commands/frontend-design.md +0 -21
- package/dist/template/.opencode/commands/generate-diagram.md +0 -349
- package/dist/template/.opencode/commands/generate-icon.md +0 -283
- package/dist/template/.opencode/commands/generate-image.md +0 -246
- package/dist/template/.opencode/commands/generate-pattern.md +0 -247
- package/dist/template/.opencode/commands/generate-storyboard.md +0 -250
- package/dist/template/.opencode/commands/implement.md +0 -607
- package/dist/template/.opencode/commands/import-plan.md +0 -406
- package/dist/template/.opencode/commands/index-knowledge.md +0 -25
- package/dist/template/.opencode/commands/integration-test.md +0 -424
- package/dist/template/.opencode/commands/issue.md +0 -102
- package/dist/template/.opencode/commands/new-feature.md +0 -650
- package/dist/template/.opencode/commands/opensrc.md +0 -58
- package/dist/template/.opencode/commands/quick-build.md +0 -238
- package/dist/template/.opencode/commands/ralph.md +0 -41
- package/dist/template/.opencode/commands/research-and-implement.md +0 -148
- package/dist/template/.opencode/commands/research-ui.md +0 -466
- package/dist/template/.opencode/commands/restore-image.md +0 -424
- package/dist/template/.opencode/commands/revert-feature.md +0 -386
- package/dist/template/.opencode/commands/skill-create.md +0 -517
- package/dist/template/.opencode/commands/skill-optimize.md +0 -556
- package/dist/template/.opencode/commands/start.md +0 -314
- package/dist/template/.opencode/commands/summarize.md +0 -412
- package/dist/template/.opencode/commands/triage.md +0 -398
- package/dist/template/.opencode/memory/_templates/project/architecture.md +0 -60
- package/dist/template/.opencode/memory/_templates/project/commands.md +0 -72
- package/dist/template/.opencode/memory/_templates/project/conventions.md +0 -68
- package/dist/template/.opencode/memory/_templates/project/gotchas.md +0 -41
- package/dist/template/.opencode/skills/notebooklm/SKILL.md +0 -272
- package/dist/template/.opencode/skills/notebooklm/references/setup.md +0 -353
- package/dist/template/.opencode/skills/swarm-coordination/SKILL.md +0 -548
- package/dist/template/.opencode/skills/tool-priority/SKILL.md +0 -190
- package/dist/template/.opencode/tools/notebooklm.ts +0 -488
- package/dist/template/.opencode/tools/oracle.ts +0 -240
- /package/dist/template/.opencode/{commands → command}/pr.md +0 -0
- /package/dist/template/.opencode/{commands → command}/review-codebase.md +0 -0
- /package/dist/template/.opencode/{commands → command}/status.md +0 -0
- /package/dist/template/.opencode/{plugins → plugin}/README.md +0 -0
- /package/dist/template/.opencode/{plugins → plugin}/compaction.ts +0 -0
- /package/dist/template/.opencode/{plugins → plugin}/env-ctx.ts +0 -0
- /package/dist/template/.opencode/{plugins → plugin}/lib/notify.ts +0 -0
- /package/dist/template/.opencode/{plugins → plugin}/lsp.ts +0 -0
- /package/dist/template/.opencode/{plugins → plugin}/memory.ts +0 -0
- /package/dist/template/.opencode/{plugins → plugin}/notification.ts.bak +0 -0
- /package/dist/template/.opencode/{plugins → plugin}/package.json +0 -0
- /package/dist/template/.opencode/{plugins → plugin}/sdk/copilot/chat/convert-to-openai-compatible-chat-messages.ts +0 -0
- /package/dist/template/.opencode/{plugins → plugin}/sdk/copilot/chat/get-response-metadata.ts +0 -0
- /package/dist/template/.opencode/{plugins → plugin}/sdk/copilot/chat/map-openai-compatible-finish-reason.ts +0 -0
- /package/dist/template/.opencode/{plugins → plugin}/sdk/copilot/chat/openai-compatible-api-types.ts +0 -0
- /package/dist/template/.opencode/{plugins → plugin}/sdk/copilot/chat/openai-compatible-metadata-extractor.ts +0 -0
- /package/dist/template/.opencode/{plugins → plugin}/sdk/copilot/chat/openai-compatible-prepare-tools.ts +0 -0
- /package/dist/template/.opencode/{plugins → plugin}/sdk/copilot/copilot-provider.ts +0 -0
- /package/dist/template/.opencode/{plugins → plugin}/sdk/copilot/index.ts +0 -0
- /package/dist/template/.opencode/{plugins → plugin}/sessions.ts +0 -0
- /package/dist/template/.opencode/{plugins → plugin}/skill-mcp.ts +0 -0
- /package/dist/template/.opencode/{plugins → plugin}/truncator.ts +0 -0
- /package/dist/template/.opencode/{plugins → plugin}/tsconfig.json +0 -0
- /package/dist/template/.opencode/{skills → skill}/accessibility-audit/SKILL.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/agent-browser/SKILL.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/beads/references/BOUNDARIES.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/beads/references/DEPENDENCIES.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/beads/references/RESUMABILITY.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/beads/references/WORKFLOWS.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/brainstorming/SKILL.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/chrome-devtools/SKILL.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/chrome-devtools/mcp.json +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/SKILL.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/agents-sdk/README.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/agents-sdk/api.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/agents-sdk/configuration.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/agents-sdk/gotchas.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/agents-sdk/patterns.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/ai-gateway/README.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/ai-search/README.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/ai-search/api.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/ai-search/configuration.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/ai-search/gotchas.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/ai-search/patterns.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/analytics-engine/README.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/analytics-engine/api.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/analytics-engine/configuration.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/analytics-engine/gotchas.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/analytics-engine/patterns.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/api/README.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/api/api.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/api/configuration.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/api/gotchas.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/api/patterns.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/api-shield/README.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/api-shield/api.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/api-shield/configuration.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/api-shield/gotchas.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/api-shield/patterns.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/argo-smart-routing/README.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/argo-smart-routing/api.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/argo-smart-routing/configuration.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/argo-smart-routing/gotchas.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/argo-smart-routing/patterns.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/bindings/README.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/bindings/api.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/bindings/configuration.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/bindings/gotchas.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/bindings/patterns.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/bot-management/README.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/bot-management/api.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/bot-management/configuration.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/bot-management/gotchas.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/bot-management/patterns.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/browser-rendering/README.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/browser-rendering/api.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/browser-rendering/configuration.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/browser-rendering/gotchas.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/browser-rendering/patterns.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/c3/README.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/cache-reserve/README.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/cache-reserve/api.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/cache-reserve/configuration.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/cache-reserve/gotchas.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/cache-reserve/patterns.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/containers/README.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/containers/api.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/containers/configuration.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/containers/gotchas.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/containers/patterns.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/cron-triggers/README.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/cron-triggers/api.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/cron-triggers/configuration.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/cron-triggers/gotchas.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/cron-triggers/patterns.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/d1/README.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/d1/api.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/d1/configuration.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/d1/gotchas.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/d1/patterns.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/ddos/README.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/ddos/api.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/ddos/configuration.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/ddos/gotchas.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/ddos/patterns.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/do-storage/README.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/do-storage/api.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/do-storage/configuration.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/do-storage/gotchas.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/do-storage/patterns.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/durable-objects/README.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/durable-objects/api.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/durable-objects/configuration.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/durable-objects/gotchas.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/durable-objects/patterns.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/email-routing/README.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/email-routing/api.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/email-routing/configuration.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/email-routing/gotchas.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/email-routing/patterns.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/email-workers/README.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/hyperdrive/README.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/hyperdrive/api.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/hyperdrive/configuration.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/hyperdrive/gotchas.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/hyperdrive/patterns.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/images/README.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/images/api.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/images/configuration.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/images/gotchas.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/images/patterns.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/kv/README.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/kv/api.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/kv/configuration.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/kv/gotchas.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/kv/patterns.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/miniflare/README.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/miniflare/api.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/miniflare/configuration.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/miniflare/gotchas.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/miniflare/patterns.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/network-interconnect/README.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/network-interconnect/api.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/network-interconnect/configuration.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/network-interconnect/gotchas.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/network-interconnect/patterns.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/observability/README.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/observability/api.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/observability/configuration.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/observability/gotchas.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/observability/patterns.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/pages/README.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/pages/api.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/pages/configuration.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/pages/gotchas.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/pages/patterns.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/pages-functions/README.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/pages-functions/api.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/pages-functions/configuration.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/pages-functions/gotchas.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/pages-functions/patterns.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/pipelines/README.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/pulumi/README.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/pulumi/api.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/pulumi/configuration.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/pulumi/gotchas.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/pulumi/patterns.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/queues/README.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/queues/api.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/queues/configuration.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/queues/gotchas.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/queues/patterns.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/r2/README.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/r2/api.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/r2/configuration.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/r2/gotchas.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/r2/patterns.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/r2-data-catalog/README.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/r2-data-catalog/api.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/r2-data-catalog/configuration.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/r2-data-catalog/gotchas.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/r2-data-catalog/patterns.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/r2-sql/README.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/realtime-sfu/README.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/realtime-sfu/api.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/realtime-sfu/configuration.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/realtime-sfu/gotchas.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/realtime-sfu/patterns.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/realtimekit/README.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/realtimekit/api.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/realtimekit/configuration.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/realtimekit/gotchas.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/realtimekit/patterns.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/sandbox/README.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/sandbox/api.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/sandbox/configuration.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/sandbox/gotchas.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/sandbox/patterns.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/secrets-store/README.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/secrets-store/api.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/secrets-store/configuration.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/secrets-store/gotchas.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/secrets-store/patterns.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/smart-placement/README.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/smart-placement/api.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/smart-placement/configuration.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/smart-placement/gotchas.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/smart-placement/patterns.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/snippets/README.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/snippets/api.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/snippets/configuration.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/snippets/gotchas.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/snippets/patterns.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/spectrum/README.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/spectrum/api.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/spectrum/configuration.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/spectrum/gotchas.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/spectrum/patterns.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/static-assets/README.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/static-assets/api.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/static-assets/configuration.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/static-assets/gotchas.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/static-assets/patterns.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/stream/README.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/stream/api.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/stream/configuration.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/stream/gotchas.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/stream/patterns.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/tail-workers/README.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/terraform/README.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/terraform/api.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/terraform/configuration.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/terraform/gotchas.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/terraform/patterns.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/tunnel/README.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/tunnel/api.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/tunnel/configuration.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/tunnel/gotchas.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/tunnel/patterns.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/turn/README.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/turnstile/README.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/turnstile/api.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/turnstile/configuration.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/turnstile/gotchas.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/turnstile/patterns.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/vectorize/README.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/waf/README.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/waf/api.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/waf/configuration.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/waf/gotchas.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/waf/patterns.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/web-analytics/README.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/web-analytics/api.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/web-analytics/configuration.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/web-analytics/gotchas.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/web-analytics/patterns.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/workerd/README.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/workerd/api.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/workerd/configuration.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/workerd/gotchas.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/workerd/patterns.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/workers/README.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/workers/api.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/workers/configuration.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/workers/gotchas.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/workers/patterns.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/workers-ai/README.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/workers-for-platforms/README.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/workers-for-platforms/api.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/workers-for-platforms/configuration.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/workers-for-platforms/gotchas.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/workers-for-platforms/patterns.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/workers-playground/README.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/workers-playground/api.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/workers-playground/configuration.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/workers-playground/gotchas.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/workers-playground/patterns.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/workers-vpc/README.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/workflows/README.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/workflows/api.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/workflows/configuration.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/workflows/gotchas.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/workflows/patterns.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/wrangler/README.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/wrangler/api.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/wrangler/configuration.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/wrangler/gotchas.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/wrangler/patterns.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/cloudflare/references/zaraz/README.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/condition-based-waiting/SKILL.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/condition-based-waiting/example.ts +0 -0
- /package/dist/template/.opencode/{skills → skill}/context-engineering/SKILL.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/deep-research/SKILL.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/defense-in-depth/SKILL.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/design-system-audit/SKILL.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/dispatching-parallel-agents/SKILL.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/executing-plans/SKILL.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/figma/SKILL.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/finishing-a-development-branch/SKILL.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/frontend-design/SKILL.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/frontend-design/references/animation/motion-advanced.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/frontend-design/references/animation/motion-core.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/frontend-design/references/canvas/execution.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/frontend-design/references/canvas/philosophy.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/frontend-design/references/shadcn/accessibility.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/frontend-design/references/shadcn/core-components.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/frontend-design/references/shadcn/form-components.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/frontend-design/references/shadcn/setup.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/frontend-design/references/shadcn/theming.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/frontend-design/references/tailwind/responsive.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/frontend-design/references/tailwind/utilities-layout.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/frontend-design/references/tailwind/utilities-styling.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/frontend-design/references/tailwind/v4-config.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/frontend-design/references/tailwind/v4-features.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/gemini-large-context/SKILL.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/index-knowledge/SKILL.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/memory-system/SKILL.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/mockup-to-code/SKILL.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/mqdh/SKILL.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/opensrc/SKILL.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/opensrc/references/architecture.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/opensrc/references/cli-usage.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/opensrc/references/registry-support.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/playwright/SKILL.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/playwright/mcp.json +0 -0
- /package/dist/template/.opencode/{skills → skill}/playwriter/SKILL.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/polar/SKILL.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/prd/SKILL.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/prd-task/SKILL.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/prd-task/references/prd-schema.json +0 -0
- /package/dist/template/.opencode/{skills → skill}/ralph/SKILL.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/react-best-practices/AGENTS.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/react-best-practices/README.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/react-best-practices/SKILL.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/react-best-practices/metadata.json +0 -0
- /package/dist/template/.opencode/{skills → skill}/react-best-practices/rules/_sections.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/react-best-practices/rules/_template.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/react-best-practices/rules/advanced-event-handler-refs.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/react-best-practices/rules/advanced-use-latest.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/react-best-practices/rules/async-api-routes.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/react-best-practices/rules/async-defer-await.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/react-best-practices/rules/async-dependencies.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/react-best-practices/rules/async-parallel.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/react-best-practices/rules/async-suspense-boundaries.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/react-best-practices/rules/bundle-barrel-imports.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/react-best-practices/rules/bundle-conditional.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/react-best-practices/rules/bundle-defer-third-party.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/react-best-practices/rules/bundle-dynamic-imports.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/react-best-practices/rules/bundle-preload.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/react-best-practices/rules/client-event-listeners.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/react-best-practices/rules/client-localstorage-schema.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/react-best-practices/rules/client-passive-event-listeners.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/react-best-practices/rules/client-swr-dedup.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/react-best-practices/rules/js-batch-dom-css.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/react-best-practices/rules/js-cache-function-results.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/react-best-practices/rules/js-cache-property-access.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/react-best-practices/rules/js-cache-storage.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/react-best-practices/rules/js-combine-iterations.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/react-best-practices/rules/js-early-exit.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/react-best-practices/rules/js-hoist-regexp.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/react-best-practices/rules/js-index-maps.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/react-best-practices/rules/js-length-check-first.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/react-best-practices/rules/js-min-max-loop.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/react-best-practices/rules/js-set-map-lookups.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/react-best-practices/rules/js-tosorted-immutable.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/react-best-practices/rules/rendering-activity.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/react-best-practices/rules/rendering-animate-svg-wrapper.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/react-best-practices/rules/rendering-conditional-render.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/react-best-practices/rules/rendering-content-visibility.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/react-best-practices/rules/rendering-hoist-jsx.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/react-best-practices/rules/rendering-hydration-no-flicker.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/react-best-practices/rules/rendering-svg-precision.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/react-best-practices/rules/rerender-defer-reads.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/react-best-practices/rules/rerender-dependencies.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/react-best-practices/rules/rerender-derived-state.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/react-best-practices/rules/rerender-functional-setstate.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/react-best-practices/rules/rerender-lazy-state-init.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/react-best-practices/rules/rerender-memo.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/react-best-practices/rules/rerender-transitions.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/react-best-practices/rules/server-after-nonblocking.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/react-best-practices/rules/server-cache-lru.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/react-best-practices/rules/server-cache-react.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/react-best-practices/rules/server-parallel-fetching.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/react-best-practices/rules/server-serialization.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/receiving-code-review/SKILL.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/requesting-code-review/SKILL.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/requesting-code-review/review.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/root-cause-tracing/SKILL.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/root-cause-tracing/find-polluter.sh +0 -0
- /package/dist/template/.opencode/{skills → skill}/session-management/SKILL.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/sharing-skills/SKILL.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/skill-creator/SKILL.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/source-code-research/SKILL.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/stitch/SKILL.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/stitch/mcp.json +0 -0
- /package/dist/template/.opencode/{skills → skill}/subagent-driven-development/SKILL.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/supabase/SKILL.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/supabase/mcp.json +0 -0
- /package/dist/template/.opencode/{skills → skill}/supabase-postgres-best-practices/AGENTS.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/supabase-postgres-best-practices/SKILL.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/supabase-postgres-best-practices/rules/advanced-full-text-search.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/supabase-postgres-best-practices/rules/advanced-jsonb-indexing.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/supabase-postgres-best-practices/rules/conn-idle-timeout.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/supabase-postgres-best-practices/rules/conn-limits.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/supabase-postgres-best-practices/rules/conn-pooling.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/supabase-postgres-best-practices/rules/conn-prepared-statements.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/supabase-postgres-best-practices/rules/data-batch-inserts.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/supabase-postgres-best-practices/rules/data-n-plus-one.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/supabase-postgres-best-practices/rules/data-pagination.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/supabase-postgres-best-practices/rules/data-upsert.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/supabase-postgres-best-practices/rules/lock-advisory.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/supabase-postgres-best-practices/rules/lock-deadlock-prevention.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/supabase-postgres-best-practices/rules/lock-short-transactions.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/supabase-postgres-best-practices/rules/lock-skip-locked.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/supabase-postgres-best-practices/rules/monitor-explain-analyze.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/supabase-postgres-best-practices/rules/monitor-pg-stat-statements.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/supabase-postgres-best-practices/rules/monitor-vacuum-analyze.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/supabase-postgres-best-practices/rules/query-composite-indexes.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/supabase-postgres-best-practices/rules/query-covering-indexes.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/supabase-postgres-best-practices/rules/query-index-types.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/supabase-postgres-best-practices/rules/query-missing-indexes.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/supabase-postgres-best-practices/rules/query-partial-indexes.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/supabase-postgres-best-practices/rules/schema-data-types.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/supabase-postgres-best-practices/rules/schema-foreign-key-indexes.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/supabase-postgres-best-practices/rules/schema-lowercase-identifiers.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/supabase-postgres-best-practices/rules/schema-partitioning.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/supabase-postgres-best-practices/rules/schema-primary-keys.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/supabase-postgres-best-practices/rules/security-privileges.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/supabase-postgres-best-practices/rules/security-rls-basics.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/supabase-postgres-best-practices/rules/security-rls-performance.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/systematic-debugging/SKILL.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/test-driven-development/SKILL.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/testing-anti-patterns/SKILL.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/testing-skills-with-subagents/SKILL.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/ui-ux-research/SKILL.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/using-git-worktrees/SKILL.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/using-skills/SKILL.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/v0/SKILL.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/vercel-deploy-claimable/SKILL.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/vercel-deploy-claimable/scripts/deploy.sh +0 -0
- /package/dist/template/.opencode/{skills → skill}/verification-before-completion/SKILL.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/visual-analysis/SKILL.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/web-design-guidelines/SKILL.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/writing-plans/SKILL.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/writing-skills/SKILL.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/writing-skills/anthropic-best-practices.md +0 -0
- /package/dist/template/.opencode/{skills → skill}/writing-skills/graphviz-conventions.dot +0 -0
- /package/dist/template/.opencode/{skills → skill}/writing-skills/persuasion-principles.md +0 -0
- /package/dist/template/.opencode/{tools → tool}/context7-query-docs.ts +0 -0
- /package/dist/template/.opencode/{tools → tool}/context7-resolve-library-id.ts +0 -0
- /package/dist/template/.opencode/{tools → tool}/grepsearch.ts +0 -0
- /package/dist/template/.opencode/{tools → tool}/memory-read.ts +0 -0
- /package/dist/template/.opencode/{tools → tool}/memory-search.ts +0 -0
- /package/dist/template/.opencode/{tools → tool}/memory-update.ts +0 -0
- /package/dist/template/.opencode/{tools → tool}/observation.ts +0 -0
|
@@ -0,0 +1,613 @@
|
|
|
1
|
+
---
|
|
2
|
+
description: Start working on a bead - claim it and prepare context
|
|
3
|
+
argument-hint: "<bead-id> [--worktree] [--research] [--parallel]"
|
|
4
|
+
agent: build
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
# Start: $ARGUMENTS
|
|
8
|
+
|
|
9
|
+
You're claiming a task and preparing to work on it. This is the entry point before implementation.
|
|
10
|
+
|
|
11
|
+
> **CCPM Philosophy:** One issue ≠ one task. One issue = multiple parallel work streams.
|
|
12
|
+
> Agents are "context firewalls" - they do heavy work and return concise summaries.
|
|
13
|
+
|
|
14
|
+
## Parse Arguments
|
|
15
|
+
|
|
16
|
+
| Argument | Default | Description |
|
|
17
|
+
| ------------ | -------- | ---------------------------------------------- |
|
|
18
|
+
| `<bead-id>` | required | The bead to start working on |
|
|
19
|
+
| `--worktree` | false | Create isolated git worktree for this work |
|
|
20
|
+
| `--research` | false | Run parallel subagent research before starting |
|
|
21
|
+
| `--parallel` | auto | Analyze and spawn parallel work streams |
|
|
22
|
+
|
|
23
|
+
## Load Skills
|
|
24
|
+
|
|
25
|
+
```typescript
|
|
26
|
+
skill({ name: "beads" });
|
|
27
|
+
skill({ name: "beads-bridge" }); // For cross-session todo coordination
|
|
28
|
+
skill({ name: "prd" }); // PRD creation workflow
|
|
29
|
+
skill({ name: "prd-task" }); // PRD to executable tasks conversion
|
|
30
|
+
```
|
|
31
|
+
|
|
32
|
+
## Ensure Git Hooks Installed
|
|
33
|
+
|
|
34
|
+
First-time setup per repo (prevents stale JSONL issues):
|
|
35
|
+
|
|
36
|
+
```bash
|
|
37
|
+
bd hooks install 2>/dev/null || echo "Hooks already installed"
|
|
38
|
+
```
|
|
39
|
+
|
|
40
|
+
## Current State
|
|
41
|
+
|
|
42
|
+
### Git Status
|
|
43
|
+
|
|
44
|
+
!`git status --porcelain`
|
|
45
|
+
!`git branch --show-current`
|
|
46
|
+
|
|
47
|
+
### Active Tasks
|
|
48
|
+
|
|
49
|
+
!`bd list --status=in_progress`
|
|
50
|
+
|
|
51
|
+
If you have uncommitted changes, ask the user:
|
|
52
|
+
|
|
53
|
+
1. Stash them (`git stash`)
|
|
54
|
+
2. Commit them first
|
|
55
|
+
3. Continue anyway (risky)
|
|
56
|
+
|
|
57
|
+
If you already have tasks in_progress, warn the user before claiming another.
|
|
58
|
+
|
|
59
|
+
## Task Details
|
|
60
|
+
|
|
61
|
+
!`bd show $ARGUMENTS`
|
|
62
|
+
|
|
63
|
+
Identify the task type from the bead:
|
|
64
|
+
|
|
65
|
+
| Type | Hierarchy Level | Typical Scope |
|
|
66
|
+
| --------- | --------------- | --------------------------------- |
|
|
67
|
+
| `epic` | Parent | Multi-session, has subtasks |
|
|
68
|
+
| `task` | Middle | Single session, may have subtasks |
|
|
69
|
+
| `subtask` | Leaf | Single focused unit of work |
|
|
70
|
+
|
|
71
|
+
Check for parent/child relationships:
|
|
72
|
+
|
|
73
|
+
```bash
|
|
74
|
+
bd dep tree $ARGUMENTS 2>/dev/null || echo "No dependencies"
|
|
75
|
+
```
|
|
76
|
+
|
|
77
|
+
## Claim The Task
|
|
78
|
+
|
|
79
|
+
```bash
|
|
80
|
+
bd update $ARGUMENTS --status in_progress
|
|
81
|
+
```
|
|
82
|
+
|
|
83
|
+
## Sync Beads State to OpenCode Todos
|
|
84
|
+
|
|
85
|
+
Make beads tasks visible to subagents via todoread:
|
|
86
|
+
|
|
87
|
+
```typescript
|
|
88
|
+
// Push beads state to OpenCode todos
|
|
89
|
+
beads_sync({ operation: "push" });
|
|
90
|
+
```
|
|
91
|
+
|
|
92
|
+
This enables subagents to see task context via `todoread()` without beads access.
|
|
93
|
+
|
|
94
|
+
## Workspace Setup
|
|
95
|
+
|
|
96
|
+
### Create Feature Branch
|
|
97
|
+
|
|
98
|
+
Extract task info and parent branch for a readable branch name:
|
|
99
|
+
|
|
100
|
+
```bash
|
|
101
|
+
# Get current branch (parent branch)
|
|
102
|
+
PARENT_BRANCH=$(git rev-parse --abbrev-ref HEAD)
|
|
103
|
+
|
|
104
|
+
# Get task title and type from bead
|
|
105
|
+
BEAD_INFO=$(bd show $ARGUMENTS --json 2>/dev/null)
|
|
106
|
+
BEAD_TITLE=$(echo "$BEAD_INFO" | jq -r '.title // ""' | tr '[:upper:]' '[:lower:]' | sed 's/[^a-z0-9]/-/g' | sed 's/--*/-/g' | cut -c1-40)
|
|
107
|
+
BEAD_TYPE=$(echo "$BEAD_INFO" | jq -r '.type // "task"')
|
|
108
|
+
|
|
109
|
+
# Map bead type to branch prefix
|
|
110
|
+
case "$BEAD_TYPE" in
|
|
111
|
+
"bug") PREFIX="fix" ;;
|
|
112
|
+
"feature"|"epic") PREFIX="feat" ;;
|
|
113
|
+
"refactor") PREFIX="refactor" ;;
|
|
114
|
+
"chore") PREFIX="chore" ;;
|
|
115
|
+
*) PREFIX="feat" ;;
|
|
116
|
+
esac
|
|
117
|
+
|
|
118
|
+
# Create branch: <parent>/<type>/<bead-id>-<description>
|
|
119
|
+
BRANCH_NAME="${PARENT_BRANCH}/${PREFIX}/$ARGUMENTS-${BEAD_TITLE}"
|
|
120
|
+
git checkout -b "$BRANCH_NAME" 2>/dev/null || echo "Branch already exists or already on it"
|
|
121
|
+
```
|
|
122
|
+
|
|
123
|
+
**Branch naming convention:**
|
|
124
|
+
| Parent Branch | Bead Type | Example |
|
|
125
|
+
|---------------|-----------|---------|
|
|
126
|
+
| main | bug | `main/fix/bd-a1b2-login-error` |
|
|
127
|
+
| develop | feature | `develop/feat/bd-c3d4-user-auth` |
|
|
128
|
+
| release-v2 | chore | `release-v2/chore/bd-e5f6-update-deps` |
|
|
129
|
+
|
|
130
|
+
### Option B: Git Worktree (if --worktree flag)
|
|
131
|
+
|
|
132
|
+
For isolated work that won't conflict with main workspace:
|
|
133
|
+
|
|
134
|
+
```typescript
|
|
135
|
+
skill({ name: "using-git-worktrees" });
|
|
136
|
+
```
|
|
137
|
+
|
|
138
|
+
**When to use worktrees:**
|
|
139
|
+
|
|
140
|
+
- Epic-level work spanning multiple sessions
|
|
141
|
+
- Parallel work on different features
|
|
142
|
+
- Need to keep main workspace clean
|
|
143
|
+
- Long-running features with frequent context switches
|
|
144
|
+
|
|
145
|
+
**Worktree setup:**
|
|
146
|
+
|
|
147
|
+
```bash
|
|
148
|
+
# Get current branch (parent branch)
|
|
149
|
+
PARENT_BRANCH=$(git rev-parse --abbrev-ref HEAD)
|
|
150
|
+
|
|
151
|
+
# Get task title for readable worktree name
|
|
152
|
+
BEAD_INFO=$(bd show $ARGUMENTS --json 2>/dev/null)
|
|
153
|
+
BEAD_TITLE=$(echo "$BEAD_INFO" | jq -r '.title // ""' | tr '[:upper:]' '[:lower:]' | sed 's/[^a-z0-9]/-/g' | sed 's/--*/-/g' | cut -c1-40)
|
|
154
|
+
BEAD_TYPE=$(echo "$BEAD_INFO" | jq -r '.type // "task"')
|
|
155
|
+
|
|
156
|
+
# Map bead type to branch prefix
|
|
157
|
+
case "$BEAD_TYPE" in
|
|
158
|
+
"bug") PREFIX="fix" ;;
|
|
159
|
+
"feature"|"epic") PREFIX="feat" ;;
|
|
160
|
+
"refactor") PREFIX="refactor" ;;
|
|
161
|
+
*) PREFIX="feat" ;;
|
|
162
|
+
esac
|
|
163
|
+
|
|
164
|
+
# Create branch: <parent>/<type>/<bead-id>-<description>
|
|
165
|
+
BRANCH_NAME="${PARENT_BRANCH}/${PREFIX}/$ARGUMENTS-${BEAD_TITLE}"
|
|
166
|
+
|
|
167
|
+
# Verify .gitignore has worktree directory
|
|
168
|
+
grep -q "^\.worktrees/$" .gitignore || echo ".worktrees/" >> .gitignore
|
|
169
|
+
|
|
170
|
+
# Create worktree with readable branch name
|
|
171
|
+
git worktree add ".worktrees/$ARGUMENTS" -b "$BRANCH_NAME"
|
|
172
|
+
|
|
173
|
+
# Navigate to worktree
|
|
174
|
+
cd .worktrees/$ARGUMENTS
|
|
175
|
+
|
|
176
|
+
# Install dependencies (auto-detect project type)
|
|
177
|
+
[ -f package.json ] && npm install
|
|
178
|
+
[ -f Cargo.toml ] && cargo build
|
|
179
|
+
[ -f requirements.txt ] && pip install -r requirements.txt
|
|
180
|
+
[ -f go.mod ] && go mod download
|
|
181
|
+
```
|
|
182
|
+
|
|
183
|
+
**Beads in worktrees:** The `.beads/` database is shared with main repo automatically. No special configuration needed unless using `BEADS_DIR` for external storage.
|
|
184
|
+
|
|
185
|
+
## Parallel Research (if --research flag or epic-level work)
|
|
186
|
+
|
|
187
|
+
For complex tasks, gather context before diving in:
|
|
188
|
+
|
|
189
|
+
```typescript
|
|
190
|
+
// Run subagents in parallel - multiple Task calls in one message
|
|
191
|
+
Task({
|
|
192
|
+
subagent_type: "explore",
|
|
193
|
+
description: "Explore codebase patterns",
|
|
194
|
+
prompt: `Research codebase patterns for $ARGUMENTS:
|
|
195
|
+
- Find similar implementations
|
|
196
|
+
- Identify affected files
|
|
197
|
+
- Note testing patterns used
|
|
198
|
+
Return: File list, patterns found, testing approach`,
|
|
199
|
+
});
|
|
200
|
+
|
|
201
|
+
Task({
|
|
202
|
+
subagent_type: "scout",
|
|
203
|
+
description: "Research external docs",
|
|
204
|
+
prompt: `Research external docs for $ARGUMENTS:
|
|
205
|
+
- API documentation for libraries involved
|
|
206
|
+
- Best practices for the approach
|
|
207
|
+
- Common pitfalls to avoid
|
|
208
|
+
Return: Key findings, code examples, warnings`,
|
|
209
|
+
});
|
|
210
|
+
|
|
211
|
+
// Both run in parallel, results available immediately
|
|
212
|
+
```
|
|
213
|
+
|
|
214
|
+
**Subagent delegation rules:**
|
|
215
|
+
|
|
216
|
+
- Subagents are **read-only** - they don't modify beads state
|
|
217
|
+
- Results returned immediately when all complete
|
|
218
|
+
- Use for research, not for implementation
|
|
219
|
+
|
|
220
|
+
## Existing Artifacts
|
|
221
|
+
|
|
222
|
+
!`ls .beads/artifacts/$ARGUMENTS/ 2>/dev/null || echo "No artifacts yet"`
|
|
223
|
+
|
|
224
|
+
Look for:
|
|
225
|
+
|
|
226
|
+
- `spec.md` - Requirements and constraints
|
|
227
|
+
- `prd.md` - PRD created via `prd` skill (defines WHAT to build)
|
|
228
|
+
- `prd.json` - Executable tasks from `prd-task` skill
|
|
229
|
+
- `progress.txt` - PRD execution progress (append-only)
|
|
230
|
+
- `research.md` - Previous research
|
|
231
|
+
- `plan.md` - Implementation plan
|
|
232
|
+
- `handoffs/` - Previous session handoffs
|
|
233
|
+
|
|
234
|
+
### PRD Workflow (if prd.md exists but no prd.json)
|
|
235
|
+
|
|
236
|
+
If `prd.md` exists but `prd.json` doesn't, convert PRD to tasks:
|
|
237
|
+
|
|
238
|
+
```typescript
|
|
239
|
+
// The prd-task skill converts PRD markdown to executable JSON
|
|
240
|
+
// Read prd.md → Extract ## Tasks section → Write prd.json
|
|
241
|
+
skill({ name: "prd-task" });
|
|
242
|
+
|
|
243
|
+
// Then parse the PRD
|
|
244
|
+
// This creates:
|
|
245
|
+
// - .beads/artifacts/$ARGUMENTS/prd.json (task list)
|
|
246
|
+
// - .beads/artifacts/$ARGUMENTS/progress.txt (progress log)
|
|
247
|
+
```
|
|
248
|
+
|
|
249
|
+
### PRD Workflow (if neither exists)
|
|
250
|
+
|
|
251
|
+
If no PRD exists and task is complex (epic/feature), consider creating one:
|
|
252
|
+
|
|
253
|
+
```typescript
|
|
254
|
+
// The prd skill guides PRD creation with:
|
|
255
|
+
// - Clarifying questions (5-7 max)
|
|
256
|
+
// - Problem/solution framing
|
|
257
|
+
// - Machine-convertible Tasks section
|
|
258
|
+
skill({ name: "prd" });
|
|
259
|
+
|
|
260
|
+
// Creates: .beads/artifacts/$ARGUMENTS/prd.md
|
|
261
|
+
```
|
|
262
|
+
|
|
263
|
+
## Check Previous Sessions
|
|
264
|
+
|
|
265
|
+
```typescript
|
|
266
|
+
search_session({ query: "$ARGUMENTS" });
|
|
267
|
+
list_sessions({ limit: 3 });
|
|
268
|
+
```
|
|
269
|
+
|
|
270
|
+
Load context from previous work on this bead.
|
|
271
|
+
|
|
272
|
+
## Load Related Memory (Semantic Search)
|
|
273
|
+
|
|
274
|
+
Search for relevant past work and learnings before starting:
|
|
275
|
+
|
|
276
|
+
```typescript
|
|
277
|
+
// Find similar past work (semantic similarity)
|
|
278
|
+
memory_search({ query: "[task title/description from bead]", limit: 3 });
|
|
279
|
+
|
|
280
|
+
// Find related observations (gotchas, patterns, learnings)
|
|
281
|
+
memory_search({ query: "[task keywords] gotchas patterns", limit: 3 });
|
|
282
|
+
```
|
|
283
|
+
|
|
284
|
+
**Review findings before diving in.** Past observations may contain:
|
|
285
|
+
|
|
286
|
+
- Gotchas to avoid
|
|
287
|
+
- Patterns that worked well
|
|
288
|
+
- Decisions already made
|
|
289
|
+
|
|
290
|
+
If memory search fails (Ollama not running), continue without it.
|
|
291
|
+
|
|
292
|
+
## Parallel Stream Analysis (if --parallel flag or epic/task type)
|
|
293
|
+
|
|
294
|
+
> **CCPM Insight:** A single task isn't one unit of work. It's multiple parallel work streams.
|
|
295
|
+
> Streams are determined by analyzing the ACTUAL task requirements, not hardcoded categories.
|
|
296
|
+
|
|
297
|
+
### Step 1: Analyze Work Streams
|
|
298
|
+
|
|
299
|
+
Use swarm planning to analyze the specific task:
|
|
300
|
+
|
|
301
|
+
```typescript
|
|
302
|
+
// Get task details from bead
|
|
303
|
+
const beadInfo = bd show $ARGUMENTS --json;
|
|
304
|
+
const taskTitle = beadInfo.title;
|
|
305
|
+
const taskDescription = beadInfo.description;
|
|
306
|
+
|
|
307
|
+
// Read spec/plan if exists for file context
|
|
308
|
+
const specContent = read(".beads/artifacts/$ARGUMENTS/spec.md");
|
|
309
|
+
const planContent = read(".beads/artifacts/$ARGUMENTS/plan.md");
|
|
310
|
+
|
|
311
|
+
// Analyze THIS SPECIFIC task for parallel execution
|
|
312
|
+
const analysis = swarm_plan({
|
|
313
|
+
operation: "analyze",
|
|
314
|
+
task: taskTitle, // User's actual task
|
|
315
|
+
context: taskDescription, // User's requirements
|
|
316
|
+
files: "[files from spec/plan]", // Actual affected files
|
|
317
|
+
});
|
|
318
|
+
```
|
|
319
|
+
|
|
320
|
+
The analysis returns **task-specific** streams:
|
|
321
|
+
|
|
322
|
+
```typescript
|
|
323
|
+
// Example analysis result (varies per task):
|
|
324
|
+
{
|
|
325
|
+
classification: "search", // Can parallelize
|
|
326
|
+
recommended_agents: 3,
|
|
327
|
+
streams: [
|
|
328
|
+
{ id: "stream-1", scope: "src/auth/*", purpose: "Authentication logic" },
|
|
329
|
+
{ id: "stream-2", scope: "src/api/auth/*", purpose: "Auth endpoints" },
|
|
330
|
+
{ id: "stream-3", scope: "tests/auth/*", purpose: "Auth test coverage" },
|
|
331
|
+
]
|
|
332
|
+
}
|
|
333
|
+
```
|
|
334
|
+
|
|
335
|
+
### Step 2: Create Dynamic Delegation Packets
|
|
336
|
+
|
|
337
|
+
**For EACH stream from analysis** (not hardcoded):
|
|
338
|
+
|
|
339
|
+
```typescript
|
|
340
|
+
// Iterate over streams from analysis - these are DYNAMIC based on task
|
|
341
|
+
for (const stream of analysis.streams) {
|
|
342
|
+
swarm_delegate({
|
|
343
|
+
bead_id: "$ARGUMENTS",
|
|
344
|
+
title: stream.purpose, // From analysis, not hardcoded
|
|
345
|
+
expected_outcome: `Complete ${stream.purpose} for task requirements`,
|
|
346
|
+
required_tools: "read, grep, lsp, edit, bash",
|
|
347
|
+
must_do: "LSP before edits, verify changes, run relevant tests",
|
|
348
|
+
must_not_do: "no new deps without approval, stay within assigned scope",
|
|
349
|
+
acceptance_checks: "[derived from spec.md acceptance criteria]",
|
|
350
|
+
context: `Files: ${stream.scope}, Purpose: ${stream.purpose}`,
|
|
351
|
+
write: true,
|
|
352
|
+
});
|
|
353
|
+
}
|
|
354
|
+
```
|
|
355
|
+
|
|
356
|
+
### Step 3: Spawn Workers for Each Stream
|
|
357
|
+
|
|
358
|
+
```typescript
|
|
359
|
+
// Launch workers based on ACTUAL analysis results
|
|
360
|
+
for (const stream of analysis.streams) {
|
|
361
|
+
// Initialize monitoring for this stream
|
|
362
|
+
swarm_monitor({
|
|
363
|
+
operation: "progress_update",
|
|
364
|
+
team_name: "$ARGUMENTS-swarm",
|
|
365
|
+
worker_id: stream.id,
|
|
366
|
+
phase: "starting",
|
|
367
|
+
progress: 0,
|
|
368
|
+
status: "working",
|
|
369
|
+
file: stream.scope,
|
|
370
|
+
});
|
|
371
|
+
|
|
372
|
+
// Spawn worker with task-specific instructions
|
|
373
|
+
Task({
|
|
374
|
+
subagent_type: "general",
|
|
375
|
+
description: `${stream.id}: ${stream.purpose}`,
|
|
376
|
+
prompt: `Execute work stream for $ARGUMENTS.
|
|
377
|
+
|
|
378
|
+
**Your Assignment:**
|
|
379
|
+
- Scope: ${stream.scope}
|
|
380
|
+
- Purpose: ${stream.purpose}
|
|
381
|
+
|
|
382
|
+
**Load Context:**
|
|
383
|
+
- Delegation: .beads/artifacts/$ARGUMENTS/delegation.md
|
|
384
|
+
- Spec: .beads/artifacts/$ARGUMENTS/spec.md (if exists)
|
|
385
|
+
|
|
386
|
+
**Work:**
|
|
387
|
+
Complete all work within your assigned scope that fulfills the task requirements.
|
|
388
|
+
|
|
389
|
+
**Return CONCISE summary only:**
|
|
390
|
+
- Files modified: [list]
|
|
391
|
+
- Changes made: [brief description]
|
|
392
|
+
- Verification: [pass/fail + what was checked]
|
|
393
|
+
|
|
394
|
+
DO NOT return verbose output or file contents.`,
|
|
395
|
+
});
|
|
396
|
+
}
|
|
397
|
+
|
|
398
|
+
// All workers execute in parallel, results return when complete
|
|
399
|
+
```
|
|
400
|
+
|
|
401
|
+
### Step 4: Monitor Progress
|
|
402
|
+
|
|
403
|
+
```typescript
|
|
404
|
+
// Render progress visualization
|
|
405
|
+
swarm_monitor({
|
|
406
|
+
operation: "render_block",
|
|
407
|
+
team_name: "$ARGUMENTS-swarm",
|
|
408
|
+
});
|
|
409
|
+
```
|
|
410
|
+
|
|
411
|
+
**Output shows ACTUAL streams (dynamic):**
|
|
412
|
+
|
|
413
|
+
```
|
|
414
|
+
┌─ $ARGUMENTS-swarm ──────────────────────────┐
|
|
415
|
+
│ stream-1 [████████░░] 80% src/auth/* │
|
|
416
|
+
│ stream-2 [██████░░░░] 60% src/api/auth/* │
|
|
417
|
+
│ stream-3 [████░░░░░░] 40% tests/auth/* │
|
|
418
|
+
└─────────────────────────────────────────────┘
|
|
419
|
+
```
|
|
420
|
+
|
|
421
|
+
### Anti-Serial-Collapse Check
|
|
422
|
+
|
|
423
|
+
Before proceeding, verify parallelization makes sense:
|
|
424
|
+
|
|
425
|
+
```typescript
|
|
426
|
+
swarm_plan({
|
|
427
|
+
operation: "check",
|
|
428
|
+
task: taskTitle,
|
|
429
|
+
files: analysis.streams.length,
|
|
430
|
+
recommended_agents: analysis.recommended_agents,
|
|
431
|
+
});
|
|
432
|
+
```
|
|
433
|
+
|
|
434
|
+
**Warning signs:**
|
|
435
|
+
|
|
436
|
+
- Only 1 stream identified for multi-file task
|
|
437
|
+
- All streams depend on each other (should be sequential)
|
|
438
|
+
- Same files appear in multiple streams (conflict risk)
|
|
439
|
+
|
|
440
|
+
### When NOT to Parallelize
|
|
441
|
+
|
|
442
|
+
Skip parallel analysis if:
|
|
443
|
+
|
|
444
|
+
- Task is a `subtask` (leaf-level, already atomic)
|
|
445
|
+
- Only 1-2 files affected
|
|
446
|
+
- Sequential dependency chain (each step needs previous)
|
|
447
|
+
- User explicitly passed `--no-parallel`
|
|
448
|
+
|
|
449
|
+
## PRD Tasks (If Present)
|
|
450
|
+
|
|
451
|
+
If `.beads/artifacts/$ARGUMENTS/prd.json` exists, execution is PRD-driven:
|
|
452
|
+
|
|
453
|
+
```typescript
|
|
454
|
+
// Load the prd-task skill for execution guidance
|
|
455
|
+
skill({ name: "prd-task" });
|
|
456
|
+
|
|
457
|
+
// Read task list
|
|
458
|
+
const prdJson = read(".beads/artifacts/$ARGUMENTS/prd.json");
|
|
459
|
+
const tasks = JSON.parse(prdJson).tasks;
|
|
460
|
+
|
|
461
|
+
// Find next incomplete task
|
|
462
|
+
const nextTask = tasks.find((t) => !t.passes);
|
|
463
|
+
|
|
464
|
+
if (nextTask) {
|
|
465
|
+
console.log(`Next PRD task: ${nextTask.id}`);
|
|
466
|
+
console.log(`Description: ${nextTask.description}`);
|
|
467
|
+
console.log(`Verification steps:`);
|
|
468
|
+
nextTask.steps.forEach((s) => console.log(` - ${s}`));
|
|
469
|
+
}
|
|
470
|
+
```
|
|
471
|
+
|
|
472
|
+
**PRD execution flow:**
|
|
473
|
+
|
|
474
|
+
1. Read `prd.json` for task list
|
|
475
|
+
2. Find next task where `passes: false`
|
|
476
|
+
3. Implement to satisfy verification steps
|
|
477
|
+
4. Mark `passes: true` when verification passes
|
|
478
|
+
5. Append progress to `progress.txt`
|
|
479
|
+
6. Repeat until all tasks pass
|
|
480
|
+
|
|
481
|
+
Proceed directly to implementation using the PRD tasks as the guide.
|
|
482
|
+
|
|
483
|
+
## Determine Next Step
|
|
484
|
+
|
|
485
|
+
Based on task type and what exists:
|
|
486
|
+
|
|
487
|
+
### For Epics (parent tasks)
|
|
488
|
+
|
|
489
|
+
| State | Next Command |
|
|
490
|
+
| ------------------ | --------------------------------- |
|
|
491
|
+
| No subtasks | `/plan $ARGUMENTS --create-beads` |
|
|
492
|
+
| Has ready subtasks | `/start <first-subtask-id>` |
|
|
493
|
+
| All subtasks done | `/ship $ARGUMENTS` |
|
|
494
|
+
|
|
495
|
+
### For Tasks/Subtasks (leaf work)
|
|
496
|
+
|
|
497
|
+
| Artifacts Found | Next Step |
|
|
498
|
+
| --------------------- | ----------------------------------------- |
|
|
499
|
+
| Nothing | `/research $ARGUMENTS` or create PRD |
|
|
500
|
+
| Only spec.md | `/plan $ARGUMENTS` or create PRD |
|
|
501
|
+
| prd.md (no prd.json) | Run `prd-task` skill to convert to tasks |
|
|
502
|
+
| prd.json exists | `/ship $ARGUMENTS` (PRD-driven execution) |
|
|
503
|
+
| spec.md + research.md | `/plan $ARGUMENTS` |
|
|
504
|
+
| plan.md exists | `/ship $ARGUMENTS` |
|
|
505
|
+
|
|
506
|
+
### PRD vs Plan Decision
|
|
507
|
+
|
|
508
|
+
| Situation | Use PRD | Use Plan |
|
|
509
|
+
| ------------------------------------ | ----------------------- | ------------------ |
|
|
510
|
+
| New feature with unclear scope | ✅ Ask questions first | ❌ |
|
|
511
|
+
| Bug fix or small change | ❌ | ✅ Quick plan |
|
|
512
|
+
| Multi-session epic | ✅ PRD for each subtask | ✅ High-level plan |
|
|
513
|
+
| Refactoring with known scope | ❌ | ✅ Plan with tasks |
|
|
514
|
+
| Feature needing stakeholder sign-off | ✅ PRD for review | ❌ |
|
|
515
|
+
|
|
516
|
+
## Output
|
|
517
|
+
|
|
518
|
+
```
|
|
519
|
+
Started: $ARGUMENTS
|
|
520
|
+
━━━━━━━━━━━━━━━━━━━
|
|
521
|
+
|
|
522
|
+
Type: [epic/task/subtask]
|
|
523
|
+
Branch: $ARGUMENTS
|
|
524
|
+
Workspace: [main | worktree: .worktrees/$ARGUMENTS]
|
|
525
|
+
Status: in_progress
|
|
526
|
+
|
|
527
|
+
Hierarchy:
|
|
528
|
+
├── Parent: [parent-id or "none"]
|
|
529
|
+
└── Children: [count or "none"]
|
|
530
|
+
|
|
531
|
+
Artifacts:
|
|
532
|
+
• spec.md: [exists/missing]
|
|
533
|
+
• research.md: [exists/missing]
|
|
534
|
+
• plan.md: [exists/missing]
|
|
535
|
+
• prd.md: [exists/missing]
|
|
536
|
+
• prd.json: [exists/missing] ([N] tasks, [M] complete)
|
|
537
|
+
|
|
538
|
+
[If PRD exists:]
|
|
539
|
+
┌─ PRD Progress ──────────────────────────┐
|
|
540
|
+
│ Tasks: [completed]/[total] │
|
|
541
|
+
│ Next: [task-id] - [description] │
|
|
542
|
+
│ Verification: │
|
|
543
|
+
│ • [step 1] │
|
|
544
|
+
│ • [step 2] │
|
|
545
|
+
└─────────────────────────────────────────┘
|
|
546
|
+
|
|
547
|
+
┌─ Parallel Analysis ─────────────────────┐
|
|
548
|
+
│ Classification: [search/chain/blocked] │
|
|
549
|
+
│ Streams: [N] identified from task │
|
|
550
|
+
│ Agents: [N] recommended │
|
|
551
|
+
│ │
|
|
552
|
+
│ Streams detected: │
|
|
553
|
+
│ • [stream.purpose from analysis] │
|
|
554
|
+
│ • [stream.purpose from analysis] │
|
|
555
|
+
│ • ... │
|
|
556
|
+
└─────────────────────────────────────────┘
|
|
557
|
+
|
|
558
|
+
[If parallel spawned:]
|
|
559
|
+
┌─ $ARGUMENTS-swarm ──────────────────────┐
|
|
560
|
+
│ [stream-id] [░░░░░░░░░░] 0% [scope] │
|
|
561
|
+
│ [stream-id] [░░░░░░░░░░] 0% [scope] │
|
|
562
|
+
│ ... │
|
|
563
|
+
└─────────────────────────────────────────┘
|
|
564
|
+
|
|
565
|
+
Next: [recommended command based on state]
|
|
566
|
+
```
|
|
567
|
+
|
|
568
|
+
## Quick Start
|
|
569
|
+
|
|
570
|
+
If `--quick` flag is passed and plan.md exists, skip directly to:
|
|
571
|
+
|
|
572
|
+
```
|
|
573
|
+
/implement $ARGUMENTS
|
|
574
|
+
```
|
|
575
|
+
|
|
576
|
+
---
|
|
577
|
+
|
|
578
|
+
## Agent Return Format (CCPM Pattern)
|
|
579
|
+
|
|
580
|
+
> **Key insight:** Agents are context firewalls. They do heavy work and return CONCISE summaries.
|
|
581
|
+
|
|
582
|
+
When spawning subagents, always specify the return format:
|
|
583
|
+
|
|
584
|
+
```typescript
|
|
585
|
+
Task({
|
|
586
|
+
subagent_type: "explore",
|
|
587
|
+
prompt: `...
|
|
588
|
+
|
|
589
|
+
Return ONLY:
|
|
590
|
+
- 3-5 key files (not all files examined)
|
|
591
|
+
- Pattern summary (not full code)
|
|
592
|
+
- Actionable insights (not observations)
|
|
593
|
+
|
|
594
|
+
DO NOT return verbose output or file contents.`,
|
|
595
|
+
});
|
|
596
|
+
```
|
|
597
|
+
|
|
598
|
+
**Good return:** "Found auth pattern in 3 files: src/auth/\*.ts uses JWT with 24h expiry"
|
|
599
|
+
|
|
600
|
+
**Bad return:** [dumps entire file contents]
|
|
601
|
+
|
|
602
|
+
---
|
|
603
|
+
|
|
604
|
+
## Related Commands
|
|
605
|
+
|
|
606
|
+
| Need | Command |
|
|
607
|
+
| -------------------- | -------------------------------- |
|
|
608
|
+
| Skip to implement | `/ship $ARGUMENTS` |
|
|
609
|
+
| Create PRD first | `/create $ARGUMENTS --prd` |
|
|
610
|
+
| Research first | `/research $ARGUMENTS` |
|
|
611
|
+
| Plan implementation | `/plan $ARGUMENTS` |
|
|
612
|
+
| Convert PRD to tasks | Use `prd-task` skill |
|
|
613
|
+
| Check PRD progress | Read `prd.json` + `progress.txt` |
|
|
@@ -300,10 +300,8 @@ bd dep add <task-id> <bead-id>
|
|
|
300
300
|
|
|
301
301
|
## Related Commands
|
|
302
302
|
|
|
303
|
-
| Need
|
|
304
|
-
|
|
|
305
|
-
|
|
|
306
|
-
|
|
|
307
|
-
|
|
|
308
|
-
| Design from scratch | `/design` |
|
|
309
|
-
| Audit design system | `/design-audit` |
|
|
303
|
+
| Need | Command |
|
|
304
|
+
| -------------------- | --------------- |
|
|
305
|
+
| Design from scratch | `/design` |
|
|
306
|
+
| Start implementation | `/start <bead>` |
|
|
307
|
+
| Ship implementation | `/ship <bead>` |
|