bobo-ai-cli 2.0.0 → 3.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.
Files changed (126) hide show
  1. package/README.md +52 -9
  2. package/dist/agent.js +70 -45
  3. package/dist/agent.js.map +1 -1
  4. package/dist/agents/catalog.d.ts +40 -0
  5. package/dist/agents/catalog.js +172 -0
  6. package/dist/agents/catalog.js.map +1 -0
  7. package/dist/agents/index.d.ts +6 -0
  8. package/dist/agents/index.js +4 -0
  9. package/dist/agents/index.js.map +1 -0
  10. package/dist/agents/router.d.ts +43 -0
  11. package/dist/agents/router.js +87 -0
  12. package/dist/agents/router.js.map +1 -0
  13. package/dist/agents/spawn.d.ts +46 -0
  14. package/dist/agents/spawn.js +91 -0
  15. package/dist/agents/spawn.js.map +1 -0
  16. package/dist/autonomous.js +41 -1
  17. package/dist/autonomous.js.map +1 -1
  18. package/dist/claude-bridge.d.ts +18 -0
  19. package/dist/claude-bridge.js +91 -0
  20. package/dist/claude-bridge.js.map +1 -0
  21. package/dist/cli.d.ts +8 -0
  22. package/dist/cli.js +667 -0
  23. package/dist/cli.js.map +1 -0
  24. package/dist/compactor.d.ts +49 -4
  25. package/dist/compactor.js +164 -17
  26. package/dist/compactor.js.map +1 -1
  27. package/dist/completer.js +2 -0
  28. package/dist/completer.js.map +1 -1
  29. package/dist/cost-tracker.js +35 -2
  30. package/dist/cost-tracker.js.map +1 -1
  31. package/dist/dream.d.ts +42 -0
  32. package/dist/dream.js +321 -0
  33. package/dist/dream.js.map +1 -0
  34. package/dist/hooks.d.ts +1 -1
  35. package/dist/hooks.js +4 -0
  36. package/dist/hooks.js.map +1 -1
  37. package/dist/index.js +8 -1099
  38. package/dist/index.js.map +1 -1
  39. package/dist/insight.js +4 -11
  40. package/dist/insight.js.map +1 -1
  41. package/dist/knowledge.d.ts +13 -0
  42. package/dist/knowledge.js +13 -2
  43. package/dist/knowledge.js.map +1 -1
  44. package/dist/memory.d.ts +4 -0
  45. package/dist/memory.js +6 -0
  46. package/dist/memory.js.map +1 -1
  47. package/dist/repl.d.ts +16 -0
  48. package/dist/repl.js +702 -0
  49. package/dist/repl.js.map +1 -0
  50. package/dist/sessions.js +23 -0
  51. package/dist/sessions.js.map +1 -1
  52. package/dist/skills/composer.d.ts +18 -0
  53. package/dist/skills/composer.js +59 -0
  54. package/dist/skills/composer.js.map +1 -0
  55. package/dist/skills/index.d.ts +3 -0
  56. package/dist/skills/index.js +3 -0
  57. package/dist/skills/index.js.map +1 -0
  58. package/dist/skills/loader.d.ts +12 -0
  59. package/dist/skills/loader.js +150 -0
  60. package/dist/skills/loader.js.map +1 -0
  61. package/dist/skills/types.d.ts +28 -0
  62. package/dist/skills/types.js +9 -0
  63. package/dist/skills/types.js.map +1 -0
  64. package/dist/skills.d.ts +1 -0
  65. package/dist/skills.js +1 -0
  66. package/dist/skills.js.map +1 -1
  67. package/dist/state/artifacts.d.ts +71 -0
  68. package/dist/state/artifacts.js +131 -0
  69. package/dist/state/artifacts.js.map +1 -0
  70. package/dist/state/index.d.ts +9 -0
  71. package/dist/state/index.js +7 -0
  72. package/dist/state/index.js.map +1 -0
  73. package/dist/state/manager.d.ts +89 -0
  74. package/dist/state/manager.js +130 -0
  75. package/dist/state/manager.js.map +1 -0
  76. package/dist/state/project-memory.d.ts +24 -0
  77. package/dist/state/project-memory.js +81 -0
  78. package/dist/state/project-memory.js.map +1 -0
  79. package/dist/state/recovery.d.ts +24 -0
  80. package/dist/state/recovery.js +94 -0
  81. package/dist/state/recovery.js.map +1 -0
  82. package/dist/statusbar.d.ts +1 -0
  83. package/dist/statusbar.js +12 -1
  84. package/dist/statusbar.js.map +1 -1
  85. package/dist/sub-agent-runner.d.ts +1 -0
  86. package/dist/sub-agent-runner.js +29 -3
  87. package/dist/sub-agent-runner.js.map +1 -1
  88. package/dist/sub-agents.d.ts +19 -1
  89. package/dist/sub-agents.js +137 -2
  90. package/dist/sub-agents.js.map +1 -1
  91. package/dist/tool-governance.d.ts +77 -0
  92. package/dist/tool-governance.js +335 -0
  93. package/dist/tool-governance.js.map +1 -0
  94. package/dist/tools/claude-bridge-tool.d.ts +4 -0
  95. package/dist/tools/claude-bridge-tool.js +44 -0
  96. package/dist/tools/claude-bridge-tool.js.map +1 -0
  97. package/dist/tools/claude-code.d.ts +33 -0
  98. package/dist/tools/claude-code.js +279 -0
  99. package/dist/tools/claude-code.js.map +1 -0
  100. package/dist/tools/index.js +4 -0
  101. package/dist/tools/index.js.map +1 -1
  102. package/dist/ui/hud.d.ts +25 -0
  103. package/dist/ui/hud.js +67 -0
  104. package/dist/ui/hud.js.map +1 -0
  105. package/dist/verification-agent.d.ts +46 -0
  106. package/dist/verification-agent.js +528 -0
  107. package/dist/verification-agent.js.map +1 -0
  108. package/dist/workflows/ask.d.ts +13 -0
  109. package/dist/workflows/ask.js +66 -0
  110. package/dist/workflows/ask.js.map +1 -0
  111. package/dist/workflows/index.d.ts +5 -0
  112. package/dist/workflows/index.js +6 -0
  113. package/dist/workflows/index.js.map +1 -0
  114. package/dist/workflows/interview.d.ts +11 -0
  115. package/dist/workflows/interview.js +36 -0
  116. package/dist/workflows/interview.js.map +1 -0
  117. package/dist/workflows/plan.d.ts +13 -0
  118. package/dist/workflows/plan.js +34 -0
  119. package/dist/workflows/plan.js.map +1 -0
  120. package/dist/workflows/team.d.ts +17 -0
  121. package/dist/workflows/team.js +86 -0
  122. package/dist/workflows/team.js.map +1 -0
  123. package/dist/workflows/verify.d.ts +11 -0
  124. package/dist/workflows/verify.js +21 -0
  125. package/dist/workflows/verify.js.map +1 -0
  126. package/package.json +2 -4
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
@@ -1,11 +1,17 @@
1
1
  /**
2
- * Context compressor — self-managed compact without host dependency.
2
+ * Context compressor — three-tier compression strategy.
3
3
  * Solves: "compact 依赖宿主"
4
4
  *
5
- * Automatically compresses conversation history when it gets too long.
6
- * Uses the LLM itself to summarize, then replaces history with summary.
5
+ * Three compression tiers:
6
+ * - Tier 1 Microcompact: Replace old tool results with [Tool result cleared]
7
+ * - Tier 2 Auto-compact: 87% threshold with circuit breaker (stops after 3 consecutive failures)
8
+ * - Tier 3 Full compact: LLM-generated summary (TEXT ONLY, strict)
7
9
  */
8
10
  import type { ChatCompletionMessageParam } from 'openai/resources/index.js';
11
+ /**
12
+ * Estimate token count for a text string.
13
+ */
14
+ export declare function estimateTokensForText(text: string): number;
9
15
  /**
10
16
  * Estimate token count for a message array.
11
17
  */
@@ -14,13 +20,52 @@ export declare function estimateTokens(messages: ChatCompletionMessageParam[]):
14
20
  * Check if we should auto-compact.
15
21
  */
16
22
  export declare function shouldCompact(messages: ChatCompletionMessageParam[], threshold?: number): boolean;
23
+ /**
24
+ * Determine which compression tier to use based on context usage.
25
+ */
26
+ export declare function getCompressionTier(messages: ChatCompletionMessageParam[]): {
27
+ tier: 1 | 2 | 3 | null;
28
+ usage: number;
29
+ threshold: number;
30
+ };
31
+ /**
32
+ * Reset circuit breaker on successful compact.
33
+ */
34
+ export declare function resetCircuitBreaker(): void;
35
+ /**
36
+ * Increment circuit breaker on failed compact.
37
+ */
38
+ export declare function incrementCircuitBreaker(): void;
39
+ /**
40
+ * Get circuit breaker status.
41
+ */
42
+ export declare function getCircuitBreakerStatus(): {
43
+ failures: number;
44
+ tripped: boolean;
45
+ };
17
46
  /**
18
47
  * Build a compact summary request — returns the prompt to send to the LLM.
19
48
  * The caller should send this to the API and use the response as new history.
20
49
  */
21
50
  export declare function buildCompactPrompt(messages: ChatCompletionMessageParam[]): string;
22
51
  /**
23
- * Compress history by keeping system prompt + recent messages + injecting summary.
52
+ * Tier 1: Microcompact clear old tool results.
53
+ * Replaces tool result content with [Tool result cleared] for messages older than keepRecent.
54
+ */
55
+ export declare function microcompact(messages: ChatCompletionMessageParam[], keepRecent?: number): ChatCompletionMessageParam[];
56
+ /**
57
+ * Tier 2: Auto-compact — keep system + recent messages + summary.
58
+ * This is triggered at 87% context usage.
59
+ */
60
+ export declare function autocompact(messages: ChatCompletionMessageParam[], keepRecent?: number): ChatCompletionMessageParam[];
61
+ /**
62
+ * Tier 3: Full compact — LLM-generated summary (TEXT ONLY).
63
+ * This requires an LLM call and returns a prompt for the LLM to generate summary.
64
+ * The caller should execute this and use the result to replace history.
65
+ */
66
+ export declare function buildFullCompactPrompt(messages: ChatCompletionMessageParam[]): string;
67
+ /**
68
+ * Legacy: Compress history by keeping system prompt + recent messages + injecting summary.
24
69
  * This is the "offline" version that doesn't call the LLM.
25
70
  */
26
71
  export declare function compressHistory(messages: ChatCompletionMessageParam[], keepRecent?: number): ChatCompletionMessageParam[];
package/dist/compactor.js CHANGED
@@ -1,12 +1,34 @@
1
1
  /**
2
- * Context compressor — self-managed compact without host dependency.
2
+ * Context compressor — three-tier compression strategy.
3
3
  * Solves: "compact 依赖宿主"
4
4
  *
5
- * Automatically compresses conversation history when it gets too long.
6
- * Uses the LLM itself to summarize, then replaces history with summary.
5
+ * Three compression tiers:
6
+ * - Tier 1 Microcompact: Replace old tool results with [Tool result cleared]
7
+ * - Tier 2 Auto-compact: 87% threshold with circuit breaker (stops after 3 consecutive failures)
8
+ * - Tier 3 Full compact: LLM-generated summary (TEXT ONLY, strict)
7
9
  */
8
10
  const TOKEN_PER_CHAR_EN = 0.25; // ~4 chars/token
9
11
  const TOKEN_PER_CHAR_ZH = 0.5; // ~2 chars/token
12
+ const TIER_1_THRESHOLD = 0.60; // 60% - start microcompact
13
+ const TIER_2_THRESHOLD = 0.87; // 87% - trigger auto-compact
14
+ const TIER_3_THRESHOLD = 0.95; // 95% - force full compact
15
+ const MAX_CONTEXT_TOKENS = 128000; // Approximate max context window
16
+ const CIRCUIT_BREAKER_LIMIT = 3; // Max consecutive failures before stopping
17
+ // Circuit breaker state
18
+ let consecutiveCompactFailures = 0;
19
+ /**
20
+ * Estimate token count for a text string.
21
+ */
22
+ export function estimateTokensForText(text) {
23
+ let cjk = 0, latin = 0;
24
+ for (const char of text) {
25
+ if (char.charCodeAt(0) > 0x2E80)
26
+ cjk++;
27
+ else
28
+ latin++;
29
+ }
30
+ return Math.ceil(cjk * TOKEN_PER_CHAR_ZH + latin * TOKEN_PER_CHAR_EN);
31
+ }
10
32
  /**
11
33
  * Estimate token count for a message array.
12
34
  */
@@ -14,15 +36,7 @@ export function estimateTokens(messages) {
14
36
  let total = 0;
15
37
  for (const msg of messages) {
16
38
  const text = typeof msg.content === 'string' ? msg.content : JSON.stringify(msg.content);
17
- // Heuristic: count CJK vs Latin chars
18
- let cjk = 0, latin = 0;
19
- for (const char of text) {
20
- if (char.charCodeAt(0) > 0x2E80)
21
- cjk++;
22
- else
23
- latin++;
24
- }
25
- total += Math.ceil(cjk * TOKEN_PER_CHAR_ZH + latin * TOKEN_PER_CHAR_EN);
39
+ total += estimateTokensForText(text);
26
40
  total += 4; // message overhead
27
41
  }
28
42
  return total;
@@ -33,6 +47,48 @@ export function estimateTokens(messages) {
33
47
  export function shouldCompact(messages, threshold = 80000) {
34
48
  return estimateTokens(messages) > threshold;
35
49
  }
50
+ /**
51
+ * Determine which compression tier to use based on context usage.
52
+ */
53
+ export function getCompressionTier(messages) {
54
+ const tokens = estimateTokens(messages);
55
+ const usage = tokens / MAX_CONTEXT_TOKENS;
56
+ if (usage >= TIER_3_THRESHOLD) {
57
+ return { tier: 3, usage, threshold: TIER_3_THRESHOLD };
58
+ }
59
+ if (usage >= TIER_2_THRESHOLD) {
60
+ // Check circuit breaker
61
+ if (consecutiveCompactFailures >= CIRCUIT_BREAKER_LIMIT) {
62
+ return { tier: null, usage, threshold: TIER_2_THRESHOLD }; // Circuit breaker tripped
63
+ }
64
+ return { tier: 2, usage, threshold: TIER_2_THRESHOLD };
65
+ }
66
+ if (usage >= TIER_1_THRESHOLD) {
67
+ return { tier: 1, usage, threshold: TIER_1_THRESHOLD };
68
+ }
69
+ return { tier: null, usage, threshold: 0 };
70
+ }
71
+ /**
72
+ * Reset circuit breaker on successful compact.
73
+ */
74
+ export function resetCircuitBreaker() {
75
+ consecutiveCompactFailures = 0;
76
+ }
77
+ /**
78
+ * Increment circuit breaker on failed compact.
79
+ */
80
+ export function incrementCircuitBreaker() {
81
+ consecutiveCompactFailures++;
82
+ }
83
+ /**
84
+ * Get circuit breaker status.
85
+ */
86
+ export function getCircuitBreakerStatus() {
87
+ return {
88
+ failures: consecutiveCompactFailures,
89
+ tripped: consecutiveCompactFailures >= CIRCUIT_BREAKER_LIMIT,
90
+ };
91
+ }
36
92
  /**
37
93
  * Build a compact summary request — returns the prompt to send to the LLM.
38
94
  * The caller should send this to the API and use the response as new history.
@@ -76,10 +132,34 @@ ${toolResults.slice(-5).join('\n---\n')}
76
132
  Output a concise summary (under 2000 tokens) that preserves all critical context.`;
77
133
  }
78
134
  /**
79
- * Compress history by keeping system prompt + recent messages + injecting summary.
80
- * This is the "offline" version that doesn't call the LLM.
135
+ * Tier 1: Microcompact clear old tool results.
136
+ * Replaces tool result content with [Tool result cleared] for messages older than keepRecent.
81
137
  */
82
- export function compressHistory(messages, keepRecent = 6) {
138
+ export function microcompact(messages, keepRecent = 10) {
139
+ if (messages.length <= keepRecent)
140
+ return messages;
141
+ const result = [];
142
+ const clearBefore = messages.length - keepRecent;
143
+ for (let i = 0; i < messages.length; i++) {
144
+ const msg = messages[i];
145
+ if (i < clearBefore && msg.role === 'tool') {
146
+ // Clear old tool results
147
+ result.push({
148
+ ...msg,
149
+ content: '[Tool result cleared]',
150
+ });
151
+ }
152
+ else {
153
+ result.push(msg);
154
+ }
155
+ }
156
+ return result;
157
+ }
158
+ /**
159
+ * Tier 2: Auto-compact — keep system + recent messages + summary.
160
+ * This is triggered at 87% context usage.
161
+ */
162
+ export function autocompact(messages, keepRecent = 8) {
83
163
  if (messages.length <= keepRecent + 1)
84
164
  return messages;
85
165
  // Keep system message
@@ -91,16 +171,26 @@ export function compressHistory(messages, keepRecent = 6) {
91
171
  const dropped = nonSystem.slice(0, -keepRecent);
92
172
  const userCount = dropped.filter(m => m.role === 'user').length;
93
173
  const toolCount = dropped.filter(m => m.role === 'tool').length;
174
+ const assistantCount = dropped.filter(m => m.role === 'assistant').length;
94
175
  // Build summary of dropped messages
95
- const summaryParts = [`[Context compressed: ${dropped.length} messages (${userCount} user, ${toolCount} tool calls) summarized]`];
176
+ const summaryParts = [
177
+ `[Auto-compacted: ${dropped.length} messages summarized]`,
178
+ `• ${userCount} user messages`,
179
+ `• ${assistantCount} assistant responses`,
180
+ `• ${toolCount} tool calls`,
181
+ ];
96
182
  // Extract file operations
183
+ const fileOps = [];
97
184
  for (const msg of dropped) {
98
185
  if (msg.role === 'tool' && typeof msg.content === 'string') {
99
186
  if (msg.content.includes('Written ') || msg.content.includes('Edited ')) {
100
- summaryParts.push(` • ${msg.content.split('\n')[0]}`);
187
+ fileOps.push(` • ${msg.content.split('\n')[0]}`);
101
188
  }
102
189
  }
103
190
  }
191
+ if (fileOps.length > 0) {
192
+ summaryParts.push('', 'File operations:', ...fileOps.slice(-5)); // Last 5 ops
193
+ }
104
194
  const summaryMessage = {
105
195
  role: 'user',
106
196
  content: summaryParts.join('\n'),
@@ -112,6 +202,63 @@ export function compressHistory(messages, keepRecent = 6) {
112
202
  result.push(...recent);
113
203
  return result;
114
204
  }
205
+ /**
206
+ * Tier 3: Full compact — LLM-generated summary (TEXT ONLY).
207
+ * This requires an LLM call and returns a prompt for the LLM to generate summary.
208
+ * The caller should execute this and use the result to replace history.
209
+ */
210
+ export function buildFullCompactPrompt(messages) {
211
+ // Extract key info
212
+ const userMessages = [];
213
+ const assistantActions = [];
214
+ const toolResults = [];
215
+ const fileOperations = [];
216
+ for (const msg of messages) {
217
+ const content = typeof msg.content === 'string' ? msg.content : '';
218
+ if (msg.role === 'user' && content) {
219
+ userMessages.push(content.slice(0, 500));
220
+ }
221
+ else if (msg.role === 'assistant' && content) {
222
+ assistantActions.push(content.slice(0, 300));
223
+ }
224
+ else if (msg.role === 'tool' && content) {
225
+ toolResults.push(content.slice(0, 200));
226
+ // Extract file operations
227
+ if (content.includes('Written ') || content.includes('Edited ')) {
228
+ fileOperations.push(content.split('\n')[0]);
229
+ }
230
+ }
231
+ }
232
+ return `CRITICAL: Generate a TEXT-ONLY summary of this conversation for context continuation.
233
+
234
+ Requirements:
235
+ 1. Output PLAIN TEXT only — no markdown, no code blocks, no formatting
236
+ 2. Include ALL critical information needed to continue work
237
+ 3. Maximum 2000 tokens
238
+ 4. Structure: Intent → Context → Actions → State → Next Steps
239
+
240
+ User messages (${userMessages.length}):
241
+ ${userMessages.slice(-15).join('\n---\n')}
242
+
243
+ Assistant actions (${assistantActions.length}):
244
+ ${assistantActions.slice(-10).join('\n---\n')}
245
+
246
+ Tool results (${toolResults.length}):
247
+ ${toolResults.slice(-8).join('\n---\n')}
248
+
249
+ File operations (${fileOperations.length}):
250
+ ${fileOperations.slice(-10).join('\n')}
251
+
252
+ Generate summary now (TEXT ONLY, no formatting):`;
253
+ }
254
+ /**
255
+ * Legacy: Compress history by keeping system prompt + recent messages + injecting summary.
256
+ * This is the "offline" version that doesn't call the LLM.
257
+ */
258
+ export function compressHistory(messages, keepRecent = 6) {
259
+ // Use autocompact by default
260
+ return autocompact(messages, keepRecent);
261
+ }
115
262
  /**
116
263
  * Get compact status info.
117
264
  */
@@ -1 +1 @@
1
- {"version":3,"file":"compactor.js","sourceRoot":"","sources":["../src/compactor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"compactor.js","sourceRoot":"","sources":["../src/compactor.ts"],"names":[],"mappings":"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"}
package/dist/completer.js CHANGED
@@ -19,6 +19,8 @@ const COMMANDS = [
19
19
  { name: '/knowledge', description: 'List knowledge files' },
20
20
  { name: '/skills', description: 'List skills' },
21
21
  { name: '/dream', description: 'Memory consolidation' },
22
+ { name: '/verify', description: 'Run verification agent' },
23
+ { name: '/history', description: 'Show conversation turns' },
22
24
  { name: '/mcp', description: 'MCP server status' },
23
25
  { name: '/bg', description: 'Background processes' },
24
26
  { name: '/cost', description: 'API cost tracker' },
@@ -1 +1 @@
1
- {"version":3,"file":"completer.js","sourceRoot":"","sources":["../src/completer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"completer.js","sourceRoot":"","sources":["../src/completer.ts"],"names":[],"mappings":"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"}
@@ -2,11 +2,23 @@
2
2
  * Cost tracker — track API usage and cost per session.
3
3
  * Solves: Claude Code shows cost; we should too.
4
4
  */
5
- // Pricing per million tokens (Claude Sonnet 4 pricing)
5
+ // Pricing per million tokens
6
6
  const PRICING = {
7
+ // Claude models
7
8
  'claude-sonnet-4-20250514': { input: 3.0, output: 15.0 },
8
9
  'claude-opus-4-6': { input: 15.0, output: 75.0 },
9
10
  'claude-3-5-haiku-20241022': { input: 1.0, output: 5.0 },
11
+ // OpenAI models
12
+ 'gpt-4o': { input: 2.50, output: 10.00 },
13
+ 'gpt-4o-mini': { input: 0.15, output: 0.60 },
14
+ 'o1-preview': { input: 15.00, output: 60.00 },
15
+ 'o1-mini': { input: 3.00, output: 12.00 },
16
+ // DeepSeek models
17
+ 'deepseek-chat': { input: 0.14, output: 0.28 },
18
+ 'deepseek-reasoner': { input: 0.55, output: 2.19 },
19
+ // Groq models
20
+ 'llama-3.3-70b-versatile': { input: 0.59, output: 0.79 },
21
+ // Fallback
10
22
  'default': { input: 3.0, output: 15.0 },
11
23
  };
12
24
  let stats = {
@@ -37,8 +49,29 @@ export function recordUsage(input, output, tools = 0) {
37
49
  export function getStats() {
38
50
  return { ...stats };
39
51
  }
52
+ /**
53
+ * Get pricing for a model with fuzzy matching fallback.
54
+ */
55
+ function getPricing(model) {
56
+ if (!model)
57
+ return PRICING['default'];
58
+ // Exact match
59
+ if (PRICING[model])
60
+ return PRICING[model];
61
+ // Fuzzy match: try partial matches
62
+ const modelLower = model.toLowerCase();
63
+ for (const [key, pricing] of Object.entries(PRICING)) {
64
+ if (key === 'default')
65
+ continue;
66
+ if (modelLower.includes(key) || key.includes(modelLower)) {
67
+ return pricing;
68
+ }
69
+ }
70
+ // No match, use default
71
+ return PRICING['default'];
72
+ }
40
73
  export function estimateCost(model) {
41
- const pricing = PRICING[model || 'default'] || PRICING['default'];
74
+ const pricing = getPricing(model);
42
75
  const inputCost = (stats.inputTokens / 1_000_000) * pricing.input;
43
76
  const outputCost = (stats.outputTokens / 1_000_000) * pricing.output;
44
77
  return inputCost + outputCost;
@@ -1 +1 @@
1
- {"version":3,"file":"cost-tracker.js","sourceRoot":"","sources":["../src/cost-tracker.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAWH,uDAAuD;AACvD,MAAM,OAAO,GAAsD;IACjE,0BAA0B,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE;IACxD,iBAAiB,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE;IAChD,2BAA2B,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE;IACxD,SAAS,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE;CACxC,CAAC;AAEF,IAAI,KAAK,GAAe;IACtB,WAAW,EAAE,CAAC;IACd,YAAY,EAAE,CAAC;IACf,WAAW,EAAE,CAAC;IACd,QAAQ,EAAE,CAAC;IACX,SAAS,EAAE,CAAC;IACZ,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE;CACtB,CAAC;AAEF,MAAM,UAAU,UAAU;IACxB,KAAK,GAAG;QACN,WAAW,EAAE,CAAC;QACd,YAAY,EAAE,CAAC;QACf,WAAW,EAAE,CAAC;QACd,QAAQ,EAAE,CAAC;QACX,SAAS,EAAE,CAAC;QACZ,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE;KACtB,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,WAAW,CAAC,KAAa,EAAE,MAAc,EAAE,QAAgB,CAAC;IAC1E,KAAK,CAAC,WAAW,IAAI,KAAK,CAAC;IAC3B,KAAK,CAAC,YAAY,IAAI,MAAM,CAAC;IAC7B,KAAK,CAAC,WAAW,IAAI,KAAK,GAAG,MAAM,CAAC;IACpC,KAAK,CAAC,QAAQ,IAAI,CAAC,CAAC;IACpB,KAAK,CAAC,SAAS,IAAI,KAAK,CAAC;AAC3B,CAAC;AAED,MAAM,UAAU,QAAQ;IACtB,OAAO,EAAE,GAAG,KAAK,EAAE,CAAC;AACtB,CAAC;AAED,MAAM,UAAU,YAAY,CAAC,KAAc;IACzC,MAAM,OAAO,GAAG,OAAO,CAAC,KAAK,IAAI,SAAS,CAAC,IAAI,OAAO,CAAC,SAAS,CAAC,CAAC;IAClE,MAAM,SAAS,GAAG,CAAC,KAAK,CAAC,WAAW,GAAG,SAAS,CAAC,GAAG,OAAO,CAAC,KAAK,CAAC;IAClE,MAAM,UAAU,GAAG,CAAC,KAAK,CAAC,YAAY,GAAG,SAAS,CAAC,GAAG,OAAO,CAAC,MAAM,CAAC;IACrE,OAAO,SAAS,GAAG,UAAU,CAAC;AAChC,CAAC;AAED,MAAM,UAAU,gBAAgB,CAAC,KAAc;IAC7C,MAAM,IAAI,GAAG,YAAY,CAAC,KAAK,CAAC,CAAC;IACjC,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,KAAK,CAAC,SAAS,CAAC,GAAG,IAAI,CAAC,CAAC;IAClE,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,GAAG,EAAE,CAAC,CAAC;IACzC,MAAM,OAAO,GAAG,OAAO,GAAG,EAAE,CAAC;IAE7B,OAAO;QACL,YAAY,KAAK,CAAC,WAAW,CAAC,cAAc,EAAE,SAAS,KAAK,CAAC,YAAY,CAAC,cAAc,EAAE,MAAM;QAChG,YAAY,KAAK,CAAC,WAAW,CAAC,cAAc,EAAE,SAAS;QACvD,YAAY,KAAK,CAAC,QAAQ,UAAU,KAAK,CAAC,SAAS,QAAQ;QAC3D,cAAc,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE;QAC/B,YAAY,OAAO,KAAK,OAAO,GAAG;KACnC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACf,CAAC"}
1
+ {"version":3,"file":"cost-tracker.js","sourceRoot":"","sources":["../src/cost-tracker.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,42 @@
1
+ /**
2
+ * KAIROS Dream Mode — Memory consolidation and insight extraction
3
+ *
4
+ * Inspired by biological memory consolidation during sleep, this module
5
+ * processes accumulated experiences and distills them into structured knowledge.
6
+ *
7
+ * Features:
8
+ * - /dream command to manually trigger consolidation
9
+ * - Auto-trigger on session-end if sufficient new experiences
10
+ * - LLM-powered distillation of logs → structured preferences & learnings
11
+ * - Deduplication and organization of memory entries
12
+ */
13
+ export interface DreamResult {
14
+ insights: DreamInsight[];
15
+ preferencesUpdated: number;
16
+ duplicatesRemoved: number;
17
+ summary: string;
18
+ }
19
+ export interface DreamInsight {
20
+ category: 'user-preference' | 'technical-pattern' | 'project-context' | 'workflow-optimization';
21
+ content: string;
22
+ confidence: 'high' | 'medium' | 'low';
23
+ source: string;
24
+ }
25
+ /**
26
+ * Determine if dream mode should be triggered automatically.
27
+ * Criteria:
28
+ * - More than 50 new memory entries since last consolidation
29
+ * - Last consolidation was more than 24 hours ago
30
+ */
31
+ export declare function shouldAutoDream(): boolean;
32
+ /**
33
+ * Run dream mode consolidation.
34
+ */
35
+ export declare function runDream(options?: {
36
+ verbose?: boolean;
37
+ dryRun?: boolean;
38
+ }): Promise<DreamResult>;
39
+ /**
40
+ * Format dream result for user display.
41
+ */
42
+ export declare function formatDreamResult(result: DreamResult): string;