daedalus-cli 3.36.8 โ 3.37.1
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/CHANGELOG.md +14 -0
- package/README.md +10 -0
- package/dist/__tests__/stats.test.js +4 -1
- package/dist/__tests__/stats.test.js.map +1 -1
- package/dist/banner.d.ts.map +1 -1
- package/dist/banner.js +6 -5
- package/dist/banner.js.map +1 -1
- package/dist/commands/agents.js +1 -1
- package/dist/commands/agents.js.map +1 -1
- package/dist/commands/cheatsheet.d.ts.map +1 -1
- package/dist/commands/cheatsheet.js +7 -11
- package/dist/commands/cheatsheet.js.map +1 -1
- package/dist/commands/config.js +1 -1
- package/dist/commands/config.js.map +1 -1
- package/dist/commands/dev.d.ts.map +1 -1
- package/dist/commands/dev.js +4 -7
- package/dist/commands/dev.js.map +1 -1
- package/dist/commands/enhance.d.ts +1 -1
- package/dist/commands/enhance.d.ts.map +1 -1
- package/dist/commands/enhance.js +108 -5
- package/dist/commands/enhance.js.map +1 -1
- package/dist/commands/enhance.test.js +53 -8
- package/dist/commands/enhance.test.js.map +1 -1
- package/dist/commands/faq.d.ts.map +1 -1
- package/dist/commands/faq.js +9 -12
- package/dist/commands/faq.js.map +1 -1
- package/dist/commands/index.d.ts.map +1 -1
- package/dist/commands/index.js +31 -1
- package/dist/commands/index.js.map +1 -1
- package/dist/commands/stats.d.ts +2 -1
- package/dist/commands/stats.d.ts.map +1 -1
- package/dist/commands/stats.js +31 -7
- package/dist/commands/stats.js.map +1 -1
- package/dist/config/index.d.ts +4 -4
- package/dist/formatting.d.ts +15 -1
- package/dist/formatting.d.ts.map +1 -1
- package/dist/formatting.js +105 -17
- package/dist/formatting.js.map +1 -1
- package/dist/index.js +5 -1
- package/dist/index.js.map +1 -1
- package/dist/indexing/fts.d.ts +2 -0
- package/dist/indexing/fts.d.ts.map +1 -1
- package/dist/indexing/fts.js +5 -0
- package/dist/indexing/fts.js.map +1 -1
- package/dist/model.d.ts.map +1 -1
- package/dist/model.js +14 -2
- package/dist/model.js.map +1 -1
- package/dist/prompt-hints.js +1 -1
- package/dist/prompt-hints.js.map +1 -1
- package/dist/prompt-hints.test.js +2 -2
- package/dist/prompt-hints.test.js.map +1 -1
- package/dist/repl.d.ts.map +1 -1
- package/dist/repl.js +37 -1
- package/dist/repl.js.map +1 -1
- package/dist/session/analytics.d.ts +8 -1
- package/dist/session/analytics.d.ts.map +1 -1
- package/dist/session/analytics.js +15 -0
- package/dist/session/analytics.js.map +1 -1
- package/dist/session/sigma-mem.js +1 -1
- package/dist/session/sigma-mem.js.map +1 -1
- package/dist/tips.d.ts +9 -0
- package/dist/tips.d.ts.map +1 -0
- package/dist/tips.js +56 -0
- package/dist/tips.js.map +1 -0
- package/dist/tools/builtin/diff-ui.d.ts +6 -0
- package/dist/tools/builtin/diff-ui.d.ts.map +1 -1
- package/dist/tools/builtin/diff-ui.js +73 -2
- package/dist/tools/builtin/diff-ui.js.map +1 -1
- package/dist/tui/index.d.ts.map +1 -1
- package/dist/tui/index.js +2 -1
- package/dist/tui/index.js.map +1 -1
- package/dist/ui/theme.d.ts +7 -0
- package/dist/ui/theme.d.ts.map +1 -0
- package/dist/ui/theme.js +33 -0
- package/dist/ui/theme.js.map +1 -0
- package/package.json +1 -1
- package/dist/highlight.d.ts +0 -4
- package/dist/highlight.d.ts.map +0 -1
- package/dist/highlight.js +0 -45
- package/dist/highlight.js.map +0 -1
- package/dist/highlight.test.d.ts +0 -2
- package/dist/highlight.test.d.ts.map +0 -1
- package/dist/highlight.test.js +0 -56
- package/dist/highlight.test.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"enhance.test.js","sourceRoot":"","sources":["../../src/commands/enhance.test.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"enhance.test.js","sourceRoot":"","sources":["../../src/commands/enhance.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"faq.d.ts","sourceRoot":"","sources":["../../src/commands/faq.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,OAAO,EAAkB,MAAM,YAAY,CAAC;AAE1D,eAAO,MAAM,OAAO,
|
|
1
|
+
{"version":3,"file":"faq.d.ts","sourceRoot":"","sources":["../../src/commands/faq.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,OAAO,EAAkB,MAAM,YAAY,CAAC;AAE1D,eAAO,MAAM,OAAO,QA4GnB,CAAC;AAEF,eAAO,MAAM,UAAU,EAAE,OASxB,CAAC"}
|
package/dist/commands/faq.js
CHANGED
|
@@ -1,8 +1,5 @@
|
|
|
1
1
|
import pc from 'picocolors';
|
|
2
|
-
export const faqText =
|
|
3
|
-
${pc.bold(pc.cyan('๐งโ๐ป Daedalus Local-First FAQ'))}
|
|
4
|
-
|
|
5
|
-
${pc.bold(pc.yellow('๐ฅ๏ธ HARDWARE & LOCAL EXECUTION'))}
|
|
2
|
+
export const faqText = `\n${pc.bold(pc.cyan('Daedalus Local-First FAQ'))}\n\n${pc.bold(pc.yellow('HARDWARE & LOCAL EXECUTION'))}
|
|
6
3
|
${pc.bold('Q: How do I try Daedalus without installing anything?')}
|
|
7
4
|
Open the Daedalus-Lite Live Demo (https://bgill55.github.io/daedalus-lite/live-demo.html) โ a
|
|
8
5
|
browser-based interactive REPL sandbox (no install, a few free queries included). For the full
|
|
@@ -20,7 +17,7 @@ ${pc.bold('Q: Which local models are officially recommended?')}
|
|
|
20
17
|
โข ${pc.bold('Qwen2.5-Coder-7B-Instruct')} (Q4_K_M / Q5_K_M) โ accurate multilingual code generation & inline patching.
|
|
21
18
|
โข ${pc.bold('Llama-3-8B-Instruct')} (Q4_K_M / Q5_K_M) โ general chat, sub-agent planning, orchestrator loops.
|
|
22
19
|
|
|
23
|
-
${pc.bold(pc.yellow('
|
|
20
|
+
${pc.bold(pc.yellow('MODEL ROUTING, TIERS & PRESETS'))}
|
|
24
21
|
${pc.bold('Q: How does the embedded model router handle complex vs. simple tasks?')}
|
|
25
22
|
Dynamic Complexity-Based Routing classifies each prompt:
|
|
26
23
|
โข Fast tier โ simple edits (typos, single commas).
|
|
@@ -41,7 +38,7 @@ ${pc.bold('Q: What are the ready-to-use presets and how do I apply them?')}
|
|
|
41
38
|
โข ${pc.bold('hybrid')} โ fast local for quick edits + cloud for complex orchestration.
|
|
42
39
|
โข ${pc.bold('privacy-strict')} โ 100% offline local execution, web tools disabled.
|
|
43
40
|
|
|
44
|
-
${pc.bold(pc.yellow('
|
|
41
|
+
${pc.bold(pc.yellow('SPECFIRST ARCHITECTURE & VERIFICATION GATES'))}
|
|
45
42
|
${pc.bold('Q: What is "SpecFirst" and how does it prevent agent coding pitfalls?')}
|
|
46
43
|
It inserts a mandatory spec + verification gate before/after code synthesis, preventing Contract
|
|
47
44
|
Drift, Untested Assertions, and Goal Drift. Run ${pc.bold('/spec <goal>')} to gather requirements and
|
|
@@ -52,7 +49,7 @@ ${pc.bold('Q: How does the SpecFirst Verification Engine enforce code safety?')}
|
|
|
52
49
|
type/function signatures are exported, and code aligns 100% with the JSON contract. On failure it feeds
|
|
53
50
|
logs into the auto-repair loop.
|
|
54
51
|
|
|
55
|
-
${pc.bold(pc.yellow('
|
|
52
|
+
${pc.bold(pc.yellow('ฮฃ-Mem (SIGMA-MEMORY) ENGINE'))}
|
|
56
53
|
${pc.bold('Q: What is the "Context Pollution" problem and how does ฮฃ-Mem solve it?')}
|
|
57
54
|
Flat chat history stores failed attempts and hallucinations alongside valid code, polluting context.
|
|
58
55
|
ฮฃ-Mem scores and prunes memories from real verification feedback (compile, lint, test, spec contracts).
|
|
@@ -64,7 +61,7 @@ ${pc.bold('Q: What is the math behind ฮฃ-Mem scoring and pruning?')}
|
|
|
64
61
|
โข Auto-Prune (<0.20): purged from SQLite to clear hallucinations.
|
|
65
62
|
Only memories with ฮฃ โฅ 0.60 are injected into sub-agent prompts.
|
|
66
63
|
|
|
67
|
-
${pc.bold(pc.yellow('
|
|
64
|
+
${pc.bold(pc.yellow('GUARDRAILS, CIRCUIT BREAKERS & RESILIENCE'))}
|
|
68
65
|
${pc.bold('Q: The CLI says [CIRCUIT BREAKER]. Why did my command execution halt?')}
|
|
69
66
|
The Command Circuit Breaker tracks normalized command prefixes (e.g. 'npm install foo' โ 'npm install').
|
|
70
67
|
On repeated failure it stops and asks you to change approach. The companion Repeat Breaker trips if the
|
|
@@ -75,7 +72,7 @@ ${pc.bold('Q: What is a "Batch Short-Circuit" and why are some tool calls skippe
|
|
|
75
72
|
subsequent mutating/build/test calls to avoid compiling against corrupt code. Read-only tools
|
|
76
73
|
(read_file, git_status, git_diff) are never skipped, so the agent can inspect and recover.
|
|
77
74
|
|
|
78
|
-
${pc.bold(pc.yellow('
|
|
75
|
+
${pc.bold(pc.yellow('WINDOWS SETUP & TROUBLESHOOTING'))}
|
|
79
76
|
${pc.bold('Q: Terminal tool crashes with Exit Code 3221225794 / 0xC0000142 on Windows. How do I resolve this?')}
|
|
80
77
|
Fixed in ${pc.bold('v3.13.3')}. Cause: child processes inherited the parent stdin pipe and were killed when it
|
|
81
78
|
closed. Fix: the terminal tool now uses stdio: ['ignore','pipe','pipe'] and detaches the process group.
|
|
@@ -84,13 +81,13 @@ ${pc.bold('Q: A valid Windows patch was reverted as a "syntax error" even though
|
|
|
84
81
|
Fixed in ${pc.bold('v3.13.1')}. Cause: syntaxCheck flagged any error on a touched line, even pre-existing ones.
|
|
85
82
|
Fix: it compiles a pre-edit baseline and diffs post-edit diagnostics, so valid edits stick.
|
|
86
83
|
|
|
87
|
-
${pc.bold(pc.yellow('
|
|
84
|
+
${pc.bold(pc.yellow('SANDBOXING & ISOLATION'))}
|
|
88
85
|
${pc.bold('Q: How do I isolate Daedalus execution environments?')}
|
|
89
86
|
In ~/.daedalus/config.json under 'tools':
|
|
90
87
|
โข ${pc.bold('"sandbox": "docker"')} โ spins up a container (default node:20), mounts project root to /workspace.
|
|
91
88
|
โข ${pc.bold('"sandbox": "wsl"')} โ routes through WSL, translating Windows paths (D:\\project) to /mnt/d/project.
|
|
92
89
|
|
|
93
|
-
${pc.bold(pc.yellow('
|
|
90
|
+
${pc.bold(pc.yellow('SKILLS (PLAYBOOK INGESTION)'))}
|
|
94
91
|
${pc.bold('Q: What are "Skills"? Are they executable code?')}
|
|
95
92
|
No โ instructions, not code. Markdown playbooks (yaml frontmatter + steps). A matching trigger phrase
|
|
96
93
|
injects the playbook into the system prompt.
|
|
@@ -103,7 +100,7 @@ ${pc.bold('Q: How does the agent propose and learn new skills?')}
|
|
|
103
100
|
Sub-agents call propose_skill โ draft saved to ~/.daedalus/skills/.drafts/. Use ${pc.bold('/skills')} to review,
|
|
104
101
|
then ${pc.bold('/skills accept <name>')} to promote it to a trusted active skill.
|
|
105
102
|
|
|
106
|
-
${pc.bold(pc.yellow('
|
|
103
|
+
${pc.bold(pc.yellow('MODEL CONTEXT PROTOCOL (MCP)'))}
|
|
107
104
|
${pc.bold('Q: Does Daedalus support MCP? How do I install external tools?')}
|
|
108
105
|
Yes โ stdio and HTTP/SSE transports. From the REPL:
|
|
109
106
|
โข ${pc.bold('/mcp explore')} โ browse curated community MCP servers.
|
package/dist/commands/faq.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"faq.js","sourceRoot":"","sources":["../../src/commands/faq.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,YAAY,CAAC;AAG5B,MAAM,CAAC,MAAM,OAAO,GAAG
|
|
1
|
+
{"version":3,"file":"faq.js","sourceRoot":"","sources":["../../src/commands/faq.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/commands/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/commands/index.ts"],"names":[],"mappings":"AAgBA,OAAO,KAAK,EAAE,OAAO,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAE1D,YAAY,EAAE,OAAO,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AA0H1D,eAAO,MAAM,YAAY,EAAE,OAAO,EAgBjC,CAAC;AAEF,wBAAsB,cAAc,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,cAAc,EAAE,MAAM,SAAI,GAAG,OAAO,CAAC,OAAO,CAAC,CAuDrG"}
|
package/dist/commands/index.js
CHANGED
|
@@ -1,4 +1,6 @@
|
|
|
1
1
|
import pc from 'picocolors';
|
|
2
|
+
import { loadConfig, saveConfig } from '../config/index.js';
|
|
3
|
+
import { setTheme, getTheme } from '../ui/theme.js';
|
|
2
4
|
import { contextCommands } from './context.js';
|
|
3
5
|
import { agentCommands } from './agents.js';
|
|
4
6
|
import { feedbackCommand } from './feedback.js';
|
|
@@ -96,12 +98,40 @@ const helpCommand = {
|
|
|
96
98
|
printCategory('Session', categories.Session);
|
|
97
99
|
printCategory('Help', categories.Help);
|
|
98
100
|
printCategory('Other', categories.Other);
|
|
99
|
-
console.log(pc.gray('
|
|
101
|
+
console.log(pc.gray(' Detailed documentation: ') + pc.underline(pc.cyan('https://bgill55.github.io/daedalus/#/')));
|
|
100
102
|
console.log(pc.gray(' Tip: Type ') + pc.cyan('/help <command>') + pc.gray(' for detailed usage and subcommands.'));
|
|
101
103
|
console.log();
|
|
102
104
|
}
|
|
103
105
|
};
|
|
106
|
+
const THEMES = ['dark', 'light', 'auto'];
|
|
107
|
+
const themeCommand = {
|
|
108
|
+
name: '/theme',
|
|
109
|
+
aliases: ['theme'],
|
|
110
|
+
description: 'Set or show the UI color theme (dark, light, auto).',
|
|
111
|
+
usage: '/theme [dark|light|auto]',
|
|
112
|
+
helpText: 'Set or show the UI color theme.\n\nArguments:\n (no args) Show the current theme\n dark High-contrast palette for dark terminals (default)\n light Legible palette for light/white terminal backgrounds\n auto dark, unless NO_COLOR is set\n\nThe selection persists to ~/.daedalus/config.json (ui.theme) and applies immediately.',
|
|
113
|
+
execute: async (args, _ctx) => {
|
|
114
|
+
const arg = args.trim().toLowerCase();
|
|
115
|
+
if (!arg) {
|
|
116
|
+
console.log(`\n ${pc.bold('Current theme:')} ${pc.cyan(getTheme())}`);
|
|
117
|
+
console.log(` ${pc.dim('Available: ' + THEMES.join(', '))}`);
|
|
118
|
+
console.log();
|
|
119
|
+
return;
|
|
120
|
+
}
|
|
121
|
+
if (!THEMES.includes(arg)) {
|
|
122
|
+
console.log(pc.yellow(`\n [WARN] Unknown theme "${arg}". Choose one of: ${THEMES.join(', ')}`));
|
|
123
|
+
return;
|
|
124
|
+
}
|
|
125
|
+
setTheme(arg);
|
|
126
|
+
const config = loadConfig();
|
|
127
|
+
config.ui.theme = arg;
|
|
128
|
+
saveConfig(config);
|
|
129
|
+
console.log(`\n ${pc.green('[OK]')} Theme set to ${pc.cyan(arg)} and saved.`);
|
|
130
|
+
console.log();
|
|
131
|
+
},
|
|
132
|
+
};
|
|
104
133
|
export const commandsList = [
|
|
134
|
+
themeCommand,
|
|
105
135
|
...contextCommands,
|
|
106
136
|
...agentCommands,
|
|
107
137
|
...devCommands,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/commands/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/commands/index.ts"],"names":[],"mappings":"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"}
|
package/dist/commands/stats.d.ts
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import type { CommandContext } from './types.js';
|
|
1
2
|
/** Format and return session statistics report for CLI display */
|
|
2
|
-
export declare function handleStatsCommand(): string;
|
|
3
|
+
export declare function handleStatsCommand(ctx?: CommandContext): string;
|
|
3
4
|
//# sourceMappingURL=stats.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"stats.d.ts","sourceRoot":"","sources":["../../src/commands/stats.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"stats.d.ts","sourceRoot":"","sources":["../../src/commands/stats.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAEjD,kEAAkE;AAClE,wBAAgB,kBAAkB,CAAC,GAAG,CAAC,EAAE,cAAc,GAAG,MAAM,CA0C/D"}
|
package/dist/commands/stats.js
CHANGED
|
@@ -1,18 +1,42 @@
|
|
|
1
1
|
import pc from 'picocolors';
|
|
2
2
|
import { globalSessionStats } from '../session/analytics.js';
|
|
3
|
+
import { initIndexDb, getIndexedFileCount } from '../indexing/fts.js';
|
|
4
|
+
import { brand } from '../ui/theme.js';
|
|
3
5
|
/** Format and return session statistics report for CLI display */
|
|
4
|
-
export function handleStatsCommand() {
|
|
6
|
+
export function handleStatsCommand(ctx) {
|
|
5
7
|
const report = globalSessionStats.getReport();
|
|
6
|
-
const width = Math.min(process.stdout.columns || 80,
|
|
7
|
-
const ruleLen = Math.max(
|
|
8
|
+
const width = Math.min(process.stdout.columns || 80, 78);
|
|
9
|
+
const ruleLen = Math.max(8, width - 30);
|
|
10
|
+
const avgPerTurn = report.totalInteractions > 0
|
|
11
|
+
? Math.round(report.totalTokens / report.totalInteractions).toLocaleString()
|
|
12
|
+
: '0';
|
|
13
|
+
let indexed = 0;
|
|
14
|
+
if (ctx) {
|
|
15
|
+
try {
|
|
16
|
+
const db = initIndexDb(ctx.getIndexDbPath());
|
|
17
|
+
indexed = getIndexedFileCount(db, ctx.projectHash);
|
|
18
|
+
}
|
|
19
|
+
catch {
|
|
20
|
+
indexed = 0;
|
|
21
|
+
}
|
|
22
|
+
}
|
|
23
|
+
const lastModel = report.lastModel
|
|
24
|
+
? (report.lastTier ? `${report.lastModel} ${pc.dim(`(${report.lastTier})`)}` : report.lastModel)
|
|
25
|
+
: pc.dim('none yet');
|
|
26
|
+
const sessionId = ctx?.sessionManager?.sessionId ?? pc.dim('n/a');
|
|
8
27
|
const lines = [
|
|
9
|
-
` ${pc.bold(
|
|
28
|
+
` ${pc.bold(brand('โ Session & System Statistics โ'))} ${pc.dim('โ'.repeat(ruleLen))}`,
|
|
10
29
|
` ${pc.gray('Uptime:')} ${pc.bold(report.uptime)}`,
|
|
30
|
+
` ${pc.gray('Session ID:')} ${pc.bold(sessionId)}`,
|
|
11
31
|
` ${pc.gray('Interactions:')} ${pc.bold(report.totalInteractions.toString())}`,
|
|
32
|
+
` ${pc.gray('Tool Calls:')} ${pc.bold(report.toolCalls?.toString() ?? '0')}`,
|
|
33
|
+
` ${pc.gray('Avg Tokens/Turn:')} ${pc.bold(avgPerTurn)}`,
|
|
12
34
|
` ${pc.gray('Total Tokens:')} ${pc.bold(pc.cyan(report.totalTokens.toLocaleString()))}`,
|
|
13
|
-
` ${pc.gray('Prompt
|
|
14
|
-
` ${pc.gray('Completion:')}
|
|
15
|
-
` ${pc.gray('
|
|
35
|
+
` ${pc.gray(' Prompt:')} ${pc.bold(report.promptTokens.toLocaleString())}`,
|
|
36
|
+
` ${pc.gray(' Completion:')} ${pc.bold(report.completionTokens.toLocaleString())}`,
|
|
37
|
+
` ${pc.gray('Errors:')} ${report.totalErrors > 0 ? pc.bold(pc.red(report.totalErrors.toString())) : pc.bold(pc.green('0'))}`,
|
|
38
|
+
` ${pc.gray('Indexed Files:')} ${pc.bold(indexed.toString())}`,
|
|
39
|
+
` ${pc.gray('Last Model:')} ${lastModel}`,
|
|
16
40
|
` ${pc.dim('โ'.repeat(width - 4))}`,
|
|
17
41
|
];
|
|
18
42
|
return lines.join('\n');
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"stats.js","sourceRoot":"","sources":["../../src/commands/stats.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,YAAY,CAAC;AAC5B,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;
|
|
1
|
+
{"version":3,"file":"stats.js","sourceRoot":"","sources":["../../src/commands/stats.ts"],"names":[],"mappings":"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"}
|
package/dist/config/index.d.ts
CHANGED
|
@@ -517,7 +517,7 @@ export declare const ConfigSchema: z.ZodObject<{
|
|
|
517
517
|
showTokens: boolean;
|
|
518
518
|
showCost: boolean;
|
|
519
519
|
diffStyle: "unified" | "side-by-side";
|
|
520
|
-
theme: "
|
|
520
|
+
theme: "dark" | "light" | "auto";
|
|
521
521
|
tui: boolean;
|
|
522
522
|
compactMode: boolean;
|
|
523
523
|
collapseCommentary: boolean;
|
|
@@ -527,7 +527,7 @@ export declare const ConfigSchema: z.ZodObject<{
|
|
|
527
527
|
showTokens?: boolean | undefined;
|
|
528
528
|
showCost?: boolean | undefined;
|
|
529
529
|
diffStyle?: "unified" | "side-by-side" | undefined;
|
|
530
|
-
theme?: "
|
|
530
|
+
theme?: "dark" | "light" | "auto" | undefined;
|
|
531
531
|
tui?: boolean | undefined;
|
|
532
532
|
compactMode?: boolean | undefined;
|
|
533
533
|
collapseCommentary?: boolean | undefined;
|
|
@@ -646,7 +646,7 @@ export declare const ConfigSchema: z.ZodObject<{
|
|
|
646
646
|
showTokens: boolean;
|
|
647
647
|
showCost: boolean;
|
|
648
648
|
diffStyle: "unified" | "side-by-side";
|
|
649
|
-
theme: "
|
|
649
|
+
theme: "dark" | "light" | "auto";
|
|
650
650
|
tui: boolean;
|
|
651
651
|
compactMode: boolean;
|
|
652
652
|
collapseCommentary: boolean;
|
|
@@ -755,7 +755,7 @@ export declare const ConfigSchema: z.ZodObject<{
|
|
|
755
755
|
showTokens?: boolean | undefined;
|
|
756
756
|
showCost?: boolean | undefined;
|
|
757
757
|
diffStyle?: "unified" | "side-by-side" | undefined;
|
|
758
|
-
theme?: "
|
|
758
|
+
theme?: "dark" | "light" | "auto" | undefined;
|
|
759
759
|
tui?: boolean | undefined;
|
|
760
760
|
compactMode?: boolean | undefined;
|
|
761
761
|
collapseCommentary?: boolean | undefined;
|
package/dist/formatting.d.ts
CHANGED
|
@@ -12,14 +12,28 @@ export declare function setFormattingConfig(config: {
|
|
|
12
12
|
ui?: {
|
|
13
13
|
collapseCommentary?: boolean;
|
|
14
14
|
compactMode?: boolean;
|
|
15
|
+
showCost?: boolean;
|
|
16
|
+
diffStyle?: string;
|
|
17
|
+
theme?: string;
|
|
15
18
|
} & Record<string, unknown>;
|
|
16
19
|
}): void;
|
|
17
20
|
export declare function getToolBuffer(): ToolBufferEntry[];
|
|
18
21
|
export declare function clearToolBuffer(): void;
|
|
19
22
|
export declare function collapseCommentary(): void;
|
|
20
23
|
export declare function openAssistantBlock(): void;
|
|
24
|
+
/**
|
|
25
|
+
* Render a determinate progress bar on a single line (carriage-return update).
|
|
26
|
+
* `ratio` is 0..1. Uses theme-aware colors. Pass `final: true` to append a
|
|
27
|
+
* newline so subsequent output starts on a fresh line.
|
|
28
|
+
*/
|
|
29
|
+
export declare function printProgressBar(ratio: number, label: string, opts?: {
|
|
30
|
+
width?: number;
|
|
31
|
+
final?: boolean;
|
|
32
|
+
}): void;
|
|
21
33
|
export declare function writeAssistantChunk(chunk: string): void;
|
|
22
|
-
export declare function closeAssistantBlock(tokens: number, elapsedMs: number, toolCount?: number, modelName?: string, realOutTokens?: number, tier?: string
|
|
34
|
+
export declare function closeAssistantBlock(tokens: number, elapsedMs: number, toolCount?: number, modelName?: string, realOutTokens?: number, tier?: string, opts?: {
|
|
35
|
+
showCost?: boolean;
|
|
36
|
+
}): void;
|
|
23
37
|
export declare function formatMarkdownLine(line: string): string;
|
|
24
38
|
export declare function turnSeparator(): void;
|
|
25
39
|
export declare function printContextWarning(pct: number): void;
|
package/dist/formatting.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"formatting.d.ts","sourceRoot":"","sources":["../src/formatting.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"formatting.d.ts","sourceRoot":"","sources":["../src/formatting.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAK3C,eAAO,MAAM,KAAK,QAAmD,CAAC;AA6BtE,wBAAgB,YAAY,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAOhD;AA2BD,wBAAgB,aAAa,CAAC,WAAW,EAAE,MAAM,GAAG,IAAI,CAkBvD;AAID,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAQD,wBAAgB,mBAAmB,CAAC,MAAM,EAAE;IAAE,EAAE,CAAC,EAAE;QAAE,kBAAkB,CAAC,EAAE,OAAO,CAAC;QAAC,WAAW,CAAC,EAAE,OAAO,CAAC;QAAC,QAAQ,CAAC,EAAE,OAAO,CAAC;QAAC,SAAS,CAAC,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;CAAE,GAAG,IAAI,CAKpM;AAED,wBAAgB,aAAa,IAAI,eAAe,EAAE,CAEjD;AAED,wBAAgB,eAAe,IAAI,IAAI,CAGtC;AAgBD,wBAAgB,kBAAkB,IAAI,IAAI,CAqCzC;AAqCD,wBAAgB,kBAAkB,IAAI,IAAI,CAMzC;AA4BD;;;;GAIG;AACH,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE;IAAE,KAAK,CAAC,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,OAAO,CAAA;CAAE,GAAG,IAAI,CAQ/G;AAwCD,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,CAuCvD;AA6DD,wBAAgB,mBAAmB,CACjC,MAAM,EAAE,MAAM,EACd,SAAS,EAAE,MAAM,EACjB,SAAS,CAAC,EAAE,MAAM,EAClB,SAAS,CAAC,EAAE,MAAM,EAClB,aAAa,CAAC,EAAE,MAAM,EACtB,IAAI,CAAC,EAAE,MAAM,EACb,IAAI,CAAC,EAAE;IAAE,QAAQ,CAAC,EAAE,OAAO,CAAA;CAAE,GAC5B,IAAI,CAyEN;AAID,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAwBvD;AAID,wBAAgB,aAAa,IAAI,IAAI,CAIpC;AAID,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,CAErD;AAED,wBAAgB,kBAAkB,CAAC,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,IAAI,CAE5E;AAED,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,IAAI,CAM1F;AAID,wBAAgB,cAAc,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,IAAI,CAYnE;AAED,wBAAgB,eAAe,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAepF;AAED,wBAAgB,uBAAuB,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAoB7D;AAID,wBAAgB,cAAc,IAAI,MAAM,CAEvC;AAsCD,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,GAAG,QAAQ,EAAE,CA8K3D;AAED,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAQxD;AAED,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAiB1D"}
|
package/dist/formatting.js
CHANGED
|
@@ -1,5 +1,8 @@
|
|
|
1
1
|
import pc from 'picocolors';
|
|
2
|
+
import { highlight } from 'cli-highlight';
|
|
2
3
|
import { TOOL_IMPLEMENTATIONS } from './tools/definitions.js';
|
|
4
|
+
import { setTheme, brand, rule } from './ui/theme.js';
|
|
5
|
+
import { globalSessionStats } from './session/analytics.js';
|
|
3
6
|
export const termW = Math.max(50, (process.stdout.columns ?? 80) - 5);
|
|
4
7
|
function stripAnsi(str) {
|
|
5
8
|
return str.replace(/[\u001b\u009b][[()#;?]*(?:[0-9]{1,4}(?:;[0-9]{0,4})*)?[0-9A-ORZcf-nqry=><]/g, '');
|
|
@@ -80,11 +83,16 @@ let _toolBuffer = [];
|
|
|
80
83
|
let _commentaryLines = 0;
|
|
81
84
|
let _collapseEnabled = true;
|
|
82
85
|
let _compactMode = true;
|
|
86
|
+
let _showCost = false;
|
|
83
87
|
export function setFormattingConfig(config) {
|
|
84
88
|
if (config?.ui?.collapseCommentary === false)
|
|
85
89
|
_collapseEnabled = false;
|
|
86
90
|
if (config?.ui?.compactMode === false)
|
|
87
91
|
_compactMode = false;
|
|
92
|
+
if (config?.ui?.showCost === true)
|
|
93
|
+
_showCost = true;
|
|
94
|
+
if (config?.ui?.theme)
|
|
95
|
+
setTheme(config.ui.theme);
|
|
88
96
|
}
|
|
89
97
|
export function getToolBuffer() {
|
|
90
98
|
return _toolBuffer;
|
|
@@ -96,6 +104,7 @@ export function clearToolBuffer() {
|
|
|
96
104
|
// โโ Assistant message โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
|
|
97
105
|
let _buf = '';
|
|
98
106
|
let _inCode = false;
|
|
107
|
+
let _codeLang = '';
|
|
99
108
|
let _codeLines = [];
|
|
100
109
|
// Thinking renderer: when a reasoning model emits raw <think>...</think> inline, we render
|
|
101
110
|
// that block in dimmed (gray) font while the final answer renders in white โ so the user can
|
|
@@ -141,6 +150,30 @@ export function collapseCommentary() {
|
|
|
141
150
|
_commentaryLines = 0;
|
|
142
151
|
}
|
|
143
152
|
let _lastBoxW = 70;
|
|
153
|
+
const PRICE_TABLE = [
|
|
154
|
+
{ re: /gpt-4o/i, rate: { in: 0.005, out: 0.015 } },
|
|
155
|
+
{ re: /gpt-4/i, rate: { in: 0.03, out: 0.06 } },
|
|
156
|
+
{ re: /gpt-3\.5/i, rate: { in: 0.0005, out: 0.0015 } },
|
|
157
|
+
{ re: /claude-3\.5/i, rate: { in: 0.003, out: 0.015 } },
|
|
158
|
+
{ re: /claude/i, rate: { in: 0.003, out: 0.015 } },
|
|
159
|
+
{ re: /sonnet/i, rate: { in: 0.003, out: 0.015 } },
|
|
160
|
+
{ re: /haiku/i, rate: { in: 0.00025, out: 0.00125 } },
|
|
161
|
+
{ re: /(gemini|gemma)/i, rate: { in: 0.0005, out: 0.0015 } },
|
|
162
|
+
{ re: /(deepseek)/i, rate: { in: 0.00027, out: 0.0011 } },
|
|
163
|
+
{ re: /(command|cohere)/i, rate: { in: 0.0015, out: 0.002 } },
|
|
164
|
+
];
|
|
165
|
+
function estimatePrice(modelName) {
|
|
166
|
+
if (!modelName)
|
|
167
|
+
return null;
|
|
168
|
+
if (/(lmstudio|ollama|localhost|:1234|:11434|vllm|llama\.cpp|local)/i.test(modelName)) {
|
|
169
|
+
return null;
|
|
170
|
+
}
|
|
171
|
+
for (const { re, rate } of PRICE_TABLE) {
|
|
172
|
+
if (re.test(modelName))
|
|
173
|
+
return rate;
|
|
174
|
+
}
|
|
175
|
+
return null;
|
|
176
|
+
}
|
|
144
177
|
function getBoxWidth() {
|
|
145
178
|
const cols = process.stdout.columns ?? 80;
|
|
146
179
|
return Math.max(40, cols - 6);
|
|
@@ -149,8 +182,8 @@ export function openAssistantBlock() {
|
|
|
149
182
|
collapseCommentary();
|
|
150
183
|
_lastBoxW = getBoxWidth();
|
|
151
184
|
// Straight top rule: title padded to a fixed width with displayWidth-aware padding
|
|
152
|
-
// so
|
|
153
|
-
printRule(`${pc.bold(
|
|
185
|
+
// so a wide glyph in the title can't throw the alignment off.
|
|
186
|
+
printRule(`${pc.bold(brand('Daedalus'))}`);
|
|
154
187
|
}
|
|
155
188
|
// Horizontal rule of exactly _lastBoxW cells. `content` (if any) is placed at the
|
|
156
189
|
// start and the rest is filled with 'โ'. Uses displayWidth so wide glyphs count as 2.
|
|
@@ -158,12 +191,12 @@ function printRule(content) {
|
|
|
158
191
|
const inner = 'โ'.repeat(Math.max(2, _lastBoxW - 2));
|
|
159
192
|
const prefix = ' ';
|
|
160
193
|
if (!content) {
|
|
161
|
-
console.log(`${prefix}${
|
|
194
|
+
console.log(`${prefix}${rule(inner)}`);
|
|
162
195
|
return;
|
|
163
196
|
}
|
|
164
197
|
const vis = displayWidth(content);
|
|
165
198
|
const fill = 'โ'.repeat(Math.max(0, _lastBoxW - 2 - vis));
|
|
166
|
-
console.log(`${prefix}${
|
|
199
|
+
console.log(`${prefix}${rule(content)}${rule(fill)}`);
|
|
167
200
|
}
|
|
168
201
|
// Box geometry: total visible width = _lastBoxW (includes the 2-space indent).
|
|
169
202
|
// Body lines are indented text (no side rails); they wrap at _lastBoxW - 2.
|
|
@@ -176,21 +209,56 @@ function printBoxLine(line) {
|
|
|
176
209
|
console.log(` ${part}${' '.repeat(pad)}`);
|
|
177
210
|
}
|
|
178
211
|
}
|
|
212
|
+
/**
|
|
213
|
+
* Render a determinate progress bar on a single line (carriage-return update).
|
|
214
|
+
* `ratio` is 0..1. Uses theme-aware colors. Pass `final: true` to append a
|
|
215
|
+
* newline so subsequent output starts on a fresh line.
|
|
216
|
+
*/
|
|
217
|
+
export function printProgressBar(ratio, label, opts) {
|
|
218
|
+
const width = opts?.width ?? 24;
|
|
219
|
+
const pct = Math.max(0, Math.min(1, ratio));
|
|
220
|
+
const filled = Math.round(pct * width);
|
|
221
|
+
const bar = brand('โ'.repeat(filled)) + pc.dim('โ'.repeat(width - filled));
|
|
222
|
+
const pctStr = `${Math.round(pct * 100)}%`.padStart(4);
|
|
223
|
+
const tail = label ? ` ${pc.gray(label.slice(-36))}` : '';
|
|
224
|
+
process.stdout.write(`\r ${bar} ${pc.bold(pctStr)}${tail}${opts?.final ? '\n' : ''}`);
|
|
225
|
+
}
|
|
179
226
|
function emitCodeBlock() {
|
|
180
|
-
if (
|
|
227
|
+
if (!_inCode)
|
|
228
|
+
return;
|
|
229
|
+
// Drop a trailing closing fence if the model emitted one inside the buffer.
|
|
230
|
+
const rawLines = _codeLines.filter(l => !l.trimStart().startsWith('```'));
|
|
231
|
+
if (rawLines.length === 0) {
|
|
232
|
+
_inCode = false;
|
|
233
|
+
_codeLang = '';
|
|
234
|
+
_codeLines = [];
|
|
181
235
|
return;
|
|
236
|
+
}
|
|
182
237
|
const innerW = Math.max(20, _lastBoxW - 2);
|
|
183
|
-
const lineDigits = String(
|
|
184
|
-
|
|
238
|
+
const lineDigits = String(rawLines.length).length;
|
|
239
|
+
// Highlight the whole block once (preserves ANSI across lines), then render
|
|
240
|
+
// each line with a gutter line number. Unknown languages fall back to plain.
|
|
241
|
+
let highlighted;
|
|
242
|
+
try {
|
|
243
|
+
highlighted = highlight(rawLines.join('\n'), {
|
|
244
|
+
language: _codeLang || 'text',
|
|
245
|
+
ignoreIllegals: true,
|
|
246
|
+
});
|
|
247
|
+
}
|
|
248
|
+
catch {
|
|
249
|
+
highlighted = rawLines.join('\n');
|
|
250
|
+
}
|
|
251
|
+
const hlLines = highlighted.split('\n');
|
|
252
|
+
// Guard against a mismatch between source/highlighted line counts.
|
|
253
|
+
for (let i = 0; i < rawLines.length; i++) {
|
|
185
254
|
const lineNo = String(i + 1).padStart(lineDigits);
|
|
186
|
-
const
|
|
187
|
-
const
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
const pad = Math.max(0, innerW - lineDigits - 3 - vis);
|
|
191
|
-
console.log(` ${pc.dim(`${lineNo} โ`)} ${part}${' '.repeat(pad)}`);
|
|
192
|
-
}
|
|
255
|
+
const part = hlLines[i] ?? rawLines[i];
|
|
256
|
+
const vis = displayWidth(stripAnsi(part));
|
|
257
|
+
const pad = Math.max(0, innerW - lineDigits - 3 - vis);
|
|
258
|
+
console.log(` ${pc.dim(`${lineNo} โ`)} ${part}${' '.repeat(pad)}`);
|
|
193
259
|
}
|
|
260
|
+
_inCode = false;
|
|
261
|
+
_codeLang = '';
|
|
194
262
|
_codeLines = [];
|
|
195
263
|
}
|
|
196
264
|
export function writeAssistantChunk(chunk) {
|
|
@@ -293,7 +361,10 @@ function emitAssistantLine(raw) {
|
|
|
293
361
|
return;
|
|
294
362
|
}
|
|
295
363
|
if (line.startsWith('```')) {
|
|
296
|
-
|
|
364
|
+
// Opening fence: capture the language token (e.g. "```ts" -> "ts") and switch
|
|
365
|
+
// into code mode. The closing fence is detected in closeAssistantBlock.
|
|
366
|
+
_inCode = true;
|
|
367
|
+
_codeLang = line.slice(3).trim();
|
|
297
368
|
return;
|
|
298
369
|
}
|
|
299
370
|
if (_inThink)
|
|
@@ -301,7 +372,10 @@ function emitAssistantLine(raw) {
|
|
|
301
372
|
else
|
|
302
373
|
printBoxLine(pc.whiteBright(formatMarkdownLine(line)));
|
|
303
374
|
}
|
|
304
|
-
export function closeAssistantBlock(tokens, elapsedMs, toolCount, modelName, realOutTokens, tier) {
|
|
375
|
+
export function closeAssistantBlock(tokens, elapsedMs, toolCount, modelName, realOutTokens, tier, opts) {
|
|
376
|
+
if (modelName)
|
|
377
|
+
globalSessionStats.setLastModel(modelName, tier);
|
|
378
|
+
const showCost = opts?.showCost === true || _showCost;
|
|
305
379
|
// Flush any trailing think buffer (a model may end the stream without a closing tag)
|
|
306
380
|
// and any remaining non-think line before finalizing the block. Drop any partial tag
|
|
307
381
|
// fragment held in _pending (it will never complete now).
|
|
@@ -314,7 +388,10 @@ export function closeAssistantBlock(tokens, elapsedMs, toolCount, modelName, rea
|
|
|
314
388
|
if (_buf) {
|
|
315
389
|
const line = _buf.trimEnd();
|
|
316
390
|
if (_inCode) {
|
|
317
|
-
|
|
391
|
+
// A ``` fence while in code mode is the closing fence, not code content.
|
|
392
|
+
if (!line.startsWith('```')) {
|
|
393
|
+
_codeLines.push(line);
|
|
394
|
+
}
|
|
318
395
|
}
|
|
319
396
|
else {
|
|
320
397
|
if (line.startsWith('```')) {
|
|
@@ -349,6 +426,17 @@ export function closeAssistantBlock(tokens, elapsedMs, toolCount, modelName, rea
|
|
|
349
426
|
const tps = (outTokens / (elapsedMs / 1000)).toFixed(1);
|
|
350
427
|
parts.push(`${tps} tok/s`);
|
|
351
428
|
}
|
|
429
|
+
// Cost estimate (opt-in via ui.showCost). Local models cost $0; cloud families
|
|
430
|
+
// use approximate blended $/1k-token rates. Heuristic โ not an invoice.
|
|
431
|
+
if (showCost && outTokens > 0) {
|
|
432
|
+
const inTokens = tokens > 0 ? tokens : 0;
|
|
433
|
+
const rate = estimatePrice(modelName);
|
|
434
|
+
if (rate) {
|
|
435
|
+
const cost = (inTokens / 1000) * rate.in + (outTokens / 1000) * rate.out;
|
|
436
|
+
if (cost > 0)
|
|
437
|
+
parts.push(`$${cost.toFixed(4)}`);
|
|
438
|
+
}
|
|
439
|
+
}
|
|
352
440
|
const rawStats = parts.join(' ยท ');
|
|
353
441
|
// Bottom rule: stats as the leading content, filled to a fixed width. Truncate with
|
|
354
442
|
// an ellipsis if the stats are longer than the box so the rule stays exactly _lastBoxW.
|