@dragonflymcp/plugin 1.0.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/.claude-plugin/plugin.json +26 -0
- package/LICENSE +21 -0
- package/README.md +126 -0
- package/dist/core/annotations.d.ts +71 -0
- package/dist/core/annotations.d.ts.map +1 -0
- package/dist/core/annotations.js +61 -0
- package/dist/core/annotations.js.map +1 -0
- package/dist/core/config.d.ts +66 -0
- package/dist/core/config.d.ts.map +1 -0
- package/dist/core/config.js +131 -0
- package/dist/core/config.js.map +1 -0
- package/dist/core/dispatcher.d.ts +77 -0
- package/dist/core/dispatcher.d.ts.map +1 -0
- package/dist/core/dispatcher.js +132 -0
- package/dist/core/dispatcher.js.map +1 -0
- package/dist/core/server.d.ts +24 -0
- package/dist/core/server.d.ts.map +1 -0
- package/dist/core/server.js +41 -0
- package/dist/core/server.js.map +1 -0
- package/dist/core/store.d.ts +91 -0
- package/dist/core/store.d.ts.map +1 -0
- package/dist/core/store.js +157 -0
- package/dist/core/store.js.map +1 -0
- package/dist/core/types.d.ts +128 -0
- package/dist/core/types.d.ts.map +1 -0
- package/dist/core/types.js +5 -0
- package/dist/core/types.js.map +1 -0
- package/dist/index.d.ts +22 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +81 -0
- package/dist/index.js.map +1 -0
- package/dist/test-utils/store-harness.d.ts +41 -0
- package/dist/test-utils/store-harness.d.ts.map +1 -0
- package/dist/test-utils/store-harness.js +61 -0
- package/dist/test-utils/store-harness.js.map +1 -0
- package/dist/tools/analytics/aggregators.d.ts +18 -0
- package/dist/tools/analytics/aggregators.d.ts.map +1 -0
- package/dist/tools/analytics/aggregators.js +260 -0
- package/dist/tools/analytics/aggregators.js.map +1 -0
- package/dist/tools/analytics/aggregators.test.d.ts +2 -0
- package/dist/tools/analytics/aggregators.test.d.ts.map +1 -0
- package/dist/tools/analytics/aggregators.test.js +177 -0
- package/dist/tools/analytics/aggregators.test.js.map +1 -0
- package/dist/tools/analytics/drift.d.ts +15 -0
- package/dist/tools/analytics/drift.d.ts.map +1 -0
- package/dist/tools/analytics/drift.js +135 -0
- package/dist/tools/analytics/drift.js.map +1 -0
- package/dist/tools/analytics/drift.test.d.ts +2 -0
- package/dist/tools/analytics/drift.test.d.ts.map +1 -0
- package/dist/tools/analytics/drift.test.js +99 -0
- package/dist/tools/analytics/drift.test.js.map +1 -0
- package/dist/tools/analytics/index.d.ts +10 -0
- package/dist/tools/analytics/index.d.ts.map +1 -0
- package/dist/tools/analytics/index.js +192 -0
- package/dist/tools/analytics/index.js.map +1 -0
- package/dist/tools/analytics/learner.d.ts +29 -0
- package/dist/tools/analytics/learner.d.ts.map +1 -0
- package/dist/tools/analytics/learner.js +135 -0
- package/dist/tools/analytics/learner.js.map +1 -0
- package/dist/tools/analytics/learner.test.d.ts +2 -0
- package/dist/tools/analytics/learner.test.d.ts.map +1 -0
- package/dist/tools/analytics/learner.test.js +118 -0
- package/dist/tools/analytics/learner.test.js.map +1 -0
- package/dist/tools/analytics/observe.d.ts +22 -0
- package/dist/tools/analytics/observe.d.ts.map +1 -0
- package/dist/tools/analytics/observe.js +143 -0
- package/dist/tools/analytics/observe.js.map +1 -0
- package/dist/tools/analytics/observe.test.d.ts +2 -0
- package/dist/tools/analytics/observe.test.d.ts.map +1 -0
- package/dist/tools/analytics/observe.test.js +95 -0
- package/dist/tools/analytics/observe.test.js.map +1 -0
- package/dist/tools/analytics/store.d.ts +29 -0
- package/dist/tools/analytics/store.d.ts.map +1 -0
- package/dist/tools/analytics/store.js +192 -0
- package/dist/tools/analytics/store.js.map +1 -0
- package/dist/tools/analytics/types.d.ts +290 -0
- package/dist/tools/analytics/types.d.ts.map +1 -0
- package/dist/tools/analytics/types.js +7 -0
- package/dist/tools/analytics/types.js.map +1 -0
- package/dist/tools/ast/index.d.ts +8 -0
- package/dist/tools/ast/index.d.ts.map +1 -0
- package/dist/tools/ast/index.js +242 -0
- package/dist/tools/ast/index.js.map +1 -0
- package/dist/tools/ast/indexer.d.ts +41 -0
- package/dist/tools/ast/indexer.d.ts.map +1 -0
- package/dist/tools/ast/indexer.js +617 -0
- package/dist/tools/ast/indexer.js.map +1 -0
- package/dist/tools/ast/store.d.ts +87 -0
- package/dist/tools/ast/store.d.ts.map +1 -0
- package/dist/tools/ast/store.js +280 -0
- package/dist/tools/ast/store.js.map +1 -0
- package/dist/tools/ast/store.test.d.ts +6 -0
- package/dist/tools/ast/store.test.d.ts.map +1 -0
- package/dist/tools/ast/store.test.js +257 -0
- package/dist/tools/ast/store.test.js.map +1 -0
- package/dist/tools/bridge/bridge.d.ts +37 -0
- package/dist/tools/bridge/bridge.d.ts.map +1 -0
- package/dist/tools/bridge/bridge.js +82 -0
- package/dist/tools/bridge/bridge.js.map +1 -0
- package/dist/tools/bridge/bridge.test.d.ts +2 -0
- package/dist/tools/bridge/bridge.test.d.ts.map +1 -0
- package/dist/tools/bridge/bridge.test.js +119 -0
- package/dist/tools/bridge/bridge.test.js.map +1 -0
- package/dist/tools/bridge/index.d.ts +8 -0
- package/dist/tools/bridge/index.d.ts.map +1 -0
- package/dist/tools/bridge/index.js +153 -0
- package/dist/tools/bridge/index.js.map +1 -0
- package/dist/tools/bridge/store.d.ts +45 -0
- package/dist/tools/bridge/store.d.ts.map +1 -0
- package/dist/tools/bridge/store.js +307 -0
- package/dist/tools/bridge/store.js.map +1 -0
- package/dist/tools/bridge/store.test.d.ts +2 -0
- package/dist/tools/bridge/store.test.d.ts.map +1 -0
- package/dist/tools/bridge/store.test.js +180 -0
- package/dist/tools/bridge/store.test.js.map +1 -0
- package/dist/tools/bridge/types.d.ts +44 -0
- package/dist/tools/bridge/types.d.ts.map +1 -0
- package/dist/tools/bridge/types.js +6 -0
- package/dist/tools/bridge/types.js.map +1 -0
- package/dist/tools/evolve/algorithm.d.ts +33 -0
- package/dist/tools/evolve/algorithm.d.ts.map +1 -0
- package/dist/tools/evolve/algorithm.js +64 -0
- package/dist/tools/evolve/algorithm.js.map +1 -0
- package/dist/tools/evolve/algorithm.test.d.ts +6 -0
- package/dist/tools/evolve/algorithm.test.d.ts.map +1 -0
- package/dist/tools/evolve/algorithm.test.js +138 -0
- package/dist/tools/evolve/algorithm.test.js.map +1 -0
- package/dist/tools/evolve/index.d.ts +11 -0
- package/dist/tools/evolve/index.d.ts.map +1 -0
- package/dist/tools/evolve/index.js +300 -0
- package/dist/tools/evolve/index.js.map +1 -0
- package/dist/tools/evolve/store.d.ts +27 -0
- package/dist/tools/evolve/store.d.ts.map +1 -0
- package/dist/tools/evolve/store.js +147 -0
- package/dist/tools/evolve/store.js.map +1 -0
- package/dist/tools/evolve/store.test.d.ts +6 -0
- package/dist/tools/evolve/store.test.d.ts.map +1 -0
- package/dist/tools/evolve/store.test.js +162 -0
- package/dist/tools/evolve/store.test.js.map +1 -0
- package/dist/tools/evolve/types.d.ts +38 -0
- package/dist/tools/evolve/types.d.ts.map +1 -0
- package/dist/tools/evolve/types.js +6 -0
- package/dist/tools/evolve/types.js.map +1 -0
- package/dist/tools/framework/content-loader.d.ts +45 -0
- package/dist/tools/framework/content-loader.d.ts.map +1 -0
- package/dist/tools/framework/content-loader.js +258 -0
- package/dist/tools/framework/content-loader.js.map +1 -0
- package/dist/tools/framework/content-loader.test.d.ts +5 -0
- package/dist/tools/framework/content-loader.test.d.ts.map +1 -0
- package/dist/tools/framework/content-loader.test.js +262 -0
- package/dist/tools/framework/content-loader.test.js.map +1 -0
- package/dist/tools/framework/index.d.ts +30 -0
- package/dist/tools/framework/index.d.ts.map +1 -0
- package/dist/tools/framework/index.js +517 -0
- package/dist/tools/framework/index.js.map +1 -0
- package/dist/tools/framework/session.d.ts +85 -0
- package/dist/tools/framework/session.d.ts.map +1 -0
- package/dist/tools/framework/session.js +311 -0
- package/dist/tools/framework/session.js.map +1 -0
- package/dist/tools/framework/session.test.d.ts +5 -0
- package/dist/tools/framework/session.test.d.ts.map +1 -0
- package/dist/tools/framework/session.test.js +291 -0
- package/dist/tools/framework/session.test.js.map +1 -0
- package/dist/tools/framework/sync-evaluator.d.ts +41 -0
- package/dist/tools/framework/sync-evaluator.d.ts.map +1 -0
- package/dist/tools/framework/sync-evaluator.js +298 -0
- package/dist/tools/framework/sync-evaluator.js.map +1 -0
- package/dist/tools/framework/sync-evaluator.test.d.ts +5 -0
- package/dist/tools/framework/sync-evaluator.test.d.ts.map +1 -0
- package/dist/tools/framework/sync-evaluator.test.js +288 -0
- package/dist/tools/framework/sync-evaluator.test.js.map +1 -0
- package/dist/tools/framework/types.d.ts +279 -0
- package/dist/tools/framework/types.d.ts.map +1 -0
- package/dist/tools/framework/types.js +6 -0
- package/dist/tools/framework/types.js.map +1 -0
- package/dist/tools/framework/workflow-intelligence.d.ts +55 -0
- package/dist/tools/framework/workflow-intelligence.d.ts.map +1 -0
- package/dist/tools/framework/workflow-intelligence.js +199 -0
- package/dist/tools/framework/workflow-intelligence.js.map +1 -0
- package/dist/tools/framework/workflow-intelligence.test.d.ts +6 -0
- package/dist/tools/framework/workflow-intelligence.test.d.ts.map +1 -0
- package/dist/tools/framework/workflow-intelligence.test.js +257 -0
- package/dist/tools/framework/workflow-intelligence.test.js.map +1 -0
- package/dist/tools/framework/workflow-planner.d.ts +10 -0
- package/dist/tools/framework/workflow-planner.d.ts.map +1 -0
- package/dist/tools/framework/workflow-planner.js +214 -0
- package/dist/tools/framework/workflow-planner.js.map +1 -0
- package/dist/tools/framework/workflow-planner.test.d.ts +5 -0
- package/dist/tools/framework/workflow-planner.test.d.ts.map +1 -0
- package/dist/tools/framework/workflow-planner.test.js +137 -0
- package/dist/tools/framework/workflow-planner.test.js.map +1 -0
- package/dist/tools/knowledge/bridge.d.ts +34 -0
- package/dist/tools/knowledge/bridge.d.ts.map +1 -0
- package/dist/tools/knowledge/bridge.js +249 -0
- package/dist/tools/knowledge/bridge.js.map +1 -0
- package/dist/tools/knowledge/bridge.test.d.ts +5 -0
- package/dist/tools/knowledge/bridge.test.d.ts.map +1 -0
- package/dist/tools/knowledge/bridge.test.js +221 -0
- package/dist/tools/knowledge/bridge.test.js.map +1 -0
- package/dist/tools/knowledge/extractor.d.ts +22 -0
- package/dist/tools/knowledge/extractor.d.ts.map +1 -0
- package/dist/tools/knowledge/extractor.js +154 -0
- package/dist/tools/knowledge/extractor.js.map +1 -0
- package/dist/tools/knowledge/index.d.ts +12 -0
- package/dist/tools/knowledge/index.d.ts.map +1 -0
- package/dist/tools/knowledge/index.js +505 -0
- package/dist/tools/knowledge/index.js.map +1 -0
- package/dist/tools/knowledge/retrieval.d.ts +28 -0
- package/dist/tools/knowledge/retrieval.d.ts.map +1 -0
- package/dist/tools/knowledge/retrieval.js +164 -0
- package/dist/tools/knowledge/retrieval.js.map +1 -0
- package/dist/tools/knowledge/store.d.ts +96 -0
- package/dist/tools/knowledge/store.d.ts.map +1 -0
- package/dist/tools/knowledge/store.js +562 -0
- package/dist/tools/knowledge/store.js.map +1 -0
- package/dist/tools/knowledge/store.test.d.ts +6 -0
- package/dist/tools/knowledge/store.test.d.ts.map +1 -0
- package/dist/tools/knowledge/store.test.js +385 -0
- package/dist/tools/knowledge/store.test.js.map +1 -0
- package/dist/tools/knowledge/types.d.ts +168 -0
- package/dist/tools/knowledge/types.d.ts.map +1 -0
- package/dist/tools/knowledge/types.js +6 -0
- package/dist/tools/knowledge/types.js.map +1 -0
- package/dist/tools/memory/evolution.d.ts +31 -0
- package/dist/tools/memory/evolution.d.ts.map +1 -0
- package/dist/tools/memory/evolution.js +130 -0
- package/dist/tools/memory/evolution.js.map +1 -0
- package/dist/tools/memory/index.d.ts +11 -0
- package/dist/tools/memory/index.d.ts.map +1 -0
- package/dist/tools/memory/index.js +239 -0
- package/dist/tools/memory/index.js.map +1 -0
- package/dist/tools/memory/store.d.ts +75 -0
- package/dist/tools/memory/store.d.ts.map +1 -0
- package/dist/tools/memory/store.js +398 -0
- package/dist/tools/memory/store.js.map +1 -0
- package/dist/tools/memory/store.test.d.ts +6 -0
- package/dist/tools/memory/store.test.d.ts.map +1 -0
- package/dist/tools/memory/store.test.js +429 -0
- package/dist/tools/memory/store.test.js.map +1 -0
- package/dist/tools/memory/types.d.ts +171 -0
- package/dist/tools/memory/types.d.ts.map +1 -0
- package/dist/tools/memory/types.js +6 -0
- package/dist/tools/memory/types.js.map +1 -0
- package/dist/tools/pipeline/composer.d.ts +29 -0
- package/dist/tools/pipeline/composer.d.ts.map +1 -0
- package/dist/tools/pipeline/composer.js +225 -0
- package/dist/tools/pipeline/composer.js.map +1 -0
- package/dist/tools/pipeline/composer.test.d.ts +2 -0
- package/dist/tools/pipeline/composer.test.d.ts.map +1 -0
- package/dist/tools/pipeline/composer.test.js +162 -0
- package/dist/tools/pipeline/composer.test.js.map +1 -0
- package/dist/tools/pipeline/index.d.ts +8 -0
- package/dist/tools/pipeline/index.d.ts.map +1 -0
- package/dist/tools/pipeline/index.js +102 -0
- package/dist/tools/pipeline/index.js.map +1 -0
- package/dist/tools/pipeline/planner.d.ts +10 -0
- package/dist/tools/pipeline/planner.d.ts.map +1 -0
- package/dist/tools/pipeline/planner.js +147 -0
- package/dist/tools/pipeline/planner.js.map +1 -0
- package/dist/tools/pipeline/planner.test.d.ts +2 -0
- package/dist/tools/pipeline/planner.test.d.ts.map +1 -0
- package/dist/tools/pipeline/planner.test.js +96 -0
- package/dist/tools/pipeline/planner.test.js.map +1 -0
- package/dist/tools/pipeline/preconditions.d.ts +14 -0
- package/dist/tools/pipeline/preconditions.d.ts.map +1 -0
- package/dist/tools/pipeline/preconditions.js +65 -0
- package/dist/tools/pipeline/preconditions.js.map +1 -0
- package/dist/tools/pipeline/preconditions.test.d.ts +2 -0
- package/dist/tools/pipeline/preconditions.test.d.ts.map +1 -0
- package/dist/tools/pipeline/preconditions.test.js +74 -0
- package/dist/tools/pipeline/preconditions.test.js.map +1 -0
- package/dist/tools/pipeline/types.d.ts +105 -0
- package/dist/tools/pipeline/types.d.ts.map +1 -0
- package/dist/tools/pipeline/types.js +6 -0
- package/dist/tools/pipeline/types.js.map +1 -0
- package/dist/tools/repair/index.d.ts +8 -0
- package/dist/tools/repair/index.d.ts.map +1 -0
- package/dist/tools/repair/index.js +384 -0
- package/dist/tools/repair/index.js.map +1 -0
- package/dist/tools/repair/repairer.d.ts +67 -0
- package/dist/tools/repair/repairer.d.ts.map +1 -0
- package/dist/tools/repair/repairer.js +257 -0
- package/dist/tools/repair/repairer.js.map +1 -0
- package/dist/tools/repair/repairer.test.d.ts +6 -0
- package/dist/tools/repair/repairer.test.d.ts.map +1 -0
- package/dist/tools/repair/repairer.test.js +159 -0
- package/dist/tools/repair/repairer.test.js.map +1 -0
- package/dist/tools/semantic/chunker.d.ts +23 -0
- package/dist/tools/semantic/chunker.d.ts.map +1 -0
- package/dist/tools/semantic/chunker.js +244 -0
- package/dist/tools/semantic/chunker.js.map +1 -0
- package/dist/tools/semantic/embedder.d.ts +16 -0
- package/dist/tools/semantic/embedder.d.ts.map +1 -0
- package/dist/tools/semantic/embedder.js +88 -0
- package/dist/tools/semantic/embedder.js.map +1 -0
- package/dist/tools/semantic/index.d.ts +8 -0
- package/dist/tools/semantic/index.d.ts.map +1 -0
- package/dist/tools/semantic/index.js +144 -0
- package/dist/tools/semantic/index.js.map +1 -0
- package/dist/tools/semantic/store.d.ts +31 -0
- package/dist/tools/semantic/store.d.ts.map +1 -0
- package/dist/tools/semantic/store.js +168 -0
- package/dist/tools/semantic/store.js.map +1 -0
- package/dist/tools/semantic/store.test.d.ts +6 -0
- package/dist/tools/semantic/store.test.d.ts.map +1 -0
- package/dist/tools/semantic/store.test.js +240 -0
- package/dist/tools/semantic/store.test.js.map +1 -0
- package/dist/tools/spec/generator.d.ts +32 -0
- package/dist/tools/spec/generator.d.ts.map +1 -0
- package/dist/tools/spec/generator.js +278 -0
- package/dist/tools/spec/generator.js.map +1 -0
- package/dist/tools/spec/generator.test.d.ts +6 -0
- package/dist/tools/spec/generator.test.d.ts.map +1 -0
- package/dist/tools/spec/generator.test.js +208 -0
- package/dist/tools/spec/generator.test.js.map +1 -0
- package/dist/tools/spec/index.d.ts +11 -0
- package/dist/tools/spec/index.d.ts.map +1 -0
- package/dist/tools/spec/index.js +426 -0
- package/dist/tools/spec/index.js.map +1 -0
- package/dist/tools/spec/store.d.ts +24 -0
- package/dist/tools/spec/store.d.ts.map +1 -0
- package/dist/tools/spec/store.js +104 -0
- package/dist/tools/spec/store.js.map +1 -0
- package/dist/tools/spec/store.test.d.ts +6 -0
- package/dist/tools/spec/store.test.d.ts.map +1 -0
- package/dist/tools/spec/store.test.js +173 -0
- package/dist/tools/spec/store.test.js.map +1 -0
- package/dist/tools/spec/types.d.ts +61 -0
- package/dist/tools/spec/types.d.ts.map +1 -0
- package/dist/tools/spec/types.js +6 -0
- package/dist/tools/spec/types.js.map +1 -0
- package/dist/tools/state/index.d.ts +11 -0
- package/dist/tools/state/index.d.ts.map +1 -0
- package/dist/tools/state/index.js +386 -0
- package/dist/tools/state/index.js.map +1 -0
- package/dist/tools/state/migrate.d.ts +39 -0
- package/dist/tools/state/migrate.d.ts.map +1 -0
- package/dist/tools/state/migrate.js +242 -0
- package/dist/tools/state/migrate.js.map +1 -0
- package/dist/tools/state/migrate.test.d.ts +2 -0
- package/dist/tools/state/migrate.test.d.ts.map +1 -0
- package/dist/tools/state/migrate.test.js +265 -0
- package/dist/tools/state/migrate.test.js.map +1 -0
- package/dist/tools/state/store.d.ts +107 -0
- package/dist/tools/state/store.d.ts.map +1 -0
- package/dist/tools/state/store.js +365 -0
- package/dist/tools/state/store.js.map +1 -0
- package/dist/tools/state/store.test.d.ts +5 -0
- package/dist/tools/state/store.test.d.ts.map +1 -0
- package/dist/tools/state/store.test.js +293 -0
- package/dist/tools/state/store.test.js.map +1 -0
- package/dist/tools/state/types.d.ts +90 -0
- package/dist/tools/state/types.d.ts.map +1 -0
- package/dist/tools/state/types.js +6 -0
- package/dist/tools/state/types.js.map +1 -0
- package/dist/tools/testing/analyzer.d.ts +44 -0
- package/dist/tools/testing/analyzer.d.ts.map +1 -0
- package/dist/tools/testing/analyzer.js +280 -0
- package/dist/tools/testing/analyzer.js.map +1 -0
- package/dist/tools/testing/generator.d.ts +57 -0
- package/dist/tools/testing/generator.d.ts.map +1 -0
- package/dist/tools/testing/generator.js +478 -0
- package/dist/tools/testing/generator.js.map +1 -0
- package/dist/tools/testing/generator.test.d.ts +6 -0
- package/dist/tools/testing/generator.test.d.ts.map +1 -0
- package/dist/tools/testing/generator.test.js +285 -0
- package/dist/tools/testing/generator.test.js.map +1 -0
- package/dist/tools/testing/index.d.ts +8 -0
- package/dist/tools/testing/index.d.ts.map +1 -0
- package/dist/tools/testing/index.js +373 -0
- package/dist/tools/testing/index.js.map +1 -0
- package/dist/utils/embedder.d.ts +7 -0
- package/dist/utils/embedder.d.ts.map +1 -0
- package/dist/utils/embedder.js +13 -0
- package/dist/utils/embedder.js.map +1 -0
- package/dist/utils/execution.d.ts +68 -0
- package/dist/utils/execution.d.ts.map +1 -0
- package/dist/utils/execution.js +467 -0
- package/dist/utils/execution.js.map +1 -0
- package/dist/utils/graph.d.ts +26 -0
- package/dist/utils/graph.d.ts.map +1 -0
- package/dist/utils/graph.js +32 -0
- package/dist/utils/graph.js.map +1 -0
- package/dist/utils/guards.d.ts +32 -0
- package/dist/utils/guards.d.ts.map +1 -0
- package/dist/utils/guards.js +40 -0
- package/dist/utils/guards.js.map +1 -0
- package/dist/utils/ids.d.ts +5 -0
- package/dist/utils/ids.d.ts.map +1 -0
- package/dist/utils/ids.js +7 -0
- package/dist/utils/ids.js.map +1 -0
- package/dist/utils/languages.d.ts +34 -0
- package/dist/utils/languages.d.ts.map +1 -0
- package/dist/utils/languages.js +153 -0
- package/dist/utils/languages.js.map +1 -0
- package/dist/utils/lazy.d.ts +17 -0
- package/dist/utils/lazy.d.ts.map +1 -0
- package/dist/utils/lazy.js +35 -0
- package/dist/utils/lazy.js.map +1 -0
- package/dist/utils/project.d.ts +41 -0
- package/dist/utils/project.d.ts.map +1 -0
- package/dist/utils/project.js +82 -0
- package/dist/utils/project.js.map +1 -0
- package/dist/utils/responses.d.ts +27 -0
- package/dist/utils/responses.d.ts.map +1 -0
- package/dist/utils/responses.js +72 -0
- package/dist/utils/responses.js.map +1 -0
- package/dist/utils/vectors.d.ts +33 -0
- package/dist/utils/vectors.d.ts.map +1 -0
- package/dist/utils/vectors.js +80 -0
- package/dist/utils/vectors.js.map +1 -0
- package/dist/utils/vectors.test.d.ts +6 -0
- package/dist/utils/vectors.test.d.ts.map +1 -0
- package/dist/utils/vectors.test.js +96 -0
- package/dist/utils/vectors.test.js.map +1 -0
- package/package.json +69 -0
- package/scripts/init.js +142 -0
- package/templates/CLAUDE.md.template +96 -0
- package/templates/agents/architecture-concept.md +237 -0
- package/templates/agents/checkpoint-concept.md +218 -0
- package/templates/agents/code-analysis-concept.md +171 -0
- package/templates/agents/compete-control.md +44 -0
- package/templates/agents/compete-evaluator.md +87 -0
- package/templates/agents/compete-treatment.md +55 -0
- package/templates/agents/context-concept.md +254 -0
- package/templates/agents/debate-advocate.md +127 -0
- package/templates/agents/debate-critic.md +119 -0
- package/templates/agents/debate-synthesis.md +160 -0
- package/templates/agents/documentation-concept.md +294 -0
- package/templates/agents/implementation-concept.md +165 -0
- package/templates/agents/quality-concept.md +299 -0
- package/templates/agents/research-concept.md +169 -0
- package/templates/agents/security-concept.md +255 -0
- package/templates/agents/story-concept.md +207 -0
- package/templates/agents/verification-concept.md +456 -0
- package/templates/agents/version-concept.md +163 -0
- package/templates/anchors/directory.anchor.yaml.template +53 -0
- package/templates/anchors/rules.anchor.yaml.template +70 -0
- package/templates/anchors/safety.anchor.yaml.template +96 -0
- package/templates/claude-md-managed.template +105 -0
- package/templates/commands/cache.md.template +439 -0
- package/templates/commands/checkpoint.md.template +121 -0
- package/templates/commands/classify.md.template +138 -0
- package/templates/commands/compete.md.template +90 -0
- package/templates/commands/costs.md.template +111 -0
- package/templates/commands/estimate.md.template +196 -0
- package/templates/commands/explore.md.template +186 -0
- package/templates/commands/feature.md.template +216 -0
- package/templates/commands/forget.md.template +104 -0
- package/templates/commands/global-recall.md.template +250 -0
- package/templates/commands/global-remember.md.template +187 -0
- package/templates/commands/health.md.template +107 -0
- package/templates/commands/help.md.template +253 -0
- package/templates/commands/observe.md.template +211 -0
- package/templates/commands/pr-review.md.template +164 -0
- package/templates/commands/predict-cost.md.template +251 -0
- package/templates/commands/profile.md.template +142 -0
- package/templates/commands/reasoning.md.template +228 -0
- package/templates/commands/recall.md.template +197 -0
- package/templates/commands/remember.md.template +148 -0
- package/templates/commands/replay.md.template +449 -0
- package/templates/commands/restore.md.template +87 -0
- package/templates/commands/retrospective.md.template +47 -0
- package/templates/commands/slo.md.template +286 -0
- package/templates/commands/spec.md.template +164 -0
- package/templates/commands/status.md.template +53 -0
- package/templates/commands/sync.md.template +321 -0
- package/templates/commands/task.md.template +86 -0
- package/templates/commands/trace.md.template +86 -0
- package/templates/commands/visualize.md.template +216 -0
- package/templates/commands/workflow.md.template +375 -0
- package/templates/concepts/README.md +329 -0
- package/templates/concepts/architecture.md.template +74 -0
- package/templates/concepts/code-analysis.md.template +186 -0
- package/templates/concepts/context-compactor.md.template +393 -0
- package/templates/concepts/context.md.template +62 -0
- package/templates/concepts/documentation.md.template +452 -0
- package/templates/concepts/estimator.md.template +214 -0
- package/templates/concepts/exploration.md.template +257 -0
- package/templates/concepts/global-memory.md.template +222 -0
- package/templates/concepts/implementation.md.template +62 -0
- package/templates/concepts/pr-review.md.template +277 -0
- package/templates/concepts/project-profile.md.template +358 -0
- package/templates/concepts/quality.md.template +63 -0
- package/templates/concepts/react-fallback.md.template +286 -0
- package/templates/concepts/research.md.template +221 -0
- package/templates/concepts/retrospective.md.template +93 -0
- package/templates/concepts/security.md.template +442 -0
- package/templates/concepts/slo.md.template +274 -0
- package/templates/concepts/spec.md.template +71 -0
- package/templates/concepts/story.md.template +50 -0
- package/templates/concepts/tool-router.md.template +289 -0
- package/templates/concepts/verification-synthesizer.md.template +279 -0
- package/templates/concepts/version.md.template +61 -0
- package/templates/config.yaml.template +347 -0
- package/templates/examples/README.md +77 -0
- package/templates/examples/architecture/api-design.yaml.template +286 -0
- package/templates/examples/architecture/oauth-authentication.yaml.template +305 -0
- package/templates/health/status.yaml.template +120 -0
- package/templates/hooks/concept-complete.sh.template +45 -0
- package/templates/hooks/lib/common.sh.template +160 -0
- package/templates/hooks/post-commit.sh.template +37 -0
- package/templates/hooks/post-concept-action.template +39 -0
- package/templates/hooks/post-tool-structure-check.sh.template +138 -0
- package/templates/hooks/post-tool-use.sh.template +51 -0
- package/templates/hooks/pre-compact.sh.template +48 -0
- package/templates/hooks/pre-tool-grounding.template +148 -0
- package/templates/hooks/session-exit-checkpoint.sh.template +35 -0
- package/templates/hooks/session-start.sh.template +67 -0
- package/templates/hooks/statusline.sh.template +148 -0
- package/templates/hooks/stop.sh.template +45 -0
- package/templates/hooks/subagent-stop.sh.template +40 -0
- package/templates/hooks/sync-blocked.sh.template +45 -0
- package/templates/hooks/timeout.sh.template +48 -0
- package/templates/hooks/user-prompt-submit.sh.template +68 -0
- package/templates/koan/README.md +58 -0
- package/templates/memory/index.yaml.template +48 -0
- package/templates/memory/procedural/debugging.yaml.template +24 -0
- package/templates/memory/procedural/workflows.yaml.template +22 -0
- package/templates/memory/semantic/architecture.yaml.template +21 -0
- package/templates/memory/semantic/conventions.yaml.template +18 -0
- package/templates/memory/semantic/patterns.yaml.template +21 -0
- package/templates/memory/semantic/preferences.yaml.template +18 -0
- package/templates/prompts/architecture.yaml.template +349 -0
- package/templates/prompts/context.yaml.template +384 -0
- package/templates/prompts/implementation.yaml.template +365 -0
- package/templates/prompts/planning.yaml.template +303 -0
- package/templates/prompts/quality.yaml.template +345 -0
- package/templates/prompts/retrospective.yaml.template +231 -0
- package/templates/prompts/slo.yaml.template +360 -0
- package/templates/prompts/story.yaml.template +236 -0
- package/templates/prompts/tree-of-thoughts.yaml.template +299 -0
- package/templates/prompts/verification.yaml.template +286 -0
- package/templates/prompts/version.yaml.template +279 -0
- package/templates/schemas/agent-schema.json +98 -0
- package/templates/schemas/architecture.schema.json +69 -0
- package/templates/schemas/config-schema.json +165 -0
- package/templates/schemas/implementation.schema.json +75 -0
- package/templates/schemas/planning.schema.json +243 -0
- package/templates/schemas/provenance.schema.json +111 -0
- package/templates/schemas/retrospective.schema.json +174 -0
- package/templates/schemas/review.schema.json +284 -0
- package/templates/schemas/slo.schema.json +443 -0
- package/templates/schemas/story.schema.json +68 -0
- package/templates/schemas/sync-schema.json +196 -0
- package/templates/schemas/task.schema.json +127 -0
- package/templates/schemas/tree-of-thoughts.schema.json +175 -0
- package/templates/schemas/verification.schema.json +106 -0
- package/templates/settings.full.json.template +135 -0
- package/templates/settings.minimal.json.template +68 -0
- package/templates/settings.standard.json.template +135 -0
- package/templates/skills/acceptance-criteria-generation.md.template +330 -0
- package/templates/skills/accessibility-checking.md.template +341 -0
- package/templates/skills/api-design-patterns.md.template +395 -0
- package/templates/skills/batch-processing.md.template +605 -0
- package/templates/skills/branch-strategy.md.template +362 -0
- package/templates/skills/changelog-generation.md.template +403 -0
- package/templates/skills/code-coverage-analysis.md.template +362 -0
- package/templates/skills/code-style-enforcement.md.template +294 -0
- package/templates/skills/code-template-patterns.md.template +419 -0
- package/templates/skills/concept-development.md.template +159 -0
- package/templates/skills/context-prioritization.md.template +306 -0
- package/templates/skills/cost-optimization.md.template +482 -0
- package/templates/skills/cross-project-knowledge.md.template +316 -0
- package/templates/skills/dependency-impact-analysis.md.template +263 -0
- package/templates/skills/documentation-generation.md.template +409 -0
- package/templates/skills/effort-estimation.md.template +350 -0
- package/templates/skills/error-classification.md.template +709 -0
- package/templates/skills/error-messages.md.template +339 -0
- package/templates/skills/ide-diagnostics.md.template +480 -0
- package/templates/skills/incremental-loading.md.template +574 -0
- package/templates/skills/output-caching.md.template +524 -0
- package/templates/skills/performance-estimation.md.template +325 -0
- package/templates/skills/performance-testing-patterns.md.template +341 -0
- package/templates/skills/phase2-optimizations-summary.md.template +458 -0
- package/templates/skills/progressive-disclosure-pattern.md.template +190 -0
- package/templates/skills/project-structure.md.template +372 -0
- package/templates/skills/provenance-analysis.md.template +609 -0
- package/templates/skills/react-executor.md.template +366 -0
- package/templates/skills/refactoring-patterns.md.template +422 -0
- package/templates/skills/release-management.md.template +373 -0
- package/templates/skills/requirement-prioritization.md.template +357 -0
- package/templates/skills/schema-validation.md.template +321 -0
- package/templates/skills/security-design-patterns.md.template +692 -0
- package/templates/skills/security-vulnerability-scanning.md.template +663 -0
- package/templates/skills/semantic-memory.md.template +266 -0
- package/templates/skills/semantic-versioning.md.template +371 -0
- package/templates/skills/smart-retry.md.template +676 -0
- package/templates/skills/smart-summarization.md.template +358 -0
- package/templates/skills/story-decomposition.md.template +278 -0
- package/templates/skills/synchronization-patterns.md.template +303 -0
- package/templates/skills/test-generation-strategy.md.template +247 -0
- package/templates/skills/workflow-replay.md.template +478 -0
- package/templates/skills/wysiwid-principles.md.template +364 -0
- package/templates/skills-manifest.yaml.template +526 -0
- package/templates/stubs/agents/architecture-concept.md +20 -0
- package/templates/stubs/agents/checkpoint-concept.md +19 -0
- package/templates/stubs/agents/code-analysis-concept.md +36 -0
- package/templates/stubs/agents/context-concept.md +37 -0
- package/templates/stubs/agents/debate-advocate.md +12 -0
- package/templates/stubs/agents/debate-critic.md +12 -0
- package/templates/stubs/agents/debate-synthesis.md +12 -0
- package/templates/stubs/agents/documentation-concept.md +39 -0
- package/templates/stubs/agents/implementation-concept.md +41 -0
- package/templates/stubs/agents/quality-concept.md +41 -0
- package/templates/stubs/agents/research-concept.md +35 -0
- package/templates/stubs/agents/security-concept.md +40 -0
- package/templates/stubs/agents/spec-concept.md +35 -0
- package/templates/stubs/agents/story-concept.md +36 -0
- package/templates/stubs/agents/verification-concept.md +39 -0
- package/templates/stubs/agents/version-concept.md +37 -0
- package/templates/stubs/commands/cache.md.template +2 -0
- package/templates/stubs/commands/checkpoint.md.template +2 -0
- package/templates/stubs/commands/classify.md.template +2 -0
- package/templates/stubs/commands/compete.md.template +2 -0
- package/templates/stubs/commands/costs.md.template +2 -0
- package/templates/stubs/commands/estimate.md.template +2 -0
- package/templates/stubs/commands/explore.md.template +2 -0
- package/templates/stubs/commands/feature.md.template +2 -0
- package/templates/stubs/commands/forget.md.template +2 -0
- package/templates/stubs/commands/global-recall.md.template +2 -0
- package/templates/stubs/commands/global-remember.md.template +2 -0
- package/templates/stubs/commands/health.md.template +2 -0
- package/templates/stubs/commands/help.md.template +2 -0
- package/templates/stubs/commands/observe.md.template +2 -0
- package/templates/stubs/commands/pr-review.md.template +2 -0
- package/templates/stubs/commands/predict-cost.md.template +2 -0
- package/templates/stubs/commands/profile.md.template +2 -0
- package/templates/stubs/commands/reasoning.md.template +2 -0
- package/templates/stubs/commands/recall.md.template +2 -0
- package/templates/stubs/commands/remember.md.template +2 -0
- package/templates/stubs/commands/replay.md.template +2 -0
- package/templates/stubs/commands/restore.md.template +2 -0
- package/templates/stubs/commands/retrospective.md.template +2 -0
- package/templates/stubs/commands/slo.md.template +2 -0
- package/templates/stubs/commands/spec.md.template +2 -0
- package/templates/stubs/commands/sync.md.template +2 -0
- package/templates/stubs/commands/task.md.template +2 -0
- package/templates/stubs/commands/trace.md.template +2 -0
- package/templates/stubs/commands/visualize.md.template +2 -0
- package/templates/stubs/commands/workflow.md.template +2 -0
- package/templates/synchronizations/archive/adaptive-learning.yaml.template +595 -0
- package/templates/synchronizations/archive/code-understanding-flow.yaml.template +533 -0
- package/templates/synchronizations/archive/collaboration-flow.yaml.template +521 -0
- package/templates/synchronizations/archive/context-folding.yaml.template +353 -0
- package/templates/synchronizations/archive/dead-letter-queue.yaml.template +530 -0
- package/templates/synchronizations/archive/documentation-flow.yaml.template +560 -0
- package/templates/synchronizations/archive/error-recovery-flow.yaml.template +1031 -0
- package/templates/synchronizations/archive/execution-loop.yaml.template +336 -0
- package/templates/synchronizations/archive/exploration-flow.yaml.template +369 -0
- package/templates/synchronizations/archive/feature-development.yaml.template +2145 -0
- package/templates/synchronizations/archive/learning-loop.yaml.template +657 -0
- package/templates/synchronizations/archive/multi-verify.yaml.template +346 -0
- package/templates/synchronizations/archive/planning-flow.yaml.template +312 -0
- package/templates/synchronizations/archive/retrospective-flow.yaml.template +277 -0
- package/templates/synchronizations/archive/security-flow.yaml.template +477 -0
- package/templates/synchronizations/archive/slo-monitoring.yaml.template +209 -0
- package/templates/synchronizations/archive/task-routing.yaml.template +489 -0
- package/templates/synchronizations/archive/test-driven.yaml.template +291 -0
- package/templates/synchronizations/archive/tool-routing.yaml.template +326 -0
- package/templates/synchronizations/archive/verification-flow.yaml.template +407 -0
- package/templates/synchronizations/error-policy.yaml.template +188 -0
- package/templates/synchronizations/main.sync.template +319 -0
- package/templates/synchronizations/slo-registry.yaml.template +229 -0
- package/templates/tasks/task.yaml.template +67 -0
- package/templates/zen-profile.yaml.template +14 -0
|
@@ -0,0 +1,482 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: Cost Optimization
|
|
3
|
+
description: Expert strategies for optimizing AI model costs in Zen WYSIWID workflows through smart model selection and efficient execution
|
|
4
|
+
version: 1.0.0
|
|
5
|
+
trigger_keywords: [cost, budget, haiku, sonnet, optimization, tokens, spending, efficiency]
|
|
6
|
+
author: Zen Architecture
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
# Cost Optimization - Expert Skill
|
|
10
|
+
|
|
11
|
+
Master strategies for minimizing AI costs while maintaining quality in Zen workflows.
|
|
12
|
+
|
|
13
|
+
## The Zen Cost Philosophy
|
|
14
|
+
|
|
15
|
+
**Smart Model Assignment**: Use the right model for the right task
|
|
16
|
+
- **Sonnet**: Fast, cheap ($0.00025 input, $0.00125 output per 1K tokens)
|
|
17
|
+
- **Sonnet**: Deep reasoning ($0.003 input, $0.015 output per 1K tokens)
|
|
18
|
+
|
|
19
|
+
**Key Insight**: Sonnet is 6x more expensive than Sonnet, but only needed for 1/6 of tasks.
|
|
20
|
+
|
|
21
|
+
## Zen's Default Model Strategy
|
|
22
|
+
|
|
23
|
+
### Architecture (Sonnet) - 91% of Cost
|
|
24
|
+
**Why Sonnet**:
|
|
25
|
+
- Complex trade-off analysis
|
|
26
|
+
- Multi-step reasoning
|
|
27
|
+
- Novel problem solving
|
|
28
|
+
- Pattern synthesis across domains
|
|
29
|
+
- Risk evaluation
|
|
30
|
+
|
|
31
|
+
**Cost**: ~$0.015 per action
|
|
32
|
+
**Justification**: Poor architecture costs far more in rework
|
|
33
|
+
|
|
34
|
+
### Everything Else (Sonnet) - 9% of Cost
|
|
35
|
+
**Why Sonnet**:
|
|
36
|
+
- Story: Template filling, validation
|
|
37
|
+
- Implementation: Code from clear specs
|
|
38
|
+
- Quality: Pattern matching, rule checking
|
|
39
|
+
- Version: Git command execution
|
|
40
|
+
- Context: Token counting, compression
|
|
41
|
+
|
|
42
|
+
**Cost**: ~$0.000175 per action
|
|
43
|
+
**Justification**: These tasks don't require deep reasoning
|
|
44
|
+
|
|
45
|
+
## Cost Breakdown per Feature
|
|
46
|
+
|
|
47
|
+
```
|
|
48
|
+
Typical Feature Workflow:
|
|
49
|
+
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
|
50
|
+
Story (Sonnet): $0.000175 (1%)
|
|
51
|
+
Architecture (Sonnet): $0.015000 (91%) ⭐
|
|
52
|
+
Implementation (Sonnet):$0.000175 (1%)
|
|
53
|
+
Quality x2 (Sonnet): $0.000350 (2%)
|
|
54
|
+
Version (Sonnet): $0.000175 (1%)
|
|
55
|
+
Context (Sonnet): $0.000175 (1%)
|
|
56
|
+
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
|
57
|
+
Total: $0.0165
|
|
58
|
+
|
|
59
|
+
vs All-Sonnet: $0.099
|
|
60
|
+
Savings: 83%
|
|
61
|
+
```
|
|
62
|
+
|
|
63
|
+
**Key Takeaway**: Architecture is expensive but necessary. The other 9 concepts achieve cost efficiency by using Sonnet.
|
|
64
|
+
|
|
65
|
+
## When to Use Each Model
|
|
66
|
+
|
|
67
|
+
### Use Sonnet When:
|
|
68
|
+
✅ Evaluating multiple approaches with complex trade-offs
|
|
69
|
+
✅ Designing novel solutions (no existing patterns)
|
|
70
|
+
✅ Predicting long-term consequences
|
|
71
|
+
✅ Synthesizing patterns from different domains
|
|
72
|
+
✅ Making architectural decisions
|
|
73
|
+
✅ Analyzing security implications
|
|
74
|
+
✅ Evaluating risks and mitigations
|
|
75
|
+
|
|
76
|
+
### Use Sonnet When:
|
|
77
|
+
✅ Following clear specifications
|
|
78
|
+
✅ Applying known patterns
|
|
79
|
+
✅ Generating code from templates
|
|
80
|
+
✅ Validating against rules
|
|
81
|
+
✅ Executing commands
|
|
82
|
+
✅ Counting or measuring
|
|
83
|
+
✅ Pattern matching
|
|
84
|
+
✅ CRUD operations
|
|
85
|
+
|
|
86
|
+
### Signs You're Using Wrong Model:
|
|
87
|
+
|
|
88
|
+
**Sonnet Overuse** (wasting money):
|
|
89
|
+
- Simple validation tasks
|
|
90
|
+
- Template filling
|
|
91
|
+
- Command execution
|
|
92
|
+
- Straightforward code generation
|
|
93
|
+
|
|
94
|
+
**Sonnet Underuse** (poor quality):
|
|
95
|
+
- Complex architectural decisions
|
|
96
|
+
- Novel problem solving
|
|
97
|
+
- Deep trade-off analysis
|
|
98
|
+
- High-risk designs
|
|
99
|
+
|
|
100
|
+
## Cost Optimization Strategies
|
|
101
|
+
|
|
102
|
+
### 1. Batch Operations
|
|
103
|
+
|
|
104
|
+
**Expensive**:
|
|
105
|
+
```bash
|
|
106
|
+
for each file:
|
|
107
|
+
invoke concept # 5 separate calls
|
|
108
|
+
```
|
|
109
|
+
Cost: 5 × $0.000175 = $0.000875
|
|
110
|
+
|
|
111
|
+
**Optimized**:
|
|
112
|
+
```bash
|
|
113
|
+
invoke concept with all files # 1 call
|
|
114
|
+
```
|
|
115
|
+
Cost: 1 × $0.000175 = $0.000175
|
|
116
|
+
**Savings: 80%**
|
|
117
|
+
|
|
118
|
+
### 2. Progressive Detail
|
|
119
|
+
|
|
120
|
+
**Expensive**:
|
|
121
|
+
```bash
|
|
122
|
+
# Load everything upfront
|
|
123
|
+
Read entire codebase
|
|
124
|
+
Invoke architecture with full context
|
|
125
|
+
```
|
|
126
|
+
Cost: Large context = higher input tokens
|
|
127
|
+
|
|
128
|
+
**Optimized**:
|
|
129
|
+
```bash
|
|
130
|
+
# Load incrementally
|
|
131
|
+
Read summaries first
|
|
132
|
+
Get details only if needed
|
|
133
|
+
```
|
|
134
|
+
Cost: Smaller context = lower input tokens
|
|
135
|
+
**Savings: 30-50%**
|
|
136
|
+
|
|
137
|
+
### 3. Caching Results
|
|
138
|
+
|
|
139
|
+
**Expensive**:
|
|
140
|
+
```bash
|
|
141
|
+
# Regenerate every time
|
|
142
|
+
/feature "Add OAuth" # Architecture from scratch
|
|
143
|
+
```
|
|
144
|
+
|
|
145
|
+
**Optimized**:
|
|
146
|
+
```bash
|
|
147
|
+
# Reuse when possible
|
|
148
|
+
Check if similar architecture exists
|
|
149
|
+
Adapt rather than regenerate
|
|
150
|
+
```
|
|
151
|
+
**Savings: Variable, up to 90%**
|
|
152
|
+
|
|
153
|
+
### 4. Concept Reuse
|
|
154
|
+
|
|
155
|
+
**Expensive**:
|
|
156
|
+
```bash
|
|
157
|
+
# Custom concept for each domain
|
|
158
|
+
user-auth-story
|
|
159
|
+
api-auth-story
|
|
160
|
+
oauth-story
|
|
161
|
+
```
|
|
162
|
+
|
|
163
|
+
**Optimized**:
|
|
164
|
+
```bash
|
|
165
|
+
# Polymorphic concept
|
|
166
|
+
story (works for all authentication types)
|
|
167
|
+
```
|
|
168
|
+
**Savings: Maintenance cost, not immediate**
|
|
169
|
+
|
|
170
|
+
### 5. Sync Optimization
|
|
171
|
+
|
|
172
|
+
**Expensive**:
|
|
173
|
+
```yaml
|
|
174
|
+
# Trigger architecture for every story
|
|
175
|
+
- when: {concept: story, status: completed}
|
|
176
|
+
then: {concept: architecture} # No conditions
|
|
177
|
+
```
|
|
178
|
+
|
|
179
|
+
**Optimized**:
|
|
180
|
+
```yaml
|
|
181
|
+
# Only trigger when ready
|
|
182
|
+
- when: {concept: story, status: completed}
|
|
183
|
+
where: "story.status == 'ready' AND story.complexity > 'low'"
|
|
184
|
+
then: {concept: architecture}
|
|
185
|
+
```
|
|
186
|
+
**Savings: Skip unnecessary architecture for simple stories**
|
|
187
|
+
|
|
188
|
+
## Token Management
|
|
189
|
+
|
|
190
|
+
### Input Token Optimization
|
|
191
|
+
|
|
192
|
+
**Sources of Input Tokens**:
|
|
193
|
+
1. Concept documentation (~2-5K tokens)
|
|
194
|
+
2. Previous context (~10-20K tokens)
|
|
195
|
+
3. State files (~1-5K tokens per file)
|
|
196
|
+
4. Synchronization rules (~1-2K tokens)
|
|
197
|
+
|
|
198
|
+
**Optimization Strategies**:
|
|
199
|
+
```bash
|
|
200
|
+
# ❌ Load everything
|
|
201
|
+
Read all stories
|
|
202
|
+
Read all architectures
|
|
203
|
+
Read all implementations
|
|
204
|
+
|
|
205
|
+
# ✅ Load selectively
|
|
206
|
+
Read only latest story
|
|
207
|
+
Read only relevant architecture
|
|
208
|
+
Skip completed implementations
|
|
209
|
+
```
|
|
210
|
+
|
|
211
|
+
### Output Token Optimization
|
|
212
|
+
|
|
213
|
+
**Verbose Output** (expensive):
|
|
214
|
+
```yaml
|
|
215
|
+
# 2000 tokens of detailed explanation
|
|
216
|
+
story_id: "story-001"
|
|
217
|
+
title: "Add OAuth"
|
|
218
|
+
description: |
|
|
219
|
+
[500 lines of detailed explanation]
|
|
220
|
+
[Examples]
|
|
221
|
+
[Edge cases]
|
|
222
|
+
...
|
|
223
|
+
```
|
|
224
|
+
|
|
225
|
+
**Concise Output** (optimized):
|
|
226
|
+
```yaml
|
|
227
|
+
# 200 tokens of essential info
|
|
228
|
+
story_id: "story-001"
|
|
229
|
+
title: "Add OAuth"
|
|
230
|
+
description: "OAuth2 with Google/GitHub providers"
|
|
231
|
+
acceptance_criteria: [9 items]
|
|
232
|
+
status: "ready"
|
|
233
|
+
```
|
|
234
|
+
**Savings: 90% on output tokens**
|
|
235
|
+
|
|
236
|
+
## Budget Management
|
|
237
|
+
|
|
238
|
+
### Setting Budgets
|
|
239
|
+
|
|
240
|
+
**Project Level**:
|
|
241
|
+
```yaml
|
|
242
|
+
# .claude/config.yaml
|
|
243
|
+
cost_optimization:
|
|
244
|
+
daily_budget: 1.00 # $1/day
|
|
245
|
+
weekly_budget: 5.00 # $5/week
|
|
246
|
+
alert_threshold: 0.80 # Alert at 80%
|
|
247
|
+
```
|
|
248
|
+
|
|
249
|
+
**Feature Level**:
|
|
250
|
+
```bash
|
|
251
|
+
Expected cost per feature: $0.015-0.025
|
|
252
|
+
Features per dollar: 40-65
|
|
253
|
+
```
|
|
254
|
+
|
|
255
|
+
**Workflow Level**:
|
|
256
|
+
```bash
|
|
257
|
+
Story: $0.000175
|
|
258
|
+
Architecture: $0.015 (most expensive)
|
|
259
|
+
Implementation: $0.000175
|
|
260
|
+
Quality: $0.00035 (2 actions)
|
|
261
|
+
Version: $0.000175
|
|
262
|
+
```
|
|
263
|
+
|
|
264
|
+
### Tracking Spending
|
|
265
|
+
|
|
266
|
+
**Query Provenance**:
|
|
267
|
+
```bash
|
|
268
|
+
# Total spend
|
|
269
|
+
grep 'cost_usd:' koan/provenance/actions/*.yaml | \
|
|
270
|
+
awk '{sum += $2} END {printf "Total: $%.4f\n", sum}'
|
|
271
|
+
|
|
272
|
+
# By concept
|
|
273
|
+
grep -h 'concept:\|cost_usd:' koan/provenance/actions/*.yaml | \
|
|
274
|
+
awk '/concept:/ {c=$2} /cost_usd:/ {sum[c]+=$2} \
|
|
275
|
+
END {for(c in sum) printf "%s: $%.4f\n", c, sum[c]}'
|
|
276
|
+
|
|
277
|
+
# By model
|
|
278
|
+
grep -h 'model:\|cost_usd:' koan/provenance/actions/*.yaml | \
|
|
279
|
+
awk '/model:/ {m=$2} /cost_usd:/ {sum[m]+=$2} \
|
|
280
|
+
END {for(m in sum) printf "%s: $%.4f\n", m, sum[m]}'
|
|
281
|
+
```
|
|
282
|
+
|
|
283
|
+
**Use `/costs` Command**:
|
|
284
|
+
```bash
|
|
285
|
+
/costs # All-time summary
|
|
286
|
+
/costs --last-week # Last 7 days
|
|
287
|
+
/costs --by-concept # Breakdown by concept
|
|
288
|
+
/costs --by-flow # Breakdown by flow
|
|
289
|
+
```
|
|
290
|
+
|
|
291
|
+
## Cost-Quality Trade-offs
|
|
292
|
+
|
|
293
|
+
### When to Invest in Sonnet
|
|
294
|
+
|
|
295
|
+
**Scenario 1: New Domain**
|
|
296
|
+
```bash
|
|
297
|
+
First feature in new domain → Use Sonnet for architecture
|
|
298
|
+
Subsequent features → Can reuse patterns with Sonnet
|
|
299
|
+
```
|
|
300
|
+
**ROI**: Upfront investment, long-term savings
|
|
301
|
+
|
|
302
|
+
**Scenario 2: High-Risk Features**
|
|
303
|
+
```bash
|
|
304
|
+
Security-critical features → Use Sonnet
|
|
305
|
+
Routine CRUD operations → Use Sonnet
|
|
306
|
+
```
|
|
307
|
+
**ROI**: Prevent costly security vulnerabilities
|
|
308
|
+
|
|
309
|
+
**Scenario 3: Novel Problems**
|
|
310
|
+
```bash
|
|
311
|
+
No existing solution → Use Sonnet
|
|
312
|
+
Adapting known solution → Use Sonnet
|
|
313
|
+
```
|
|
314
|
+
**ROI**: Better design worth the cost
|
|
315
|
+
|
|
316
|
+
### When to Stick with Sonnet
|
|
317
|
+
|
|
318
|
+
**Scenario 1: Clear Specifications**
|
|
319
|
+
```bash
|
|
320
|
+
Architecture already defined → Sonnet for implementation
|
|
321
|
+
Tests already written → Sonnet for code
|
|
322
|
+
```
|
|
323
|
+
|
|
324
|
+
**Scenario 2: Repetitive Tasks**
|
|
325
|
+
```bash
|
|
326
|
+
Similar to previous features → Sonnet throughout
|
|
327
|
+
Known patterns → Sonnet throughout
|
|
328
|
+
```
|
|
329
|
+
|
|
330
|
+
**Scenario 3: Low Complexity**
|
|
331
|
+
```bash
|
|
332
|
+
Simple CRUD operations → Sonnet
|
|
333
|
+
Minor bug fixes → Sonnet
|
|
334
|
+
Documentation updates → Sonnet
|
|
335
|
+
```
|
|
336
|
+
|
|
337
|
+
## ROI Analysis
|
|
338
|
+
|
|
339
|
+
### Cost of Poor Architecture
|
|
340
|
+
|
|
341
|
+
**Scenario**: Skip Sonnet, use Sonnet for architecture
|
|
342
|
+
|
|
343
|
+
```bash
|
|
344
|
+
Sonnet architecture: $0.000175
|
|
345
|
+
Rework cycle 1: $0.000175
|
|
346
|
+
Rework cycle 2: $0.000175
|
|
347
|
+
Rework cycle 3: $0.000175
|
|
348
|
+
Engineer time: $50-100/hour
|
|
349
|
+
Final fix: $0.000175
|
|
350
|
+
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
|
351
|
+
Total: $0.001 + engineer time
|
|
352
|
+
|
|
353
|
+
vs
|
|
354
|
+
|
|
355
|
+
Sonnet architecture: $0.015
|
|
356
|
+
Gets it right first time
|
|
357
|
+
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
|
358
|
+
Total: $0.015
|
|
359
|
+
|
|
360
|
+
Savings: Engineer time (~$50-100)
|
|
361
|
+
```
|
|
362
|
+
|
|
363
|
+
**Conclusion**: Sonnet for architecture is cost-effective.
|
|
364
|
+
|
|
365
|
+
### Cost of Sonnet Overuse
|
|
366
|
+
|
|
367
|
+
**Scenario**: Use Sonnet for everything
|
|
368
|
+
|
|
369
|
+
```bash
|
|
370
|
+
Story (Sonnet): $0.0087 (vs $0.000175)
|
|
371
|
+
Architecture (Sonnet): $0.0150 (appropriate)
|
|
372
|
+
Implementation (Sonnet): $0.0087 (vs $0.000175)
|
|
373
|
+
Quality (Sonnet): $0.0174 (vs $0.000350)
|
|
374
|
+
Version (Sonnet): $0.0087 (vs $0.000175)
|
|
375
|
+
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
|
376
|
+
Total: $0.0585 vs $0.0165
|
|
377
|
+
|
|
378
|
+
Waste: $0.0420 per feature (254% more)
|
|
379
|
+
```
|
|
380
|
+
|
|
381
|
+
**Conclusion**: Use Sonnet where appropriate.
|
|
382
|
+
|
|
383
|
+
## Monitoring and Alerts
|
|
384
|
+
|
|
385
|
+
### Cost Anomaly Detection
|
|
386
|
+
|
|
387
|
+
**Normal Pattern**:
|
|
388
|
+
```bash
|
|
389
|
+
Story: $0.000175
|
|
390
|
+
Arch: $0.015
|
|
391
|
+
Impl: $0.000175
|
|
392
|
+
```
|
|
393
|
+
|
|
394
|
+
**Anomaly**:
|
|
395
|
+
```bash
|
|
396
|
+
Story: $0.000175
|
|
397
|
+
Arch: $0.045 # ⚠️ 3x higher
|
|
398
|
+
Impl: $0.000175
|
|
399
|
+
```
|
|
400
|
+
|
|
401
|
+
**Investigation**:
|
|
402
|
+
- Was architecture more complex?
|
|
403
|
+
- Did it require multiple iterations?
|
|
404
|
+
- Was context unnecessarily large?
|
|
405
|
+
|
|
406
|
+
### Budget Alerts
|
|
407
|
+
|
|
408
|
+
**Pre-Action Alert**:
|
|
409
|
+
```bash
|
|
410
|
+
# Before invoking concept
|
|
411
|
+
Current spend: $0.85
|
|
412
|
+
Budget: $1.00
|
|
413
|
+
This action: ~$0.015
|
|
414
|
+
Projected: $0.865 (86% of budget)
|
|
415
|
+
```
|
|
416
|
+
|
|
417
|
+
**Post-Action Alert**:
|
|
418
|
+
```bash
|
|
419
|
+
# After concept completes
|
|
420
|
+
Spend: $0.90 (90% of budget)
|
|
421
|
+
Remaining: $0.10
|
|
422
|
+
⚠️ Approaching budget limit
|
|
423
|
+
```
|
|
424
|
+
|
|
425
|
+
## Best Practices Summary
|
|
426
|
+
|
|
427
|
+
### Model Selection
|
|
428
|
+
1. ✅ Default to Sonnet unless deep reasoning needed
|
|
429
|
+
2. ✅ Use Sonnet for architecture and high-risk decisions
|
|
430
|
+
3. ✅ Track actual costs to validate assumptions
|
|
431
|
+
4. ❌ Don't use Sonnet for routine tasks
|
|
432
|
+
5. ❌ Don't use Sonnet for novel/complex problems
|
|
433
|
+
|
|
434
|
+
### Token Management
|
|
435
|
+
1. ✅ Load context progressively (summaries → details)
|
|
436
|
+
2. ✅ Generate concise outputs
|
|
437
|
+
3. ✅ Batch operations when possible
|
|
438
|
+
4. ❌ Don't load entire codebase at once
|
|
439
|
+
5. ❌ Don't generate verbose documentation
|
|
440
|
+
|
|
441
|
+
### Budget Control
|
|
442
|
+
1. ✅ Set daily/weekly budgets
|
|
443
|
+
2. ✅ Monitor spending with `/costs`
|
|
444
|
+
3. ✅ Alert at 80% threshold
|
|
445
|
+
4. ✅ Analyze anomalies
|
|
446
|
+
5. ❌ Don't ignore cost trends
|
|
447
|
+
|
|
448
|
+
### Quality Balance
|
|
449
|
+
1. ✅ Invest in Sonnet for architecture
|
|
450
|
+
2. ✅ Use Sonnet for implementation from specs
|
|
451
|
+
3. ✅ Measure ROI (cost vs rework)
|
|
452
|
+
4. ❌ Don't skimp on critical decisions
|
|
453
|
+
5. ❌ Don't overspend on simple tasks
|
|
454
|
+
|
|
455
|
+
## Tools and Commands
|
|
456
|
+
|
|
457
|
+
### Cost Analysis
|
|
458
|
+
```bash
|
|
459
|
+
/costs # View all spending
|
|
460
|
+
/costs --by-concept # See which concepts cost most
|
|
461
|
+
/costs --by-model # Sonnet vs Sonnet breakdown
|
|
462
|
+
/costs --efficiency # Savings percentage
|
|
463
|
+
```
|
|
464
|
+
|
|
465
|
+
### Provenance Queries
|
|
466
|
+
```bash
|
|
467
|
+
/trace <flow-id> # See complete workflow costs
|
|
468
|
+
grep 'cost_usd' koan/provenance/actions/*.yaml # Raw cost data
|
|
469
|
+
```
|
|
470
|
+
|
|
471
|
+
### Budget Monitoring
|
|
472
|
+
```bash
|
|
473
|
+
# In .claude/config.yaml
|
|
474
|
+
cost_optimization:
|
|
475
|
+
track_costs: true
|
|
476
|
+
alert_threshold: 0.80
|
|
477
|
+
daily_budget: 1.00
|
|
478
|
+
```
|
|
479
|
+
|
|
480
|
+
---
|
|
481
|
+
|
|
482
|
+
**Use this skill when**: Planning workflows, selecting models, analyzing costs, setting budgets, investigating spending anomalies, or optimizing for cost efficiency.
|