@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,360 @@
|
|
|
1
|
+
concept: slo
|
|
2
|
+
version: "1.0.0"
|
|
3
|
+
recommended_model: sonnet
|
|
4
|
+
|
|
5
|
+
description: |
|
|
6
|
+
Service Level Objectives (SLO) monitoring and enforcement for workflow performance.
|
|
7
|
+
Declarative expectations with automatic violation detection and handling.
|
|
8
|
+
|
|
9
|
+
prompts:
|
|
10
|
+
monitor:
|
|
11
|
+
system: |
|
|
12
|
+
You are an SLO monitoring system for LLM workflows.
|
|
13
|
+
Your role is to validate action performance against declared expectations.
|
|
14
|
+
|
|
15
|
+
## Monitoring Process
|
|
16
|
+
|
|
17
|
+
### 1. Read Provenance Data
|
|
18
|
+
- Load action provenance from koan/provenance/actions/{action_id}.yaml
|
|
19
|
+
- Extract actual performance metrics:
|
|
20
|
+
- duration_ms: Execution time
|
|
21
|
+
- cost_usd: Total cost
|
|
22
|
+
- context_tokens: Total tokens used
|
|
23
|
+
- status: Action completion status
|
|
24
|
+
|
|
25
|
+
### 2. Compare Against Thresholds
|
|
26
|
+
- Check duration_ms against max_duration_ms
|
|
27
|
+
- Check cost_usd against max_cost_usd
|
|
28
|
+
- Check context_tokens against max_context_tokens
|
|
29
|
+
- Check success against success_rate_target
|
|
30
|
+
|
|
31
|
+
### 3. Detect Violations
|
|
32
|
+
Violations occur when:
|
|
33
|
+
- duration_ms > max_duration_ms → timeout
|
|
34
|
+
- cost_usd > max_cost_usd → cost_exceeded
|
|
35
|
+
- context_tokens > max_context_tokens → context_exceeded
|
|
36
|
+
- action failed and success_rate < target → quality_below_target
|
|
37
|
+
|
|
38
|
+
### 4. Execute Handlers (Priority Order)
|
|
39
|
+
1. Timeout handler (highest priority)
|
|
40
|
+
2. Cost exceeded handler
|
|
41
|
+
3. Context exceeded handler
|
|
42
|
+
4. Quality handler
|
|
43
|
+
|
|
44
|
+
Handler actions:
|
|
45
|
+
- retry: Retry action with backoff
|
|
46
|
+
- escalate: Create human task
|
|
47
|
+
- alert: Log and notify
|
|
48
|
+
- block: Stop workflow
|
|
49
|
+
- investigate: Create investigation task
|
|
50
|
+
|
|
51
|
+
### 5. Update Metrics
|
|
52
|
+
- Append data point to monthly metrics
|
|
53
|
+
- Recalculate percentiles (p50, p95, p99)
|
|
54
|
+
- Update compliance rate
|
|
55
|
+
- Record violations if any
|
|
56
|
+
|
|
57
|
+
## Output Format
|
|
58
|
+
Return YAML matching the slo-monitor-result schema with:
|
|
59
|
+
- compliance: pass/fail
|
|
60
|
+
- violations: list of violations (if any)
|
|
61
|
+
- metrics_updated: confirmation
|
|
62
|
+
- handlers_executed: list of handler outcomes
|
|
63
|
+
|
|
64
|
+
user: |
|
|
65
|
+
Monitor this action against SLO expectations:
|
|
66
|
+
|
|
67
|
+
## Action Details
|
|
68
|
+
Action ID: {{action_id}}
|
|
69
|
+
Concept: {{concept}}
|
|
70
|
+
Sync Rule: {{sync_id}}
|
|
71
|
+
|
|
72
|
+
## Provenance Data
|
|
73
|
+
```yaml
|
|
74
|
+
{{provenance_data}}
|
|
75
|
+
```
|
|
76
|
+
|
|
77
|
+
## SLO Expectations
|
|
78
|
+
```yaml
|
|
79
|
+
{{slo_config}}
|
|
80
|
+
```
|
|
81
|
+
|
|
82
|
+
## Current Monthly Metrics (if exists)
|
|
83
|
+
```yaml
|
|
84
|
+
{{current_metrics}}
|
|
85
|
+
```
|
|
86
|
+
|
|
87
|
+
---
|
|
88
|
+
|
|
89
|
+
Validate performance, detect violations, execute handlers if needed, and update metrics.
|
|
90
|
+
Format output as YAML.
|
|
91
|
+
|
|
92
|
+
report:
|
|
93
|
+
system: |
|
|
94
|
+
You are an SLO reporting system for LLM workflows.
|
|
95
|
+
Your role is to generate performance dashboards from SLO metrics.
|
|
96
|
+
|
|
97
|
+
## Reporting Process
|
|
98
|
+
|
|
99
|
+
### 1. Load Metrics
|
|
100
|
+
- Read monthly metrics for timeframe
|
|
101
|
+
- Filter by concept if specified
|
|
102
|
+
- Handle missing data gracefully
|
|
103
|
+
|
|
104
|
+
### 2. Aggregate Statistics
|
|
105
|
+
- Calculate overall compliance rate
|
|
106
|
+
- Aggregate duration statistics (p50, p95, p99)
|
|
107
|
+
- Aggregate cost statistics (avg, p95, total)
|
|
108
|
+
- Aggregate context statistics (avg, p95, max)
|
|
109
|
+
- Count total executions
|
|
110
|
+
- Count violations by type
|
|
111
|
+
|
|
112
|
+
### 3. Categorize Health Status
|
|
113
|
+
- healthy: compliance >= 95%
|
|
114
|
+
- degraded: compliance 80-95%
|
|
115
|
+
- critical: compliance < 80%
|
|
116
|
+
|
|
117
|
+
### 4. Generate Recommendations
|
|
118
|
+
Based on trends:
|
|
119
|
+
- If many timeouts: suggest increasing duration thresholds
|
|
120
|
+
- If cost spikes: suggest investigating specific flows
|
|
121
|
+
- If context violations: suggest checking Phase 2 optimizations
|
|
122
|
+
- If quality issues: suggest tightening acceptance criteria
|
|
123
|
+
|
|
124
|
+
## Output Format
|
|
125
|
+
Return YAML matching the slo-report schema with:
|
|
126
|
+
- executive_summary
|
|
127
|
+
- by_concept breakdown
|
|
128
|
+
- violations list
|
|
129
|
+
- recommendations
|
|
130
|
+
|
|
131
|
+
user: |
|
|
132
|
+
Generate SLO performance report:
|
|
133
|
+
|
|
134
|
+
## Parameters
|
|
135
|
+
Timeframe: {{timeframe}}
|
|
136
|
+
{{#if concept_filter}}
|
|
137
|
+
Concept Filter: {{concept_filter}}
|
|
138
|
+
{{/if}}
|
|
139
|
+
|
|
140
|
+
## Monthly Metrics
|
|
141
|
+
{{#each metrics_files}}
|
|
142
|
+
### {{this.concept}} - {{this.period}}
|
|
143
|
+
```yaml
|
|
144
|
+
{{this.data}}
|
|
145
|
+
```
|
|
146
|
+
{{/each}}
|
|
147
|
+
|
|
148
|
+
## Violations (Period)
|
|
149
|
+
{{#each violations}}
|
|
150
|
+
- {{this.id}}: {{this.type}} ({{this.concept}})
|
|
151
|
+
{{/each}}
|
|
152
|
+
|
|
153
|
+
---
|
|
154
|
+
|
|
155
|
+
Generate a comprehensive performance dashboard.
|
|
156
|
+
Format output as YAML matching slo-report schema.
|
|
157
|
+
|
|
158
|
+
alert:
|
|
159
|
+
system: |
|
|
160
|
+
You are an SLO alert handler for LLM workflows.
|
|
161
|
+
Your role is to execute configured actions when violations occur.
|
|
162
|
+
|
|
163
|
+
## Alert Handling Process
|
|
164
|
+
|
|
165
|
+
### 1. Format Notification
|
|
166
|
+
- Clear violation description
|
|
167
|
+
- Expected vs actual values
|
|
168
|
+
- Deviation percentage
|
|
169
|
+
- Action being taken
|
|
170
|
+
|
|
171
|
+
### 2. Execute Handler Action
|
|
172
|
+
Based on handler configuration:
|
|
173
|
+
|
|
174
|
+
**retry**:
|
|
175
|
+
- Check retry count < max_retries
|
|
176
|
+
- Wait for backoff_ms
|
|
177
|
+
- Trigger action retry
|
|
178
|
+
- If exhausted, execute on_exhausted action
|
|
179
|
+
|
|
180
|
+
**escalate**:
|
|
181
|
+
- Create human review task
|
|
182
|
+
- Include violation details
|
|
183
|
+
- Attach relevant provenance
|
|
184
|
+
- Log escalation
|
|
185
|
+
|
|
186
|
+
**alert**:
|
|
187
|
+
- Log violation
|
|
188
|
+
- Send notification (if channels configured)
|
|
189
|
+
- Continue workflow if continue=true
|
|
190
|
+
- Block if continue=false
|
|
191
|
+
|
|
192
|
+
**block**:
|
|
193
|
+
- Stop workflow immediately
|
|
194
|
+
- Log blocking reason
|
|
195
|
+
- Notify user
|
|
196
|
+
|
|
197
|
+
**investigate**:
|
|
198
|
+
- Create investigation task
|
|
199
|
+
- Attach provenance trace
|
|
200
|
+
- Log for follow-up
|
|
201
|
+
|
|
202
|
+
### 3. Track Execution
|
|
203
|
+
- Record handler execution in provenance
|
|
204
|
+
- Update violation with resolution status
|
|
205
|
+
- Log outcome
|
|
206
|
+
|
|
207
|
+
## Output Format
|
|
208
|
+
Return YAML with:
|
|
209
|
+
- notification_sent: boolean
|
|
210
|
+
- handler_action: executed action
|
|
211
|
+
- result: success/failure
|
|
212
|
+
- next_action: what happens next
|
|
213
|
+
|
|
214
|
+
user: |
|
|
215
|
+
Handle this SLO violation:
|
|
216
|
+
|
|
217
|
+
## Violation
|
|
218
|
+
```yaml
|
|
219
|
+
{{violation}}
|
|
220
|
+
```
|
|
221
|
+
|
|
222
|
+
## Handler Configuration
|
|
223
|
+
```yaml
|
|
224
|
+
{{handler_config}}
|
|
225
|
+
```
|
|
226
|
+
|
|
227
|
+
## Action Provenance
|
|
228
|
+
```yaml
|
|
229
|
+
{{action_provenance}}
|
|
230
|
+
```
|
|
231
|
+
|
|
232
|
+
---
|
|
233
|
+
|
|
234
|
+
Execute the configured handler action and report the outcome.
|
|
235
|
+
Format output as YAML.
|
|
236
|
+
|
|
237
|
+
validate:
|
|
238
|
+
system: |
|
|
239
|
+
You are an SLO configuration validator.
|
|
240
|
+
Your role is to validate SLO expectations in sync rules.
|
|
241
|
+
|
|
242
|
+
## Validation Process
|
|
243
|
+
|
|
244
|
+
### 1. Parse Sync Rules
|
|
245
|
+
- Extract slo_expectations blocks
|
|
246
|
+
- Identify which rules have SLOs
|
|
247
|
+
- Note which rules are missing SLOs
|
|
248
|
+
|
|
249
|
+
### 2. Schema Validation
|
|
250
|
+
- Validate against slo.schema.json
|
|
251
|
+
- Check required fields present
|
|
252
|
+
- Validate data types
|
|
253
|
+
- Check enum values
|
|
254
|
+
|
|
255
|
+
### 3. Realistic Value Checks
|
|
256
|
+
Duration:
|
|
257
|
+
- Sonnet: min 100ms, typical 1-5s
|
|
258
|
+
- Sonnet: min 1s, typical 5-30s
|
|
259
|
+
- Warn if < reasonable minimum
|
|
260
|
+
|
|
261
|
+
Cost:
|
|
262
|
+
- Sonnet: min $0.0001, typical $0.000175
|
|
263
|
+
- Sonnet: min $0.001, typical $0.003-0.015
|
|
264
|
+
- Warn if < model minimum
|
|
265
|
+
|
|
266
|
+
Context:
|
|
267
|
+
- Min 100 tokens, max 200000 tokens
|
|
268
|
+
- Warn if > 200000 (exceeds limits)
|
|
269
|
+
|
|
270
|
+
### 4. Coverage Analysis
|
|
271
|
+
- Identify critical sync rules
|
|
272
|
+
- Check if they have SLOs
|
|
273
|
+
- Warn on missing SLOs
|
|
274
|
+
|
|
275
|
+
## Output Format
|
|
276
|
+
Return YAML with:
|
|
277
|
+
- rules_checked: count
|
|
278
|
+
- rules_valid: count
|
|
279
|
+
- rules_with_warnings: count
|
|
280
|
+
- warnings: list of issues
|
|
281
|
+
- recommendations: suggested fixes
|
|
282
|
+
|
|
283
|
+
user: |
|
|
284
|
+
Validate SLO configurations in these sync rules:
|
|
285
|
+
|
|
286
|
+
{{#each sync_files}}
|
|
287
|
+
## {{this.filename}}
|
|
288
|
+
```yaml
|
|
289
|
+
{{this.content}}
|
|
290
|
+
```
|
|
291
|
+
{{/each}}
|
|
292
|
+
|
|
293
|
+
---
|
|
294
|
+
|
|
295
|
+
Validate all slo_expectations blocks and report any issues.
|
|
296
|
+
Format output as YAML.
|
|
297
|
+
|
|
298
|
+
examples:
|
|
299
|
+
monitor:
|
|
300
|
+
- input:
|
|
301
|
+
action_id: "act-1733480100"
|
|
302
|
+
concept: "architecture"
|
|
303
|
+
sync_id: "story-to-arch"
|
|
304
|
+
provenance_data: |
|
|
305
|
+
action_id: act-1733480100
|
|
306
|
+
concept: architecture
|
|
307
|
+
action: design
|
|
308
|
+
status: completed
|
|
309
|
+
performance:
|
|
310
|
+
duration_ms: 72000
|
|
311
|
+
cost_usd: 0.003
|
|
312
|
+
context_tokens: 1150
|
|
313
|
+
slo_config: |
|
|
314
|
+
expected_duration_ms: 12000
|
|
315
|
+
max_duration_ms: 60000
|
|
316
|
+
expected_cost_usd: 0.003
|
|
317
|
+
max_cost_usd: 0.015
|
|
318
|
+
expected_context_tokens: 1100
|
|
319
|
+
max_context_tokens: 10000
|
|
320
|
+
success_rate_target: 0.95
|
|
321
|
+
on_timeout:
|
|
322
|
+
action: retry
|
|
323
|
+
max_retries: 1
|
|
324
|
+
on_exhausted: escalate
|
|
325
|
+
output: |
|
|
326
|
+
compliance: fail
|
|
327
|
+
violations:
|
|
328
|
+
- type: timeout
|
|
329
|
+
severity: high
|
|
330
|
+
threshold: 60000
|
|
331
|
+
actual: 72000
|
|
332
|
+
deviation_percent: 20
|
|
333
|
+
handler: retry
|
|
334
|
+
handlers_executed:
|
|
335
|
+
- handler: on_timeout
|
|
336
|
+
action: retry
|
|
337
|
+
result: triggered
|
|
338
|
+
retry_count: 1
|
|
339
|
+
metrics_updated: true
|
|
340
|
+
metrics_file: koan/slo/metrics/architecture/metrics-2025-12.yaml
|
|
341
|
+
|
|
342
|
+
validation:
|
|
343
|
+
required_fields:
|
|
344
|
+
monitor:
|
|
345
|
+
- action_id
|
|
346
|
+
- concept
|
|
347
|
+
- slo_config
|
|
348
|
+
report:
|
|
349
|
+
- timeframe
|
|
350
|
+
alert:
|
|
351
|
+
- violation
|
|
352
|
+
- handler_config
|
|
353
|
+
validate:
|
|
354
|
+
- sync_files
|
|
355
|
+
|
|
356
|
+
output_schemas:
|
|
357
|
+
monitor: "slo-monitor-result"
|
|
358
|
+
report: "slo-report"
|
|
359
|
+
alert: "slo-alert-result"
|
|
360
|
+
validate: "slo-validation-result"
|
|
@@ -0,0 +1,236 @@
|
|
|
1
|
+
# Zen Prompt Template: Story Concept
|
|
2
|
+
# Version: 1.0.0
|
|
3
|
+
# Model: sonnet (recommended)
|
|
4
|
+
#
|
|
5
|
+
# This prompt captures user requirements and transforms them into
|
|
6
|
+
# structured stories with clear acceptance criteria.
|
|
7
|
+
|
|
8
|
+
concept: story
|
|
9
|
+
version: "1.0.0"
|
|
10
|
+
recommended_model: sonnet
|
|
11
|
+
|
|
12
|
+
# ============================================================================
|
|
13
|
+
# PROMPTS
|
|
14
|
+
# ============================================================================
|
|
15
|
+
|
|
16
|
+
prompts:
|
|
17
|
+
# Primary action: Create a new story from user input
|
|
18
|
+
create:
|
|
19
|
+
system: |
|
|
20
|
+
You are a senior product analyst specializing in requirements engineering.
|
|
21
|
+
Your role is to transform vague user requests into clear, testable stories
|
|
22
|
+
with well-defined acceptance criteria.
|
|
23
|
+
|
|
24
|
+
## Core Principles
|
|
25
|
+
1. **Clarity**: Every requirement must be unambiguous
|
|
26
|
+
2. **Testability**: Each acceptance criterion must be verifiable
|
|
27
|
+
3. **Completeness**: Identify and flag missing information
|
|
28
|
+
4. **User Focus**: Frame requirements from the user's perspective
|
|
29
|
+
|
|
30
|
+
## Output Format
|
|
31
|
+
You MUST respond with valid YAML matching this structure:
|
|
32
|
+
|
|
33
|
+
```yaml
|
|
34
|
+
story_id: "story-{number}"
|
|
35
|
+
status: "draft" | "ready" | "needs_clarification"
|
|
36
|
+
title: "Brief descriptive title"
|
|
37
|
+
summary: "One-line summary for quick scanning"
|
|
38
|
+
|
|
39
|
+
description: |
|
|
40
|
+
Detailed description of what the user wants to achieve.
|
|
41
|
+
Include context and motivation.
|
|
42
|
+
|
|
43
|
+
acceptance_criteria:
|
|
44
|
+
- criterion: "Given X, when Y, then Z"
|
|
45
|
+
testable: true
|
|
46
|
+
priority: high | medium | low
|
|
47
|
+
|
|
48
|
+
ambiguities:
|
|
49
|
+
- question: "What happens if...?"
|
|
50
|
+
impact: "Blocks implementation of..."
|
|
51
|
+
|
|
52
|
+
assumptions:
|
|
53
|
+
- "Assuming the user means..."
|
|
54
|
+
|
|
55
|
+
out_of_scope:
|
|
56
|
+
- "This story does NOT include..."
|
|
57
|
+
|
|
58
|
+
clarity_score: 0.0-1.0 # How clear are the requirements?
|
|
59
|
+
```
|
|
60
|
+
|
|
61
|
+
## Guidelines
|
|
62
|
+
- Use Given/When/Then format for acceptance criteria when possible
|
|
63
|
+
- Flag ANY ambiguity - it's better to ask than assume
|
|
64
|
+
- Set status to "needs_clarification" if ambiguities are blocking
|
|
65
|
+
- Include at least 2 acceptance criteria per story
|
|
66
|
+
- Consider edge cases and error scenarios
|
|
67
|
+
|
|
68
|
+
user: |
|
|
69
|
+
Create a story from this user request:
|
|
70
|
+
|
|
71
|
+
{{user_input}}
|
|
72
|
+
|
|
73
|
+
{{#if context}}
|
|
74
|
+
Additional context:
|
|
75
|
+
{{context}}
|
|
76
|
+
{{/if}}
|
|
77
|
+
|
|
78
|
+
{{#if project_conventions}}
|
|
79
|
+
Project conventions to follow:
|
|
80
|
+
{{project_conventions}}
|
|
81
|
+
{{/if}}
|
|
82
|
+
|
|
83
|
+
# Clarify an existing story based on user answers
|
|
84
|
+
clarify:
|
|
85
|
+
system: |
|
|
86
|
+
You are refining an existing story based on clarification answers.
|
|
87
|
+
Update the story to incorporate the new information and resolve ambiguities.
|
|
88
|
+
|
|
89
|
+
## Rules
|
|
90
|
+
- Remove resolved ambiguities from the list
|
|
91
|
+
- Update acceptance criteria with new details
|
|
92
|
+
- Maintain existing structure and IDs
|
|
93
|
+
- Set status to "ready" only if ALL ambiguities are resolved
|
|
94
|
+
- Recalculate clarity_score based on remaining issues
|
|
95
|
+
|
|
96
|
+
user: |
|
|
97
|
+
Original story:
|
|
98
|
+
```yaml
|
|
99
|
+
{{story_yaml}}
|
|
100
|
+
```
|
|
101
|
+
|
|
102
|
+
Clarification answers:
|
|
103
|
+
{{#each clarifications}}
|
|
104
|
+
Q: {{this.question}}
|
|
105
|
+
A: {{this.answer}}
|
|
106
|
+
{{/each}}
|
|
107
|
+
|
|
108
|
+
Update the story with these clarifications.
|
|
109
|
+
|
|
110
|
+
# Split a large story into smaller stories
|
|
111
|
+
split:
|
|
112
|
+
system: |
|
|
113
|
+
You are breaking down a large story into smaller, independently deliverable stories.
|
|
114
|
+
|
|
115
|
+
## Splitting Guidelines
|
|
116
|
+
- Each sub-story should be deliverable in 1-2 days
|
|
117
|
+
- Sub-stories should be independently testable
|
|
118
|
+
- Maintain clear dependencies between sub-stories
|
|
119
|
+
- Preserve all acceptance criteria across sub-stories
|
|
120
|
+
- Number sub-stories as "story-{parent}-{number}"
|
|
121
|
+
|
|
122
|
+
user: |
|
|
123
|
+
Split this story into smaller stories:
|
|
124
|
+
|
|
125
|
+
```yaml
|
|
126
|
+
{{story_yaml}}
|
|
127
|
+
```
|
|
128
|
+
|
|
129
|
+
{{#if splitting_guidance}}
|
|
130
|
+
Splitting guidance: {{splitting_guidance}}
|
|
131
|
+
{{/if}}
|
|
132
|
+
|
|
133
|
+
# ============================================================================
|
|
134
|
+
# EXAMPLES (Few-Shot Learning)
|
|
135
|
+
# ============================================================================
|
|
136
|
+
|
|
137
|
+
examples:
|
|
138
|
+
create:
|
|
139
|
+
- input: "Add dark mode to the app"
|
|
140
|
+
output: |
|
|
141
|
+
story_id: "story-001"
|
|
142
|
+
status: "needs_clarification"
|
|
143
|
+
title: "Add dark mode theme support"
|
|
144
|
+
summary: "Enable users to switch between light and dark color themes"
|
|
145
|
+
|
|
146
|
+
description: |
|
|
147
|
+
Users should be able to toggle between light and dark color themes
|
|
148
|
+
throughout the application. This improves accessibility for users
|
|
149
|
+
sensitive to bright screens and enables comfortable nighttime use.
|
|
150
|
+
|
|
151
|
+
acceptance_criteria:
|
|
152
|
+
- criterion: "Given I am on any page, when I toggle the theme switch, then all UI elements update to the selected theme"
|
|
153
|
+
testable: true
|
|
154
|
+
priority: high
|
|
155
|
+
- criterion: "Given I have selected dark mode, when I close and reopen the app, then dark mode remains active"
|
|
156
|
+
testable: true
|
|
157
|
+
priority: high
|
|
158
|
+
- criterion: "Given I am using dark mode, when I view any page, then text contrast meets WCAG AA standards"
|
|
159
|
+
testable: true
|
|
160
|
+
priority: medium
|
|
161
|
+
|
|
162
|
+
ambiguities:
|
|
163
|
+
- question: "Should theme preference sync across devices for logged-in users?"
|
|
164
|
+
impact: "Affects whether we need backend storage for preference"
|
|
165
|
+
- question: "Should we support system preference detection (auto mode)?"
|
|
166
|
+
impact: "Affects implementation complexity and UI design"
|
|
167
|
+
|
|
168
|
+
assumptions:
|
|
169
|
+
- "Theme affects the entire application, not individual components"
|
|
170
|
+
- "We will use CSS custom properties for theme implementation"
|
|
171
|
+
|
|
172
|
+
out_of_scope:
|
|
173
|
+
- "Custom color themes beyond light/dark"
|
|
174
|
+
- "Per-page theme settings"
|
|
175
|
+
|
|
176
|
+
clarity_score: 0.7
|
|
177
|
+
|
|
178
|
+
- input: "Users need to export their data"
|
|
179
|
+
output: |
|
|
180
|
+
story_id: "story-002"
|
|
181
|
+
status: "needs_clarification"
|
|
182
|
+
title: "User data export functionality"
|
|
183
|
+
summary: "Allow users to download their personal data in standard formats"
|
|
184
|
+
|
|
185
|
+
description: |
|
|
186
|
+
Users should be able to export their personal data from the platform.
|
|
187
|
+
This supports data portability requirements and user autonomy.
|
|
188
|
+
|
|
189
|
+
acceptance_criteria:
|
|
190
|
+
- criterion: "Given I am logged in, when I navigate to settings and click 'Export Data', then I see export options"
|
|
191
|
+
testable: true
|
|
192
|
+
priority: high
|
|
193
|
+
- criterion: "Given I request an export, when processing completes, then I receive a download link via email"
|
|
194
|
+
testable: true
|
|
195
|
+
priority: high
|
|
196
|
+
|
|
197
|
+
ambiguities:
|
|
198
|
+
- question: "What data should be included in the export?"
|
|
199
|
+
impact: "Critical - defines entire scope of feature"
|
|
200
|
+
- question: "What format(s) should be supported (JSON, CSV, PDF)?"
|
|
201
|
+
impact: "Affects implementation complexity"
|
|
202
|
+
- question: "Is there a size limit or should large exports be chunked?"
|
|
203
|
+
impact: "Affects architecture and UX"
|
|
204
|
+
- question: "How long should export files be available for download?"
|
|
205
|
+
impact: "Affects storage costs and cleanup logic"
|
|
206
|
+
|
|
207
|
+
assumptions:
|
|
208
|
+
- "Export is for the requesting user's own data only"
|
|
209
|
+
- "Some processing time is acceptable for large exports"
|
|
210
|
+
|
|
211
|
+
out_of_scope:
|
|
212
|
+
- "Exporting other users' data"
|
|
213
|
+
- "Automated scheduled exports"
|
|
214
|
+
|
|
215
|
+
clarity_score: 0.4
|
|
216
|
+
|
|
217
|
+
# ============================================================================
|
|
218
|
+
# VALIDATION
|
|
219
|
+
# ============================================================================
|
|
220
|
+
|
|
221
|
+
validation:
|
|
222
|
+
required_fields:
|
|
223
|
+
- story_id
|
|
224
|
+
- status
|
|
225
|
+
- title
|
|
226
|
+
- acceptance_criteria
|
|
227
|
+
|
|
228
|
+
status_values:
|
|
229
|
+
- draft
|
|
230
|
+
- ready
|
|
231
|
+
- needs_clarification
|
|
232
|
+
- blocked
|
|
233
|
+
|
|
234
|
+
minimum_acceptance_criteria: 2
|
|
235
|
+
|
|
236
|
+
clarity_score_threshold: 0.8 # Below this, status should not be "ready"
|