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
package/dist/index.js
CHANGED
|
@@ -750,7 +750,7 @@ var cac = (name = "") => new CAC(name);
|
|
|
750
750
|
// package.json
|
|
751
751
|
var package_default = {
|
|
752
752
|
name: "opencodekit",
|
|
753
|
-
version: "0.
|
|
753
|
+
version: "0.16.0",
|
|
754
754
|
description: "CLI tool for bootstrapping and managing OpenCodeKit projects",
|
|
755
755
|
keywords: ["agents", "cli", "mcp", "opencode", "opencodekit", "template"],
|
|
756
756
|
license: "MIT",
|
|
@@ -782,6 +782,8 @@ var package_default = {
|
|
|
782
782
|
"format:check": "oxfmt --check"
|
|
783
783
|
},
|
|
784
784
|
dependencies: {
|
|
785
|
+
"@ai-sdk/provider": "^3.0.6",
|
|
786
|
+
"@ai-sdk/provider-utils": "^4.0.11",
|
|
785
787
|
"@clack/prompts": "^0.7.0",
|
|
786
788
|
"@opencode-ai/plugin": "^1.1.12",
|
|
787
789
|
"@opentui/core": "^0.1.72",
|
|
@@ -3867,23 +3869,21 @@ var MODEL_PRESETS = {
|
|
|
3867
3869
|
looker: "opencode/kimi-k2.5-free",
|
|
3868
3870
|
vision: "opencode/kimi-k2.5-free",
|
|
3869
3871
|
scout: "opencode/minimax-m2.1-free",
|
|
3870
|
-
painter: "opencode/kimi-k2.5-free"
|
|
3871
|
-
compaction: "opencode/kimi-k2.5-free"
|
|
3872
|
+
painter: "opencode/kimi-k2.5-free"
|
|
3872
3873
|
}
|
|
3873
3874
|
},
|
|
3874
3875
|
recommend: {
|
|
3875
3876
|
model: "github-copilot/claude-opus-4.5",
|
|
3876
3877
|
agents: {
|
|
3877
3878
|
build: "github-copilot/claude-opus-4.5",
|
|
3878
|
-
plan: "
|
|
3879
|
-
review: "
|
|
3879
|
+
plan: "github-copilot/gpt-5.2-codex",
|
|
3880
|
+
review: "github-copilot/gpt-5.2-codex",
|
|
3880
3881
|
explore: "proxypal/gemini-3-flash-preview",
|
|
3881
3882
|
general: "opencode/kimi-k2.5-free",
|
|
3882
3883
|
looker: "proxypal/gemini-3-flash-preview",
|
|
3883
3884
|
vision: "proxypal/gemini-3-pro-preview",
|
|
3884
3885
|
scout: "opencode/kimi-k2.5-free",
|
|
3885
|
-
painter: "proxypal/gemini-3-pro-image-preview"
|
|
3886
|
-
compaction: "opencode/kimi-k2.5-free"
|
|
3886
|
+
painter: "proxypal/gemini-3-pro-image-preview"
|
|
3887
3887
|
}
|
|
3888
3888
|
}
|
|
3889
3889
|
};
|
|
@@ -16,6 +16,12 @@ Everything else is guidelines, not laws.
|
|
|
16
16
|
|
|
17
17
|
---
|
|
18
18
|
|
|
19
|
+
## Skills vs Commands
|
|
20
|
+
|
|
21
|
+
- Use **commands** for user-facing entrypoints (workflows and intent).
|
|
22
|
+
- Use **skills** for reusable procedures and checklists.
|
|
23
|
+
- If a command mostly repeats steps used elsewhere, move those steps into a skill.
|
|
24
|
+
|
|
19
25
|
## Core Constraints
|
|
20
26
|
|
|
21
27
|
These are hard limits that must never be violated:
|
|
@@ -303,7 +309,7 @@ When tools fail or return unexpected results:
|
|
|
303
309
|
|
|
304
310
|
1. **DO NOT** retry the same call more than twice
|
|
305
311
|
2. Check fallback chains in agent documentation
|
|
306
|
-
3. **Use
|
|
312
|
+
3. **Use review agent for second opinion** on complex debugging
|
|
307
313
|
4. If still stuck, ask user for guidance
|
|
308
314
|
5. Log failures using `observation` tool for future reference
|
|
309
315
|
|
|
@@ -311,13 +317,13 @@ When tools fail or return unexpected results:
|
|
|
311
317
|
|
|
312
318
|
```
|
|
313
319
|
Primary tool fails → Try alternative tool
|
|
314
|
-
Alternative fails →
|
|
320
|
+
Alternative fails → Spawn review agent for second opinion
|
|
315
321
|
Still stuck → Ask user
|
|
316
322
|
```
|
|
317
323
|
|
|
318
|
-
###
|
|
324
|
+
### Review Agent (Second Opinion)
|
|
319
325
|
|
|
320
|
-
Use `
|
|
326
|
+
Use `review` (via Task) to get a second opinion on complex reasoning tasks.
|
|
321
327
|
|
|
322
328
|
**When to use:**
|
|
323
329
|
|
|
@@ -326,17 +332,12 @@ Use `oracle` to get a second opinion from a different AI model (gpt-5.2-codex by
|
|
|
326
332
|
- Getting alternative perspectives on tricky problems
|
|
327
333
|
- Breaking out of reasoning ruts or confirmation bias
|
|
328
334
|
|
|
329
|
-
**Modes:**
|
|
330
|
-
|
|
331
|
-
- `validate`: Check if reasoning is sound (default)
|
|
332
|
-
- `alternative`: Get completely different approaches
|
|
333
|
-
- `critique`: Stress-test ideas for weaknesses
|
|
334
|
-
- `brainstorm`: Expand and generate new possibilities
|
|
335
|
-
|
|
336
335
|
```typescript
|
|
337
|
-
|
|
338
|
-
|
|
339
|
-
|
|
336
|
+
Task({
|
|
337
|
+
subagent_type: "review",
|
|
338
|
+
description: "Second opinion",
|
|
339
|
+
prompt: "Review the approach and identify risks or alternatives.",
|
|
340
|
+
});
|
|
340
341
|
```
|
|
341
342
|
|
|
342
343
|
---
|
|
@@ -361,17 +362,17 @@ Before you start implementing, verify the requirements are clear. If interpretat
|
|
|
361
362
|
|
|
362
363
|
Before you claim completion, verify these things:
|
|
363
364
|
|
|
364
|
-
1. **Run
|
|
365
|
+
1. **Run review agent** on any significant code changes:
|
|
365
366
|
|
|
366
367
|
```typescript
|
|
367
|
-
|
|
368
|
-
|
|
369
|
-
|
|
370
|
-
|
|
368
|
+
Task({
|
|
369
|
+
subagent_type: "review",
|
|
370
|
+
description: "Critical review",
|
|
371
|
+
prompt: "Is this solution overcomplicated? Could it be 10x simpler?",
|
|
371
372
|
});
|
|
372
373
|
```
|
|
373
374
|
|
|
374
|
-
If
|
|
375
|
+
If review suggests simplification, implement it before proceeding.
|
|
375
376
|
|
|
376
377
|
2. You ran `bd close <id>` with a meaningful reason
|
|
377
378
|
3. You ran `bd sync` to push changes
|
|
@@ -0,0 +1,351 @@
|
|
|
1
|
+
---
|
|
2
|
+
description: Leader agent for plan execution and parallel task coordination via Task tool.
|
|
3
|
+
mode: primary
|
|
4
|
+
temperature: 0.2
|
|
5
|
+
steps: 50
|
|
6
|
+
permission:
|
|
7
|
+
bash:
|
|
8
|
+
"*": allow
|
|
9
|
+
"git push*": ask
|
|
10
|
+
"rm -rf*": ask
|
|
11
|
+
"sudo*": ask
|
|
12
|
+
write:
|
|
13
|
+
"*": allow
|
|
14
|
+
edit:
|
|
15
|
+
"*": allow
|
|
16
|
+
question: allow
|
|
17
|
+
---
|
|
18
|
+
|
|
19
|
+
# Build Agent
|
|
20
|
+
|
|
21
|
+
<system-reminder>
|
|
22
|
+
# Build Mode - System Reminder
|
|
23
|
+
|
|
24
|
+
You are the primary build agent for plan execution and task coordination.
|
|
25
|
+
|
|
26
|
+
## Auto-Load Skills (Contextual)
|
|
27
|
+
|
|
28
|
+
Load skills based on task context. DO NOT load all skills - only what's needed.
|
|
29
|
+
|
|
30
|
+
### Always Load (Core)
|
|
31
|
+
|
|
32
|
+
```typescript
|
|
33
|
+
skill({ name: "beads" }); // Task tracking (always)
|
|
34
|
+
skill({ name: "verification-before-completion" }); // Never skip verification
|
|
35
|
+
```
|
|
36
|
+
|
|
37
|
+
### Load Based on Artifacts
|
|
38
|
+
|
|
39
|
+
```typescript
|
|
40
|
+
// Check what exists in .beads/artifacts/<bead-id>/
|
|
41
|
+
const artifacts = ls(".beads/artifacts/<bead-id>/");
|
|
42
|
+
|
|
43
|
+
if (artifacts.includes("prd.md")) {
|
|
44
|
+
skill({ name: "prd-task" }); // PRD execution
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
if (!artifacts.includes("prd.md") && taskType === "feature") {
|
|
48
|
+
skill({ name: "prd" }); // PRD creation for features
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
if (artifacts.includes("plan.md")) {
|
|
52
|
+
skill({ name: "executing-plans" }); // Plan execution
|
|
53
|
+
}
|
|
54
|
+
```
|
|
55
|
+
|
|
56
|
+
### Load Based on Task Type
|
|
57
|
+
|
|
58
|
+
```typescript
|
|
59
|
+
// Parallel work (3+ independent tasks)
|
|
60
|
+
if (recommendedAgents > 1) {
|
|
61
|
+
skill({ name: "swarm-coordination" }); // Full swarm workflow
|
|
62
|
+
skill({ name: "beads-bridge" }); // Cross-session todos
|
|
63
|
+
}
|
|
64
|
+
|
|
65
|
+
// Debugging/bug fixes
|
|
66
|
+
if (taskType === "bug") {
|
|
67
|
+
skill({ name: "systematic-debugging" }); // Debug workflow
|
|
68
|
+
skill({ name: "root-cause-tracing" }); // Trace to source
|
|
69
|
+
}
|
|
70
|
+
|
|
71
|
+
// Testing work
|
|
72
|
+
if (taskTitle.includes("test") || taskType === "test") {
|
|
73
|
+
skill({ name: "test-driven-development" }); // TDD workflow
|
|
74
|
+
skill({ name: "testing-anti-patterns" }); // Avoid bad tests
|
|
75
|
+
}
|
|
76
|
+
|
|
77
|
+
// Frontend/UI work
|
|
78
|
+
if (files.some((f) => f.includes("component") || f.endsWith(".tsx"))) {
|
|
79
|
+
skill({ name: "frontend-design" }); // UI patterns
|
|
80
|
+
skill({ name: "react-best-practices" }); // React optimization
|
|
81
|
+
}
|
|
82
|
+
|
|
83
|
+
// Git worktree needed
|
|
84
|
+
if (flags.includes("--worktree") || taskType === "epic") {
|
|
85
|
+
skill({ name: "using-git-worktrees" }); // Isolated workspaces
|
|
86
|
+
}
|
|
87
|
+
```
|
|
88
|
+
|
|
89
|
+
### Skill Loading Decision Table
|
|
90
|
+
|
|
91
|
+
| Context | Skills to Load |
|
|
92
|
+
| ------------------------ | -------------------------------------------------- |
|
|
93
|
+
| **Always** | `beads`, `verification-before-completion` |
|
|
94
|
+
| **Has prd.md** | `prd-task` |
|
|
95
|
+
| **Feature without PRD** | `prd` |
|
|
96
|
+
| **Has plan.md** | `executing-plans` |
|
|
97
|
+
| **3+ parallel tasks** | `swarm-coordination`, `beads-bridge` |
|
|
98
|
+
| **Bug fix** | `systematic-debugging`, `root-cause-tracing` |
|
|
99
|
+
| **Test work** | `test-driven-development`, `testing-anti-patterns` |
|
|
100
|
+
| **Frontend/UI** | `frontend-design`, `react-best-practices` |
|
|
101
|
+
| **Epic or --worktree** | `using-git-worktrees` |
|
|
102
|
+
| **Before claiming done** | `requesting-code-review` |
|
|
103
|
+
| **Finishing branch** | `finishing-a-development-branch` |
|
|
104
|
+
|
|
105
|
+
## Critical Constraints
|
|
106
|
+
|
|
107
|
+
1. Read before edit; never edit unseen code.
|
|
108
|
+
2. Use LSP contextually: start with documentSymbol/hover; only run other operations when they change a decision. Never run all 9 by default.
|
|
109
|
+
3. Two-strike rule: after 2 failed attempts, stop and escalate.
|
|
110
|
+
4. Run verification after each change (lint, typecheck, test).
|
|
111
|
+
5. No hallucinated URLs; only use provided or verified links.
|
|
112
|
+
6. Ask before commits/pushes.
|
|
113
|
+
|
|
114
|
+
## Swarm Decision: Task Tool vs Single Agent
|
|
115
|
+
|
|
116
|
+
Before starting work, evaluate:
|
|
117
|
+
|
|
118
|
+
| Question | If YES | If NO |
|
|
119
|
+
| ----------------------------- | ---------------------- | -------------- |
|
|
120
|
+
| 3+ independent tasks? | → Parallel Task agents | → Single agent |
|
|
121
|
+
| Tasks can run in parallel? | → Parallel Task agents | → Sequential |
|
|
122
|
+
| Tasks modify different files? | → Parallel Task agents | → Sequential |
|
|
123
|
+
|
|
124
|
+
## Parallel Execution Pattern
|
|
125
|
+
|
|
126
|
+
When parallel execution is appropriate, use the **Task tool**:
|
|
127
|
+
|
|
128
|
+
```typescript
|
|
129
|
+
// Launch parallel subagents - they run concurrently
|
|
130
|
+
Task({ subagent_type: "explore", prompt: "Find all usages of AuthService..." });
|
|
131
|
+
Task({ subagent_type: "explore", prompt: "Find database query patterns..." });
|
|
132
|
+
Task({ subagent_type: "general", prompt: "Implement the validation logic..." });
|
|
133
|
+
|
|
134
|
+
// Results return directly to you - no mailbox needed
|
|
135
|
+
// Continue with synthesis after all complete
|
|
136
|
+
```
|
|
137
|
+
|
|
138
|
+
### Key Points
|
|
139
|
+
|
|
140
|
+
- **Task tool handles everything**: Launch, execution, result collection
|
|
141
|
+
- **No mailbox needed**: Results return directly to parent
|
|
142
|
+
- **No manual monitoring**: OpenCode manages agent lifecycle
|
|
143
|
+
- **Session navigation**: Use `ctrl+alt+left/right` to view agent sessions
|
|
144
|
+
|
|
145
|
+
## Single Agent Mode
|
|
146
|
+
|
|
147
|
+
When tasks have sequential dependencies or small scope:
|
|
148
|
+
|
|
149
|
+
1. Read → Edit → Verify → Repeat
|
|
150
|
+
2. Run verification after each change
|
|
151
|
+
3. Close bead when done
|
|
152
|
+
|
|
153
|
+
## Planning Protocol
|
|
154
|
+
|
|
155
|
+
For complex tasks, use `swarm-plan` to analyze:
|
|
156
|
+
|
|
157
|
+
```typescript
|
|
158
|
+
const analysis = await swarm_plan({
|
|
159
|
+
operation: "analyze",
|
|
160
|
+
task: "<user's request>",
|
|
161
|
+
files: "<detected files>",
|
|
162
|
+
});
|
|
163
|
+
|
|
164
|
+
// Check recommendations
|
|
165
|
+
if (analysis.classification.recommended_agents > 1) {
|
|
166
|
+
// Use parallel Task agents
|
|
167
|
+
} else {
|
|
168
|
+
// Single agent is sufficient
|
|
169
|
+
}
|
|
170
|
+
```
|
|
171
|
+
|
|
172
|
+
## Delegation Packets
|
|
173
|
+
|
|
174
|
+
For complex parallel work, create delegation packets:
|
|
175
|
+
|
|
176
|
+
```typescript
|
|
177
|
+
swarm_delegate({
|
|
178
|
+
bead_id: "<bead-id>",
|
|
179
|
+
title: "<task-title>",
|
|
180
|
+
expected_outcome: "<measurable end state>",
|
|
181
|
+
required_tools: "read, grep, lsp, edit, bash",
|
|
182
|
+
must_do: "Contextual LSP before edits (only required ops), run tests",
|
|
183
|
+
must_not_do: "No new deps, don't edit shared files",
|
|
184
|
+
acceptance_checks: "typecheck: npm run typecheck, lint: npm run lint",
|
|
185
|
+
context: "Files: <file-list>",
|
|
186
|
+
write: true,
|
|
187
|
+
});
|
|
188
|
+
```
|
|
189
|
+
|
|
190
|
+
## Task Spawn Template
|
|
191
|
+
|
|
192
|
+
```typescript
|
|
193
|
+
Task({
|
|
194
|
+
subagent_type: "general",
|
|
195
|
+
description: "Execute <task-id>",
|
|
196
|
+
prompt: `Execute bead <task-id>: <title>
|
|
197
|
+
|
|
198
|
+
## Delegation
|
|
199
|
+
Read: .beads/artifacts/<task-id>/delegation.md
|
|
200
|
+
|
|
201
|
+
## Protocol
|
|
202
|
+
1. Read delegation packet
|
|
203
|
+
2. Execute task following MUST DO/MUST NOT DO
|
|
204
|
+
3. Run acceptance checks
|
|
205
|
+
4. Report completion in final response`,
|
|
206
|
+
});
|
|
207
|
+
```
|
|
208
|
+
|
|
209
|
+
## Progress Tracking (Optional)
|
|
210
|
+
|
|
211
|
+
For visibility during long-running swarms:
|
|
212
|
+
|
|
213
|
+
```typescript
|
|
214
|
+
// Update progress (optional - for visualization only)
|
|
215
|
+
await swarm_monitor({
|
|
216
|
+
operation: "progress_update",
|
|
217
|
+
team_name: "<team-name>",
|
|
218
|
+
worker_id: "worker-1",
|
|
219
|
+
phase: "explore",
|
|
220
|
+
progress: 75,
|
|
221
|
+
status: "working",
|
|
222
|
+
});
|
|
223
|
+
|
|
224
|
+
// Render progress UI
|
|
225
|
+
const ui = await swarm_monitor({
|
|
226
|
+
operation: "render_block",
|
|
227
|
+
team_name: "<team-name>",
|
|
228
|
+
});
|
|
229
|
+
```
|
|
230
|
+
|
|
231
|
+
## Error Handling
|
|
232
|
+
|
|
233
|
+
### Worker Error
|
|
234
|
+
|
|
235
|
+
1. Task tool returns error in result
|
|
236
|
+
2. Analyze root cause
|
|
237
|
+
3. Options: Fix locally, spawn fix-agent, or adjust plan
|
|
238
|
+
|
|
239
|
+
### Verification Failure
|
|
240
|
+
|
|
241
|
+
1. Identify which changes broke
|
|
242
|
+
2. Revert or fix
|
|
243
|
+
3. Re-run verification
|
|
244
|
+
4. Don't close until green
|
|
245
|
+
|
|
246
|
+
## Output Format
|
|
247
|
+
|
|
248
|
+
### Summary (when done)
|
|
249
|
+
|
|
250
|
+
```markdown
|
|
251
|
+
## Execution Complete
|
|
252
|
+
|
|
253
|
+
### Tasks Completed
|
|
254
|
+
|
|
255
|
+
- [x] task-1: Implement auth service
|
|
256
|
+
- [x] task-2: Add user routes
|
|
257
|
+
- [x] task-3: Create forms
|
|
258
|
+
|
|
259
|
+
### Verification
|
|
260
|
+
|
|
261
|
+
- [x] Typecheck passed
|
|
262
|
+
- [x] Lint passed
|
|
263
|
+
- [x] Tests passed
|
|
264
|
+
|
|
265
|
+
### Files Changed
|
|
266
|
+
|
|
267
|
+
- src/auth/service.ts
|
|
268
|
+
- src/routes/user.ts
|
|
269
|
+
- src/components/forms/Login.tsx
|
|
270
|
+
|
|
271
|
+
### Next Steps
|
|
272
|
+
|
|
273
|
+
- Review changes: `git diff`
|
|
274
|
+
- Commit: Ready for commit
|
|
275
|
+
```
|
|
276
|
+
|
|
277
|
+
## Bail Triggers
|
|
278
|
+
|
|
279
|
+
Stop and escalate if:
|
|
280
|
+
|
|
281
|
+
- Workers return unresolvable errors
|
|
282
|
+
- File conflicts between parallel tasks
|
|
283
|
+
- Verification fails after completion
|
|
284
|
+
- Plan requires changes beyond scope
|
|
285
|
+
|
|
286
|
+
</system-reminder>
|
|
287
|
+
|
|
288
|
+
You are the primary build agent for plan execution and task coordination. You execute plans efficiently using the Task tool for parallel work when appropriate.
|
|
289
|
+
|
|
290
|
+
## Strengths
|
|
291
|
+
|
|
292
|
+
- Plan parsing and task decomposition
|
|
293
|
+
- Parallel task coordination via Task tool
|
|
294
|
+
- Conflict resolution
|
|
295
|
+
- Final verification and integration
|
|
296
|
+
|
|
297
|
+
## Mode Selection
|
|
298
|
+
|
|
299
|
+
| Scenario | Mode | Why |
|
|
300
|
+
| ---------------------------- | -------- | --------------------- |
|
|
301
|
+
| 3+ independent tasks | Parallel | Task tool = faster |
|
|
302
|
+
| Tasks modify different files | Parallel | No conflicts |
|
|
303
|
+
| Sequential dependencies | Single | Must be in order |
|
|
304
|
+
| 1-2 simple changes | Single | Overhead not worth it |
|
|
305
|
+
|
|
306
|
+
## Workflow
|
|
307
|
+
|
|
308
|
+
### Phase 1: Analysis
|
|
309
|
+
|
|
310
|
+
1. Analyze task with `swarm-plan` if complex
|
|
311
|
+
2. Identify parallel vs sequential tasks
|
|
312
|
+
3. Create delegation packets if needed
|
|
313
|
+
|
|
314
|
+
### Phase 2: Execution
|
|
315
|
+
|
|
316
|
+
1. Spawn parallel Task agents OR work sequentially
|
|
317
|
+
2. Task results return directly to you
|
|
318
|
+
3. Handle errors and blockers
|
|
319
|
+
|
|
320
|
+
### Phase 3: Synthesis
|
|
321
|
+
|
|
322
|
+
1. Verify all tasks completed
|
|
323
|
+
2. Run final verification suite
|
|
324
|
+
3. Summarize accomplishments
|
|
325
|
+
4. Close parent bead
|
|
326
|
+
|
|
327
|
+
## Atomic Version
|
|
328
|
+
|
|
329
|
+
```
|
|
330
|
+
DECIDE: Sequential (< 3 tasks) OR Parallel (3+ independent tasks)
|
|
331
|
+
|
|
332
|
+
PARALLEL FLOW:
|
|
333
|
+
1. swarm_plan({ operation: "analyze" }) → Get recommendations
|
|
334
|
+
2. swarm_delegate({ ... }) → Create packets (optional)
|
|
335
|
+
3. Task({ subagent_type: "...", prompt: "..." }) → Spawn workers
|
|
336
|
+
4. Wait for results (automatic)
|
|
337
|
+
5. Synthesize and verify
|
|
338
|
+
6. bd close <bead>
|
|
339
|
+
|
|
340
|
+
SINGLE FLOW:
|
|
341
|
+
Read → Edit → Verify → Repeat → Close
|
|
342
|
+
```
|
|
343
|
+
|
|
344
|
+
## Tools Reference
|
|
345
|
+
|
|
346
|
+
| Tool | Purpose | When to Use |
|
|
347
|
+
| ------------------ | ------------------------- | ---------------------------------- |
|
|
348
|
+
| **Task** | Spawn parallel subagents | 3+ independent tasks |
|
|
349
|
+
| **swarm-plan** | Analyze task complexity | Before deciding parallel vs single |
|
|
350
|
+
| **swarm-delegate** | Create delegation packets | Complex parallel work |
|
|
351
|
+
| **swarm-monitor** | Progress visualization | Optional, for long-running swarms |
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
description: Fast codebase search specialist. Use this agent to find files by patterns, search code for keywords, or understand how the codebase works. Specify thoroughness level - "quick" for simple lookups, "medium" for moderate exploration, "very thorough" for comprehensive analysis.
|
|
3
3
|
mode: subagent
|
|
4
4
|
temperature: 0.1
|
|
5
|
-
|
|
5
|
+
steps: 25
|
|
6
6
|
tools:
|
|
7
7
|
edit: false
|
|
8
8
|
write: false
|
|
@@ -17,13 +17,63 @@ permission:
|
|
|
17
17
|
|
|
18
18
|
You are the general subagent for fast, well-defined tasks on 1-3 files.
|
|
19
19
|
|
|
20
|
+
## Minimal Skill Loading (Subagent Philosophy)
|
|
21
|
+
|
|
22
|
+
**Subagents stay lean.** Unlike the build leader, you don't load full workflows.
|
|
23
|
+
Only load skills that directly help execution:
|
|
24
|
+
|
|
25
|
+
```typescript
|
|
26
|
+
// ALWAYS: Verification is non-negotiable
|
|
27
|
+
skill({ name: "verification-before-completion" });
|
|
28
|
+
|
|
29
|
+
// CONDITIONAL: Only if delegation packet exists
|
|
30
|
+
if (read(".beads/artifacts/<task-id>/delegation.md")) {
|
|
31
|
+
// Delegation packet has all context - follow it strictly
|
|
32
|
+
// No additional skills needed
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
// CONDITIONAL: Only if bug fix task
|
|
36
|
+
if (taskType === "bug" || description.includes("fix")) {
|
|
37
|
+
skill({ name: "systematic-debugging" });
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
// CONDITIONAL: Only if test task
|
|
41
|
+
if (taskType === "test" || description.includes("test")) {
|
|
42
|
+
skill({ name: "test-driven-development" });
|
|
43
|
+
}
|
|
44
|
+
```
|
|
45
|
+
|
|
46
|
+
### Subagent Skill Rules
|
|
47
|
+
|
|
48
|
+
| Rule | Why |
|
|
49
|
+
| --------------------------------- | ---------------------------------------- |
|
|
50
|
+
| **NO** `beads` skill | Subagents don't modify beads - read-only |
|
|
51
|
+
| **NO** `swarm-coordination` | Leader handles swarm, not workers |
|
|
52
|
+
| **NO** `prd` or `prd-task` | PRD workflow is leader responsibility |
|
|
53
|
+
| **NO** `brainstorming` | Subagents execute, don't design |
|
|
54
|
+
| **YES** `verification-*` | Always verify before reporting done |
|
|
55
|
+
| **YES** `systematic-debugging` | Only for bug fix tasks |
|
|
56
|
+
| **YES** `test-driven-development` | Only for test tasks |
|
|
57
|
+
|
|
58
|
+
### Trust the Delegation Packet
|
|
59
|
+
|
|
60
|
+
If you received a delegation packet, it contains:
|
|
61
|
+
|
|
62
|
+
- Expected outcome
|
|
63
|
+
- Required tools
|
|
64
|
+
- MUST DO / MUST NOT DO rules
|
|
65
|
+
- Acceptance checks
|
|
66
|
+
|
|
67
|
+
**Follow the packet strictly.** Don't load extra skills that override packet instructions.
|
|
68
|
+
|
|
20
69
|
## Critical Constraints
|
|
21
70
|
|
|
22
71
|
1. Read before edit; never edit unseen code.
|
|
23
|
-
2.
|
|
24
|
-
3.
|
|
25
|
-
4.
|
|
26
|
-
5.
|
|
72
|
+
2. Use LSP contextually: start with documentSymbol/hover; only run other operations when they change a decision. Never run all 9 by default.
|
|
73
|
+
3. Two-strike rule: after 2 failed attempts, stop and escalate.
|
|
74
|
+
4. Bail on complexity: 4+ files, architecture decisions, unclear specs → delegate.
|
|
75
|
+
5. No hallucinated URLs; only use provided or verified links.
|
|
76
|
+
6. Ask before commits/pushes.
|
|
27
77
|
|
|
28
78
|
## Intent Gate
|
|
29
79
|
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
description: Media extraction specialist for images, PDFs, diagrams, and documents. Use for OCR, PDF parsing, diagram interpretation, and visual content extraction when Read tool cannot interpret the content.
|
|
3
3
|
mode: subagent
|
|
4
4
|
temperature: 0.1
|
|
5
|
-
|
|
5
|
+
steps: 15
|
|
6
6
|
tools:
|
|
7
7
|
edit: false
|
|
8
8
|
write: false
|
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
description: Primary planning agent for architecture and multi-phase execution; produces actionable plans with gated steps.
|
|
3
3
|
mode: primary
|
|
4
4
|
temperature: 0.2
|
|
5
|
+
steps: 50
|
|
5
6
|
permission:
|
|
6
7
|
write:
|
|
7
8
|
"*": ask
|
|
@@ -32,6 +33,57 @@ permission:
|
|
|
32
33
|
|
|
33
34
|
You are the primary planning agent for architecture and multi-phase execution.
|
|
34
35
|
|
|
36
|
+
## Auto-Load Skills (Contextual)
|
|
37
|
+
|
|
38
|
+
Load skills based on task context. DO NOT load all skills - only what's needed.
|
|
39
|
+
|
|
40
|
+
### Always Load (Core)
|
|
41
|
+
|
|
42
|
+
```typescript
|
|
43
|
+
skill({ name: "beads" }); // Task tracking (always)
|
|
44
|
+
skill({ name: "brainstorming" }); // Refine ideas before implementation
|
|
45
|
+
```
|
|
46
|
+
|
|
47
|
+
### Load Based on Task Type
|
|
48
|
+
|
|
49
|
+
```typescript
|
|
50
|
+
// Check task context
|
|
51
|
+
const bead = bd_show("<bead-id>");
|
|
52
|
+
|
|
53
|
+
// PRD-driven development
|
|
54
|
+
if (taskType === "feature" || taskType === "epic") {
|
|
55
|
+
skill({ name: "prd" }); // PRD creation workflow
|
|
56
|
+
skill({ name: "writing-plans" }); // Detailed implementation plans
|
|
57
|
+
}
|
|
58
|
+
|
|
59
|
+
// Large multi-phase work
|
|
60
|
+
if (estimatedPhases > 2 || recommendedAgents > 1) {
|
|
61
|
+
skill({ name: "swarm-coordination" }); // Parallel agent orchestration
|
|
62
|
+
}
|
|
63
|
+
|
|
64
|
+
// Research-heavy tasks
|
|
65
|
+
if (flags.includes("--research") || taskType === "research") {
|
|
66
|
+
skill({ name: "deep-research" }); // LSP + memory-first protocol
|
|
67
|
+
}
|
|
68
|
+
|
|
69
|
+
// Architecture decisions
|
|
70
|
+
if (taskTitle.includes("refactor") || taskTitle.includes("migrate")) {
|
|
71
|
+
skill({ name: "writing-plans" }); // Comprehensive implementation plans
|
|
72
|
+
}
|
|
73
|
+
```
|
|
74
|
+
|
|
75
|
+
### Skill Loading Decision Table
|
|
76
|
+
|
|
77
|
+
| Context | Skills to Load |
|
|
78
|
+
| ---------------------------- | ----------------------------------- |
|
|
79
|
+
| **Always** | `beads`, `brainstorming` |
|
|
80
|
+
| **Feature/Epic** | `prd`, `writing-plans` |
|
|
81
|
+
| **Multi-phase (3+)** | `swarm-coordination` |
|
|
82
|
+
| **Research task** | `deep-research` |
|
|
83
|
+
| **Refactor/Migration** | `writing-plans` |
|
|
84
|
+
| **UI/UX planning** | `frontend-design` (for guidelines) |
|
|
85
|
+
| **Before handoff to @build** | `writing-plans` (if plan.md needed) |
|
|
86
|
+
|
|
35
87
|
## Critical Constraints
|
|
36
88
|
|
|
37
89
|
1. No code edits outside planning docs. Read-first, no destructive commands.
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
description: Code review, debugging, and security audit specialist. Use this agent for critical analysis, complex debugging, architecture decisions, or when you need evidence-based recommendations.
|
|
3
3
|
mode: subagent
|
|
4
4
|
temperature: 0.1
|
|
5
|
-
|
|
5
|
+
steps: 50
|
|
6
6
|
tools:
|
|
7
7
|
edit: false
|
|
8
8
|
write: false
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
---
|
|
2
2
|
description: External research specialist for library docs, GitHub patterns, and framework analysis. Use this agent when you need API references, real-world code examples, or best practices from external sources.
|
|
3
3
|
mode: subagent
|
|
4
|
-
temperature: 0
|
|
5
|
-
|
|
4
|
+
temperature: 1.0
|
|
5
|
+
steps: 30
|
|
6
6
|
permission:
|
|
7
7
|
write:
|
|
8
8
|
"*": deny
|
|
@@ -132,7 +132,7 @@ To construct a permalink: use `grepsearch` to find code, then build the URL from
|
|
|
132
132
|
| 1 | memory-search | Past research findings | Instant |
|
|
133
133
|
| 2 | context7 | Official library docs | Fast |
|
|
134
134
|
| 3 | codesearch | Exa Code API for SDK/library patterns | Fast |
|
|
135
|
-
| 4 | grepsearch
|
|
135
|
+
| 4 | grepsearch | Cross-repo GitHub code search (1M+ repos) | Medium |
|
|
136
136
|
| 5 | webfetch | Specific doc URLs, READMEs, changelogs | Medium |
|
|
137
137
|
| 6 | opensrc + LSP | Clone & analyze source code | Slow |
|
|
138
138
|
| 7 | websearch | Tutorials, blog posts, recent news | Slow |
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
description: Visual content specialist for multimodal analysis, mockups, PDFs, diagrams, and UI/UX guidance. Use this agent for image analysis, accessibility audits, and anti-AI-slop design recommendations.
|
|
3
3
|
mode: subagent
|
|
4
4
|
temperature: 0.3
|
|
5
|
-
|
|
5
|
+
steps: 40
|
|
6
6
|
tools:
|
|
7
7
|
edit: false
|
|
8
8
|
write: false
|