opencode-starterkit 1.0.1
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/README.md +47 -0
- package/baseline/.env.example +196 -0
- package/baseline/.template-manifest.json +646 -0
- package/baseline/.version +1 -0
- package/baseline/AGENTS.md +410 -0
- package/baseline/AGENT_ALIGNMENT.md +564 -0
- package/baseline/README.md +79 -0
- package/baseline/agent/build.md +373 -0
- package/baseline/agent/explore.md +96 -0
- package/baseline/agent/general.md +186 -0
- package/baseline/agent/painter.md +74 -0
- package/baseline/agent/plan.md +435 -0
- package/baseline/agent/review.md +243 -0
- package/baseline/agent/runner.md +79 -0
- package/baseline/agent/scout.md +100 -0
- package/baseline/agent/vision.md +91 -0
- package/baseline/command/compound.md +143 -0
- package/baseline/command/create.md +213 -0
- package/baseline/command/design.md +112 -0
- package/baseline/command/handoff.md +147 -0
- package/baseline/command/init-context.md +273 -0
- package/baseline/command/init-user.md +105 -0
- package/baseline/command/init.md +117 -0
- package/baseline/command/lfg.md +170 -0
- package/baseline/command/plan.md +355 -0
- package/baseline/command/pr.md +161 -0
- package/baseline/command/research.md +125 -0
- package/baseline/command/resume.md +87 -0
- package/baseline/command/review-codebase.md +131 -0
- package/baseline/command/ship.md +342 -0
- package/baseline/command/start.md +158 -0
- package/baseline/command/status.md +117 -0
- package/baseline/command/ui-review.md +92 -0
- package/baseline/command/ui-slop-check.md +146 -0
- package/baseline/command/verify.md +160 -0
- package/baseline/context/README.md +29 -0
- package/baseline/dcp.jsonc +72 -0
- package/baseline/memory/README.md +89 -0
- package/baseline/memory/_templates/design.md +59 -0
- package/baseline/memory/_templates/prd.md +192 -0
- package/baseline/memory/_templates/project.md +58 -0
- package/baseline/memory/_templates/proposal.md +38 -0
- package/baseline/memory/_templates/roadmap.md +93 -0
- package/baseline/memory/_templates/state.md +89 -0
- package/baseline/memory/_templates/tasks.md +198 -0
- package/baseline/memory/_templates/tech-stack.md +85 -0
- package/baseline/memory/_templates/user.md +26 -0
- package/baseline/memory/project/gotchas.md +67 -0
- package/baseline/memory/project/project.md +92 -0
- package/baseline/memory/project/roadmap.md +142 -0
- package/baseline/memory/project/state.md +84 -0
- package/baseline/memory/project/tech-stack.md +53 -0
- package/baseline/memory/project/user.md +38 -0
- package/baseline/memory/research/benchmark-framework.md +162 -0
- package/baseline/memory/research/ccpm-analysis.md +334 -0
- package/baseline/memory/research/context-management-analysis.md +685 -0
- package/baseline/memory/research/effectiveness-audit.md +213 -0
- package/baseline/memory/research/opencode-mcp-bug-report.md +129 -0
- package/baseline/memory/research/openspec-analysis.md +226 -0
- package/baseline/memory/session-context.md +40 -0
- package/baseline/opencode.json +1431 -0
- package/baseline/opencode.json.tui-migration.bak +1380 -0
- package/baseline/package-lock.json +87 -0
- package/baseline/package.json +21 -0
- package/baseline/plans/1768385996691-silent-wizard.md +247 -0
- package/baseline/plans/1770006237537-mighty-otter.md +418 -0
- package/baseline/plans/1770006913647-glowing-forest.md +170 -0
- package/baseline/plans/1770013678126-witty-planet.md +278 -0
- package/baseline/plans/1770112267595-shiny-rocket.md +258 -0
- package/baseline/plans/swarm-protocol.md +123 -0
- package/baseline/plugin/README.md +70 -0
- package/baseline/plugin/copilot-auth.ts +607 -0
- package/baseline/plugin/lib/capture.ts +177 -0
- package/baseline/plugin/lib/context.ts +198 -0
- package/baseline/plugin/lib/curator.ts +234 -0
- package/baseline/plugin/lib/db/maintenance.ts +312 -0
- package/baseline/plugin/lib/db/observations.ts +299 -0
- package/baseline/plugin/lib/db/pipeline.ts +520 -0
- package/baseline/plugin/lib/db/schema.ts +356 -0
- package/baseline/plugin/lib/db/types.ts +211 -0
- package/baseline/plugin/lib/distill.ts +376 -0
- package/baseline/plugin/lib/inject.ts +126 -0
- package/baseline/plugin/lib/memory-admin-tools.ts +188 -0
- package/baseline/plugin/lib/memory-db.ts +58 -0
- package/baseline/plugin/lib/memory-helpers.ts +111 -0
- package/baseline/plugin/lib/memory-hooks.ts +195 -0
- package/baseline/plugin/lib/memory-tools.ts +341 -0
- package/baseline/plugin/lib/notify.ts +81 -0
- package/baseline/plugin/memory.ts +89 -0
- package/baseline/plugin/notification.ts.bak +64 -0
- package/baseline/plugin/package.json +7 -0
- package/baseline/plugin/sdk/copilot/chat/convert-to-openai-compatible-chat-messages.ts +178 -0
- package/baseline/plugin/sdk/copilot/chat/get-response-metadata.ts +15 -0
- package/baseline/plugin/sdk/copilot/chat/map-openai-compatible-finish-reason.ts +19 -0
- package/baseline/plugin/sdk/copilot/chat/openai-compatible-api-types.ts +72 -0
- package/baseline/plugin/sdk/copilot/chat/openai-compatible-chat-language-model.ts +833 -0
- package/baseline/plugin/sdk/copilot/chat/openai-compatible-chat-options.ts +30 -0
- package/baseline/plugin/sdk/copilot/chat/openai-compatible-metadata-extractor.ts +48 -0
- package/baseline/plugin/sdk/copilot/chat/openai-compatible-prepare-tools.ts +92 -0
- package/baseline/plugin/sdk/copilot/copilot-provider.ts +94 -0
- package/baseline/plugin/sdk/copilot/index.ts +5 -0
- package/baseline/plugin/sdk/copilot/openai-compatible-error.ts +30 -0
- package/baseline/plugin/sessions.ts +428 -0
- package/baseline/plugin/skill-mcp.ts +618 -0
- package/baseline/plugin/tsconfig.json +16 -0
- package/baseline/skill/accessibility-audit/SKILL.md +191 -0
- package/baseline/skill/agent-browser/SKILL.md +413 -0
- package/baseline/skill/agent-teams/SKILL.md +268 -0
- package/baseline/skill/augment-context-engine/SKILL.md +122 -0
- package/baseline/skill/augment-context-engine/mcp.json +6 -0
- package/baseline/skill/beads/SKILL.md +181 -0
- package/baseline/skill/beads/references/BEST_PRACTICES.md +27 -0
- package/baseline/skill/beads/references/BOUNDARIES.md +219 -0
- package/baseline/skill/beads/references/DEPENDENCIES.md +124 -0
- package/baseline/skill/beads/references/EXAMPLES.md +45 -0
- package/baseline/skill/beads/references/FILE_CLAIMING.md +101 -0
- package/baseline/skill/beads/references/GIT_SYNC.md +25 -0
- package/baseline/skill/beads/references/HIERARCHY.md +71 -0
- package/baseline/skill/beads/references/MULTI_AGENT.md +40 -0
- package/baseline/skill/beads/references/RESUMABILITY.md +177 -0
- package/baseline/skill/beads/references/SESSION_PROTOCOL.md +61 -0
- package/baseline/skill/beads/references/TASK_CREATION.md +38 -0
- package/baseline/skill/beads/references/TROUBLESHOOTING.md +38 -0
- package/baseline/skill/beads/references/WORKFLOWS.md +226 -0
- package/baseline/skill/beads-bridge/SKILL.md +321 -0
- package/baseline/skill/brainstorming/SKILL.md +114 -0
- package/baseline/skill/chrome-devtools/SKILL.md +76 -0
- package/baseline/skill/chrome-devtools/mcp.json +19 -0
- package/baseline/skill/cloudflare/SKILL.md +253 -0
- package/baseline/skill/cloudflare/references/agents-sdk/README.md +35 -0
- package/baseline/skill/cloudflare/references/agents-sdk/api.md +100 -0
- package/baseline/skill/cloudflare/references/agents-sdk/configuration.md +99 -0
- package/baseline/skill/cloudflare/references/agents-sdk/gotchas.md +59 -0
- package/baseline/skill/cloudflare/references/agents-sdk/patterns.md +89 -0
- package/baseline/skill/cloudflare/references/ai-gateway/README.md +695 -0
- package/baseline/skill/cloudflare/references/ai-search/README.md +14 -0
- package/baseline/skill/cloudflare/references/ai-search/api.md +38 -0
- package/baseline/skill/cloudflare/references/ai-search/configuration.md +52 -0
- package/baseline/skill/cloudflare/references/ai-search/gotchas.md +41 -0
- package/baseline/skill/cloudflare/references/ai-search/patterns.md +45 -0
- package/baseline/skill/cloudflare/references/analytics-engine/README.md +14 -0
- package/baseline/skill/cloudflare/references/analytics-engine/api.md +27 -0
- package/baseline/skill/cloudflare/references/analytics-engine/configuration.md +45 -0
- package/baseline/skill/cloudflare/references/analytics-engine/gotchas.md +3 -0
- package/baseline/skill/cloudflare/references/analytics-engine/patterns.md +36 -0
- package/baseline/skill/cloudflare/references/api/README.md +21 -0
- package/baseline/skill/cloudflare/references/api/api.md +31 -0
- package/baseline/skill/cloudflare/references/api/configuration.md +20 -0
- package/baseline/skill/cloudflare/references/api/gotchas.md +28 -0
- package/baseline/skill/cloudflare/references/api/patterns.md +47 -0
- package/baseline/skill/cloudflare/references/api-shield/README.md +20 -0
- package/baseline/skill/cloudflare/references/api-shield/api.md +78 -0
- package/baseline/skill/cloudflare/references/api-shield/configuration.md +128 -0
- package/baseline/skill/cloudflare/references/api-shield/gotchas.md +51 -0
- package/baseline/skill/cloudflare/references/api-shield/patterns.md +145 -0
- package/baseline/skill/cloudflare/references/argo-smart-routing/README.md +16 -0
- package/baseline/skill/cloudflare/references/argo-smart-routing/api.md +50 -0
- package/baseline/skill/cloudflare/references/argo-smart-routing/configuration.md +53 -0
- package/baseline/skill/cloudflare/references/argo-smart-routing/gotchas.md +16 -0
- package/baseline/skill/cloudflare/references/argo-smart-routing/patterns.md +45 -0
- package/baseline/skill/cloudflare/references/bindings/README.md +14 -0
- package/baseline/skill/cloudflare/references/bindings/api.md +3 -0
- package/baseline/skill/cloudflare/references/bindings/configuration.md +58 -0
- package/baseline/skill/cloudflare/references/bindings/gotchas.md +35 -0
- package/baseline/skill/cloudflare/references/bindings/patterns.md +37 -0
- package/baseline/skill/cloudflare/references/bot-management/README.md +71 -0
- package/baseline/skill/cloudflare/references/bot-management/api.md +168 -0
- package/baseline/skill/cloudflare/references/bot-management/configuration.md +114 -0
- package/baseline/skill/cloudflare/references/bot-management/gotchas.md +99 -0
- package/baseline/skill/cloudflare/references/bot-management/patterns.md +125 -0
- package/baseline/skill/cloudflare/references/browser-rendering/README.md +16 -0
- package/baseline/skill/cloudflare/references/browser-rendering/api.md +54 -0
- package/baseline/skill/cloudflare/references/browser-rendering/configuration.md +47 -0
- package/baseline/skill/cloudflare/references/browser-rendering/gotchas.md +29 -0
- package/baseline/skill/cloudflare/references/browser-rendering/patterns.md +29 -0
- package/baseline/skill/cloudflare/references/c3/README.md +264 -0
- package/baseline/skill/cloudflare/references/cache-reserve/README.md +93 -0
- package/baseline/skill/cloudflare/references/cache-reserve/api.md +176 -0
- package/baseline/skill/cloudflare/references/cache-reserve/configuration.md +164 -0
- package/baseline/skill/cloudflare/references/cache-reserve/gotchas.md +203 -0
- package/baseline/skill/cloudflare/references/cache-reserve/patterns.md +180 -0
- package/baseline/skill/cloudflare/references/containers/README.md +16 -0
- package/baseline/skill/cloudflare/references/containers/api.md +43 -0
- package/baseline/skill/cloudflare/references/containers/configuration.md +56 -0
- package/baseline/skill/cloudflare/references/containers/gotchas.md +21 -0
- package/baseline/skill/cloudflare/references/containers/patterns.md +40 -0
- package/baseline/skill/cloudflare/references/cron-triggers/README.md +85 -0
- package/baseline/skill/cloudflare/references/cron-triggers/api.md +198 -0
- package/baseline/skill/cloudflare/references/cron-triggers/configuration.md +151 -0
- package/baseline/skill/cloudflare/references/cron-triggers/gotchas.md +129 -0
- package/baseline/skill/cloudflare/references/cron-triggers/patterns.md +122 -0
- package/baseline/skill/cloudflare/references/d1/README.md +92 -0
- package/baseline/skill/cloudflare/references/d1/api.md +141 -0
- package/baseline/skill/cloudflare/references/d1/configuration.md +127 -0
- package/baseline/skill/cloudflare/references/d1/gotchas.md +70 -0
- package/baseline/skill/cloudflare/references/d1/patterns.md +144 -0
- package/baseline/skill/cloudflare/references/ddos/README.md +34 -0
- package/baseline/skill/cloudflare/references/ddos/api.md +136 -0
- package/baseline/skill/cloudflare/references/ddos/configuration.md +67 -0
- package/baseline/skill/cloudflare/references/ddos/gotchas.md +114 -0
- package/baseline/skill/cloudflare/references/ddos/patterns.md +158 -0
- package/baseline/skill/cloudflare/references/do-storage/README.md +62 -0
- package/baseline/skill/cloudflare/references/do-storage/api.md +89 -0
- package/baseline/skill/cloudflare/references/do-storage/configuration.md +116 -0
- package/baseline/skill/cloudflare/references/do-storage/gotchas.md +93 -0
- package/baseline/skill/cloudflare/references/do-storage/patterns.md +112 -0
- package/baseline/skill/cloudflare/references/durable-objects/README.md +125 -0
- package/baseline/skill/cloudflare/references/durable-objects/api.md +152 -0
- package/baseline/skill/cloudflare/references/durable-objects/configuration.md +148 -0
- package/baseline/skill/cloudflare/references/durable-objects/gotchas.md +158 -0
- package/baseline/skill/cloudflare/references/durable-objects/patterns.md +255 -0
- package/baseline/skill/cloudflare/references/email-routing/README.md +18 -0
- package/baseline/skill/cloudflare/references/email-routing/api.md +46 -0
- package/baseline/skill/cloudflare/references/email-routing/configuration.md +63 -0
- package/baseline/skill/cloudflare/references/email-routing/gotchas.md +16 -0
- package/baseline/skill/cloudflare/references/email-routing/patterns.md +46 -0
- package/baseline/skill/cloudflare/references/email-workers/README.md +598 -0
- package/baseline/skill/cloudflare/references/hyperdrive/README.md +62 -0
- package/baseline/skill/cloudflare/references/hyperdrive/api.md +137 -0
- package/baseline/skill/cloudflare/references/hyperdrive/configuration.md +133 -0
- package/baseline/skill/cloudflare/references/hyperdrive/gotchas.md +184 -0
- package/baseline/skill/cloudflare/references/hyperdrive/patterns.md +176 -0
- package/baseline/skill/cloudflare/references/images/README.md +14 -0
- package/baseline/skill/cloudflare/references/images/api.md +3 -0
- package/baseline/skill/cloudflare/references/images/configuration.md +45 -0
- package/baseline/skill/cloudflare/references/images/gotchas.md +23 -0
- package/baseline/skill/cloudflare/references/images/patterns.md +31 -0
- package/baseline/skill/cloudflare/references/kv/README.md +60 -0
- package/baseline/skill/cloudflare/references/kv/api.md +114 -0
- package/baseline/skill/cloudflare/references/kv/configuration.md +92 -0
- package/baseline/skill/cloudflare/references/kv/gotchas.md +117 -0
- package/baseline/skill/cloudflare/references/kv/patterns.md +139 -0
- package/baseline/skill/cloudflare/references/miniflare/README.md +64 -0
- package/baseline/skill/cloudflare/references/miniflare/api.md +144 -0
- package/baseline/skill/cloudflare/references/miniflare/configuration.md +203 -0
- package/baseline/skill/cloudflare/references/miniflare/gotchas.md +187 -0
- package/baseline/skill/cloudflare/references/miniflare/patterns.md +211 -0
- package/baseline/skill/cloudflare/references/network-interconnect/README.md +60 -0
- package/baseline/skill/cloudflare/references/network-interconnect/api.md +240 -0
- package/baseline/skill/cloudflare/references/network-interconnect/configuration.md +127 -0
- package/baseline/skill/cloudflare/references/network-interconnect/gotchas.md +171 -0
- package/baseline/skill/cloudflare/references/network-interconnect/patterns.md +171 -0
- package/baseline/skill/cloudflare/references/observability/README.md +18 -0
- package/baseline/skill/cloudflare/references/observability/api.md +51 -0
- package/baseline/skill/cloudflare/references/observability/configuration.md +60 -0
- package/baseline/skill/cloudflare/references/observability/gotchas.md +36 -0
- package/baseline/skill/cloudflare/references/observability/patterns.md +42 -0
- package/baseline/skill/cloudflare/references/pages/README.md +76 -0
- package/baseline/skill/cloudflare/references/pages/api.md +200 -0
- package/baseline/skill/cloudflare/references/pages/configuration.md +228 -0
- package/baseline/skill/cloudflare/references/pages/gotchas.md +161 -0
- package/baseline/skill/cloudflare/references/pages/patterns.md +145 -0
- package/baseline/skill/cloudflare/references/pages-functions/README.md +57 -0
- package/baseline/skill/cloudflare/references/pages-functions/api.md +201 -0
- package/baseline/skill/cloudflare/references/pages-functions/configuration.md +159 -0
- package/baseline/skill/cloudflare/references/pages-functions/gotchas.md +151 -0
- package/baseline/skill/cloudflare/references/pages-functions/patterns.md +190 -0
- package/baseline/skill/cloudflare/references/pipelines/README.md +664 -0
- package/baseline/skill/cloudflare/references/pulumi/README.md +107 -0
- package/baseline/skill/cloudflare/references/pulumi/api.md +194 -0
- package/baseline/skill/cloudflare/references/pulumi/configuration.md +216 -0
- package/baseline/skill/cloudflare/references/pulumi/gotchas.md +223 -0
- package/baseline/skill/cloudflare/references/pulumi/patterns.md +139 -0
- package/baseline/skill/cloudflare/references/queues/README.md +69 -0
- package/baseline/skill/cloudflare/references/queues/api.md +138 -0
- package/baseline/skill/cloudflare/references/queues/configuration.md +125 -0
- package/baseline/skill/cloudflare/references/queues/gotchas.md +112 -0
- package/baseline/skill/cloudflare/references/queues/patterns.md +155 -0
- package/baseline/skill/cloudflare/references/r2/README.md +61 -0
- package/baseline/skill/cloudflare/references/r2/api.md +127 -0
- package/baseline/skill/cloudflare/references/r2/configuration.md +76 -0
- package/baseline/skill/cloudflare/references/r2/gotchas.md +94 -0
- package/baseline/skill/cloudflare/references/r2/patterns.md +127 -0
- package/baseline/skill/cloudflare/references/r2-data-catalog/README.md +18 -0
- package/baseline/skill/cloudflare/references/r2-data-catalog/api.md +29 -0
- package/baseline/skill/cloudflare/references/r2-data-catalog/configuration.md +39 -0
- package/baseline/skill/cloudflare/references/r2-data-catalog/gotchas.md +20 -0
- package/baseline/skill/cloudflare/references/r2-data-catalog/patterns.md +46 -0
- package/baseline/skill/cloudflare/references/r2-sql/README.md +512 -0
- package/baseline/skill/cloudflare/references/realtime-sfu/README.md +21 -0
- package/baseline/skill/cloudflare/references/realtime-sfu/api.md +135 -0
- package/baseline/skill/cloudflare/references/realtime-sfu/configuration.md +63 -0
- package/baseline/skill/cloudflare/references/realtime-sfu/gotchas.md +75 -0
- package/baseline/skill/cloudflare/references/realtime-sfu/patterns.md +102 -0
- package/baseline/skill/cloudflare/references/realtimekit/README.md +81 -0
- package/baseline/skill/cloudflare/references/realtimekit/api.md +164 -0
- package/baseline/skill/cloudflare/references/realtimekit/configuration.md +147 -0
- package/baseline/skill/cloudflare/references/realtimekit/gotchas.md +172 -0
- package/baseline/skill/cloudflare/references/realtimekit/patterns.md +155 -0
- package/baseline/skill/cloudflare/references/sandbox/README.md +90 -0
- package/baseline/skill/cloudflare/references/sandbox/api.md +178 -0
- package/baseline/skill/cloudflare/references/sandbox/configuration.md +131 -0
- package/baseline/skill/cloudflare/references/sandbox/gotchas.md +156 -0
- package/baseline/skill/cloudflare/references/sandbox/patterns.md +203 -0
- package/baseline/skill/cloudflare/references/secrets-store/README.md +58 -0
- package/baseline/skill/cloudflare/references/secrets-store/api.md +182 -0
- package/baseline/skill/cloudflare/references/secrets-store/configuration.md +140 -0
- package/baseline/skill/cloudflare/references/secrets-store/gotchas.md +129 -0
- package/baseline/skill/cloudflare/references/secrets-store/patterns.md +218 -0
- package/baseline/skill/cloudflare/references/smart-placement/README.md +91 -0
- package/baseline/skill/cloudflare/references/smart-placement/api.md +139 -0
- package/baseline/skill/cloudflare/references/smart-placement/configuration.md +129 -0
- package/baseline/skill/cloudflare/references/smart-placement/gotchas.md +87 -0
- package/baseline/skill/cloudflare/references/smart-placement/patterns.md +135 -0
- package/baseline/skill/cloudflare/references/snippets/README.md +15 -0
- package/baseline/skill/cloudflare/references/snippets/api.md +47 -0
- package/baseline/skill/cloudflare/references/snippets/configuration.md +33 -0
- package/baseline/skill/cloudflare/references/snippets/gotchas.md +21 -0
- package/baseline/skill/cloudflare/references/snippets/patterns.md +34 -0
- package/baseline/skill/cloudflare/references/spectrum/README.md +16 -0
- package/baseline/skill/cloudflare/references/spectrum/api.md +24 -0
- package/baseline/skill/cloudflare/references/spectrum/configuration.md +43 -0
- package/baseline/skill/cloudflare/references/spectrum/gotchas.md +42 -0
- package/baseline/skill/cloudflare/references/spectrum/patterns.md +40 -0
- package/baseline/skill/cloudflare/references/static-assets/README.md +14 -0
- package/baseline/skill/cloudflare/references/static-assets/api.md +3 -0
- package/baseline/skill/cloudflare/references/static-assets/configuration.md +47 -0
- package/baseline/skill/cloudflare/references/static-assets/gotchas.md +44 -0
- package/baseline/skill/cloudflare/references/static-assets/patterns.md +42 -0
- package/baseline/skill/cloudflare/references/stream/README.md +103 -0
- package/baseline/skill/cloudflare/references/stream/api.md +204 -0
- package/baseline/skill/cloudflare/references/stream/configuration.md +127 -0
- package/baseline/skill/cloudflare/references/stream/gotchas.md +131 -0
- package/baseline/skill/cloudflare/references/stream/patterns.md +152 -0
- package/baseline/skill/cloudflare/references/tail-workers/README.md +640 -0
- package/baseline/skill/cloudflare/references/terraform/README.md +76 -0
- package/baseline/skill/cloudflare/references/terraform/api.md +159 -0
- package/baseline/skill/cloudflare/references/terraform/configuration.md +156 -0
- package/baseline/skill/cloudflare/references/terraform/gotchas.md +207 -0
- package/baseline/skill/cloudflare/references/terraform/patterns.md +135 -0
- package/baseline/skill/cloudflare/references/tunnel/README.md +82 -0
- package/baseline/skill/cloudflare/references/tunnel/api.md +105 -0
- package/baseline/skill/cloudflare/references/tunnel/configuration.md +113 -0
- package/baseline/skill/cloudflare/references/tunnel/gotchas.md +115 -0
- package/baseline/skill/cloudflare/references/tunnel/patterns.md +157 -0
- package/baseline/skill/cloudflare/references/turn/README.md +699 -0
- package/baseline/skill/cloudflare/references/turnstile/README.md +14 -0
- package/baseline/skill/cloudflare/references/turnstile/api.md +3 -0
- package/baseline/skill/cloudflare/references/turnstile/configuration.md +19 -0
- package/baseline/skill/cloudflare/references/turnstile/gotchas.md +27 -0
- package/baseline/skill/cloudflare/references/turnstile/patterns.md +41 -0
- package/baseline/skill/cloudflare/references/vectorize/README.md +682 -0
- package/baseline/skill/cloudflare/references/waf/README.md +14 -0
- package/baseline/skill/cloudflare/references/waf/api.md +3 -0
- package/baseline/skill/cloudflare/references/waf/configuration.md +44 -0
- package/baseline/skill/cloudflare/references/waf/gotchas.md +24 -0
- package/baseline/skill/cloudflare/references/waf/patterns.md +29 -0
- package/baseline/skill/cloudflare/references/web-analytics/README.md +19 -0
- package/baseline/skill/cloudflare/references/web-analytics/api.md +52 -0
- package/baseline/skill/cloudflare/references/web-analytics/configuration.md +31 -0
- package/baseline/skill/cloudflare/references/web-analytics/gotchas.md +28 -0
- package/baseline/skill/cloudflare/references/web-analytics/patterns.md +52 -0
- package/baseline/skill/cloudflare/references/workerd/README.md +47 -0
- package/baseline/skill/cloudflare/references/workerd/api.md +199 -0
- package/baseline/skill/cloudflare/references/workerd/configuration.md +185 -0
- package/baseline/skill/cloudflare/references/workerd/gotchas.md +203 -0
- package/baseline/skill/cloudflare/references/workerd/patterns.md +216 -0
- package/baseline/skill/cloudflare/references/workers/README.md +96 -0
- package/baseline/skill/cloudflare/references/workers/api.md +137 -0
- package/baseline/skill/cloudflare/references/workers/configuration.md +147 -0
- package/baseline/skill/cloudflare/references/workers/gotchas.md +99 -0
- package/baseline/skill/cloudflare/references/workers/patterns.md +149 -0
- package/baseline/skill/cloudflare/references/workers-ai/README.md +116 -0
- package/baseline/skill/cloudflare/references/workers-for-platforms/README.md +48 -0
- package/baseline/skill/cloudflare/references/workers-for-platforms/api.md +169 -0
- package/baseline/skill/cloudflare/references/workers-for-platforms/configuration.md +136 -0
- package/baseline/skill/cloudflare/references/workers-for-platforms/gotchas.md +130 -0
- package/baseline/skill/cloudflare/references/workers-for-platforms/patterns.md +170 -0
- package/baseline/skill/cloudflare/references/workers-playground/README.md +16 -0
- package/baseline/skill/cloudflare/references/workers-playground/api.md +20 -0
- package/baseline/skill/cloudflare/references/workers-playground/configuration.md +3 -0
- package/baseline/skill/cloudflare/references/workers-playground/gotchas.md +35 -0
- package/baseline/skill/cloudflare/references/workers-playground/patterns.md +42 -0
- package/baseline/skill/cloudflare/references/workers-vpc/README.md +579 -0
- package/baseline/skill/cloudflare/references/workflows/README.md +62 -0
- package/baseline/skill/cloudflare/references/workflows/api.md +125 -0
- package/baseline/skill/cloudflare/references/workflows/configuration.md +177 -0
- package/baseline/skill/cloudflare/references/workflows/gotchas.md +136 -0
- package/baseline/skill/cloudflare/references/workflows/patterns.md +132 -0
- package/baseline/skill/cloudflare/references/wrangler/README.md +90 -0
- package/baseline/skill/cloudflare/references/wrangler/api.md +140 -0
- package/baseline/skill/cloudflare/references/wrangler/configuration.md +128 -0
- package/baseline/skill/cloudflare/references/wrangler/gotchas.md +93 -0
- package/baseline/skill/cloudflare/references/wrangler/patterns.md +150 -0
- package/baseline/skill/cloudflare/references/zaraz/README.md +360 -0
- package/baseline/skill/code-navigation/SKILL.md +130 -0
- package/baseline/skill/compaction/SKILL.md +317 -0
- package/baseline/skill/condition-based-waiting/SKILL.md +123 -0
- package/baseline/skill/condition-based-waiting/example.ts +158 -0
- package/baseline/skill/context-engineering/SKILL.md +176 -0
- package/baseline/skill/context-initialization/SKILL.md +70 -0
- package/baseline/skill/context-management/SKILL.md +163 -0
- package/baseline/skill/core-data-expert/SKILL.md +93 -0
- package/baseline/skill/core-data-expert/references/batch-operations.md +543 -0
- package/baseline/skill/core-data-expert/references/cloudkit-integration.md +259 -0
- package/baseline/skill/core-data-expert/references/concurrency.md +522 -0
- package/baseline/skill/core-data-expert/references/fetch-requests.md +643 -0
- package/baseline/skill/core-data-expert/references/glossary.md +233 -0
- package/baseline/skill/core-data-expert/references/migration.md +393 -0
- package/baseline/skill/core-data-expert/references/model-configuration.md +597 -0
- package/baseline/skill/core-data-expert/references/performance.md +300 -0
- package/baseline/skill/core-data-expert/references/persistent-history.md +553 -0
- package/baseline/skill/core-data-expert/references/project-audit.md +60 -0
- package/baseline/skill/core-data-expert/references/saving.md +574 -0
- package/baseline/skill/core-data-expert/references/stack-setup.md +625 -0
- package/baseline/skill/core-data-expert/references/testing.md +300 -0
- package/baseline/skill/core-data-expert/references/threading.md +589 -0
- package/baseline/skill/deep-research/SKILL.md +384 -0
- package/baseline/skill/defense-in-depth/SKILL.md +166 -0
- package/baseline/skill/design-system-audit/SKILL.md +153 -0
- package/baseline/skill/development-lifecycle/SKILL.md +356 -0
- package/baseline/skill/dispatching-parallel-agents/SKILL.md +191 -0
- package/baseline/skill/executing-plans/SKILL.md +247 -0
- package/baseline/skill/figma/SKILL.md +224 -0
- package/baseline/skill/finishing-a-development-branch/SKILL.md +357 -0
- package/baseline/skill/frontend-design/SKILL.md +235 -0
- package/baseline/skill/frontend-design/references/animation/motion-advanced.md +224 -0
- package/baseline/skill/frontend-design/references/animation/motion-core.md +181 -0
- package/baseline/skill/frontend-design/references/canvas/execution.md +90 -0
- package/baseline/skill/frontend-design/references/canvas/philosophy.md +94 -0
- package/baseline/skill/frontend-design/references/design/color-system.md +111 -0
- package/baseline/skill/frontend-design/references/design/interaction.md +149 -0
- package/baseline/skill/frontend-design/references/design/typography-rules.md +106 -0
- package/baseline/skill/frontend-design/references/design/ux-writing.md +99 -0
- package/baseline/skill/frontend-design/references/shadcn/accessibility.md +132 -0
- package/baseline/skill/frontend-design/references/shadcn/core-components.md +153 -0
- package/baseline/skill/frontend-design/references/shadcn/form-components.md +158 -0
- package/baseline/skill/frontend-design/references/shadcn/setup.md +69 -0
- package/baseline/skill/frontend-design/references/shadcn/theming.md +152 -0
- package/baseline/skill/frontend-design/references/tailwind/responsive.md +112 -0
- package/baseline/skill/frontend-design/references/tailwind/utilities-layout.md +134 -0
- package/baseline/skill/frontend-design/references/tailwind/utilities-styling.md +165 -0
- package/baseline/skill/frontend-design/references/tailwind/v4-config.md +147 -0
- package/baseline/skill/frontend-design/references/tailwind/v4-features.md +128 -0
- package/baseline/skill/gemini-large-context/SKILL.md +216 -0
- package/baseline/skill/index-knowledge/SKILL.md +413 -0
- package/baseline/skill/jira/SKILL.md +283 -0
- package/baseline/skill/jira/mcp.json +6 -0
- package/baseline/skill/memory-system/SKILL.md +84 -0
- package/baseline/skill/mockup-to-code/SKILL.md +184 -0
- package/baseline/skill/mqdh/SKILL.md +171 -0
- package/baseline/skill/obsidian/SKILL.md +192 -0
- package/baseline/skill/obsidian/mcp.json +22 -0
- package/baseline/skill/opensrc/SKILL.md +127 -0
- package/baseline/skill/opensrc/references/architecture.md +176 -0
- package/baseline/skill/opensrc/references/cli-usage.md +176 -0
- package/baseline/skill/opensrc/references/registry-support.md +137 -0
- package/baseline/skill/pdf-extract/SKILL.md +438 -0
- package/baseline/skill/playwright/SKILL.md +320 -0
- package/baseline/skill/playwright/mcp.json +16 -0
- package/baseline/skill/playwriter/SKILL.md +158 -0
- package/baseline/skill/polar/SKILL.md +102 -0
- package/baseline/skill/prd/SKILL.md +146 -0
- package/baseline/skill/prd-task/SKILL.md +182 -0
- package/baseline/skill/prd-task/references/prd-schema.json +124 -0
- package/baseline/skill/ralph/SKILL.md +296 -0
- package/baseline/skill/react-best-practices/AGENTS.md +2410 -0
- package/baseline/skill/react-best-practices/README.md +123 -0
- package/baseline/skill/react-best-practices/SKILL.md +133 -0
- package/baseline/skill/react-best-practices/metadata.json +15 -0
- package/baseline/skill/react-best-practices/rules/_sections.md +46 -0
- package/baseline/skill/react-best-practices/rules/_template.md +28 -0
- package/baseline/skill/react-best-practices/rules/advanced-event-handler-refs.md +55 -0
- package/baseline/skill/react-best-practices/rules/advanced-use-latest.md +49 -0
- package/baseline/skill/react-best-practices/rules/async-api-routes.md +38 -0
- package/baseline/skill/react-best-practices/rules/async-defer-await.md +80 -0
- package/baseline/skill/react-best-practices/rules/async-dependencies.md +36 -0
- package/baseline/skill/react-best-practices/rules/async-parallel.md +28 -0
- package/baseline/skill/react-best-practices/rules/async-suspense-boundaries.md +99 -0
- package/baseline/skill/react-best-practices/rules/bundle-barrel-imports.md +59 -0
- package/baseline/skill/react-best-practices/rules/bundle-conditional.md +31 -0
- package/baseline/skill/react-best-practices/rules/bundle-defer-third-party.md +49 -0
- package/baseline/skill/react-best-practices/rules/bundle-dynamic-imports.md +35 -0
- package/baseline/skill/react-best-practices/rules/bundle-preload.md +50 -0
- package/baseline/skill/react-best-practices/rules/client-event-listeners.md +74 -0
- package/baseline/skill/react-best-practices/rules/client-localstorage-schema.md +71 -0
- package/baseline/skill/react-best-practices/rules/client-passive-event-listeners.md +48 -0
- package/baseline/skill/react-best-practices/rules/client-swr-dedup.md +56 -0
- package/baseline/skill/react-best-practices/rules/js-batch-dom-css.md +82 -0
- package/baseline/skill/react-best-practices/rules/js-cache-function-results.md +80 -0
- package/baseline/skill/react-best-practices/rules/js-cache-property-access.md +28 -0
- package/baseline/skill/react-best-practices/rules/js-cache-storage.md +70 -0
- package/baseline/skill/react-best-practices/rules/js-combine-iterations.md +32 -0
- package/baseline/skill/react-best-practices/rules/js-early-exit.md +50 -0
- package/baseline/skill/react-best-practices/rules/js-hoist-regexp.md +45 -0
- package/baseline/skill/react-best-practices/rules/js-index-maps.md +37 -0
- package/baseline/skill/react-best-practices/rules/js-length-check-first.md +49 -0
- package/baseline/skill/react-best-practices/rules/js-min-max-loop.md +82 -0
- package/baseline/skill/react-best-practices/rules/js-set-map-lookups.md +24 -0
- package/baseline/skill/react-best-practices/rules/js-tosorted-immutable.md +57 -0
- package/baseline/skill/react-best-practices/rules/rendering-activity.md +26 -0
- package/baseline/skill/react-best-practices/rules/rendering-animate-svg-wrapper.md +47 -0
- package/baseline/skill/react-best-practices/rules/rendering-conditional-render.md +40 -0
- package/baseline/skill/react-best-practices/rules/rendering-content-visibility.md +38 -0
- package/baseline/skill/react-best-practices/rules/rendering-hoist-jsx.md +46 -0
- package/baseline/skill/react-best-practices/rules/rendering-hydration-no-flicker.md +82 -0
- package/baseline/skill/react-best-practices/rules/rendering-svg-precision.md +28 -0
- package/baseline/skill/react-best-practices/rules/rerender-defer-reads.md +39 -0
- package/baseline/skill/react-best-practices/rules/rerender-dependencies.md +45 -0
- package/baseline/skill/react-best-practices/rules/rerender-derived-state.md +29 -0
- package/baseline/skill/react-best-practices/rules/rerender-functional-setstate.md +74 -0
- package/baseline/skill/react-best-practices/rules/rerender-lazy-state-init.md +58 -0
- package/baseline/skill/react-best-practices/rules/rerender-memo.md +44 -0
- package/baseline/skill/react-best-practices/rules/rerender-transitions.md +40 -0
- package/baseline/skill/react-best-practices/rules/server-after-nonblocking.md +73 -0
- package/baseline/skill/react-best-practices/rules/server-cache-lru.md +41 -0
- package/baseline/skill/react-best-practices/rules/server-cache-react.md +76 -0
- package/baseline/skill/react-best-practices/rules/server-parallel-fetching.md +83 -0
- package/baseline/skill/react-best-practices/rules/server-serialization.md +38 -0
- package/baseline/skill/receiving-code-review/SKILL.md +252 -0
- package/baseline/skill/requesting-code-review/SKILL.md +397 -0
- package/baseline/skill/requesting-code-review/review.md +160 -0
- package/baseline/skill/resend/SKILL.md +177 -0
- package/baseline/skill/resend/references/react-email.md +287 -0
- package/baseline/skill/resend/references/receive-email.md +248 -0
- package/baseline/skill/resend/references/send-email.md +318 -0
- package/baseline/skill/root-cause-tracing/SKILL.md +192 -0
- package/baseline/skill/root-cause-tracing/find-polluter.sh +63 -0
- package/baseline/skill/session-management/SKILL.md +9 -0
- package/baseline/skill/sharing-skills/SKILL.md +214 -0
- package/baseline/skill/skill-creator/SKILL.md +156 -0
- package/baseline/skill/source-code-research/SKILL.md +293 -0
- package/baseline/skill/source-code-research/references/analysis-tips.md +43 -0
- package/baseline/skill/source-code-research/references/anti-patterns.md +36 -0
- package/baseline/skill/source-code-research/references/common-patterns.md +57 -0
- package/baseline/skill/source-code-research/references/example-workflow.md +60 -0
- package/baseline/skill/source-code-research/references/further-reading.md +5 -0
- package/baseline/skill/source-code-research/references/source-structure.md +45 -0
- package/baseline/skill/stitch/SKILL.md +147 -0
- package/baseline/skill/stitch/mcp.json +9 -0
- package/baseline/skill/structured-edit/SKILL.md +181 -0
- package/baseline/skill/subagent-driven-development/SKILL.md +237 -0
- package/baseline/skill/supabase/SKILL.md +130 -0
- package/baseline/skill/supabase/mcp.json +27 -0
- package/baseline/skill/supabase-postgres-best-practices/AGENTS.md +1490 -0
- package/baseline/skill/supabase-postgres-best-practices/SKILL.md +65 -0
- package/baseline/skill/supabase-postgres-best-practices/rules/advanced-full-text-search.md +55 -0
- package/baseline/skill/supabase-postgres-best-practices/rules/advanced-jsonb-indexing.md +49 -0
- package/baseline/skill/supabase-postgres-best-practices/rules/conn-idle-timeout.md +46 -0
- package/baseline/skill/supabase-postgres-best-practices/rules/conn-limits.md +44 -0
- package/baseline/skill/supabase-postgres-best-practices/rules/conn-pooling.md +41 -0
- package/baseline/skill/supabase-postgres-best-practices/rules/conn-prepared-statements.md +46 -0
- package/baseline/skill/supabase-postgres-best-practices/rules/data-batch-inserts.md +54 -0
- package/baseline/skill/supabase-postgres-best-practices/rules/data-n-plus-one.md +53 -0
- package/baseline/skill/supabase-postgres-best-practices/rules/data-pagination.md +50 -0
- package/baseline/skill/supabase-postgres-best-practices/rules/data-upsert.md +50 -0
- package/baseline/skill/supabase-postgres-best-practices/rules/lock-advisory.md +56 -0
- package/baseline/skill/supabase-postgres-best-practices/rules/lock-deadlock-prevention.md +68 -0
- package/baseline/skill/supabase-postgres-best-practices/rules/lock-short-transactions.md +50 -0
- package/baseline/skill/supabase-postgres-best-practices/rules/lock-skip-locked.md +54 -0
- package/baseline/skill/supabase-postgres-best-practices/rules/monitor-explain-analyze.md +45 -0
- package/baseline/skill/supabase-postgres-best-practices/rules/monitor-pg-stat-statements.md +55 -0
- package/baseline/skill/supabase-postgres-best-practices/rules/monitor-vacuum-analyze.md +55 -0
- package/baseline/skill/supabase-postgres-best-practices/rules/query-composite-indexes.md +44 -0
- package/baseline/skill/supabase-postgres-best-practices/rules/query-covering-indexes.md +40 -0
- package/baseline/skill/supabase-postgres-best-practices/rules/query-index-types.md +45 -0
- package/baseline/skill/supabase-postgres-best-practices/rules/query-missing-indexes.md +43 -0
- package/baseline/skill/supabase-postgres-best-practices/rules/query-partial-indexes.md +45 -0
- package/baseline/skill/supabase-postgres-best-practices/rules/schema-data-types.md +46 -0
- package/baseline/skill/supabase-postgres-best-practices/rules/schema-foreign-key-indexes.md +59 -0
- package/baseline/skill/supabase-postgres-best-practices/rules/schema-lowercase-identifiers.md +55 -0
- package/baseline/skill/supabase-postgres-best-practices/rules/schema-partitioning.md +55 -0
- package/baseline/skill/supabase-postgres-best-practices/rules/schema-primary-keys.md +61 -0
- package/baseline/skill/supabase-postgres-best-practices/rules/security-privileges.md +54 -0
- package/baseline/skill/supabase-postgres-best-practices/rules/security-rls-basics.md +50 -0
- package/baseline/skill/supabase-postgres-best-practices/rules/security-rls-performance.md +57 -0
- package/baseline/skill/swarm-coordination/SKILL.md +179 -0
- package/baseline/skill/swarm-coordination/references/architecture.md +39 -0
- package/baseline/skill/swarm-coordination/references/delegation-worker-protocol.md +145 -0
- package/baseline/skill/swarm-coordination/references/dependency-graph.md +50 -0
- package/baseline/skill/swarm-coordination/references/drift-check.md +90 -0
- package/baseline/skill/swarm-coordination/references/integration-beads.md +20 -0
- package/baseline/skill/swarm-coordination/references/launch-flow.md +186 -0
- package/baseline/skill/swarm-coordination/references/reconciler.md +172 -0
- package/baseline/skill/swarm-coordination/references/tier-enforcement.md +78 -0
- package/baseline/skill/swarm-coordination/references/tmux-integration.md +134 -0
- package/baseline/skill/swift-concurrency/SKILL.md +266 -0
- package/baseline/skill/swift-concurrency/references/actors.md +640 -0
- package/baseline/skill/swift-concurrency/references/async-algorithms.md +822 -0
- package/baseline/skill/swift-concurrency/references/async-await-basics.md +249 -0
- package/baseline/skill/swift-concurrency/references/async-sequences.md +670 -0
- package/baseline/skill/swift-concurrency/references/core-data.md +533 -0
- package/baseline/skill/swift-concurrency/references/glossary.md +128 -0
- package/baseline/skill/swift-concurrency/references/linting.md +142 -0
- package/baseline/skill/swift-concurrency/references/memory-management.md +542 -0
- package/baseline/skill/swift-concurrency/references/migration.md +1076 -0
- package/baseline/skill/swift-concurrency/references/performance.md +574 -0
- package/baseline/skill/swift-concurrency/references/sendable.md +578 -0
- package/baseline/skill/swift-concurrency/references/tasks.md +604 -0
- package/baseline/skill/swift-concurrency/references/testing.md +565 -0
- package/baseline/skill/swift-concurrency/references/threading.md +452 -0
- package/baseline/skill/swiftui-expert-skill/SKILL.md +329 -0
- package/baseline/skill/swiftui-expert-skill/references/animation-advanced.md +351 -0
- package/baseline/skill/swiftui-expert-skill/references/animation-basics.md +284 -0
- package/baseline/skill/swiftui-expert-skill/references/animation-transitions.md +326 -0
- package/baseline/skill/swiftui-expert-skill/references/image-optimization.md +286 -0
- package/baseline/skill/swiftui-expert-skill/references/layout-best-practices.md +312 -0
- package/baseline/skill/swiftui-expert-skill/references/liquid-glass.md +377 -0
- package/baseline/skill/swiftui-expert-skill/references/list-patterns.md +153 -0
- package/baseline/skill/swiftui-expert-skill/references/modern-apis.md +400 -0
- package/baseline/skill/swiftui-expert-skill/references/performance-patterns.md +377 -0
- package/baseline/skill/swiftui-expert-skill/references/scroll-patterns.md +305 -0
- package/baseline/skill/swiftui-expert-skill/references/sheet-navigation-patterns.md +292 -0
- package/baseline/skill/swiftui-expert-skill/references/state-management.md +447 -0
- package/baseline/skill/swiftui-expert-skill/references/text-formatting.md +285 -0
- package/baseline/skill/swiftui-expert-skill/references/view-structure.md +276 -0
- package/baseline/skill/systematic-debugging/SKILL.md +402 -0
- package/baseline/skill/test-driven-development/SKILL.md +388 -0
- package/baseline/skill/testing-anti-patterns/SKILL.md +333 -0
- package/baseline/skill/testing-skills-with-subagents/SKILL.md +405 -0
- package/baseline/skill/tilth-cli/SKILL.md +180 -0
- package/baseline/skill/tool-priority/SKILL.md +299 -0
- package/baseline/skill/ui-ux-research/SKILL.md +9 -0
- package/baseline/skill/using-git-worktrees/SKILL.md +259 -0
- package/baseline/skill/using-skills/SKILL.md +117 -0
- package/baseline/skill/v0/SKILL.md +158 -0
- package/baseline/skill/v1-run/SKILL.md +175 -0
- package/baseline/skill/v1-run/mcp.json +6 -0
- package/baseline/skill/vercel-deploy-claimable/SKILL.md +124 -0
- package/baseline/skill/vercel-deploy-claimable/scripts/deploy.sh +249 -0
- package/baseline/skill/verification-before-completion/SKILL.md +236 -0
- package/baseline/skill/verification-before-completion/references/VERIFICATION_PROTOCOL.md +171 -0
- package/baseline/skill/visual-analysis/SKILL.md +154 -0
- package/baseline/skill/web-design-guidelines/SKILL.md +46 -0
- package/baseline/skill/writing-plans/SKILL.md +320 -0
- package/baseline/skill/writing-skills/SKILL.md +287 -0
- package/baseline/skill/writing-skills/anthropic-best-practices.md +1173 -0
- package/baseline/skill/writing-skills/graphviz-conventions.dot +172 -0
- package/baseline/skill/writing-skills/persuasion-principles.md +220 -0
- package/baseline/skill/writing-skills/references/anti-patterns.md +25 -0
- package/baseline/skill/writing-skills/references/claude-search-optimization.md +140 -0
- package/baseline/skill/writing-skills/references/discovery-workflow.md +11 -0
- package/baseline/skill/writing-skills/references/file-organization.md +32 -0
- package/baseline/skill/writing-skills/references/flowcharts-and-examples.md +57 -0
- package/baseline/skill/writing-skills/references/rationalization-hardening.md +75 -0
- package/baseline/skill/writing-skills/references/testing-skill-types.md +52 -0
- package/baseline/tool/context7.ts +191 -0
- package/baseline/tool/grepsearch.ts +143 -0
- package/baseline/tsconfig.json +21 -0
- package/baseline/tui.json +15 -0
- package/bin/mrc-opc.mjs +25 -0
- package/bin/ocp.mjs +25 -0
- package/bin/opc.mjs +25 -0
- package/bin/opencode-starterkit.mjs +25 -0
- package/docs/reports/2026-03-18-memory-db-architecture-note.md +47 -0
- package/docs/reports/2026-03-18-vat-opencode-classification-matrix.md +180 -0
- package/package.json +25 -0
- package/src/cli.mjs +41 -0
- package/src/config-merge.mjs +61 -0
- package/src/constants.mjs +58 -0
- package/src/fs-utils.mjs +46 -0
- package/src/install-global.mjs +102 -0
- package/src/install-project.mjs +81 -0
- package/src/memory-bootstrap.mjs +29 -0
- package/src/prompt.mjs +31 -0
- package/src/templates.mjs +31 -0
|
@@ -0,0 +1,321 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: beads-bridge
|
|
3
|
+
description: >
|
|
4
|
+
Multi-agent task coordination using br (beads_rust) and OpenCode tools. Use when work spans multiple sessions,
|
|
5
|
+
has dependencies, needs file locking, or requires agent coordination. Covers claim/reserve/done cycle,
|
|
6
|
+
dependency management, hierarchical decomposition, and session protocols.
|
|
7
|
+
version: "2.0.0"
|
|
8
|
+
license: MIT
|
|
9
|
+
tags: [agent-coordination, workflow]
|
|
10
|
+
dependencies: [beads]
|
|
11
|
+
---
|
|
12
|
+
|
|
13
|
+
# Beads Bridge - Cross-Session Task Coordination
|
|
14
|
+
|
|
15
|
+
## When to Use
|
|
16
|
+
|
|
17
|
+
- Work spans multiple sessions and needs persistent task tracking
|
|
18
|
+
- Multiple agents must coordinate via Beads, swarm, and OpenCode todos
|
|
19
|
+
|
|
20
|
+
## When NOT to Use
|
|
21
|
+
|
|
22
|
+
- Single-session, single-agent work with no dependencies
|
|
23
|
+
- Simple tasks that don’t require Beads or swarm coordination
|
|
24
|
+
|
|
25
|
+
## Overview
|
|
26
|
+
|
|
27
|
+
**Beads Bridge = Beads (br) + OpenCode Todos + Swarm Monitor**
|
|
28
|
+
|
|
29
|
+
- **Beads (br)**: Git-backed task tracking with dependency management
|
|
30
|
+
- **OpenCode Todos**: Native session-scoped task lists for subagents
|
|
31
|
+
- **Swarm Monitor**: Real-time progress tracking (visualization only)
|
|
32
|
+
|
|
33
|
+
**Key Tools**:
|
|
34
|
+
|
|
35
|
+
| Tool | Purpose | When to Use |
|
|
36
|
+
| ------- | --------------------------- | ---------------------------------------------------- |
|
|
37
|
+
| `swarm` | Unified swarm coordination | All swarm operations (sync, monitor, plan, delegate) |
|
|
38
|
+
| `Task` | Parallel subagent execution | Spawning worker swarms |
|
|
39
|
+
|
|
40
|
+
**swarm operations:**
|
|
41
|
+
|
|
42
|
+
- `sync`: Sync Beads ↔ OpenCode todos (start of session, before spawning)
|
|
43
|
+
- `monitor`: Progress tracking/visualization (during swarm execution)
|
|
44
|
+
- `plan`: Task classification + dependency graphs (before spawning workers)
|
|
45
|
+
- `delegate`: Create delegation packets (assigning work to workers)
|
|
46
|
+
|
|
47
|
+
## Core Workflows
|
|
48
|
+
|
|
49
|
+
### 1. Session Start: Load Beads into Todos
|
|
50
|
+
|
|
51
|
+
Make Beads tasks visible to subagents:
|
|
52
|
+
|
|
53
|
+
```typescript
|
|
54
|
+
// Push Beads to OpenCode todos
|
|
55
|
+
const result = await swarm({
|
|
56
|
+
operation: "sync",
|
|
57
|
+
action: "push",
|
|
58
|
+
filter: "open", // or "in_progress", "all"
|
|
59
|
+
});
|
|
60
|
+
|
|
61
|
+
// Subagents can now use todoread to see tasks
|
|
62
|
+
// [Bead] task-title will appear in their todo list
|
|
63
|
+
```
|
|
64
|
+
|
|
65
|
+
### 2. Check Swarm Status
|
|
66
|
+
|
|
67
|
+
Check current swarm progress:
|
|
68
|
+
|
|
69
|
+
```typescript
|
|
70
|
+
// Check swarm status
|
|
71
|
+
const status = await swarm({
|
|
72
|
+
operation: "monitor",
|
|
73
|
+
action: "status",
|
|
74
|
+
team_name: "api-refactor-swarm",
|
|
75
|
+
});
|
|
76
|
+
|
|
77
|
+
const stats = JSON.parse(status).summary;
|
|
78
|
+
console.log(`Workers: ${stats.total_workers}, Completed: ${stats.completed}`);
|
|
79
|
+
|
|
80
|
+
// Render TUI for visualization
|
|
81
|
+
const ui = await swarm({
|
|
82
|
+
operation: "monitor",
|
|
83
|
+
action: "render_block",
|
|
84
|
+
team_name: "api-refactor-swarm",
|
|
85
|
+
});
|
|
86
|
+
console.log(ui);
|
|
87
|
+
```
|
|
88
|
+
|
|
89
|
+
### 3. Shared Task Lists for Cross-Session Work
|
|
90
|
+
|
|
91
|
+
For work that spans multiple sessions, use shared task lists:
|
|
92
|
+
|
|
93
|
+
```typescript
|
|
94
|
+
// Create a shared list that persists across sessions
|
|
95
|
+
const list = await swarm({
|
|
96
|
+
operation: "sync",
|
|
97
|
+
action: "create_shared",
|
|
98
|
+
name: "api-refactor-swarm",
|
|
99
|
+
tasks: JSON.stringify([
|
|
100
|
+
{ id: "task-1", content: "Refactor auth endpoint", status: "pending", priority: "high" },
|
|
101
|
+
{ id: "task-2", content: "Update user routes", status: "pending", priority: "medium" },
|
|
102
|
+
]),
|
|
103
|
+
});
|
|
104
|
+
|
|
105
|
+
// Workers update the shared list as they complete work
|
|
106
|
+
await swarm({
|
|
107
|
+
operation: "sync",
|
|
108
|
+
action: "update_shared",
|
|
109
|
+
list_id: list.list_id,
|
|
110
|
+
tasks: JSON.stringify([{ id: "task-1", status: "completed" }]),
|
|
111
|
+
});
|
|
112
|
+
```
|
|
113
|
+
|
|
114
|
+
### 4. Create Shared Task Lists for Swarms
|
|
115
|
+
|
|
116
|
+
Create persistent task lists that survive session boundaries:
|
|
117
|
+
|
|
118
|
+
```typescript
|
|
119
|
+
// Create a shared list for a swarm
|
|
120
|
+
const list = await swarm({
|
|
121
|
+
operation: "sync",
|
|
122
|
+
action: "create_shared",
|
|
123
|
+
name: "api-refactor-swarm",
|
|
124
|
+
tasks: JSON.stringify([
|
|
125
|
+
{ id: "task-1", content: "Refactor auth endpoint", status: "pending", priority: "high" },
|
|
126
|
+
{ id: "task-2", content: "Update user routes", status: "pending", priority: "medium" },
|
|
127
|
+
{ id: "task-3", content: "Fix validation", status: "pending", priority: "medium" },
|
|
128
|
+
]),
|
|
129
|
+
});
|
|
130
|
+
|
|
131
|
+
// Share the list ID with workers
|
|
132
|
+
console.log(`List ID: ${list.list_id}`);
|
|
133
|
+
// Workers can access via: swarm({ operation: "sync", action: "get_shared", list_id: "..." })
|
|
134
|
+
```
|
|
135
|
+
|
|
136
|
+
### 5. Worker Updates to Shared List
|
|
137
|
+
|
|
138
|
+
Workers can update their task status:
|
|
139
|
+
|
|
140
|
+
```typescript
|
|
141
|
+
// Worker completes a task
|
|
142
|
+
await swarm({
|
|
143
|
+
operation: "sync",
|
|
144
|
+
action: "update_shared",
|
|
145
|
+
list_id: "shl_abc123",
|
|
146
|
+
tasks: JSON.stringify([{ id: "task-1", status: "completed" }]),
|
|
147
|
+
});
|
|
148
|
+
```
|
|
149
|
+
|
|
150
|
+
## Integration Patterns
|
|
151
|
+
|
|
152
|
+
### Pattern A: Beads → Swarm → Beads
|
|
153
|
+
|
|
154
|
+
Full cycle from Beads task to swarm execution and back:
|
|
155
|
+
|
|
156
|
+
```typescript
|
|
157
|
+
// 1. Start: Push Beads to todos
|
|
158
|
+
await swarm({ operation: "sync", action: "push" });
|
|
159
|
+
|
|
160
|
+
// 2. Claim the parent Bead
|
|
161
|
+
await bash("br update parent-task --status in_progress");
|
|
162
|
+
|
|
163
|
+
// 3. Analyze and spawn swarm
|
|
164
|
+
const analysis = await swarm({
|
|
165
|
+
operation: "plan",
|
|
166
|
+
action: "analyze",
|
|
167
|
+
task: "Implement API refactor",
|
|
168
|
+
files: "src/api/users.ts,src/api/posts.ts,src/api/auth.ts",
|
|
169
|
+
});
|
|
170
|
+
|
|
171
|
+
// 4. Execute swarm (see swarm-coordination skill)
|
|
172
|
+
// ... spawn workers, monitor progress ...
|
|
173
|
+
|
|
174
|
+
// 5. Complete: Pull completed todos back to Beads
|
|
175
|
+
await swarm({ operation: "sync", action: "pull" });
|
|
176
|
+
|
|
177
|
+
// 6. Clear swarm state
|
|
178
|
+
await swarm({
|
|
179
|
+
operation: "monitor",
|
|
180
|
+
action: "clear",
|
|
181
|
+
team_name: "api-refactor-swarm",
|
|
182
|
+
});
|
|
183
|
+
|
|
184
|
+
// 7. Close parent Bead and sync
|
|
185
|
+
await bash("br close parent-task --reason 'Swarm completed all subtasks'");
|
|
186
|
+
await bash("br sync --flush-only");
|
|
187
|
+
await bash("git add .beads/ && git commit -m 'close parent-task'");
|
|
188
|
+
```
|
|
189
|
+
|
|
190
|
+
### Pattern B: Dependency-Aware Task Scheduling
|
|
191
|
+
|
|
192
|
+
Use swarm tool's dependency graph for proper ordering:
|
|
193
|
+
|
|
194
|
+
```typescript
|
|
195
|
+
// Get full analysis with dependency graph
|
|
196
|
+
const analysis = await swarm({
|
|
197
|
+
operation: "plan",
|
|
198
|
+
action: "analyze",
|
|
199
|
+
task: "Refactor authentication system",
|
|
200
|
+
files: "src/auth/service.ts,src/auth/types.ts,src/routes/auth.ts,src/middleware/auth.ts",
|
|
201
|
+
});
|
|
202
|
+
|
|
203
|
+
const plan = JSON.parse(analysis);
|
|
204
|
+
|
|
205
|
+
// Use parallelizable_groups for spawn order
|
|
206
|
+
for (const group of plan.dependency_graph.parallelizable_groups) {
|
|
207
|
+
// Spawn all tasks in this group in parallel
|
|
208
|
+
for (const taskId of group) {
|
|
209
|
+
const node = plan.dependency_graph.nodes.find((n) => n.id === taskId);
|
|
210
|
+
Task({
|
|
211
|
+
subagent_type: "general",
|
|
212
|
+
description: `Execute ${taskId}`,
|
|
213
|
+
prompt: `Execute task ${taskId}: ${node.content}
|
|
214
|
+
|
|
215
|
+
Files: ${node.assignedFiles.join(", ")}
|
|
216
|
+
Blocked by: ${node.blockedBy.join(", ") || "none"}
|
|
217
|
+
Team: auth-refactor-swarm
|
|
218
|
+
Worker: ${node.worker}`,
|
|
219
|
+
});
|
|
220
|
+
}
|
|
221
|
+
|
|
222
|
+
// Wait for this group to complete before starting next
|
|
223
|
+
// (dependency ordering)
|
|
224
|
+
}
|
|
225
|
+
```
|
|
226
|
+
|
|
227
|
+
### Pattern C: Cross-Session Handoff
|
|
228
|
+
|
|
229
|
+
When work needs to continue in a new session:
|
|
230
|
+
|
|
231
|
+
```typescript
|
|
232
|
+
// End of session 1: Save state to memory and shared list
|
|
233
|
+
await swarm({
|
|
234
|
+
operation: "sync",
|
|
235
|
+
action: "update_shared",
|
|
236
|
+
list_id: "api-refactor-swarm",
|
|
237
|
+
tasks: JSON.stringify([
|
|
238
|
+
{ id: "worker-1", content: "Auth service", status: "completed" },
|
|
239
|
+
{ id: "worker-2", content: "User routes", status: "completed" },
|
|
240
|
+
{ id: "worker-3", content: "Validation", status: "in_progress" },
|
|
241
|
+
]),
|
|
242
|
+
});
|
|
243
|
+
|
|
244
|
+
await memory_update({
|
|
245
|
+
file: "handoffs/swarm-state",
|
|
246
|
+
content: `
|
|
247
|
+
## Swarm Handoff
|
|
248
|
+
|
|
249
|
+
Team: api-refactor-swarm
|
|
250
|
+
Progress: 60% complete (3/5 workers done)
|
|
251
|
+
Remaining: worker-4 (blocked), worker-5 (pending)
|
|
252
|
+
Blockers: worker-4 needs auth types from worker-1
|
|
253
|
+
|
|
254
|
+
Next steps:
|
|
255
|
+
1. Check shared task list for current status
|
|
256
|
+
2. Unblock worker-4 with completed types
|
|
257
|
+
3. Spawn remaining workers
|
|
258
|
+
`,
|
|
259
|
+
mode: "replace",
|
|
260
|
+
});
|
|
261
|
+
|
|
262
|
+
// Sync beads before ending session
|
|
263
|
+
await bash("br sync --flush-only");
|
|
264
|
+
await bash("git add .beads/ && git commit -m 'session handoff'");
|
|
265
|
+
|
|
266
|
+
// Start of session 2: Check status and continue
|
|
267
|
+
const status = await swarm({
|
|
268
|
+
operation: "monitor",
|
|
269
|
+
action: "status",
|
|
270
|
+
team_name: "api-refactor-swarm",
|
|
271
|
+
});
|
|
272
|
+
|
|
273
|
+
const shared = await swarm({
|
|
274
|
+
operation: "sync",
|
|
275
|
+
action: "get_shared",
|
|
276
|
+
list_id: "api-refactor-swarm",
|
|
277
|
+
});
|
|
278
|
+
|
|
279
|
+
console.log(`Continuing swarm with ${shared.tasks.length} tasks...`);
|
|
280
|
+
```
|
|
281
|
+
|
|
282
|
+
## Data Locations
|
|
283
|
+
|
|
284
|
+
| Data Type | Location | Persistence |
|
|
285
|
+
| ----------------- | ----------------------------------------------- | ------------- |
|
|
286
|
+
| Beads tasks | `.beads/issues/*.md` | Git-backed |
|
|
287
|
+
| Swarm progress | `.beads/swarm-progress.jsonl` | Session |
|
|
288
|
+
| Shared task lists | `~/.local/share/opencode/storage/shared-tasks/` | Cross-session |
|
|
289
|
+
| OpenCode todos | `~/.local/share/opencode/storage/todo/` | Session |
|
|
290
|
+
|
|
291
|
+
## Quick Reference
|
|
292
|
+
|
|
293
|
+
```
|
|
294
|
+
SESSION START:
|
|
295
|
+
swarm({ operation: "sync", action: "push" }) // Make Beads visible to subagents
|
|
296
|
+
swarm({ operation: "monitor", action: "status", team_name: "..." }) // Check swarm status
|
|
297
|
+
|
|
298
|
+
DURING WORK:
|
|
299
|
+
swarm({ operation: "monitor", action: "progress_update", ... }) // Track worker progress
|
|
300
|
+
swarm({ operation: "monitor", action: "render_block", ... }) // TUI visualization
|
|
301
|
+
swarm({ operation: "sync", action: "update_shared", ... }) // Cross-session updates
|
|
302
|
+
|
|
303
|
+
SESSION END:
|
|
304
|
+
swarm({ operation: "sync", action: "pull" }) // Sync completed todos back to Beads
|
|
305
|
+
swarm({ operation: "monitor", action: "clear", team_name: "..." }) // Cleanup swarm state
|
|
306
|
+
br sync --flush-only // Export Beads changes
|
|
307
|
+
git add .beads/ && git commit -m "..." // Commit changes to git
|
|
308
|
+
|
|
309
|
+
RECOVERY:
|
|
310
|
+
swarm({ operation: "sync", action: "get_shared", list_id: "..." }) // Get shared task list
|
|
311
|
+
swarm({ operation: "monitor", action: "status", team_name: "..." }) // Check swarm status
|
|
312
|
+
```
|
|
313
|
+
|
|
314
|
+
## Rules
|
|
315
|
+
|
|
316
|
+
1. **Always push Beads at session start** - Subagents need visibility via todoread
|
|
317
|
+
2. **Use shared lists for long-running swarms** - Cross-session persistence via swarm sync
|
|
318
|
+
3. **Pull completed todos back to Beads** - Keep tracking system in sync
|
|
319
|
+
4. **Check swarm status before spawning** - Avoid duplicate work
|
|
320
|
+
5. **Clear swarm state when done** - Cleanup after completion
|
|
321
|
+
6. **Always sync and commit before session end** - `br sync --flush-only` then `git add .beads/ && git commit`
|
|
@@ -0,0 +1,114 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: brainstorming
|
|
3
|
+
description: Use when creating or developing, before writing code or implementation plans - refines rough ideas into fully-formed designs through collaborative questioning, alternative exploration, and incremental validation. Don't use during clear 'mechanical' processes
|
|
4
|
+
version: 1.0.0
|
|
5
|
+
tags: [planning, workflow]
|
|
6
|
+
dependencies: []
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
# Brainstorming Ideas Into Designs
|
|
10
|
+
|
|
11
|
+
> **Replaces** jumping straight to implementation without exploring alternatives, constraints, or edge cases
|
|
12
|
+
## When to Use
|
|
13
|
+
|
|
14
|
+
- You have a rough idea that needs clarification into a design or spec
|
|
15
|
+
- You need to explore multiple approaches and validate trade-offs before coding
|
|
16
|
+
|
|
17
|
+
## When NOT to Use
|
|
18
|
+
|
|
19
|
+
- Requirements are already clear and execution is mechanical
|
|
20
|
+
- You are already in implementation with a validated plan or PRD
|
|
21
|
+
|
|
22
|
+
## Overview
|
|
23
|
+
|
|
24
|
+
Help turn ideas into fully formed designs and specs through natural collaborative dialogue.
|
|
25
|
+
|
|
26
|
+
Start by understanding the current project context, then ask questions one at a time to refine the idea. Once you understand what you're building, present the design in small sections (200-300 words), checking after each section whether it looks right so far.
|
|
27
|
+
|
|
28
|
+
**Part of:** `development-lifecycle` skill (Phase 1: Ideation)
|
|
29
|
+
|
|
30
|
+
**Output template:** `.opencode/memory/_templates/design.md`
|
|
31
|
+
|
|
32
|
+
## The Process
|
|
33
|
+
|
|
34
|
+
**Understanding the idea:**
|
|
35
|
+
|
|
36
|
+
- Check out the current project state first (files, docs, recent commits)
|
|
37
|
+
- Ask questions one at a time to refine the idea
|
|
38
|
+
- Prefer multiple choice questions when possible, but open-ended is fine too
|
|
39
|
+
- Only one question per message - if a topic needs more exploration, break it into multiple questions
|
|
40
|
+
- Focus on understanding: purpose, constraints, success criteria
|
|
41
|
+
|
|
42
|
+
**Exploring approaches:**
|
|
43
|
+
|
|
44
|
+
- Propose 2-3 different approaches with trade-offs
|
|
45
|
+
- Present options conversationally with your recommendation and reasoning
|
|
46
|
+
- Lead with your recommended option and explain why
|
|
47
|
+
|
|
48
|
+
**Presenting the design:**
|
|
49
|
+
|
|
50
|
+
- Once you believe you understand what you're building, present the design
|
|
51
|
+
- Break it into sections of 200-300 words
|
|
52
|
+
- Ask after each section whether it looks right so far
|
|
53
|
+
- Cover: architecture, components, data flow, error handling, testing
|
|
54
|
+
- Be ready to go back and clarify if something doesn't make sense
|
|
55
|
+
|
|
56
|
+
## After the Design
|
|
57
|
+
|
|
58
|
+
**Documentation:**
|
|
59
|
+
|
|
60
|
+
- Write the validated design to `.beads/artifacts/<bead-id>/design.md`
|
|
61
|
+
- Use template from `.opencode/memory/_templates/design.md`
|
|
62
|
+
- Use elements-of-style:writing-clearly-and-concisely skill if available
|
|
63
|
+
- Commit the design document to git
|
|
64
|
+
|
|
65
|
+
**Next Phase (if continuing):**
|
|
66
|
+
|
|
67
|
+
- Ask: "Ready to create the PRD?"
|
|
68
|
+
- Load next skill: `skill({ name: "prd" })`
|
|
69
|
+
- This moves to Phase 2: Specification
|
|
70
|
+
|
|
71
|
+
**Alternative paths:**
|
|
72
|
+
|
|
73
|
+
- Use `skill({ name: "using-git-worktrees" })` to create isolated workspace first
|
|
74
|
+
- Use `skill({ name: "writing-plans" })` if skipping formal PRD
|
|
75
|
+
|
|
76
|
+
**Full lifecycle reference:**
|
|
77
|
+
|
|
78
|
+
- Use `skill({ name: "development-lifecycle" })` to see all phases
|
|
79
|
+
|
|
80
|
+
## Key Principles
|
|
81
|
+
|
|
82
|
+
- **One question at a time** - Don't overwhelm with multiple questions
|
|
83
|
+
- **Multiple choice preferred** - Easier to answer than open-ended when possible
|
|
84
|
+
- **YAGNI ruthlessly** - Remove unnecessary features from all designs
|
|
85
|
+
- **Explore alternatives** - Always propose 2-3 approaches before settling
|
|
86
|
+
- **Incremental validation** - Present design in sections, validate each
|
|
87
|
+
- **Be flexible** - Go back and clarify when something doesn't make sense
|
|
88
|
+
|
|
89
|
+
## Example Flow
|
|
90
|
+
|
|
91
|
+
**User request**: "Add dark mode to the app"
|
|
92
|
+
|
|
93
|
+
**Good brainstorming questions**:
|
|
94
|
+
1. "Should dark mode be system-preference-aware, manual toggle, or both?"
|
|
95
|
+
2. "Where does theme state live — CSS variables, React context, localStorage?"
|
|
96
|
+
3. "Are there existing color tokens, or do we need to create a design token system?"
|
|
97
|
+
4. "What about images/icons — do they need dark variants?"
|
|
98
|
+
|
|
99
|
+
**Bad brainstorming** (jumping to solution):
|
|
100
|
+
1. "I'll add a ThemeContext with useState and toggle button" ← skipped alternatives
|
|
101
|
+
|
|
102
|
+
## Anti-Patterns
|
|
103
|
+
|
|
104
|
+
| Anti-Pattern | Why It Fails | Instead |
|
|
105
|
+
| --- | --- | --- |
|
|
106
|
+
| Asking questions the codebase can answer (search first) | Wastes turns and slows decisions; signals weak preparation | Do quick repo/docs lookup first, then ask only unresolved questions |
|
|
107
|
+
| Brainstorming during mechanical/routine tasks | Adds overhead when execution is already clear | Skip to execution using the relevant implementation skill |
|
|
108
|
+
| Generating 10+ alternatives without narrowing criteria | Creates analysis paralysis and no decision pressure | Present 2-3 viable options with explicit decision criteria |
|
|
109
|
+
| Continuing to brainstorm after a clear direction emerges | Burns time and erodes momentum | Confirm direction, summarize decisions, transition to PRD/plan |
|
|
110
|
+
|
|
111
|
+
## See Also
|
|
112
|
+
|
|
113
|
+
- `writing-plans` - Turn validated direction into zero-ambiguity implementation tasks
|
|
114
|
+
- `prd` - Capture behavioral requirements before implementation
|
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: chrome-devtools
|
|
3
|
+
description: Chrome DevTools for debugging, performance analysis, and browser automation. Use when debugging web apps, analyzing performance, inspecting network requests, or automating browser interactions.
|
|
4
|
+
version: 1.0.0
|
|
5
|
+
tags: [automation, debugging]
|
|
6
|
+
dependencies: []
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
# Chrome DevTools (MCP)
|
|
10
|
+
|
|
11
|
+
## When to Use
|
|
12
|
+
|
|
13
|
+
- When you need to debug or inspect a live Chrome page via DevTools Protocol tools.
|
|
14
|
+
|
|
15
|
+
## When NOT to Use
|
|
16
|
+
|
|
17
|
+
- When cross-browser automation is required (use Playwright-based skills instead).
|
|
18
|
+
|
|
19
|
+
|
|
20
|
+
## Available Tools
|
|
21
|
+
|
|
22
|
+
- `take_snapshot` - Get accessibility tree snapshot with element UIDs
|
|
23
|
+
- `take_screenshot` - Capture screenshot of page or element
|
|
24
|
+
- `navigate_page` - Navigate to URL, back, forward, or reload
|
|
25
|
+
- `new_page` - Open a new browser tab
|
|
26
|
+
- `list_pages` - List all open pages/tabs
|
|
27
|
+
- `click` - Click element by UID
|
|
28
|
+
- `fill` - Type text into element
|
|
29
|
+
- `hover` - Hover over element
|
|
30
|
+
- `press_key` - Press keyboard key (Enter, Tab, etc.)
|
|
31
|
+
- `evaluate_script` - Run JavaScript in page context
|
|
32
|
+
- `wait_for` - Wait for text to appear
|
|
33
|
+
|
|
34
|
+
## Workflow
|
|
35
|
+
|
|
36
|
+
1. **Snapshot** the page using `take_snapshot` to get element UIDs
|
|
37
|
+
2. **Navigate** to target URL using `navigate_page`
|
|
38
|
+
3. **Interact** using `click`, `fill`, `hover` with UIDs from snapshot
|
|
39
|
+
4. **Screenshot** to capture results using `take_screenshot`
|
|
40
|
+
|
|
41
|
+
## Quick Start
|
|
42
|
+
|
|
43
|
+
```
|
|
44
|
+
# Get page structure with element UIDs
|
|
45
|
+
skill_mcp(skill_name="chrome-devtools", tool_name="take_snapshot")
|
|
46
|
+
|
|
47
|
+
# Navigate to URL
|
|
48
|
+
skill_mcp(skill_name="chrome-devtools", tool_name="navigate_page", arguments='{"type": "url", "url": "https://example.com"}')
|
|
49
|
+
|
|
50
|
+
# Click element (use UID from snapshot)
|
|
51
|
+
skill_mcp(skill_name="chrome-devtools", tool_name="click", arguments='{"uid": "e123"}')
|
|
52
|
+
|
|
53
|
+
# Fill input field
|
|
54
|
+
skill_mcp(skill_name="chrome-devtools", tool_name="fill", arguments='{"uid": "e456", "value": "hello"}')
|
|
55
|
+
|
|
56
|
+
# Take screenshot
|
|
57
|
+
skill_mcp(skill_name="chrome-devtools", tool_name="take_screenshot")
|
|
58
|
+
```
|
|
59
|
+
|
|
60
|
+
## Tips
|
|
61
|
+
|
|
62
|
+
- **Always `take_snapshot` first** to get element UIDs
|
|
63
|
+
- **Element UIDs change** after navigation - take fresh snapshot
|
|
64
|
+
- **Use `wait_for`** after actions that trigger page changes
|
|
65
|
+
- **Use `evaluate_script`** for custom JS when tools don't cover your need
|
|
66
|
+
|
|
67
|
+
## vs Playwright
|
|
68
|
+
|
|
69
|
+
| Feature | chrome-devtools | playwright |
|
|
70
|
+
| ------------------- | -------------------- | ------------------ |
|
|
71
|
+
| Browser support | Chrome only | Chrome, FF, WebKit |
|
|
72
|
+
| Performance tracing | ✅ (full MCP has it) | ❌ |
|
|
73
|
+
| Network inspection | ✅ (full MCP has it) | ❌ |
|
|
74
|
+
| Cross-browser | ❌ | ✅ |
|
|
75
|
+
|
|
76
|
+
> **Note**: This skill loads 11 essential tools. For full 26+ tools (performance, network, console), modify `mcp.json` to remove `includeTools` filter.
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
{
|
|
2
|
+
"chrome-devtools": {
|
|
3
|
+
"command": "npx",
|
|
4
|
+
"args": ["-y", "chrome-devtools-mcp@latest", "--stdio"],
|
|
5
|
+
"includeTools": [
|
|
6
|
+
"take_snapshot",
|
|
7
|
+
"take_screenshot",
|
|
8
|
+
"navigate_page",
|
|
9
|
+
"new_page",
|
|
10
|
+
"list_pages",
|
|
11
|
+
"click",
|
|
12
|
+
"fill",
|
|
13
|
+
"hover",
|
|
14
|
+
"press_key",
|
|
15
|
+
"evaluate_script",
|
|
16
|
+
"wait_for"
|
|
17
|
+
]
|
|
18
|
+
}
|
|
19
|
+
}
|