@dv.nghiem/flowdeck 0.4.1 β†’ 0.4.3

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.
Files changed (103) hide show
  1. package/README.md +3 -0
  2. package/dist/agents/index.d.ts +13 -0
  3. package/dist/agents/index.d.ts.map +1 -1
  4. package/dist/config/schema.d.ts +19 -0
  5. package/dist/config/schema.d.ts.map +1 -1
  6. package/dist/hooks/compaction-hook.d.ts +6 -1
  7. package/dist/hooks/compaction-hook.d.ts.map +1 -1
  8. package/dist/hooks/shell-env-hook.d.ts.map +1 -1
  9. package/dist/index.d.ts.map +1 -1
  10. package/dist/index.js +1246 -321
  11. package/dist/mcp/index.d.ts +2 -3
  12. package/dist/mcp/index.d.ts.map +1 -1
  13. package/dist/services/artifact-store.d.ts +39 -0
  14. package/dist/services/artifact-store.d.ts.map +1 -0
  15. package/dist/services/artifact-store.test.d.ts +2 -0
  16. package/dist/services/artifact-store.test.d.ts.map +1 -0
  17. package/dist/services/context-assembler.d.ts +29 -0
  18. package/dist/services/context-assembler.d.ts.map +1 -0
  19. package/dist/services/context-assembler.test.d.ts +2 -0
  20. package/dist/services/context-assembler.test.d.ts.map +1 -0
  21. package/dist/services/cost-budget.d.ts +53 -0
  22. package/dist/services/cost-budget.d.ts.map +1 -0
  23. package/dist/services/cost-budget.test.d.ts +2 -0
  24. package/dist/services/cost-budget.test.d.ts.map +1 -0
  25. package/dist/services/cost-estimator.d.ts +103 -0
  26. package/dist/services/cost-estimator.d.ts.map +1 -0
  27. package/dist/services/cost-estimator.test.d.ts +2 -0
  28. package/dist/services/cost-estimator.test.d.ts.map +1 -0
  29. package/dist/services/draft-verifier.d.ts +48 -0
  30. package/dist/services/draft-verifier.d.ts.map +1 -0
  31. package/dist/services/draft-verifier.test.d.ts +2 -0
  32. package/dist/services/draft-verifier.test.d.ts.map +1 -0
  33. package/dist/services/index.d.ts +13 -0
  34. package/dist/services/index.d.ts.map +1 -1
  35. package/dist/services/lazy-rule-loader.d.ts +104 -0
  36. package/dist/services/lazy-rule-loader.d.ts.map +1 -0
  37. package/dist/services/lazy-rule-loader.test.d.ts +23 -0
  38. package/dist/services/lazy-rule-loader.test.d.ts.map +1 -0
  39. package/dist/services/model-router-ext.test.d.ts +2 -0
  40. package/dist/services/model-router-ext.test.d.ts.map +1 -0
  41. package/dist/services/model-router.d.ts +52 -0
  42. package/dist/services/model-router.d.ts.map +1 -0
  43. package/dist/services/model-router.test.d.ts +2 -0
  44. package/dist/services/model-router.test.d.ts.map +1 -0
  45. package/dist/services/prompt-cache-ext.test.d.ts +2 -0
  46. package/dist/services/prompt-cache-ext.test.d.ts.map +1 -0
  47. package/dist/services/prompt-cache.d.ts +61 -0
  48. package/dist/services/prompt-cache.d.ts.map +1 -0
  49. package/dist/services/prompt-cache.test.d.ts +2 -0
  50. package/dist/services/prompt-cache.test.d.ts.map +1 -0
  51. package/dist/services/rtk-manager.d.ts +80 -0
  52. package/dist/services/rtk-manager.d.ts.map +1 -0
  53. package/dist/services/rtk-manager.test.d.ts +2 -0
  54. package/dist/services/rtk-manager.test.d.ts.map +1 -0
  55. package/dist/services/rtk-policy.d.ts +26 -0
  56. package/dist/services/rtk-policy.d.ts.map +1 -0
  57. package/dist/services/rtk-policy.test.d.ts +2 -0
  58. package/dist/services/rtk-policy.test.d.ts.map +1 -0
  59. package/dist/services/rule-engine.d.ts +29 -0
  60. package/dist/services/rule-engine.d.ts.map +1 -0
  61. package/dist/services/rule-engine.test.d.ts +2 -0
  62. package/dist/services/rule-engine.test.d.ts.map +1 -0
  63. package/dist/services/task-batcher.d.ts +48 -0
  64. package/dist/services/task-batcher.d.ts.map +1 -0
  65. package/dist/services/task-batcher.test.d.ts +2 -0
  66. package/dist/services/task-batcher.test.d.ts.map +1 -0
  67. package/dist/services/telemetry.d.ts +6 -0
  68. package/dist/services/telemetry.d.ts.map +1 -1
  69. package/dist/services/token-budget.d.ts +44 -0
  70. package/dist/services/token-budget.d.ts.map +1 -0
  71. package/dist/services/token-budget.test.d.ts +2 -0
  72. package/dist/services/token-budget.test.d.ts.map +1 -0
  73. package/dist/services/token-metrics-ext.test.d.ts +2 -0
  74. package/dist/services/token-metrics-ext.test.d.ts.map +1 -0
  75. package/dist/services/token-metrics.d.ts +97 -0
  76. package/dist/services/token-metrics.d.ts.map +1 -0
  77. package/dist/services/token-metrics.test.d.ts +2 -0
  78. package/dist/services/token-metrics.test.d.ts.map +1 -0
  79. package/dist/tools/codegraph-tool.d.ts.map +1 -1
  80. package/dist/tools/council.d.ts.map +1 -1
  81. package/dist/tools/delegate.d.ts.map +1 -1
  82. package/dist/tools/load-rules.d.ts +25 -0
  83. package/dist/tools/load-rules.d.ts.map +1 -0
  84. package/dist/tools/rtk-setup.d.ts +22 -0
  85. package/dist/tools/rtk-setup.d.ts.map +1 -0
  86. package/dist/tools/run-pipeline.d.ts.map +1 -1
  87. package/docs/commands/fd-map-codebase.md +2 -1
  88. package/docs/configuration/index.md +26 -0
  89. package/docs/getting-started/installation.md +20 -0
  90. package/docs/reference/hooks.md +16 -1
  91. package/docs/reference/rtk.md +162 -0
  92. package/package.json +1 -1
  93. package/src/rules/common/agent-orchestration.md +7 -0
  94. package/src/rules/common/behavioral.md +7 -0
  95. package/src/rules/common/coding-style.md +7 -0
  96. package/src/rules/common/git-workflow.md +7 -0
  97. package/src/rules/common/security.md +7 -0
  98. package/src/rules/common/testing.md +7 -0
  99. package/src/rules/golang/patterns.md +7 -0
  100. package/src/rules/java/patterns.md +7 -0
  101. package/src/rules/python/patterns.md +7 -0
  102. package/src/rules/rust/patterns.md +7 -0
  103. package/src/rules/typescript/patterns.md +7 -0
package/README.md CHANGED
@@ -24,6 +24,8 @@ FlowDeck adds a structured, multi-agent development workflow to OpenCode. It coo
24
24
  - πŸ’Ž **Ensemble Reasoning** β€” `council` tool for synthesized consensus from multiple specialized agents
25
25
  - πŸ—ΊοΈ **Codegraph Integration** β€” Codegraph-backed code understanding maps the codebase at indexing time and serves as the shared intelligence layer for all commands and agents.
26
26
  - βš™οΈ **Model-agnostic** β€” no model is hardcoded. Every agent uses your currently selected OpenCode model. Override per-agent in `flowdeck.json`.
27
+ - πŸ’° **Cost Optimization** β€” USD cost estimation (40+ models), per-workflow budget enforcement, retry-cost tracking, and concurrency limits to control total production spend.
28
+ - πŸ“¦ **rtk Integration** β€” optional [rtk](https://github.com/rtk-ai/rtk) output-compression layer compresses noisy CLI output (git, npm, test runners, linters) 60–90% before it reaches the model. Auto-detected, telemetry-disabled by default.
27
29
 
28
30
  ---
29
31
 
@@ -158,6 +160,7 @@ Agents not listed in `agents` inherit the active OpenCode model. See [Configurat
158
160
  | [docs/USER_GUIDE.md](docs/USER_GUIDE.md) | Full agent and skill usage reference with examples |
159
161
  | [docs/workflows.md](docs/workflows.md) | Command architecture and workflow patterns |
160
162
  | [docs/intelligence.md](docs/intelligence.md) | AI safety features: patch trust, volatility map, failure replay, regression prediction |
163
+ | [docs/reference/rtk.md](docs/reference/rtk.md) | rtk CLI output compression: detection, telemetry, supported commands, setup |
161
164
 
162
165
  ---
163
166
 
@@ -39,5 +39,18 @@ export declare function createAgents(agentModels?: Record<string, string | undef
39
39
  * Pass agentModels to apply per-agent model overrides from flowdeck.json.
40
40
  */
41
41
  export declare function getAgentConfigs(agentModels?: Record<string, string | undefined>): Record<string, AgentConfig>;
42
+ /**
43
+ * Create an orchestrator agent with its agent-directory prompt slimmed to only
44
+ * the agents relevant to the given workflow stage.
45
+ *
46
+ * This reduces the orchestrator's ~3K token agent-listing to ~500-800 tokens
47
+ * (saving ~60-80% on that section) while retaining full orchestrator reasoning.
48
+ *
49
+ * @param stage - workflow stage: discuss | plan | design | execute | verify | fix-bug | write-docs
50
+ * @param model - optional model override
51
+ * @param customPrompt - optional full prompt override
52
+ * @param customAppendPrompt - optional prompt suffix
53
+ */
54
+ export declare function createOrchestratorAgentForStage(stage: string, model?: string, customPrompt?: string, customAppendPrompt?: string): AgentDefinition;
42
55
  export { createOrchestratorAgent, createPlannerAgent, createBackendCoderAgent, createFrontendCoderAgent, createDevopsAgent, createPlanCheckerAgent, createTesterAgent, createReviewerAgent, createResearcherAgent, createWriterAgent, createSecurityAuditorAgent, createDocUpdaterAgent, createMapperAgent, createCodeExplorerAgent, createDebugSpecialistAgent, createBuildErrorResolverAgent, createTaskSplitterAgent, createDiscusserAgent, createArchitectAgent, createRiskAnalystAgent, createPolicyEnforcerAgent, createPerformanceOptimizerAgent, createRefactorGuideAgent, createDesignAgent, createSupervisorAgent, };
43
56
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/agents/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAEvD,OAAO,KAAK,EAAE,eAAe,EAAgB,MAAM,SAAS,CAAC;AAE7D,OAAO,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AACxC,YAAY,EAAE,eAAe,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAG7D,OAAO,EAAE,uBAAuB,EAAE,MAAM,gBAAgB,CAAC;AACzD,OAAO,EAAE,kBAAkB,EAAE,sBAAsB,EAAE,MAAM,WAAW,CAAC;AACvE,OAAO,EACL,uBAAuB,EACvB,wBAAwB,EACxB,iBAAiB,EAClB,MAAM,SAAS,CAAC;AACjB,OAAO,EAAE,iBAAiB,EAAE,MAAM,UAAU,CAAC;AAC7C,OAAO,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAC;AACjD,OAAO,EAAE,qBAAqB,EAAE,MAAM,cAAc,CAAC;AACrD,OAAO,EAAE,iBAAiB,EAAE,MAAM,UAAU,CAAC;AAC7C,OAAO,EAAE,0BAA0B,EAAE,MAAM,oBAAoB,CAAC;AAChE,OAAO,EAAE,qBAAqB,EAAE,MAAM,eAAe,CAAC;AACtD,OAAO,EAAE,iBAAiB,EAAE,MAAM,UAAU,CAAC;AAC7C,OAAO,EAAE,uBAAuB,EAAE,MAAM,iBAAiB,CAAC;AAC1D,OAAO,EAAE,0BAA0B,EAAE,6BAA6B,EAAE,MAAM,SAAS,CAAC;AACpF,OAAO,EACL,uBAAuB,EACvB,oBAAoB,EACrB,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAC;AACnD,OAAO,EAAE,sBAAsB,EAAE,MAAM,gBAAgB,CAAC;AACxD,OAAO,EAAE,yBAAyB,EAAE,MAAM,mBAAmB,CAAC;AAC9D,OAAO,EACL,+BAA+B,EAC/B,wBAAwB,EACzB,MAAM,eAAe,CAAC;AAEvB,OAAO,EAAE,iBAAiB,EAAE,MAAM,UAAU,CAAC;AAC7C,OAAO,EAAE,qBAAqB,EAAE,MAAM,cAAc,CAAC;AAErD,8CAA8C;AAC9C,eAAO,MAAM,WAAW,EAAE,SAAS,MAAM,EA2B/B,CAAC;AAGX,MAAM,MAAM,SAAS,GAAG,SAAS,GAAG,UAAU,GAAG,KAAK,CAAC;AAmBvD;;;GAGG;AACH,wBAAgB,WAAW,CACzB,IAAI,EAAE,MAAM,EACZ,KAAK,CAAC,EAAE,MAAM,EACd,YAAY,CAAC,EAAE,MAAM,EACrB,kBAAkB,CAAC,EAAE,MAAM,GAC1B,eAAe,GAAG,SAAS,CAkH7B;AAED;;;GAGG;AACH,wBAAgB,YAAY,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,GAAG,eAAe,EAAE,CAYhG;AAED;;;GAGG;AACH,wBAAgB,eAAe,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,WAAW,CAAC,CAuB7G;AAGD,OAAO,EACL,uBAAuB,EACvB,kBAAkB,EAClB,uBAAuB,EACvB,wBAAwB,EACxB,iBAAiB,EACjB,sBAAsB,EACtB,iBAAiB,EACjB,mBAAmB,EACnB,qBAAqB,EACrB,iBAAiB,EACjB,0BAA0B,EAC1B,qBAAqB,EACrB,iBAAiB,EACjB,uBAAuB,EACvB,0BAA0B,EAC1B,6BAA6B,EAC7B,uBAAuB,EACvB,oBAAoB,EACpB,oBAAoB,EACpB,sBAAsB,EACtB,yBAAyB,EACzB,+BAA+B,EAC/B,wBAAwB,EACxB,iBAAiB,EACjB,qBAAqB,GACtB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/agents/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAEvD,OAAO,KAAK,EAAE,eAAe,EAAgB,MAAM,SAAS,CAAC;AAE7D,OAAO,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AACxC,YAAY,EAAE,eAAe,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAG7D,OAAO,EAAE,uBAAuB,EAAE,MAAM,gBAAgB,CAAC;AACzD,OAAO,EAAE,kBAAkB,EAAE,sBAAsB,EAAE,MAAM,WAAW,CAAC;AACvE,OAAO,EACL,uBAAuB,EACvB,wBAAwB,EACxB,iBAAiB,EAClB,MAAM,SAAS,CAAC;AACjB,OAAO,EAAE,iBAAiB,EAAE,MAAM,UAAU,CAAC;AAC7C,OAAO,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAC;AACjD,OAAO,EAAE,qBAAqB,EAAE,MAAM,cAAc,CAAC;AACrD,OAAO,EAAE,iBAAiB,EAAE,MAAM,UAAU,CAAC;AAC7C,OAAO,EAAE,0BAA0B,EAAE,MAAM,oBAAoB,CAAC;AAChE,OAAO,EAAE,qBAAqB,EAAE,MAAM,eAAe,CAAC;AACtD,OAAO,EAAE,iBAAiB,EAAE,MAAM,UAAU,CAAC;AAC7C,OAAO,EAAE,uBAAuB,EAAE,MAAM,iBAAiB,CAAC;AAC1D,OAAO,EAAE,0BAA0B,EAAE,6BAA6B,EAAE,MAAM,SAAS,CAAC;AACpF,OAAO,EACL,uBAAuB,EACvB,oBAAoB,EACrB,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAC;AACnD,OAAO,EAAE,sBAAsB,EAAE,MAAM,gBAAgB,CAAC;AACxD,OAAO,EAAE,yBAAyB,EAAE,MAAM,mBAAmB,CAAC;AAC9D,OAAO,EACL,+BAA+B,EAC/B,wBAAwB,EACzB,MAAM,eAAe,CAAC;AAEvB,OAAO,EAAE,iBAAiB,EAAE,MAAM,UAAU,CAAC;AAC7C,OAAO,EAAE,qBAAqB,EAAE,MAAM,cAAc,CAAC;AAGrD,8CAA8C;AAC9C,eAAO,MAAM,WAAW,EAAE,SAAS,MAAM,EA2B/B,CAAC;AAGX,MAAM,MAAM,SAAS,GAAG,SAAS,GAAG,UAAU,GAAG,KAAK,CAAC;AAmBvD;;;GAGG;AACH,wBAAgB,WAAW,CACzB,IAAI,EAAE,MAAM,EACZ,KAAK,CAAC,EAAE,MAAM,EACd,YAAY,CAAC,EAAE,MAAM,EACrB,kBAAkB,CAAC,EAAE,MAAM,GAC1B,eAAe,GAAG,SAAS,CAkH7B;AAED;;;GAGG;AACH,wBAAgB,YAAY,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,GAAG,eAAe,EAAE,CAYhG;AAED;;;GAGG;AACH,wBAAgB,eAAe,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,WAAW,CAAC,CAuB7G;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,+BAA+B,CAC7C,KAAK,EAAE,MAAM,EACb,KAAK,CAAC,EAAE,MAAM,EACd,YAAY,CAAC,EAAE,MAAM,EACrB,kBAAkB,CAAC,EAAE,MAAM,GAC1B,eAAe,CAIjB;AAGD,OAAO,EACL,uBAAuB,EACvB,kBAAkB,EAClB,uBAAuB,EACvB,wBAAwB,EACxB,iBAAiB,EACjB,sBAAsB,EACtB,iBAAiB,EACjB,mBAAmB,EACnB,qBAAqB,EACrB,iBAAiB,EACjB,0BAA0B,EAC1B,qBAAqB,EACrB,iBAAiB,EACjB,uBAAuB,EACvB,0BAA0B,EAC1B,6BAA6B,EAC7B,uBAAuB,EACvB,oBAAoB,EACpB,oBAAoB,EACpB,sBAAsB,EACtB,yBAAyB,EACzB,+BAA+B,EAC/B,wBAAwB,EACxB,iBAAiB,EACjB,qBAAqB,GACtB,CAAC"}
@@ -54,6 +54,25 @@ export interface GovernanceConfig {
54
54
  /** Storage mode. Default: "jsonl" */
55
55
  storageMode?: "jsonl" | "none";
56
56
  };
57
+ costBudget?: {
58
+ /**
59
+ * Maximum estimated USD cost per workflow run.
60
+ * When exceeded, behaviour is controlled by `onExhaustion`. Default: unlimited.
61
+ */
62
+ maxEstimatedCostUSD?: number;
63
+ /** Maximum input tokens per workflow run. Default: unlimited. */
64
+ maxInputTokens?: number;
65
+ /** Maximum output tokens per workflow run. Default: unlimited. */
66
+ maxOutputTokens?: number;
67
+ /**
68
+ * What to do when the budget is exceeded.
69
+ * - "warn": log a warning but continue
70
+ * - "stop": abort the current tool call with an error message
71
+ * - "escalate": surface an escalation signal (same as delegation-budget escalation)
72
+ * Default: "warn"
73
+ */
74
+ onExhaustion?: "warn" | "stop" | "escalate";
75
+ };
57
76
  supervisor?: {
58
77
  /**
59
78
  * Whether the supervisor review layer is active.
@@ -1 +1 @@
1
- {"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../src/config/schema.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,MAAM,WAAW,gBAAgB;IAC/B,qHAAqH;IACrH,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,gBAAgB;IAC/B,SAAS,CAAC,EAAE;QACV;;;;WAIG;QACH,IAAI,CAAC,EAAE,KAAK,GAAG,UAAU,GAAG,QAAQ,CAAC;QACrC,kFAAkF;QAClF,mBAAmB,CAAC,EAAE,KAAK,GAAG,MAAM,GAAG,QAAQ,CAAC;KACjD,CAAC;IACF,gBAAgB,CAAC,EAAE;QACjB,+DAA+D;QAC/D,YAAY,CAAC,EAAE,MAAM,CAAC;QACtB,8CAA8C;QAC9C,kBAAkB,CAAC,EAAE,MAAM,CAAC;QAC5B,sDAAsD;QACtD,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,uCAAuC;QACvC,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,iEAAiE;QACjE,kBAAkB,CAAC,EAAE,MAAM,CAAC;QAC5B,+DAA+D;QAC/D,YAAY,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,UAAU,CAAC;KAC7C,CAAC;IACF,iBAAiB,CAAC,EAAE;QAClB,0DAA0D;QAC1D,OAAO,CAAC,EAAE,OAAO,CAAC;QAClB,iFAAiF;QACjF,eAAe,CAAC,EAAE,MAAM,CAAC;QACzB,+EAA+E;QAC/E,kBAAkB,CAAC,EAAE,MAAM,CAAC;QAC5B,yFAAyF;QACzF,iBAAiB,CAAC,EAAE,MAAM,CAAC;QAC3B,qEAAqE;QACrE,QAAQ,CAAC,EAAE,OAAO,CAAC;KACpB,CAAC;IACF,SAAS,CAAC,EAAE;QACV,mEAAmE;QACnE,OAAO,CAAC,EAAE,OAAO,CAAC;QAClB,qCAAqC;QACrC,WAAW,CAAC,EAAE,OAAO,GAAG,MAAM,CAAC;KAChC,CAAC;IACF,UAAU,CAAC,EAAE;QACX;;;WAGG;QACH,OAAO,CAAC,EAAE,OAAO,CAAC;QAClB;;;;WAIG;QACH,IAAI,CAAC,EAAE,UAAU,GAAG,QAAQ,CAAC;QAC7B;;;;WAIG;QACH,eAAe,CAAC,EAAE,MAAM,EAAE,CAAC;QAC3B;;;;WAIG;QACH,QAAQ,CAAC,EAAE,OAAO,CAAC;QACnB;;;;WAIG;QACH,mBAAmB,CAAC,EAAE,MAAM,CAAC;QAC7B;;;WAGG;QACH,mBAAmB,CAAC,EAAE,OAAO,CAAC;KAC/B,CAAC;CACH;AAED,MAAM,WAAW,cAAc;IAC7B;;;OAGG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAAC;IAC1C,WAAW,CAAC,EAAE;QACZ,OAAO,CAAC,EAAE,OAAO,CAAC;QAClB,WAAW,CAAC,EAAE,QAAQ,GAAG,UAAU,CAAC;QACpC,mCAAmC,CAAC,EAAE,OAAO,CAAC;QAC9C,cAAc,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QACxC,uBAAuB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;KACpD,CAAC;IACF,yGAAyG;IACzG,UAAU,CAAC,EAAE,gBAAgB,CAAC;CAC/B"}
1
+ {"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../src/config/schema.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,MAAM,WAAW,gBAAgB;IAC/B,qHAAqH;IACrH,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,gBAAgB;IAC/B,SAAS,CAAC,EAAE;QACV;;;;WAIG;QACH,IAAI,CAAC,EAAE,KAAK,GAAG,UAAU,GAAG,QAAQ,CAAC;QACrC,kFAAkF;QAClF,mBAAmB,CAAC,EAAE,KAAK,GAAG,MAAM,GAAG,QAAQ,CAAC;KACjD,CAAC;IACF,gBAAgB,CAAC,EAAE;QACjB,+DAA+D;QAC/D,YAAY,CAAC,EAAE,MAAM,CAAC;QACtB,8CAA8C;QAC9C,kBAAkB,CAAC,EAAE,MAAM,CAAC;QAC5B,sDAAsD;QACtD,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,uCAAuC;QACvC,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,iEAAiE;QACjE,kBAAkB,CAAC,EAAE,MAAM,CAAC;QAC5B,+DAA+D;QAC/D,YAAY,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,UAAU,CAAC;KAC7C,CAAC;IACF,iBAAiB,CAAC,EAAE;QAClB,0DAA0D;QAC1D,OAAO,CAAC,EAAE,OAAO,CAAC;QAClB,iFAAiF;QACjF,eAAe,CAAC,EAAE,MAAM,CAAC;QACzB,+EAA+E;QAC/E,kBAAkB,CAAC,EAAE,MAAM,CAAC;QAC5B,yFAAyF;QACzF,iBAAiB,CAAC,EAAE,MAAM,CAAC;QAC3B,qEAAqE;QACrE,QAAQ,CAAC,EAAE,OAAO,CAAC;KACpB,CAAC;IACF,SAAS,CAAC,EAAE;QACV,mEAAmE;QACnE,OAAO,CAAC,EAAE,OAAO,CAAC;QAClB,qCAAqC;QACrC,WAAW,CAAC,EAAE,OAAO,GAAG,MAAM,CAAC;KAChC,CAAC;IACF,UAAU,CAAC,EAAE;QACX;;;WAGG;QACH,mBAAmB,CAAC,EAAE,MAAM,CAAC;QAC7B,iEAAiE;QACjE,cAAc,CAAC,EAAE,MAAM,CAAC;QACxB,kEAAkE;QAClE,eAAe,CAAC,EAAE,MAAM,CAAC;QACzB;;;;;;WAMG;QACH,YAAY,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,UAAU,CAAC;KAC7C,CAAC;IACF,UAAU,CAAC,EAAE;QACX;;;WAGG;QACH,OAAO,CAAC,EAAE,OAAO,CAAC;QAClB;;;;WAIG;QACH,IAAI,CAAC,EAAE,UAAU,GAAG,QAAQ,CAAC;QAC7B;;;;WAIG;QACH,eAAe,CAAC,EAAE,MAAM,EAAE,CAAC;QAC3B;;;;WAIG;QACH,QAAQ,CAAC,EAAE,OAAO,CAAC;QACnB;;;;WAIG;QACH,mBAAmB,CAAC,EAAE,MAAM,CAAC;QAC7B;;;WAGG;QACH,mBAAmB,CAAC,EAAE,OAAO,CAAC;KAC/B,CAAC;CACH;AAED,MAAM,WAAW,cAAc;IAC7B;;;OAGG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAAC;IAC1C,WAAW,CAAC,EAAE;QACZ,OAAO,CAAC,EAAE,OAAO,CAAC;QAClB,WAAW,CAAC,EAAE,QAAQ,GAAG,UAAU,CAAC;QACpC,mCAAmC,CAAC,EAAE,OAAO,CAAC;QAC9C,cAAc,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QACxC,uBAAuB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;KACpD,CAAC;IACF,yGAAyG;IACzG,UAAU,CAAC,EAAE,gBAAgB,CAAC;CAC/B"}
@@ -8,13 +8,18 @@
8
8
  * 2. Recently edited files (from SessionFileTracker)
9
9
  * 3. Structured 8-section summary prompt
10
10
  *
11
+ * Optimization: tracks summaryVersion of the last injected STATE.md and
12
+ * CODEBASE_INDEX.md per session. When both versions are unchanged, injects
13
+ * only a compact fingerprint instead of re-injecting full documents β€” reducing
14
+ * token cost of each compaction cycle while always preserving a minimal anchor.
15
+ *
11
16
  * Inspired by oh-my-openagent's compaction-context-injector and
12
17
  * ECC's experimental.session.compacting handler.
13
18
  */
14
19
  import type { SessionFileTracker } from "./file-tracker";
15
20
  export declare function createCompactionHook(ctx: {
16
21
  directory: string;
17
- }, tracker: SessionFileTracker): (_input: {
22
+ }, tracker: SessionFileTracker): (input: {
18
23
  sessionID: string;
19
24
  }, output: {
20
25
  context: string[];
@@ -1 +1 @@
1
- {"version":3,"file":"compaction-hook.d.ts","sourceRoot":"","sources":["../../src/hooks/compaction-hook.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAIH,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAA;AAoDxD,wBAAgB,oBAAoB,CAClC,GAAG,EAAE;IAAE,SAAS,EAAE,MAAM,CAAA;CAAE,EAC1B,OAAO,EAAE,kBAAkB,IAGzB,QAAQ;IAAE,SAAS,EAAE,MAAM,CAAA;CAAE,EAC7B,QAAQ;IAAE,OAAO,EAAE,MAAM,EAAE,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAA;CAAE,mBA8CjD"}
1
+ {"version":3,"file":"compaction-hook.d.ts","sourceRoot":"","sources":["../../src/hooks/compaction-hook.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAIH,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAA;AAmExD,wBAAgB,oBAAoB,CAClC,GAAG,EAAE;IAAE,SAAS,EAAE,MAAM,CAAA;CAAE,EAC1B,OAAO,EAAE,kBAAkB,IAGzB,OAAO;IAAE,SAAS,EAAE,MAAM,CAAA;CAAE,EAC5B,QAAQ;IAAE,OAAO,EAAE,MAAM,EAAE,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAA;CAAE,mBAiEjD"}
@@ -1 +1 @@
1
- {"version":3,"file":"shell-env-hook.d.ts","sourceRoot":"","sources":["../../src/hooks/shell-env-hook.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAwEH,wBAAgB,kBAAkB,CAAC,GAAG,EAAE;IAAE,SAAS,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;CAAE,IAGhE,QAAQ,OAAO,EAAE,QAAQ;IAAE,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;CAAE,mBAiBvE"}
1
+ {"version":3,"file":"shell-env-hook.d.ts","sourceRoot":"","sources":["../../src/hooks/shell-env-hook.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAyFH,wBAAgB,kBAAkB,CAAC,GAAG,EAAE;IAAE,SAAS,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;CAAE,IAGhE,QAAQ,OAAO,EAAE,QAAQ;IAAE,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;CAAE,mBA6BvE"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAA;AAgGjD,QAAA,MAAM,MAAM,EAAE,MAkVb,CAAA;AAED,eAAe,MAAM,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAA;AAiHjD,QAAA,MAAM,MAAM,EAAE,MAyVb,CAAA;AAED,eAAe,MAAM,CAAA"}