@winspan/claude-forge 9.2.0 → 9.12.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/DEVELOPMENT.md +80 -19
- package/README.md +13 -6
- package/dist/catalogs/agents.json +19 -24
- package/dist/catalogs/skills.json +139 -27
- package/dist/claudemd/templates/swarm-protocol.md +1 -1
- package/dist/cli/commands/agent.d.ts +169 -0
- package/dist/cli/commands/agent.d.ts.map +1 -0
- package/dist/cli/commands/agent.js +690 -0
- package/dist/cli/commands/agent.js.map +1 -0
- package/dist/cli/commands/codegraph.d.ts +17 -0
- package/dist/cli/commands/codegraph.d.ts.map +1 -0
- package/dist/cli/commands/codegraph.js +263 -0
- package/dist/cli/commands/codegraph.js.map +1 -0
- package/dist/cli/commands/decisions.d.ts.map +1 -1
- package/dist/cli/commands/decisions.js +46 -9
- package/dist/cli/commands/decisions.js.map +1 -1
- package/dist/cli/commands/executions.d.ts.map +1 -1
- package/dist/cli/commands/executions.js +2 -1
- package/dist/cli/commands/executions.js.map +1 -1
- package/dist/cli/commands/insights-goal-check.d.ts +5 -1
- package/dist/cli/commands/insights-goal-check.d.ts.map +1 -1
- package/dist/cli/commands/insights-goal-check.js +15 -15
- package/dist/cli/commands/insights-goal-check.js.map +1 -1
- package/dist/cli/commands/knowledge.d.ts +51 -0
- package/dist/cli/commands/knowledge.d.ts.map +1 -1
- package/dist/cli/commands/knowledge.js +202 -29
- package/dist/cli/commands/knowledge.js.map +1 -1
- package/dist/cli/commands/loop.d.ts +95 -0
- package/dist/cli/commands/loop.d.ts.map +1 -0
- package/dist/cli/commands/loop.js +408 -0
- package/dist/cli/commands/loop.js.map +1 -0
- package/dist/cli/commands/maintenance.d.ts +33 -0
- package/dist/cli/commands/maintenance.d.ts.map +1 -0
- package/dist/cli/commands/maintenance.js +75 -0
- package/dist/cli/commands/maintenance.js.map +1 -0
- package/dist/cli/commands/mcp.d.ts +23 -0
- package/dist/cli/commands/mcp.d.ts.map +1 -1
- package/dist/cli/commands/mcp.js +82 -0
- package/dist/cli/commands/mcp.js.map +1 -1
- package/dist/cli/commands/skills.d.ts +131 -0
- package/dist/cli/commands/skills.d.ts.map +1 -1
- package/dist/cli/commands/skills.js +409 -9
- package/dist/cli/commands/skills.js.map +1 -1
- package/dist/cli/commands/stats.d.ts.map +1 -1
- package/dist/cli/commands/stats.js +9 -2
- package/dist/cli/commands/stats.js.map +1 -1
- package/dist/cli/index.js +8 -0
- package/dist/cli/index.js.map +1 -1
- package/dist/core/constants.d.ts +37 -0
- package/dist/core/constants.d.ts.map +1 -1
- package/dist/core/constants.js +43 -0
- package/dist/core/constants.js.map +1 -1
- package/dist/core/diagnostics/checks.d.ts.map +1 -1
- package/dist/core/diagnostics/checks.js +2 -1
- package/dist/core/diagnostics/checks.js.map +1 -1
- package/dist/core/diagnostics/daemon-status.d.ts +1 -1
- package/dist/core/diagnostics/daemon-status.d.ts.map +1 -1
- package/dist/core/diagnostics/daemon-status.js +1 -1
- package/dist/core/diagnostics/daemon-status.js.map +1 -1
- package/dist/core/diagnostics/entropy-checks.d.ts +3 -2
- package/dist/core/diagnostics/entropy-checks.d.ts.map +1 -1
- package/dist/core/diagnostics/entropy-checks.js +10 -5
- package/dist/core/diagnostics/entropy-checks.js.map +1 -1
- package/dist/core/diagnostics/heartbeat-reader.d.ts +28 -0
- package/dist/core/diagnostics/heartbeat-reader.d.ts.map +1 -0
- package/dist/core/diagnostics/heartbeat-reader.js +50 -0
- package/dist/core/diagnostics/heartbeat-reader.js.map +1 -0
- package/dist/core/event-fields.d.ts +27 -0
- package/dist/core/event-fields.d.ts.map +1 -1
- package/dist/core/event-fields.js +43 -0
- package/dist/core/event-fields.js.map +1 -1
- package/dist/core/governance/global-inject.d.ts +34 -4
- package/dist/core/governance/global-inject.d.ts.map +1 -1
- package/dist/core/governance/global-inject.js +80 -25
- package/dist/core/governance/global-inject.js.map +1 -1
- package/dist/core/insights/agent-anchor-guard.d.ts +77 -0
- package/dist/core/insights/agent-anchor-guard.d.ts.map +1 -0
- package/dist/core/insights/agent-anchor-guard.js +119 -0
- package/dist/core/insights/agent-anchor-guard.js.map +1 -0
- package/dist/core/insights/agent-distill-context.d.ts +55 -0
- package/dist/core/insights/agent-distill-context.d.ts.map +1 -0
- package/dist/core/insights/agent-distill-context.js +146 -0
- package/dist/core/insights/agent-distill-context.js.map +1 -0
- package/dist/core/insights/agent-distill-spawn.d.ts +56 -0
- package/dist/core/insights/agent-distill-spawn.d.ts.map +1 -0
- package/dist/core/insights/agent-distill-spawn.js +179 -0
- package/dist/core/insights/agent-distill-spawn.js.map +1 -0
- package/dist/core/insights/agent-drift.d.ts +66 -0
- package/dist/core/insights/agent-drift.d.ts.map +1 -0
- package/dist/core/insights/agent-drift.js +109 -0
- package/dist/core/insights/agent-drift.js.map +1 -0
- package/dist/core/insights/agent-evolution-sources.d.ts +21 -0
- package/dist/core/insights/agent-evolution-sources.d.ts.map +1 -0
- package/dist/core/insights/agent-evolution-sources.js +36 -0
- package/dist/core/insights/agent-evolution-sources.js.map +1 -0
- package/dist/core/insights/agent-health.d.ts +142 -0
- package/dist/core/insights/agent-health.d.ts.map +1 -0
- package/dist/core/insights/agent-health.js +296 -0
- package/dist/core/insights/agent-health.js.map +1 -0
- package/dist/core/insights/agent-patch-apply.d.ts +45 -0
- package/dist/core/insights/agent-patch-apply.d.ts.map +1 -0
- package/dist/core/insights/agent-patch-apply.js +165 -0
- package/dist/core/insights/agent-patch-apply.js.map +1 -0
- package/dist/core/insights/agent-suggest.d.ts +128 -0
- package/dist/core/insights/agent-suggest.d.ts.map +1 -0
- package/dist/core/insights/agent-suggest.js +284 -0
- package/dist/core/insights/agent-suggest.js.map +1 -0
- package/dist/core/insights/coverage-tiers.d.ts +46 -0
- package/dist/core/insights/coverage-tiers.d.ts.map +1 -0
- package/dist/core/insights/coverage-tiers.js +95 -0
- package/dist/core/insights/coverage-tiers.js.map +1 -0
- package/dist/{daemon/services → core/insights}/experience-extractor.d.ts +0 -7
- package/dist/core/insights/experience-extractor.d.ts.map +1 -0
- package/dist/{daemon/services → core/insights}/experience-extractor.js +5 -9
- package/dist/core/insights/experience-extractor.js.map +1 -0
- package/dist/{daemon/services → core/insights}/violation-reporter.d.ts +20 -1
- package/dist/core/insights/violation-reporter.d.ts.map +1 -0
- package/dist/{daemon/services → core/insights}/violation-reporter.js +56 -4
- package/dist/core/insights/violation-reporter.js.map +1 -0
- package/dist/core/loop/loop-engine.d.ts +140 -0
- package/dist/core/loop/loop-engine.d.ts.map +1 -0
- package/dist/core/loop/loop-engine.js +266 -0
- package/dist/core/loop/loop-engine.js.map +1 -0
- package/dist/core/queue/index.d.ts.map +1 -1
- package/dist/core/queue/index.js +2 -1
- package/dist/core/queue/index.js.map +1 -1
- package/dist/core/storage/base.d.ts +159 -0
- package/dist/core/storage/base.d.ts.map +1 -1
- package/dist/core/storage/base.js +523 -0
- package/dist/core/storage/base.js.map +1 -1
- package/dist/core/storage/codegraph-types.d.ts +79 -0
- package/dist/core/storage/codegraph-types.d.ts.map +1 -0
- package/dist/core/storage/codegraph-types.js +14 -0
- package/dist/core/storage/codegraph-types.js.map +1 -0
- package/dist/core/storage/codegraph.d.ts +186 -0
- package/dist/core/storage/codegraph.d.ts.map +1 -0
- package/dist/core/storage/codegraph.js +452 -0
- package/dist/core/storage/codegraph.js.map +1 -0
- package/dist/core/storage/decisions.d.ts +30 -5
- package/dist/core/storage/decisions.d.ts.map +1 -1
- package/dist/core/storage/decisions.js +45 -13
- package/dist/core/storage/decisions.js.map +1 -1
- package/dist/core/storage/events.d.ts +127 -0
- package/dist/core/storage/events.d.ts.map +1 -1
- package/dist/core/storage/events.js +318 -3
- package/dist/core/storage/events.js.map +1 -1
- package/dist/core/storage/feedback.d.ts +3 -23
- package/dist/core/storage/feedback.d.ts.map +1 -1
- package/dist/core/storage/feedback.js +37 -38
- package/dist/core/storage/feedback.js.map +1 -1
- package/dist/core/storage/injections.d.ts +40 -0
- package/dist/core/storage/injections.d.ts.map +1 -1
- package/dist/core/storage/injections.js +69 -0
- package/dist/core/storage/injections.js.map +1 -1
- package/dist/core/storage/knowledge.d.ts +226 -0
- package/dist/core/storage/knowledge.d.ts.map +1 -1
- package/dist/core/storage/knowledge.js +391 -4
- package/dist/core/storage/knowledge.js.map +1 -1
- package/dist/core/storage/pipeline-rollup.d.ts +1 -7
- package/dist/core/storage/pipeline-rollup.d.ts.map +1 -1
- package/dist/core/storage/pipeline-rollup.js +18 -57
- package/dist/core/storage/pipeline-rollup.js.map +1 -1
- package/dist/core/storage/routing.d.ts +34 -0
- package/dist/core/storage/routing.d.ts.map +1 -1
- package/dist/core/storage/routing.js +92 -2
- package/dist/core/storage/routing.js.map +1 -1
- package/dist/core/storage/rows.d.ts +5 -25
- package/dist/core/storage/rows.d.ts.map +1 -1
- package/dist/core/storage/schema.sql +92 -27
- package/dist/core/storage/sessions.d.ts.map +1 -1
- package/dist/core/storage/sessions.js +2 -1
- package/dist/core/storage/sessions.js.map +1 -1
- package/dist/core/storage/skills.d.ts +159 -0
- package/dist/core/storage/skills.d.ts.map +1 -1
- package/dist/core/storage/skills.js +350 -4
- package/dist/core/storage/skills.js.map +1 -1
- package/dist/core/storage/sqlite.d.ts +81 -25
- package/dist/core/storage/sqlite.d.ts.map +1 -1
- package/dist/core/storage/sqlite.js +143 -45
- package/dist/core/storage/sqlite.js.map +1 -1
- package/dist/core/storage/tasks.d.ts +270 -0
- package/dist/core/storage/tasks.d.ts.map +1 -1
- package/dist/core/storage/tasks.js +495 -16
- package/dist/core/storage/tasks.js.map +1 -1
- package/dist/core/storage/tool-intercepts.d.ts +1 -1
- package/dist/core/storage/tool-intercepts.js +1 -1
- package/dist/core/types.d.ts +26 -3
- package/dist/core/types.d.ts.map +1 -1
- package/dist/core/types.js +1 -3
- package/dist/core/types.js.map +1 -1
- package/dist/core/utils/binary-paths.d.ts +32 -0
- package/dist/core/utils/binary-paths.d.ts.map +1 -1
- package/dist/core/utils/binary-paths.js +52 -0
- package/dist/core/utils/binary-paths.js.map +1 -1
- package/dist/core/utils/claude-cli-resolver.d.ts.map +1 -0
- package/dist/{skills/distill → core/utils}/claude-cli-resolver.js +1 -1
- package/dist/core/utils/claude-cli-resolver.js.map +1 -0
- package/dist/core/utils/claude-cli-spawn.d.ts +1 -1
- package/dist/core/utils/claude-cli-spawn.js +2 -2
- package/dist/core/utils/claude-cli-spawn.js.map +1 -1
- package/dist/core/utils/noise-prompt.d.ts +1 -1
- package/dist/core/utils/noise-prompt.js +1 -1
- package/dist/core/utils/time.d.ts +26 -0
- package/dist/core/utils/time.d.ts.map +1 -1
- package/dist/core/utils/time.js +33 -0
- package/dist/core/utils/time.js.map +1 -1
- package/dist/daemon/config-store.d.ts.map +1 -1
- package/dist/daemon/config-store.js +14 -5
- package/dist/daemon/config-store.js.map +1 -1
- package/dist/daemon/event-parser.d.ts.map +1 -1
- package/dist/daemon/event-parser.js +5 -0
- package/dist/daemon/event-parser.js.map +1 -1
- package/dist/daemon/handlers/post-tool-use.d.ts +24 -16
- package/dist/daemon/handlers/post-tool-use.d.ts.map +1 -1
- package/dist/daemon/handlers/post-tool-use.js +76 -116
- package/dist/daemon/handlers/post-tool-use.js.map +1 -1
- package/dist/daemon/handlers/pre-tool-use.d.ts +35 -10
- package/dist/daemon/handlers/pre-tool-use.d.ts.map +1 -1
- package/dist/daemon/handlers/pre-tool-use.js +71 -38
- package/dist/daemon/handlers/pre-tool-use.js.map +1 -1
- package/dist/daemon/handlers/stop.d.ts +20 -0
- package/dist/daemon/handlers/stop.d.ts.map +1 -1
- package/dist/daemon/handlers/stop.js +96 -8
- package/dist/daemon/handlers/stop.js.map +1 -1
- package/dist/daemon/handlers/user-prompt.d.ts +16 -1
- package/dist/daemon/handlers/user-prompt.d.ts.map +1 -1
- package/dist/daemon/handlers/user-prompt.js +97 -56
- package/dist/daemon/handlers/user-prompt.js.map +1 -1
- package/dist/daemon/handlers/violation-content-backfill.d.ts +76 -0
- package/dist/daemon/handlers/violation-content-backfill.d.ts.map +1 -0
- package/dist/daemon/handlers/violation-content-backfill.js +167 -0
- package/dist/daemon/handlers/violation-content-backfill.js.map +1 -0
- package/dist/daemon/index.d.ts +19 -0
- package/dist/daemon/index.d.ts.map +1 -1
- package/dist/daemon/index.js +125 -200
- package/dist/daemon/index.js.map +1 -1
- package/dist/daemon/rules/defaults.d.ts.map +1 -1
- package/dist/daemon/rules/defaults.js +151 -64
- package/dist/daemon/rules/defaults.js.map +1 -1
- package/dist/daemon/rules/types.d.ts +28 -22
- package/dist/daemon/rules/types.d.ts.map +1 -1
- package/dist/daemon/rules/workflow-defaults.js +9 -9
- package/dist/daemon/rules/workflow-defaults.js.map +1 -1
- package/dist/daemon/services/codegraph-sync.d.ts +94 -0
- package/dist/daemon/services/codegraph-sync.d.ts.map +1 -0
- package/dist/daemon/services/codegraph-sync.js +159 -0
- package/dist/daemon/services/codegraph-sync.js.map +1 -0
- package/dist/daemon/services/decision-hint.d.ts +47 -10
- package/dist/daemon/services/decision-hint.d.ts.map +1 -1
- package/dist/daemon/services/decision-hint.js +99 -24
- package/dist/daemon/services/decision-hint.js.map +1 -1
- package/dist/daemon/services/event-ttl-sweep.d.ts.map +1 -1
- package/dist/daemon/services/event-ttl-sweep.js +3 -2
- package/dist/daemon/services/event-ttl-sweep.js.map +1 -1
- package/dist/daemon/services/feedback-aggregator.d.ts +14 -26
- package/dist/daemon/services/feedback-aggregator.d.ts.map +1 -1
- package/dist/daemon/services/feedback-aggregator.js +23 -63
- package/dist/daemon/services/feedback-aggregator.js.map +1 -1
- package/dist/daemon/services/heartbeat-writer.d.ts +6 -15
- package/dist/daemon/services/heartbeat-writer.d.ts.map +1 -1
- package/dist/daemon/services/heartbeat-writer.js +7 -36
- package/dist/daemon/services/heartbeat-writer.js.map +1 -1
- package/dist/daemon/services/kb-injector.d.ts +1 -1
- package/dist/daemon/services/kb-injector.d.ts.map +1 -1
- package/dist/daemon/services/kb-injector.js +10 -2
- package/dist/daemon/services/kb-injector.js.map +1 -1
- package/dist/daemon/services/kb-rebuild-scheduler.d.ts +95 -0
- package/dist/daemon/services/kb-rebuild-scheduler.d.ts.map +1 -0
- package/dist/daemon/services/kb-rebuild-scheduler.js +149 -0
- package/dist/daemon/services/kb-rebuild-scheduler.js.map +1 -0
- package/dist/daemon/services/loop-hint.d.ts +139 -0
- package/dist/daemon/services/loop-hint.d.ts.map +1 -0
- package/dist/daemon/services/loop-hint.js +272 -0
- package/dist/daemon/services/loop-hint.js.map +1 -0
- package/dist/daemon/services/outcome-classification-service.js +1 -1
- package/dist/daemon/services/outcome-classification-service.js.map +1 -1
- package/dist/daemon/services/task-segmenter.d.ts +11 -0
- package/dist/daemon/services/task-segmenter.d.ts.map +1 -1
- package/dist/daemon/services/task-segmenter.js +48 -2
- package/dist/daemon/services/task-segmenter.js.map +1 -1
- package/dist/daemon/startup/maintenance-schedulers.d.ts +68 -0
- package/dist/daemon/startup/maintenance-schedulers.d.ts.map +1 -0
- package/dist/daemon/startup/maintenance-schedulers.js +294 -0
- package/dist/daemon/startup/maintenance-schedulers.js.map +1 -0
- package/dist/daemon/templates/agents/agent-retro-distiller.md +106 -0
- package/dist/daemon/templates/agents/claudemd-writer.md +1 -0
- package/dist/daemon/templates/agents/coder.md +165 -8
- package/dist/daemon/templates/agents/decision-maker.md +107 -21
- package/dist/daemon/templates/agents/doc-reviewer.md +4 -1
- package/dist/daemon/templates/agents/harness-debug-full.md +85 -3
- package/dist/daemon/templates/agents/knowledge-builder.md +1 -0
- package/dist/daemon/templates/agents/patch-applier.md +1 -0
- package/dist/daemon/templates/agents/planner.md +55 -3
- package/dist/daemon/templates/agents/safety-net-implementer.md +278 -0
- package/dist/daemon/templates/agents/skill-distiller.md +1 -0
- package/dist/daemon/templates/agents/task-boundary-classifier.md +1 -0
- package/dist/daemon/templates/agents/verify-agent.md +128 -5
- package/dist/hooks/stop.sh +7 -1
- package/dist/knowledge/builder.js +36 -7
- package/dist/knowledge/builder.js.map +1 -1
- package/dist/knowledge/constants.d.ts +10 -5
- package/dist/knowledge/constants.d.ts.map +1 -1
- package/dist/knowledge/constants.js +10 -5
- package/dist/knowledge/constants.js.map +1 -1
- package/dist/knowledge/graph/edge-extractor.d.ts +45 -0
- package/dist/knowledge/graph/edge-extractor.d.ts.map +1 -0
- package/dist/knowledge/graph/edge-extractor.js +242 -0
- package/dist/knowledge/graph/edge-extractor.js.map +1 -0
- package/dist/knowledge/graph/impact.d.ts +73 -0
- package/dist/knowledge/graph/impact.d.ts.map +1 -0
- package/dist/knowledge/graph/impact.js +94 -0
- package/dist/knowledge/graph/impact.js.map +1 -0
- package/dist/knowledge/graph/types.d.ts +22 -0
- package/dist/knowledge/graph/types.d.ts.map +1 -0
- package/dist/knowledge/graph/types.js +13 -0
- package/dist/knowledge/graph/types.js.map +1 -0
- package/dist/knowledge/prompt.d.ts +9 -0
- package/dist/knowledge/prompt.d.ts.map +1 -1
- package/dist/knowledge/prompt.js +17 -5
- package/dist/knowledge/prompt.js.map +1 -1
- package/dist/knowledge/query.d.ts +13 -0
- package/dist/knowledge/query.d.ts.map +1 -1
- package/dist/knowledge/query.js +107 -10
- package/dist/knowledge/query.js.map +1 -1
- package/dist/knowledge/repo-map.d.ts +11 -5
- package/dist/knowledge/repo-map.d.ts.map +1 -1
- package/dist/knowledge/repo-map.js +42 -3
- package/dist/knowledge/repo-map.js.map +1 -1
- package/dist/knowledge/validator.d.ts.map +1 -1
- package/dist/knowledge/validator.js +69 -2
- package/dist/knowledge/validator.js.map +1 -1
- package/dist/mcp/server.d.ts +64 -8
- package/dist/mcp/server.d.ts.map +1 -1
- package/dist/mcp/server.js +233 -18
- package/dist/mcp/server.js.map +1 -1
- package/dist/skills/distill/distiller.js +1 -1
- package/dist/skills/distill/distiller.js.map +1 -1
- package/dist/skills/distilled/distilled-api-design.md +4 -0
- package/dist/skills/distilled/distilled-brainstorming.md +79 -0
- package/dist/skills/distilled/distilled-brand-guidelines.md +86 -0
- package/dist/skills/distilled/distilled-canvas-design.md +128 -0
- package/dist/skills/distilled/distilled-claude-api.md +185 -0
- package/dist/skills/distilled/distilled-creator.md +5 -2
- package/dist/skills/distilled/distilled-dispatching-parallel-agents.md +136 -0
- package/dist/skills/distilled/distilled-doc-coauthoring.md +144 -0
- package/dist/skills/distilled/distilled-docx.md +231 -0
- package/dist/skills/distilled/distilled-executing-plans.md +85 -50
- package/dist/skills/distilled/distilled-finishing-a-development-branch.md +213 -0
- package/dist/skills/distilled/distilled-frontend-design.md +118 -0
- package/dist/skills/distilled/distilled-harness-engineering.md +1 -1
- package/dist/skills/distilled/distilled-receiving-code-review.md +185 -0
- package/dist/skills/distilled/distilled-subagent-driven-development.md +124 -0
- package/dist/skills/distilled/distilled-systematic-debugging.md +108 -260
- package/dist/skills/distilled/distilled-test-driven-development.md +432 -0
- package/dist/skills/distilled/distilled-using-superpowers.md +134 -0
- package/dist/skills/distilled/distilled-verification-before-completion.md +88 -78
- package/dist/skills/distilled/distilled-writing-skills.md +175 -0
- package/dist/skills/registry.d.ts +10 -50
- package/dist/skills/registry.d.ts.map +1 -1
- package/dist/skills/registry.js +7 -118
- package/dist/skills/registry.js.map +1 -1
- package/dist/skills/tools/pipeline-suggest.js +2 -2
- package/dist/skills/tools/pipeline-suggest.js.map +1 -1
- package/dist/skills/tools/skill-invoke.d.ts +2 -1
- package/dist/skills/tools/skill-invoke.d.ts.map +1 -1
- package/dist/skills/tools/skill-invoke.js +3 -1
- package/dist/skills/tools/skill-invoke.js.map +1 -1
- package/dist/web/analytics/anti-pattern-detector.d.ts.map +1 -1
- package/dist/web/analytics/anti-pattern-detector.js +6 -1
- package/dist/web/analytics/anti-pattern-detector.js.map +1 -1
- package/dist/web/analytics/drift-detector.d.ts +6 -0
- package/dist/web/analytics/drift-detector.d.ts.map +1 -1
- package/dist/web/analytics/drift-detector.js +15 -8
- package/dist/web/analytics/drift-detector.js.map +1 -1
- package/dist/web/analytics/weekly-report.d.ts +13 -0
- package/dist/web/analytics/weekly-report.d.ts.map +1 -1
- package/dist/web/analytics/weekly-report.js +17 -3
- package/dist/web/analytics/weekly-report.js.map +1 -1
- package/dist/web/routes/_helpers.d.ts +31 -0
- package/dist/web/routes/_helpers.d.ts.map +1 -1
- package/dist/web/routes/_helpers.js +33 -0
- package/dist/web/routes/_helpers.js.map +1 -1
- package/dist/web/routes/agent-distill.d.ts +49 -0
- package/dist/web/routes/agent-distill.d.ts.map +1 -0
- package/dist/web/routes/agent-distill.js +526 -0
- package/dist/web/routes/agent-distill.js.map +1 -0
- package/dist/web/routes/config.d.ts +56 -0
- package/dist/web/routes/config.d.ts.map +1 -0
- package/dist/web/routes/config.js +243 -0
- package/dist/web/routes/config.js.map +1 -0
- package/dist/web/routes/decisions.js +1 -1
- package/dist/web/routes/decisions.js.map +1 -1
- package/dist/web/routes/error-handler.d.ts +0 -4
- package/dist/web/routes/error-handler.d.ts.map +1 -1
- package/dist/web/routes/error-handler.js +0 -8
- package/dist/web/routes/error-handler.js.map +1 -1
- package/dist/web/routes/events.d.ts.map +1 -1
- package/dist/web/routes/events.js +2 -1
- package/dist/web/routes/events.js.map +1 -1
- package/dist/web/routes/insights.d.ts.map +1 -1
- package/dist/web/routes/insights.js +0 -0
- package/dist/web/routes/insights.js.map +1 -1
- package/dist/web/routes/knowledge.d.ts +43 -2
- package/dist/web/routes/knowledge.d.ts.map +1 -1
- package/dist/web/routes/knowledge.js +117 -6
- package/dist/web/routes/knowledge.js.map +1 -1
- package/dist/web/routes/pipeline.d.ts +0 -9
- package/dist/web/routes/pipeline.d.ts.map +1 -1
- package/dist/web/routes/pipeline.js +0 -4
- package/dist/web/routes/pipeline.js.map +1 -1
- package/dist/web/routes/rules.d.ts.map +1 -1
- package/dist/web/routes/rules.js +20 -6
- package/dist/web/routes/rules.js.map +1 -1
- package/dist/web/routes/sessions.d.ts.map +1 -1
- package/dist/web/routes/sessions.js +8 -7
- package/dist/web/routes/sessions.js.map +1 -1
- package/dist/web/routes/skill-stats.d.ts.map +1 -1
- package/dist/web/routes/skill-stats.js +153 -16
- package/dist/web/routes/skill-stats.js.map +1 -1
- package/dist/web/routes/skills-distill.js +1 -1
- package/dist/web/routes/skills-distill.js.map +1 -1
- package/dist/web/routes/stats.d.ts.map +1 -1
- package/dist/web/routes/stats.js +2 -1
- package/dist/web/routes/stats.js.map +1 -1
- package/dist/web/routes/task-timeline.d.ts +95 -19
- package/dist/web/routes/task-timeline.d.ts.map +1 -1
- package/dist/web/routes/task-timeline.js +344 -88
- package/dist/web/routes/task-timeline.js.map +1 -1
- package/dist/web/routes/tasks.d.ts.map +1 -1
- package/dist/web/routes/tasks.js +52 -30
- package/dist/web/routes/tasks.js.map +1 -1
- package/dist/web/routes/violations.d.ts +1 -1
- package/dist/web/routes/violations.d.ts.map +1 -1
- package/dist/web/routes/violations.js +3 -2
- package/dist/web/routes/violations.js.map +1 -1
- package/dist/web/server.d.ts.map +1 -1
- package/dist/web/server.js +20 -0
- package/dist/web/server.js.map +1 -1
- package/dist/web/services/agent-distill-manager.d.ts +122 -0
- package/dist/web/services/agent-distill-manager.d.ts.map +1 -0
- package/dist/web/services/agent-distill-manager.js +397 -0
- package/dist/web/services/agent-distill-manager.js.map +1 -0
- package/dist/web/services/distill-manager.d.ts +47 -0
- package/dist/web/services/distill-manager.d.ts.map +1 -1
- package/dist/web/services/distill-manager.js +103 -0
- package/dist/web/services/distill-manager.js.map +1 -1
- package/dist/web/static/assets/AgentDetailPage-DlUeA1sX.js +2 -0
- package/dist/web/static/assets/AgentDetailPage-DlUeA1sX.js.map +1 -0
- package/dist/web/static/assets/AgentDistillRunPage-Cybo4bii.js +3 -0
- package/dist/web/static/assets/AgentDistillRunPage-Cybo4bii.js.map +1 -0
- package/dist/web/static/assets/AgentsPage-Qd9FExLG.js +2 -0
- package/dist/web/static/assets/AgentsPage-Qd9FExLG.js.map +1 -0
- package/dist/web/static/assets/DaemonHealthPage-DTSVqtrI.js +2 -0
- package/dist/web/static/assets/DaemonHealthPage-DTSVqtrI.js.map +1 -0
- package/dist/web/static/assets/DecisionDetailPage-b4BA8dhc.js +2 -0
- package/dist/web/static/assets/DecisionDetailPage-b4BA8dhc.js.map +1 -0
- package/dist/web/static/assets/DecisionsPage-a3NRo_T7.js +2 -0
- package/dist/web/static/assets/DecisionsPage-a3NRo_T7.js.map +1 -0
- package/dist/web/static/assets/DiagnosticsPage-DIVdiIQG.js +2 -0
- package/dist/web/static/assets/DiagnosticsPage-DIVdiIQG.js.map +1 -0
- package/dist/web/static/assets/DistillDetailPage-U6a3l2iP.js +4 -0
- package/dist/web/static/assets/DistillDetailPage-U6a3l2iP.js.map +1 -0
- package/dist/web/static/assets/DistillPage-O7BHtRN8.js +2 -0
- package/dist/web/static/assets/DistillPage-O7BHtRN8.js.map +1 -0
- package/dist/web/static/assets/DistillRunPage-D1JuRWWr.js +2 -0
- package/dist/web/static/assets/DistillRunPage-D1JuRWWr.js.map +1 -0
- package/dist/web/static/assets/GlobalScopeHint-Q3wTJx3F.js +2 -0
- package/dist/web/static/assets/GlobalScopeHint-Q3wTJx3F.js.map +1 -0
- package/dist/web/static/assets/IssueDetailPage-BDfrtk2C.js +2 -0
- package/dist/web/static/assets/IssueDetailPage-BDfrtk2C.js.map +1 -0
- package/dist/web/static/assets/IssuesPage-SKmhlCrw.js +2 -0
- package/dist/web/static/assets/IssuesPage-SKmhlCrw.js.map +1 -0
- package/dist/web/static/assets/KbDetailPage-Yna86Na8.js +2 -0
- package/dist/web/static/assets/KbDetailPage-Yna86Na8.js.map +1 -0
- package/dist/web/static/assets/KbHitsPage-Cljl7H9p.js +2 -0
- package/dist/web/static/assets/KbHitsPage-Cljl7H9p.js.map +1 -0
- package/dist/web/static/assets/{MarkdownRenderer-DZmTl-8J.js → MarkdownRenderer-DlDQNihj.js} +2 -2
- package/dist/web/static/assets/{MarkdownRenderer-DZmTl-8J.js.map → MarkdownRenderer-DlDQNihj.js.map} +1 -1
- package/dist/web/static/assets/NotFound-LMzbP51V.js +2 -0
- package/dist/web/static/assets/{NotFound-BQPh0vaF.js.map → NotFound-LMzbP51V.js.map} +1 -1
- package/dist/web/static/assets/SettingsPage-DzoK4PKg.js +2 -0
- package/dist/web/static/assets/SettingsPage-DzoK4PKg.js.map +1 -0
- package/dist/web/static/assets/SkillDetailPage-BuBJJ_NX.js +2 -0
- package/dist/web/static/assets/SkillDetailPage-BuBJJ_NX.js.map +1 -0
- package/dist/web/static/assets/SkillsPage-aojkJpBc.js +2 -0
- package/dist/web/static/assets/SkillsPage-aojkJpBc.js.map +1 -0
- package/dist/web/static/assets/TaskDetailPage-1ckxnGhw.js +4 -0
- package/dist/web/static/assets/TaskDetailPage-1ckxnGhw.js.map +1 -0
- package/dist/web/static/assets/TasksHubPage-C2PLh3eg.js +6 -0
- package/dist/web/static/assets/TasksHubPage-C2PLh3eg.js.map +1 -0
- package/dist/web/static/assets/WorkplacePage-DHrp5VxS.js +2 -0
- package/dist/web/static/assets/WorkplacePage-DHrp5VxS.js.map +1 -0
- package/dist/web/static/assets/arco-DV6xCLhr.js +14 -0
- package/dist/web/static/assets/arco-DV6xCLhr.js.map +1 -0
- package/dist/web/static/assets/charts-BSV4cyC4.js +37 -0
- package/dist/web/static/assets/charts-BSV4cyC4.js.map +1 -0
- package/dist/web/static/assets/{index-7bl3kbcx.css → index-B_v_MKlb.css} +1 -1
- package/dist/web/static/assets/index-DileOOE4.js +4 -0
- package/dist/web/static/assets/index-DileOOE4.js.map +1 -0
- package/dist/web/static/assets/markdown-CA7ePUts.js +30 -0
- package/dist/web/static/assets/markdown-CA7ePUts.js.map +1 -0
- package/dist/web/static/assets/{outcome-DUn1NjlC.js → outcome-BKGy9azt.js} +2 -2
- package/dist/web/static/assets/{outcome-DUn1NjlC.js.map → outcome-BKGy9azt.js.map} +1 -1
- package/dist/web/static/assets/{query-S6X1S7K9.js → query-CgCOpYWf.js} +2 -2
- package/dist/web/static/assets/{query-S6X1S7K9.js.map → query-CgCOpYWf.js.map} +1 -1
- package/dist/web/static/assets/{react-router-JVUrkhdd.js → react-router-Cxmg8RuL.js} +3 -3
- package/dist/web/static/assets/{react-router-JVUrkhdd.js.map → react-router-Cxmg8RuL.js.map} +1 -1
- package/dist/web/static/assets/{syntax-highlighter-BkZfCDsz.js → syntax-highlighter-BDYycNja.js} +3 -3
- package/dist/web/static/assets/{syntax-highlighter-BkZfCDsz.js.map → syntax-highlighter-BDYycNja.js.map} +1 -1
- package/dist/web/static/assets/task-title-BhOcemuR.js +2 -0
- package/dist/web/static/assets/task-title-BhOcemuR.js.map +1 -0
- package/dist/web/static/assets/useAgentStats-B-uTgqBd.js +2 -0
- package/dist/web/static/assets/useAgentStats-B-uTgqBd.js.map +1 -0
- package/dist/web/static/assets/useDecisions-D-G2Ft5T.js +2 -0
- package/dist/web/static/assets/useDecisions-D-G2Ft5T.js.map +1 -0
- package/dist/web/static/assets/useDistill-21dZkXlT.js +3 -0
- package/dist/web/static/assets/useDistill-21dZkXlT.js.map +1 -0
- package/dist/web/static/assets/useEffectiveProject-DQiyX54y.js +2 -0
- package/dist/web/static/assets/useEffectiveProject-DQiyX54y.js.map +1 -0
- package/dist/web/static/assets/useIssuesFeed-CFiyQkAL.js +2 -0
- package/dist/web/static/assets/useIssuesFeed-CFiyQkAL.js.map +1 -0
- package/dist/web/static/assets/useKbHits-xKXWgqh9.js +2 -0
- package/dist/web/static/assets/useKbHits-xKXWgqh9.js.map +1 -0
- package/dist/web/static/assets/useSkillStats-B5hbIwdf.js +2 -0
- package/dist/web/static/assets/useSkillStats-B5hbIwdf.js.map +1 -0
- package/dist/web/static/assets/vendor-DS-q4Eyc.js +36 -0
- package/dist/web/static/assets/vendor-DS-q4Eyc.js.map +1 -0
- package/dist/web/static/index.html +6 -6
- package/package.json +5 -3
- package/dist/core/storage/workflow-recommendations.d.ts +0 -124
- package/dist/core/storage/workflow-recommendations.d.ts.map +0 -1
- package/dist/core/storage/workflow-recommendations.js +0 -274
- package/dist/core/storage/workflow-recommendations.js.map +0 -1
- package/dist/daemon/services/experience-extractor.d.ts.map +0 -1
- package/dist/daemon/services/experience-extractor.js.map +0 -1
- package/dist/daemon/services/violation-reporter.d.ts.map +0 -1
- package/dist/daemon/services/violation-reporter.js.map +0 -1
- package/dist/daemon/templates/agents/harness-hotfix.md +0 -99
- package/dist/daemon/templates/agents/hybrid-feature-with-safety.md +0 -104
- package/dist/daemon/templates/agents/refactor-specialist.md +0 -98
- package/dist/skills/distill/claude-cli-resolver.d.ts.map +0 -1
- package/dist/skills/distill/claude-cli-resolver.js.map +0 -1
- package/dist/skills/distilled/distilled-defi-amm-security.md +0 -293
- package/dist/skills/keyword-score.d.ts +0 -29
- package/dist/skills/keyword-score.d.ts.map +0 -1
- package/dist/skills/keyword-score.js +0 -54
- package/dist/skills/keyword-score.js.map +0 -1
- package/dist/web/static/assets/AgentContentPage-DkeRNxok.js +0 -2
- package/dist/web/static/assets/AgentContentPage-DkeRNxok.js.map +0 -1
- package/dist/web/static/assets/AgentDelegationTable-ByBa0x1l.js +0 -2
- package/dist/web/static/assets/AgentDelegationTable-ByBa0x1l.js.map +0 -1
- package/dist/web/static/assets/ContextInsightsPage-oUk7_I8u.js +0 -3
- package/dist/web/static/assets/ContextInsightsPage-oUk7_I8u.js.map +0 -1
- package/dist/web/static/assets/DaemonHealthPage-DG2fyOP7.js +0 -2
- package/dist/web/static/assets/DaemonHealthPage-DG2fyOP7.js.map +0 -1
- package/dist/web/static/assets/DecisionsPage-CMAPEnKb.js +0 -2
- package/dist/web/static/assets/DecisionsPage-CMAPEnKb.js.map +0 -1
- package/dist/web/static/assets/DiagnosticsPage-DQd-Zm4r.js +0 -2
- package/dist/web/static/assets/DiagnosticsPage-DQd-Zm4r.js.map +0 -1
- package/dist/web/static/assets/DriftTab-DqpepOhI.js +0 -2
- package/dist/web/static/assets/DriftTab-DqpepOhI.js.map +0 -1
- package/dist/web/static/assets/HealthHomePage-CN6zNIie.js +0 -3
- package/dist/web/static/assets/HealthHomePage-CN6zNIie.js.map +0 -1
- package/dist/web/static/assets/KbHitRateTable-ByEIWujF.js +0 -2
- package/dist/web/static/assets/KbHitRateTable-ByEIWujF.js.map +0 -1
- package/dist/web/static/assets/NotFound-BQPh0vaF.js +0 -2
- package/dist/web/static/assets/ProjectSwitcher-D3lZMFd3.js +0 -2
- package/dist/web/static/assets/ProjectSwitcher-D3lZMFd3.js.map +0 -1
- package/dist/web/static/assets/SettingsPage-oLJBNzQj.js +0 -2
- package/dist/web/static/assets/SettingsPage-oLJBNzQj.js.map +0 -1
- package/dist/web/static/assets/SkillContentPage-DK5rgfgw.js +0 -2
- package/dist/web/static/assets/SkillContentPage-DK5rgfgw.js.map +0 -1
- package/dist/web/static/assets/SkillStatsTable-DYMzjEUV.js +0 -2
- package/dist/web/static/assets/SkillStatsTable-DYMzjEUV.js.map +0 -1
- package/dist/web/static/assets/SkillsDistillTab-C7qaG8q3.js +0 -2
- package/dist/web/static/assets/SkillsDistillTab-C7qaG8q3.js.map +0 -1
- package/dist/web/static/assets/TasksHubPage-03wsRRsJ.js +0 -6
- package/dist/web/static/assets/TasksHubPage-03wsRRsJ.js.map +0 -1
- package/dist/web/static/assets/ViolationsPage-DSiLr-9O.js +0 -3
- package/dist/web/static/assets/ViolationsPage-DSiLr-9O.js.map +0 -1
- package/dist/web/static/assets/arco-Bhi3a6Qp.js +0 -14
- package/dist/web/static/assets/arco-Bhi3a6Qp.js.map +0 -1
- package/dist/web/static/assets/charts-BuHQWDbQ.js +0 -37
- package/dist/web/static/assets/charts-BuHQWDbQ.js.map +0 -1
- package/dist/web/static/assets/index-BIYnq1Dx.js +0 -4
- package/dist/web/static/assets/index-BIYnq1Dx.js.map +0 -1
- package/dist/web/static/assets/useTabsParam-k8qte_0C.js +0 -2
- package/dist/web/static/assets/useTabsParam-k8qte_0C.js.map +0 -1
- package/dist/web/static/assets/vendor-DWgdB1eY.js +0 -65
- package/dist/web/static/assets/vendor-DWgdB1eY.js.map +0 -1
- /package/dist/{skills/distill → core/utils}/claude-cli-resolver.d.ts +0 -0
|
@@ -0,0 +1,432 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: distilled-test-driven-development
|
|
3
|
+
version: 0.2.0-distilled
|
|
4
|
+
description: 'Distilled IT-universal skill: test-driven-development (score 3.5/5)'
|
|
5
|
+
keywords:
|
|
6
|
+
- test
|
|
7
|
+
- driven
|
|
8
|
+
- development
|
|
9
|
+
rubric_version: 2
|
|
10
|
+
distilled_from:
|
|
11
|
+
- upstream: https://github.com/obra/superpowers.git
|
|
12
|
+
license: MIT
|
|
13
|
+
commit: f2cbfbefebbfef77321e4c9abc9e949826bea9d7
|
|
14
|
+
paths:
|
|
15
|
+
- test-driven-development/SKILL.md
|
|
16
|
+
- upstream: https://github.com/anthropics/skills.git
|
|
17
|
+
license: Apache-2.0
|
|
18
|
+
commit: 690f15cac7f7b4c055c5ab109c79ed9259934081
|
|
19
|
+
paths:
|
|
20
|
+
- webapp-testing/SKILL.md
|
|
21
|
+
- upstream: https://github.com/affaan-m/ECC.git
|
|
22
|
+
license: MIT
|
|
23
|
+
commit: 928076cc08cbb31e8549cea2883b4f51811de1c8
|
|
24
|
+
paths:
|
|
25
|
+
- ai-regression-testing/SKILL.md
|
|
26
|
+
- upstream: https://github.com/affaan-m/ECC.git
|
|
27
|
+
license: MIT
|
|
28
|
+
commit: 928076cc08cbb31e8549cea2883b4f51811de1c8
|
|
29
|
+
paths:
|
|
30
|
+
- cpp-testing/SKILL.md
|
|
31
|
+
- upstream: https://github.com/affaan-m/ECC.git
|
|
32
|
+
license: MIT
|
|
33
|
+
commit: 928076cc08cbb31e8549cea2883b4f51811de1c8
|
|
34
|
+
paths:
|
|
35
|
+
- csharp-testing/SKILL.md
|
|
36
|
+
- upstream: https://github.com/affaan-m/ECC.git
|
|
37
|
+
license: MIT
|
|
38
|
+
commit: 928076cc08cbb31e8549cea2883b4f51811de1c8
|
|
39
|
+
paths:
|
|
40
|
+
- django-tdd/SKILL.md
|
|
41
|
+
- upstream: https://github.com/affaan-m/ECC.git
|
|
42
|
+
license: MIT
|
|
43
|
+
commit: 928076cc08cbb31e8549cea2883b4f51811de1c8
|
|
44
|
+
paths:
|
|
45
|
+
- e2e-testing/SKILL.md
|
|
46
|
+
- upstream: https://github.com/affaan-m/ECC.git
|
|
47
|
+
license: MIT
|
|
48
|
+
commit: 928076cc08cbb31e8549cea2883b4f51811de1c8
|
|
49
|
+
paths:
|
|
50
|
+
- fsharp-testing/SKILL.md
|
|
51
|
+
- upstream: https://github.com/affaan-m/ECC.git
|
|
52
|
+
license: MIT
|
|
53
|
+
commit: 928076cc08cbb31e8549cea2883b4f51811de1c8
|
|
54
|
+
paths:
|
|
55
|
+
- golang-testing/SKILL.md
|
|
56
|
+
- upstream: https://github.com/affaan-m/ECC.git
|
|
57
|
+
license: MIT
|
|
58
|
+
commit: 928076cc08cbb31e8549cea2883b4f51811de1c8
|
|
59
|
+
paths:
|
|
60
|
+
- kotlin-testing/SKILL.md
|
|
61
|
+
- upstream: https://github.com/affaan-m/ECC.git
|
|
62
|
+
license: MIT
|
|
63
|
+
commit: 928076cc08cbb31e8549cea2883b4f51811de1c8
|
|
64
|
+
paths:
|
|
65
|
+
- laravel-tdd/SKILL.md
|
|
66
|
+
- upstream: https://github.com/affaan-m/ECC.git
|
|
67
|
+
license: MIT
|
|
68
|
+
commit: 928076cc08cbb31e8549cea2883b4f51811de1c8
|
|
69
|
+
paths:
|
|
70
|
+
- perl-testing/SKILL.md
|
|
71
|
+
- upstream: https://github.com/affaan-m/ECC.git
|
|
72
|
+
license: MIT
|
|
73
|
+
commit: 928076cc08cbb31e8549cea2883b4f51811de1c8
|
|
74
|
+
paths:
|
|
75
|
+
- python-testing/SKILL.md
|
|
76
|
+
- upstream: https://github.com/affaan-m/ECC.git
|
|
77
|
+
license: MIT
|
|
78
|
+
commit: 928076cc08cbb31e8549cea2883b4f51811de1c8
|
|
79
|
+
paths:
|
|
80
|
+
- quarkus-tdd/SKILL.md
|
|
81
|
+
- upstream: https://github.com/affaan-m/ECC.git
|
|
82
|
+
license: MIT
|
|
83
|
+
commit: 928076cc08cbb31e8549cea2883b4f51811de1c8
|
|
84
|
+
paths:
|
|
85
|
+
- rust-testing/SKILL.md
|
|
86
|
+
- upstream: https://github.com/affaan-m/ECC.git
|
|
87
|
+
license: MIT
|
|
88
|
+
commit: 928076cc08cbb31e8549cea2883b4f51811de1c8
|
|
89
|
+
paths:
|
|
90
|
+
- springboot-tdd/SKILL.md
|
|
91
|
+
- upstream: https://github.com/affaan-m/ECC.git
|
|
92
|
+
license: MIT
|
|
93
|
+
commit: 928076cc08cbb31e8549cea2883b4f51811de1c8
|
|
94
|
+
paths:
|
|
95
|
+
- swift-protocol-di-testing/SKILL.md
|
|
96
|
+
- upstream: https://github.com/affaan-m/ECC.git
|
|
97
|
+
license: MIT
|
|
98
|
+
commit: 928076cc08cbb31e8549cea2883b4f51811de1c8
|
|
99
|
+
paths:
|
|
100
|
+
- tdd-workflow/SKILL.md
|
|
101
|
+
- upstream: https://github.com/affaan-m/ECC.git
|
|
102
|
+
license: MIT
|
|
103
|
+
commit: 928076cc08cbb31e8549cea2883b4f51811de1c8
|
|
104
|
+
paths:
|
|
105
|
+
- golang-testing/SKILL.md
|
|
106
|
+
- upstream: https://github.com/affaan-m/ECC.git
|
|
107
|
+
license: MIT
|
|
108
|
+
commit: 928076cc08cbb31e8549cea2883b4f51811de1c8
|
|
109
|
+
paths:
|
|
110
|
+
- tdd-workflow/SKILL.md
|
|
111
|
+
- upstream: https://github.com/affaan-m/ECC.git
|
|
112
|
+
license: MIT
|
|
113
|
+
commit: 928076cc08cbb31e8549cea2883b4f51811de1c8
|
|
114
|
+
paths:
|
|
115
|
+
- e2e-testing/SKILL.md
|
|
116
|
+
- upstream: https://github.com/affaan-m/ECC.git
|
|
117
|
+
license: MIT
|
|
118
|
+
commit: 928076cc08cbb31e8549cea2883b4f51811de1c8
|
|
119
|
+
paths:
|
|
120
|
+
- golang-testing/SKILL.md
|
|
121
|
+
- upstream: https://github.com/affaan-m/ECC.git
|
|
122
|
+
license: MIT
|
|
123
|
+
commit: 928076cc08cbb31e8549cea2883b4f51811de1c8
|
|
124
|
+
paths:
|
|
125
|
+
- kotlin-testing/SKILL.md
|
|
126
|
+
- upstream: https://github.com/affaan-m/ECC.git
|
|
127
|
+
license: MIT
|
|
128
|
+
commit: 928076cc08cbb31e8549cea2883b4f51811de1c8
|
|
129
|
+
paths:
|
|
130
|
+
- laravel-tdd/SKILL.md
|
|
131
|
+
- upstream: https://github.com/affaan-m/ECC.git
|
|
132
|
+
license: MIT
|
|
133
|
+
commit: 928076cc08cbb31e8549cea2883b4f51811de1c8
|
|
134
|
+
paths:
|
|
135
|
+
- python-testing/SKILL.md
|
|
136
|
+
- upstream: https://github.com/affaan-m/ECC.git
|
|
137
|
+
license: MIT
|
|
138
|
+
commit: 928076cc08cbb31e8549cea2883b4f51811de1c8
|
|
139
|
+
paths:
|
|
140
|
+
- quarkus-tdd/SKILL.md
|
|
141
|
+
- upstream: https://github.com/affaan-m/ECC.git
|
|
142
|
+
license: MIT
|
|
143
|
+
commit: 928076cc08cbb31e8549cea2883b4f51811de1c8
|
|
144
|
+
paths:
|
|
145
|
+
- rust-testing/SKILL.md
|
|
146
|
+
- upstream: https://github.com/affaan-m/ECC.git
|
|
147
|
+
license: MIT
|
|
148
|
+
commit: 928076cc08cbb31e8549cea2883b4f51811de1c8
|
|
149
|
+
paths:
|
|
150
|
+
- springboot-tdd/SKILL.md
|
|
151
|
+
- upstream: https://github.com/affaan-m/ECC.git
|
|
152
|
+
license: MIT
|
|
153
|
+
commit: 928076cc08cbb31e8549cea2883b4f51811de1c8
|
|
154
|
+
paths:
|
|
155
|
+
- tdd-workflow/SKILL.md
|
|
156
|
+
- upstream: https://github.com/affaan-m/ECC.git
|
|
157
|
+
license: MIT
|
|
158
|
+
commit: 928076cc08cbb31e8549cea2883b4f51811de1c8
|
|
159
|
+
paths:
|
|
160
|
+
- ai-regression-testing/SKILL.md
|
|
161
|
+
- upstream: https://github.com/affaan-m/ECC.git
|
|
162
|
+
license: MIT
|
|
163
|
+
commit: 928076cc08cbb31e8549cea2883b4f51811de1c8
|
|
164
|
+
paths:
|
|
165
|
+
- cpp-testing/SKILL.md
|
|
166
|
+
- upstream: https://github.com/affaan-m/ECC.git
|
|
167
|
+
license: MIT
|
|
168
|
+
commit: 928076cc08cbb31e8549cea2883b4f51811de1c8
|
|
169
|
+
paths:
|
|
170
|
+
- csharp-testing/SKILL.md
|
|
171
|
+
- upstream: https://github.com/affaan-m/ECC.git
|
|
172
|
+
license: MIT
|
|
173
|
+
commit: 928076cc08cbb31e8549cea2883b4f51811de1c8
|
|
174
|
+
paths:
|
|
175
|
+
- django-tdd/SKILL.md
|
|
176
|
+
- upstream: https://github.com/affaan-m/ECC.git
|
|
177
|
+
license: MIT
|
|
178
|
+
commit: 928076cc08cbb31e8549cea2883b4f51811de1c8
|
|
179
|
+
paths:
|
|
180
|
+
- e2e-testing/SKILL.md
|
|
181
|
+
- upstream: https://github.com/affaan-m/ECC.git
|
|
182
|
+
license: MIT
|
|
183
|
+
commit: 928076cc08cbb31e8549cea2883b4f51811de1c8
|
|
184
|
+
paths:
|
|
185
|
+
- golang-testing/SKILL.md
|
|
186
|
+
- upstream: https://github.com/affaan-m/ECC.git
|
|
187
|
+
license: MIT
|
|
188
|
+
commit: 928076cc08cbb31e8549cea2883b4f51811de1c8
|
|
189
|
+
paths:
|
|
190
|
+
- kotlin-testing/SKILL.md
|
|
191
|
+
- upstream: https://github.com/affaan-m/ECC.git
|
|
192
|
+
license: MIT
|
|
193
|
+
commit: 928076cc08cbb31e8549cea2883b4f51811de1c8
|
|
194
|
+
paths:
|
|
195
|
+
- laravel-tdd/SKILL.md
|
|
196
|
+
- upstream: https://github.com/affaan-m/ECC.git
|
|
197
|
+
license: MIT
|
|
198
|
+
commit: 928076cc08cbb31e8549cea2883b4f51811de1c8
|
|
199
|
+
paths:
|
|
200
|
+
- perl-testing/SKILL.md
|
|
201
|
+
- upstream: https://github.com/affaan-m/ECC.git
|
|
202
|
+
license: MIT
|
|
203
|
+
commit: 928076cc08cbb31e8549cea2883b4f51811de1c8
|
|
204
|
+
paths:
|
|
205
|
+
- python-testing/SKILL.md
|
|
206
|
+
- upstream: https://github.com/affaan-m/ECC.git
|
|
207
|
+
license: MIT
|
|
208
|
+
commit: 928076cc08cbb31e8549cea2883b4f51811de1c8
|
|
209
|
+
paths:
|
|
210
|
+
- rust-testing/SKILL.md
|
|
211
|
+
- upstream: https://github.com/affaan-m/ECC.git
|
|
212
|
+
license: MIT
|
|
213
|
+
commit: 928076cc08cbb31e8549cea2883b4f51811de1c8
|
|
214
|
+
paths:
|
|
215
|
+
- springboot-tdd/SKILL.md
|
|
216
|
+
- upstream: https://github.com/affaan-m/ECC.git
|
|
217
|
+
license: MIT
|
|
218
|
+
commit: 928076cc08cbb31e8549cea2883b4f51811de1c8
|
|
219
|
+
paths:
|
|
220
|
+
- swift-protocol-di-testing/SKILL.md
|
|
221
|
+
- upstream: https://github.com/affaan-m/ECC.git
|
|
222
|
+
license: MIT
|
|
223
|
+
commit: 928076cc08cbb31e8549cea2883b4f51811de1c8
|
|
224
|
+
paths:
|
|
225
|
+
- tdd-workflow/SKILL.md
|
|
226
|
+
- upstream: https://github.com/affaan-m/ECC.git
|
|
227
|
+
license: MIT
|
|
228
|
+
commit: 928076cc08cbb31e8549cea2883b4f51811de1c8
|
|
229
|
+
paths:
|
|
230
|
+
- golang-testing/SKILL.md
|
|
231
|
+
- upstream: https://github.com/affaan-m/ECC.git
|
|
232
|
+
license: MIT
|
|
233
|
+
commit: 928076cc08cbb31e8549cea2883b4f51811de1c8
|
|
234
|
+
paths:
|
|
235
|
+
- tdd-workflow/SKILL.md
|
|
236
|
+
- upstream: https://github.com/affaan-m/ECC.git
|
|
237
|
+
license: MIT
|
|
238
|
+
commit: 928076cc08cbb31e8549cea2883b4f51811de1c8
|
|
239
|
+
paths:
|
|
240
|
+
- ai-regression-testing/SKILL.md
|
|
241
|
+
- upstream: https://github.com/affaan-m/ECC.git
|
|
242
|
+
license: MIT
|
|
243
|
+
commit: 928076cc08cbb31e8549cea2883b4f51811de1c8
|
|
244
|
+
paths:
|
|
245
|
+
- cpp-testing/SKILL.md
|
|
246
|
+
- upstream: https://github.com/affaan-m/ECC.git
|
|
247
|
+
license: MIT
|
|
248
|
+
commit: 928076cc08cbb31e8549cea2883b4f51811de1c8
|
|
249
|
+
paths:
|
|
250
|
+
- csharp-testing/SKILL.md
|
|
251
|
+
- upstream: https://github.com/affaan-m/ECC.git
|
|
252
|
+
license: MIT
|
|
253
|
+
commit: 928076cc08cbb31e8549cea2883b4f51811de1c8
|
|
254
|
+
paths:
|
|
255
|
+
- django-tdd/SKILL.md
|
|
256
|
+
- upstream: https://github.com/affaan-m/ECC.git
|
|
257
|
+
license: MIT
|
|
258
|
+
commit: 928076cc08cbb31e8549cea2883b4f51811de1c8
|
|
259
|
+
paths:
|
|
260
|
+
- e2e-testing/SKILL.md
|
|
261
|
+
- upstream: https://github.com/affaan-m/ECC.git
|
|
262
|
+
license: MIT
|
|
263
|
+
commit: 928076cc08cbb31e8549cea2883b4f51811de1c8
|
|
264
|
+
paths:
|
|
265
|
+
- fsharp-testing/SKILL.md
|
|
266
|
+
- upstream: https://github.com/affaan-m/ECC.git
|
|
267
|
+
license: MIT
|
|
268
|
+
commit: 928076cc08cbb31e8549cea2883b4f51811de1c8
|
|
269
|
+
paths:
|
|
270
|
+
- golang-testing/SKILL.md
|
|
271
|
+
- upstream: https://github.com/affaan-m/ECC.git
|
|
272
|
+
license: MIT
|
|
273
|
+
commit: 928076cc08cbb31e8549cea2883b4f51811de1c8
|
|
274
|
+
paths:
|
|
275
|
+
- kotlin-testing/SKILL.md
|
|
276
|
+
- upstream: https://github.com/affaan-m/ECC.git
|
|
277
|
+
license: MIT
|
|
278
|
+
commit: 928076cc08cbb31e8549cea2883b4f51811de1c8
|
|
279
|
+
paths:
|
|
280
|
+
- laravel-tdd/SKILL.md
|
|
281
|
+
- upstream: https://github.com/affaan-m/ECC.git
|
|
282
|
+
license: MIT
|
|
283
|
+
commit: 928076cc08cbb31e8549cea2883b4f51811de1c8
|
|
284
|
+
paths:
|
|
285
|
+
- perl-testing/SKILL.md
|
|
286
|
+
- upstream: https://github.com/affaan-m/ECC.git
|
|
287
|
+
license: MIT
|
|
288
|
+
commit: 928076cc08cbb31e8549cea2883b4f51811de1c8
|
|
289
|
+
paths:
|
|
290
|
+
- python-testing/SKILL.md
|
|
291
|
+
- upstream: https://github.com/affaan-m/ECC.git
|
|
292
|
+
license: MIT
|
|
293
|
+
commit: 928076cc08cbb31e8549cea2883b4f51811de1c8
|
|
294
|
+
paths:
|
|
295
|
+
- quarkus-tdd/SKILL.md
|
|
296
|
+
- upstream: https://github.com/affaan-m/ECC.git
|
|
297
|
+
license: MIT
|
|
298
|
+
commit: 928076cc08cbb31e8549cea2883b4f51811de1c8
|
|
299
|
+
paths:
|
|
300
|
+
- rust-testing/SKILL.md
|
|
301
|
+
- upstream: https://github.com/affaan-m/ECC.git
|
|
302
|
+
license: MIT
|
|
303
|
+
commit: 928076cc08cbb31e8549cea2883b4f51811de1c8
|
|
304
|
+
paths:
|
|
305
|
+
- springboot-tdd/SKILL.md
|
|
306
|
+
- upstream: https://github.com/affaan-m/ECC.git
|
|
307
|
+
license: MIT
|
|
308
|
+
commit: 928076cc08cbb31e8549cea2883b4f51811de1c8
|
|
309
|
+
paths:
|
|
310
|
+
- swift-protocol-di-testing/SKILL.md
|
|
311
|
+
- upstream: https://github.com/affaan-m/ECC.git
|
|
312
|
+
license: MIT
|
|
313
|
+
commit: 928076cc08cbb31e8549cea2883b4f51811de1c8
|
|
314
|
+
paths:
|
|
315
|
+
- tdd-workflow/SKILL.md
|
|
316
|
+
distilled_at: '2026-06-15T00:56:21.265Z'
|
|
317
|
+
distilled_by: claude-code skill-distiller agent
|
|
318
|
+
it_universal_score: 3.5
|
|
319
|
+
it_universal_dims:
|
|
320
|
+
d1: 0.5
|
|
321
|
+
d2: 0.5
|
|
322
|
+
d3: 0.5
|
|
323
|
+
d4: 1
|
|
324
|
+
d5: 1
|
|
325
|
+
it_universal_rationale: >-
|
|
326
|
+
Red-Green-Refactor cycle, Iron Law, and anti-pattern taxonomy are fully language- and
|
|
327
|
+
tool-agnostic; only illustrative code samples and test-runner invocations are
|
|
328
|
+
TypeScript/npm-specific and trivially substitutable in any codebase.
|
|
329
|
+
---
|
|
330
|
+
|
|
331
|
+
# Test-Driven Development (TDD)
|
|
332
|
+
|
|
333
|
+
## When to use
|
|
334
|
+
- Implementing any new feature or behavior
|
|
335
|
+
- Fixing a bug (write a failing test that reproduces it *before* touching production code)
|
|
336
|
+
- Refactoring existing code (existing tests must stay green throughout)
|
|
337
|
+
- Any behavior change where correctness needs to be verifiable and regression-safe
|
|
338
|
+
|
|
339
|
+
**Exceptions (require explicit partner approval):** throwaway prototypes, generated/scaffolded code, configuration-only files.
|
|
340
|
+
|
|
341
|
+
## Core idea
|
|
342
|
+
Write the test first, watch it fail, then write the minimal production code to make it pass — no more, no less. If you never saw the test fail, you cannot know it tests the right thing. Tests written *after* passing code answer "what does this do?"; tests written *before* answer "what *should* this do?" and force edge-case discovery before implementation biases your thinking. The **Red → Green → Refactor** loop is the atomic unit of work: one failing test → minimal code to pass → clean up → repeat. Writing code first "just to explore" is test-after in disguise; the remedy is to delete the pre-written code and start over with a test.
|
|
343
|
+
|
|
344
|
+
## Steps
|
|
345
|
+
|
|
346
|
+
### 1. RED — Write One Failing Test
|
|
347
|
+
Describe the exact behavior you want in a single test:
|
|
348
|
+
- **One behavior per test** — if "and" appears in the name, split it into two tests
|
|
349
|
+
- **Descriptive name** — the test name should state the expected outcome, not the mechanism
|
|
350
|
+
- **Prefer real code over mocks** — use test doubles only when external I/O is unavoidable
|
|
351
|
+
|
|
352
|
+
### 2. Verify RED — Watch It Fail *(mandatory, never skip)*
|
|
353
|
+
Run this test in isolation with your project's test runner. Confirm:
|
|
354
|
+
- The test **fails** (not errors on syntax/import)
|
|
355
|
+
- The failure message matches what you expect ("feature missing", not "undefined is not a function")
|
|
356
|
+
- It fails because the feature is absent, not due to a typo in the test itself
|
|
357
|
+
|
|
358
|
+
If the test **passes immediately** → you are testing already-existing behavior; fix or delete the test.
|
|
359
|
+
If the test **errors** → fix the error and re-run until it fails cleanly for the right reason.
|
|
360
|
+
|
|
361
|
+
### 3. GREEN — Write Minimal Code to Pass
|
|
362
|
+
Write the simplest production code that makes the failing test pass:
|
|
363
|
+
- Do not add untested features (YAGNI)
|
|
364
|
+
- Do not refactor other code in the same commit
|
|
365
|
+
- Do not "improve" anything beyond what the single test requires
|
|
366
|
+
|
|
367
|
+
### 4. Verify GREEN — Watch It Pass *(mandatory)*
|
|
368
|
+
Run your full test suite. Confirm:
|
|
369
|
+
- The new test passes
|
|
370
|
+
- All pre-existing tests still pass
|
|
371
|
+
- Output is clean (no new warnings or errors introduced)
|
|
372
|
+
|
|
373
|
+
If other tests break → fix them **now**, before proceeding.
|
|
374
|
+
|
|
375
|
+
### 5. REFACTOR — Clean Up (tests still green)
|
|
376
|
+
With all tests passing, improve the code's internal quality:
|
|
377
|
+
- Remove duplication
|
|
378
|
+
- Improve naming and readability
|
|
379
|
+
- Extract helpers or shared abstractions
|
|
380
|
+
|
|
381
|
+
Never add new behavior in this phase. Re-run the full suite after every refactor step.
|
|
382
|
+
|
|
383
|
+
### 6. Repeat
|
|
384
|
+
Write the next failing test for the next unit of behavior and cycle again.
|
|
385
|
+
|
|
386
|
+
## Iron Law
|
|
387
|
+
|
|
388
|
+
```
|
|
389
|
+
NO PRODUCTION CODE WITHOUT A FAILING TEST FIRST
|
|
390
|
+
```
|
|
391
|
+
|
|
392
|
+
Wrote code before a test? **Delete it. Start fresh.** No "keep as reference", no "adapting" it while writing the test — that is still test-after. Delete means delete.
|
|
393
|
+
|
|
394
|
+
## Anti-patterns
|
|
395
|
+
|
|
396
|
+
| Rationalization | Reality |
|
|
397
|
+
|---|---|
|
|
398
|
+
| "Too simple to test" | Simple code breaks too. A focused test takes under a minute. |
|
|
399
|
+
| "I'll add tests after" | Tests that pass immediately on first run prove nothing was verified. |
|
|
400
|
+
| "Already manually tested all edge cases" | Ad-hoc testing has no record and cannot be re-run; automated tests are systematic. |
|
|
401
|
+
| "Deleting X hours of work is wasteful" | Sunk-cost fallacy. Unverified production code is technical debt compounding interest. |
|
|
402
|
+
| "I'll keep it as reference and write tests first" | You will adapt it. That is test-after. Delete it. |
|
|
403
|
+
| "TDD is dogmatic; I'm being pragmatic" | Catching bugs before commit is faster than debugging in production. Test-first *is* pragmatic. |
|
|
404
|
+
| "Tests-after achieve the same goals" | They answer different questions — see Core idea. |
|
|
405
|
+
| "This case is different because…" | It isn't. All of these mean: delete the code, start over. |
|
|
406
|
+
|
|
407
|
+
**Red flags — stop and restart the TDD cycle from scratch:**
|
|
408
|
+
- You wrote production code before any test
|
|
409
|
+
- The test passed immediately without any implementation
|
|
410
|
+
- You cannot articulate why the test failed
|
|
411
|
+
- You find yourself composing a "just this once" justification
|
|
412
|
+
|
|
413
|
+
## Verification Checklist (before marking any work complete)
|
|
414
|
+
- [ ] Every new function/method has a test written before its implementation
|
|
415
|
+
- [ ] Each test was observed to fail for the expected reason
|
|
416
|
+
- [ ] Only minimal code was written to pass each test
|
|
417
|
+
- [ ] All tests pass with a clean runner output (no new warnings)
|
|
418
|
+
- [ ] Edge cases and error paths are covered by dedicated tests
|
|
419
|
+
- [ ] Mocks/stubs are used only where real I/O is genuinely unavoidable
|
|
420
|
+
|
|
421
|
+
## When Stuck
|
|
422
|
+
|
|
423
|
+
| Problem | Solution |
|
|
424
|
+
|---|---|
|
|
425
|
+
| Don't know how to write the test | Write the API you *wish* existed; start with the assertion, work backwards |
|
|
426
|
+
| Test is overly complicated | Your design is too complicated — simplify the interface first |
|
|
427
|
+
| Must mock everything to test anything | Code is too coupled; introduce dependency injection |
|
|
428
|
+
| Test setup is enormous | Extract shared helpers; if still complex, the design needs simplification |
|
|
429
|
+
| Bug found in existing untested code | Write a failing test reproducing the bug, then follow the TDD cycle to fix it |
|
|
430
|
+
|
|
431
|
+
## References
|
|
432
|
+
- Upstream: https://github.com/obra/superpowers.git
|
|
@@ -0,0 +1,134 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: distilled-using-superpowers
|
|
3
|
+
version: 0.2.0-distilled
|
|
4
|
+
description: 'Distilled IT-universal skill: using-superpowers (score 4.5/5)'
|
|
5
|
+
keywords:
|
|
6
|
+
- using
|
|
7
|
+
- superpowers
|
|
8
|
+
rubric_version: 2
|
|
9
|
+
distilled_from:
|
|
10
|
+
- upstream: https://github.com/obra/superpowers.git
|
|
11
|
+
license: MIT
|
|
12
|
+
commit: f2cbfbefebbfef77321e4c9abc9e949826bea9d7
|
|
13
|
+
paths:
|
|
14
|
+
- using-superpowers/SKILL.md
|
|
15
|
+
distilled_at: '2026-06-15T00:58:31.504Z'
|
|
16
|
+
distilled_by: claude-code skill-distiller agent
|
|
17
|
+
it_universal_score: 4.5
|
|
18
|
+
it_universal_dims:
|
|
19
|
+
d1: 1
|
|
20
|
+
d2: 0.5
|
|
21
|
+
d3: 1
|
|
22
|
+
d4: 1
|
|
23
|
+
d5: 1
|
|
24
|
+
it_universal_rationale: >-
|
|
25
|
+
Language-neutral meta-methodology for AI assistant skill invocation; platform-adaptive with no
|
|
26
|
+
repo-specific paths or project terminology; strong transferable decision flowchart and heuristics.
|
|
27
|
+
---
|
|
28
|
+
|
|
29
|
+
# Skill-First Workflow: Invoke Relevant Skills Before Any Action
|
|
30
|
+
|
|
31
|
+
## When to use
|
|
32
|
+
- At the start of **any** conversation or task in an AI assistant (Claude Code, Copilot CLI, Gemini CLI, etc.)
|
|
33
|
+
- Before exploring a codebase, answering a question, or asking a clarifying question
|
|
34
|
+
- Whenever you are about to enter plan mode or take any substantive action
|
|
35
|
+
- When multiple skills might apply and you need to pick the right order
|
|
36
|
+
|
|
37
|
+
## Core idea
|
|
38
|
+
|
|
39
|
+
The fundamental discipline is: **check for and invoke relevant skills *before* taking any action — including before asking clarifying questions**. Even a 1% probability that a skill applies is enough to trigger an invocation. Skills describe *how* to approach a task; without checking them first, you may gather information, explore, or plan in a suboptimal or incorrect way. User instructions (project config files, direct requests) always take the highest precedence over skills, which in turn override default system behavior. When you invoke a skill and it turns out to be inapplicable to the situation, you are free to disregard it — but you must check first.
|
|
40
|
+
|
|
41
|
+
## Steps
|
|
42
|
+
|
|
43
|
+
1. **Receive user message or prepare to enter plan mode.**
|
|
44
|
+
|
|
45
|
+
2. **Ask: "Might any skill apply — even with 1% probability?"**
|
|
46
|
+
- Yes → proceed to step 3.
|
|
47
|
+
- Definitely not → respond directly.
|
|
48
|
+
|
|
49
|
+
3. **Invoke the Skill tool** (platform-specific name varies; see Platform notes below).
|
|
50
|
+
- Announce: *"Using [skill name] to [brief purpose]."*
|
|
51
|
+
|
|
52
|
+
4. **Apply skill priority order** when multiple skills could apply:
|
|
53
|
+
- **Process skills first** (brainstorming, debugging, planning) — they determine *how* to approach the task.
|
|
54
|
+
- **Implementation skills second** (patterns, code generation, domain-specific guides) — they guide execution.
|
|
55
|
+
- Example: "Let's build X" → brainstorming skill first, then implementation skill.
|
|
56
|
+
- Example: "Fix this bug" → debugging skill first, then domain-specific skill.
|
|
57
|
+
|
|
58
|
+
5. **If the invoked skill contains a checklist**, create a to-do item per checklist entry before proceeding.
|
|
59
|
+
|
|
60
|
+
6. **Follow the skill exactly** (rigid skills) or adapt its principles to context (flexible skills). The skill itself declares which type it is.
|
|
61
|
+
|
|
62
|
+
7. **Proceed with the task**, informed by the skill's guidance.
|
|
63
|
+
|
|
64
|
+
## Skill types
|
|
65
|
+
|
|
66
|
+
| Type | Examples | How to follow |
|
|
67
|
+
|---|---|---|
|
|
68
|
+
| **Rigid** | TDD, debugging protocols | Follow exactly; do not adapt away the discipline |
|
|
69
|
+
| **Flexible** | Design patterns, code style | Adapt principles to context |
|
|
70
|
+
|
|
71
|
+
The skill document itself tells you which type it is.
|
|
72
|
+
|
|
73
|
+
## Platform notes
|
|
74
|
+
|
|
75
|
+
| Platform | Tool name to invoke |
|
|
76
|
+
|---|---|
|
|
77
|
+
| Claude Code | `Skill` tool |
|
|
78
|
+
| Copilot CLI | `skill` tool |
|
|
79
|
+
| Gemini CLI | `activate_skill` tool |
|
|
80
|
+
|
|
81
|
+
Never use a file-read tool to load skill content — always use the platform's designated skill tool so that the correct version is loaded.
|
|
82
|
+
|
|
83
|
+
## Instruction precedence
|
|
84
|
+
|
|
85
|
+
1. **User's explicit instructions** (CLAUDE.md, AGENTS.md, GEMINI.md, direct requests) — highest priority
|
|
86
|
+
2. **Invoked skills** — override default system behavior
|
|
87
|
+
3. **Default system prompt** — lowest priority
|
|
88
|
+
|
|
89
|
+
If a user config file says "don't do X" and a skill says "always do X," follow the user's config.
|
|
90
|
+
|
|
91
|
+
## Anti-patterns
|
|
92
|
+
|
|
93
|
+
- **"This is just a simple question."** → Questions are tasks. Check for skills before answering.
|
|
94
|
+
- **"I need more context first."** → Skill check comes *before* clarifying questions.
|
|
95
|
+
- **"Let me explore the codebase first."** → Skills tell you *how* to explore. Check first.
|
|
96
|
+
- **"I remember this skill from before."** → Skills evolve. Always read the current version via the tool.
|
|
97
|
+
- **"This skill seems like overkill."** → Simple tasks become complex. Invoke and decide afterward.
|
|
98
|
+
- **"I'll just do this one quick thing first."** → Check *before* doing anything.
|
|
99
|
+
- **"I know what that skill says."** → Knowing the concept ≠ using the skill. Invoke it.
|
|
100
|
+
- **"This doesn't count as a real task."** → Any action = task. Check for skills.
|
|
101
|
+
|
|
102
|
+
## Decision flowchart (text form)
|
|
103
|
+
|
|
104
|
+
```
|
|
105
|
+
User message received
|
|
106
|
+
│
|
|
107
|
+
▼
|
|
108
|
+
Might any skill apply? (even 1%)
|
|
109
|
+
│ │
|
|
110
|
+
Yes No
|
|
111
|
+
│ └──► Respond directly
|
|
112
|
+
▼
|
|
113
|
+
Invoke Skill tool
|
|
114
|
+
│
|
|
115
|
+
▼
|
|
116
|
+
Announce: "Using [skill] to [purpose]"
|
|
117
|
+
│
|
|
118
|
+
▼
|
|
119
|
+
Skill has a checklist?
|
|
120
|
+
│ │
|
|
121
|
+
Yes No
|
|
122
|
+
│ └──► Follow skill exactly
|
|
123
|
+
▼
|
|
124
|
+
Create one todo per checklist item
|
|
125
|
+
│
|
|
126
|
+
▼
|
|
127
|
+
Follow skill exactly
|
|
128
|
+
│
|
|
129
|
+
▼
|
|
130
|
+
Respond / act
|
|
131
|
+
```
|
|
132
|
+
|
|
133
|
+
## References
|
|
134
|
+
- Upstream: https://github.com/obra/superpowers.git
|