cmdr-agent 1.2.2 → 2.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/README.md +19 -0
- package/dist/bin/cmdr.js +3 -1
- package/dist/bin/cmdr.js.map +1 -1
- package/dist/src/agents/executor.d.ts +32 -0
- package/dist/src/agents/executor.d.ts.map +1 -0
- package/dist/src/agents/executor.js +50 -0
- package/dist/src/agents/executor.js.map +1 -0
- package/dist/src/agents/index.d.ts +7 -0
- package/dist/src/agents/index.d.ts.map +1 -0
- package/dist/src/agents/index.js +7 -0
- package/dist/src/agents/index.js.map +1 -0
- package/dist/src/agents/registry.d.ts +36 -0
- package/dist/src/agents/registry.d.ts.map +1 -0
- package/dist/src/agents/registry.js +168 -0
- package/dist/src/agents/registry.js.map +1 -0
- package/dist/src/agents/subagent-tool.d.ts +27 -0
- package/dist/src/agents/subagent-tool.d.ts.map +1 -0
- package/dist/src/agents/subagent-tool.js +36 -0
- package/dist/src/agents/subagent-tool.js.map +1 -0
- package/dist/src/cli/args.d.ts +2 -0
- package/dist/src/cli/args.d.ts.map +1 -1
- package/dist/src/cli/args.js +8 -0
- package/dist/src/cli/args.js.map +1 -1
- package/dist/src/cli/commands.d.ts.map +1 -1
- package/dist/src/cli/commands.js +92 -4
- package/dist/src/cli/commands.js.map +1 -1
- package/dist/src/cli/ink/App.d.ts +4 -0
- package/dist/src/cli/ink/App.d.ts.map +1 -1
- package/dist/src/cli/ink/App.js +164 -20
- package/dist/src/cli/ink/App.js.map +1 -1
- package/dist/src/cli/ink/StatusBar.d.ts +17 -0
- package/dist/src/cli/ink/StatusBar.d.ts.map +1 -0
- package/dist/src/cli/ink/StatusBar.js +32 -0
- package/dist/src/cli/ink/StatusBar.js.map +1 -0
- package/dist/src/cli/repl.d.ts +2 -0
- package/dist/src/cli/repl.d.ts.map +1 -1
- package/dist/src/cli/repl.js +117 -4
- package/dist/src/cli/repl.js.map +1 -1
- package/dist/src/cli/theme.d.ts +42 -22
- package/dist/src/cli/theme.d.ts.map +1 -1
- package/dist/src/cli/theme.js +25 -1
- package/dist/src/cli/theme.js.map +1 -1
- package/dist/src/cli/themes.d.ts +57 -0
- package/dist/src/cli/themes.d.ts.map +1 -0
- package/dist/src/cli/themes.js +98 -0
- package/dist/src/cli/themes.js.map +1 -0
- package/dist/src/commands/index.d.ts +3 -0
- package/dist/src/commands/index.d.ts.map +1 -0
- package/dist/src/commands/index.js +2 -0
- package/dist/src/commands/index.js.map +1 -0
- package/dist/src/commands/loader.d.ts +35 -0
- package/dist/src/commands/loader.d.ts.map +1 -0
- package/dist/src/commands/loader.js +134 -0
- package/dist/src/commands/loader.js.map +1 -0
- package/dist/src/config/config-loader.d.ts.map +1 -1
- package/dist/src/config/config-loader.js +2 -0
- package/dist/src/config/config-loader.js.map +1 -1
- package/dist/src/config/defaults.d.ts.map +1 -1
- package/dist/src/config/defaults.js +1 -0
- package/dist/src/config/defaults.js.map +1 -1
- package/dist/src/config/schema.d.ts +3 -0
- package/dist/src/config/schema.d.ts.map +1 -1
- package/dist/src/config/schema.js +1 -0
- package/dist/src/config/schema.js.map +1 -1
- package/dist/src/core/agent-runner.d.ts.map +1 -1
- package/dist/src/core/agent-runner.js +39 -5
- package/dist/src/core/agent-runner.js.map +1 -1
- package/dist/src/core/agent.d.ts +1 -1
- package/dist/src/core/agent.d.ts.map +1 -1
- package/dist/src/core/agent.js +4 -3
- package/dist/src/core/agent.js.map +1 -1
- package/dist/src/core/intent.d.ts +2 -0
- package/dist/src/core/intent.d.ts.map +1 -1
- package/dist/src/core/intent.js +12 -0
- package/dist/src/core/intent.js.map +1 -1
- package/dist/src/core/presets.d.ts.map +1 -1
- package/dist/src/core/presets.js +49 -15
- package/dist/src/core/presets.js.map +1 -1
- package/dist/src/core/types.d.ts +5 -0
- package/dist/src/core/types.d.ts.map +1 -1
- package/dist/src/index.d.ts +3 -2
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/index.js +2 -2
- package/dist/src/index.js.map +1 -1
- package/dist/src/llm/model-registry.d.ts +25 -0
- package/dist/src/llm/model-registry.d.ts.map +1 -1
- package/dist/src/llm/model-registry.js +223 -22
- package/dist/src/llm/model-registry.js.map +1 -1
- package/dist/src/llm/model-watcher.d.ts +26 -0
- package/dist/src/llm/model-watcher.d.ts.map +1 -0
- package/dist/src/llm/model-watcher.js +130 -0
- package/dist/src/llm/model-watcher.js.map +1 -0
- package/dist/src/llm/ollama.d.ts +13 -1
- package/dist/src/llm/ollama.d.ts.map +1 -1
- package/dist/src/llm/ollama.js +309 -93
- package/dist/src/llm/ollama.js.map +1 -1
- package/dist/src/session/compaction.js +4 -0
- package/dist/src/session/compaction.js.map +1 -1
- package/dist/src/session/project-context.d.ts.map +1 -1
- package/dist/src/session/project-context.js +54 -4
- package/dist/src/session/project-context.js.map +1 -1
- package/dist/src/session/prompt-builder.d.ts +28 -1
- package/dist/src/session/prompt-builder.d.ts.map +1 -1
- package/dist/src/session/prompt-builder.js +97 -23
- package/dist/src/session/prompt-builder.js.map +1 -1
- package/dist/src/session/session-manager.d.ts +10 -3
- package/dist/src/session/session-manager.d.ts.map +1 -1
- package/dist/src/session/session-manager.js +53 -16
- package/dist/src/session/session-manager.js.map +1 -1
- package/dist/src/session/session-persistence.d.ts +12 -0
- package/dist/src/session/session-persistence.d.ts.map +1 -1
- package/dist/src/session/session-persistence.js +94 -4
- package/dist/src/session/session-persistence.js.map +1 -1
- package/dist/src/tools/built-in/bash-security.d.ts +13 -0
- package/dist/src/tools/built-in/bash-security.d.ts.map +1 -0
- package/dist/src/tools/built-in/bash-security.js +53 -0
- package/dist/src/tools/built-in/bash-security.js.map +1 -0
- package/dist/src/tools/built-in/bash.d.ts.map +1 -1
- package/dist/src/tools/built-in/bash.js +7 -1
- package/dist/src/tools/built-in/bash.js.map +1 -1
- package/package.json +2 -1
|
@@ -3,7 +3,19 @@
|
|
|
3
3
|
*
|
|
4
4
|
* Drives: LLM call -> tool extraction -> parallel execution -> tool results -> loop
|
|
5
5
|
*/
|
|
6
|
-
import { classifyIntent, filterToolsByIntent } from './intent.js';
|
|
6
|
+
import { classifyIntent, filterToolsByIntent, detectFrustration, FRUSTRATION_NUDGE } from './intent.js';
|
|
7
|
+
// ---------------------------------------------------------------------------
|
|
8
|
+
// Safe parallel tools — read-only tools that can safely run concurrently
|
|
9
|
+
// ---------------------------------------------------------------------------
|
|
10
|
+
const SAFE_PARALLEL_TOOLS = new Set([
|
|
11
|
+
'file_read',
|
|
12
|
+
'grep',
|
|
13
|
+
'grep_search',
|
|
14
|
+
'glob',
|
|
15
|
+
'git_diff',
|
|
16
|
+
'git_log',
|
|
17
|
+
'think',
|
|
18
|
+
]);
|
|
7
19
|
// ---------------------------------------------------------------------------
|
|
8
20
|
// Helpers
|
|
9
21
|
// ---------------------------------------------------------------------------
|
|
@@ -81,6 +93,15 @@ export class AgentRunner {
|
|
|
81
93
|
.join('')
|
|
82
94
|
: '';
|
|
83
95
|
const intent = classifyIntent(lastUserText);
|
|
96
|
+
const frustrated = detectFrustration(lastUserText);
|
|
97
|
+
// If user is frustrated, inject a nudge as a transient system-level hint
|
|
98
|
+
if (frustrated && lastUserMsg) {
|
|
99
|
+
conversationMessages.push({
|
|
100
|
+
role: 'user',
|
|
101
|
+
content: [{ type: 'text', text: FRUSTRATION_NUDGE }],
|
|
102
|
+
isMeta: true,
|
|
103
|
+
});
|
|
104
|
+
}
|
|
84
105
|
try {
|
|
85
106
|
while (true) {
|
|
86
107
|
if (this.options.abortSignal?.aborted)
|
|
@@ -148,7 +169,8 @@ export class AgentRunner {
|
|
|
148
169
|
finalOutput = turnText;
|
|
149
170
|
break;
|
|
150
171
|
}
|
|
151
|
-
// Step 4: Execute
|
|
172
|
+
// Step 4: Execute tool calls — parallelize safe read-only tools,
|
|
173
|
+
// execute write/dangerous tools sequentially.
|
|
152
174
|
const toolContext = {
|
|
153
175
|
agent: {
|
|
154
176
|
name: this.options.agentName ?? 'cmdr',
|
|
@@ -158,7 +180,8 @@ export class AgentRunner {
|
|
|
158
180
|
cwd: this.options.cwd,
|
|
159
181
|
abortSignal: this.options.abortSignal,
|
|
160
182
|
};
|
|
161
|
-
const
|
|
183
|
+
const allSafe = pendingToolUse.every(tc => SAFE_PARALLEL_TOOLS.has(tc.name));
|
|
184
|
+
const executeOne = async (block) => {
|
|
162
185
|
callbacks.onToolCall?.(block.name, block.input);
|
|
163
186
|
// --- HITL gate: check permissions before executing ---
|
|
164
187
|
if (this.permissionManager && callbacks.onToolApproval) {
|
|
@@ -207,8 +230,19 @@ export class AgentRunner {
|
|
|
207
230
|
is_error: result.isError,
|
|
208
231
|
};
|
|
209
232
|
return { resultBlock, record };
|
|
210
|
-
}
|
|
211
|
-
|
|
233
|
+
};
|
|
234
|
+
let executions;
|
|
235
|
+
if (allSafe) {
|
|
236
|
+
// All tools are read-only — execute in parallel
|
|
237
|
+
executions = await Promise.all(pendingToolUse.map(executeOne));
|
|
238
|
+
}
|
|
239
|
+
else {
|
|
240
|
+
// Mixed or write tools — execute sequentially for safety
|
|
241
|
+
executions = [];
|
|
242
|
+
for (const block of pendingToolUse) {
|
|
243
|
+
executions.push(await executeOne(block));
|
|
244
|
+
}
|
|
245
|
+
}
|
|
212
246
|
// Step 5: Accumulate results
|
|
213
247
|
const toolResultBlocks = executions.map(e => e.resultBlock);
|
|
214
248
|
for (const { record, resultBlock } of executions) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agent-runner.js","sourceRoot":"","sources":["../../../src/core/agent-runner.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAUH,OAAO,EAAE,cAAc,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAA;
|
|
1
|
+
{"version":3,"file":"agent-runner.js","sourceRoot":"","sources":["../../../src/core/agent-runner.ts"],"names":[],"mappings":"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"}
|
package/dist/src/core/agent.d.ts
CHANGED
|
@@ -21,7 +21,7 @@ export declare class Agent {
|
|
|
21
21
|
/** Persistent conversation — appends to history. */
|
|
22
22
|
prompt(message: string, callbacks?: RunCallbacks): Promise<AgentRunResult>;
|
|
23
23
|
/** Streaming prompt — yields events in real time. */
|
|
24
|
-
stream(message: string, callbacks?: RunCallbacks): AsyncGenerator<StreamEvent>;
|
|
24
|
+
stream(message: string, callbacks?: RunCallbacks, abortSignal?: AbortSignal): AsyncGenerator<StreamEvent>;
|
|
25
25
|
getState(): AgentState;
|
|
26
26
|
getHistory(): LLMMessage[];
|
|
27
27
|
reset(): void;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agent.d.ts","sourceRoot":"","sources":["../../../src/core/agent.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EACV,UAAU,EAAE,UAAU,EAAE,WAAW,EAAE,UAAU,EAC/C,cAAc,EAAc,WAAW,EACxC,MAAM,YAAY,CAAA;AACnB,OAAO,EAAe,KAAK,YAAY,EAAkB,MAAM,mBAAmB,CAAA;AAClF,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAA;AAEnD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAA;AAIzD,qBAAa,KAAK;IAChB,QAAQ,CAAC,MAAM,EAAE,WAAW,CAAA;IAC5B,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAY;IACpC,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAc;IAC3C,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAc;IAC3C,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAC,CAAmB;IACtD,OAAO,CAAC,KAAK,CAAY;IACzB,OAAO,CAAC,GAAG,CAAQ;gBAGjB,MAAM,EAAE,WAAW,EACnB,OAAO,EAAE,UAAU,EACnB,YAAY,EAAE,YAAY,EAC1B,GAAG,CAAC,EAAE,MAAM,EACZ,iBAAiB,CAAC,EAAE,iBAAiB;IAevC,mDAAmD;IAC7C,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,YAAY,GAAG,OAAO,CAAC,cAAc,CAAC;IAkB1E,oDAAoD;IAC9C,MAAM,CAAC,OAAO,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,YAAY,GAAG,OAAO,CAAC,cAAc,CAAC;IA8BhF,qDAAqD;IAC9C,MAAM,CAAC,OAAO,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,YAAY,GAAG,cAAc,CAAC,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"agent.d.ts","sourceRoot":"","sources":["../../../src/core/agent.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EACV,UAAU,EAAE,UAAU,EAAE,WAAW,EAAE,UAAU,EAC/C,cAAc,EAAc,WAAW,EACxC,MAAM,YAAY,CAAA;AACnB,OAAO,EAAe,KAAK,YAAY,EAAkB,MAAM,mBAAmB,CAAA;AAClF,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAA;AAEnD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAA;AAIzD,qBAAa,KAAK;IAChB,QAAQ,CAAC,MAAM,EAAE,WAAW,CAAA;IAC5B,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAY;IACpC,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAc;IAC3C,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAc;IAC3C,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAC,CAAmB;IACtD,OAAO,CAAC,KAAK,CAAY;IACzB,OAAO,CAAC,GAAG,CAAQ;gBAGjB,MAAM,EAAE,WAAW,EACnB,OAAO,EAAE,UAAU,EACnB,YAAY,EAAE,YAAY,EAC1B,GAAG,CAAC,EAAE,MAAM,EACZ,iBAAiB,CAAC,EAAE,iBAAiB;IAevC,mDAAmD;IAC7C,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,YAAY,GAAG,OAAO,CAAC,cAAc,CAAC;IAkB1E,oDAAoD;IAC9C,MAAM,CAAC,OAAO,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,YAAY,GAAG,OAAO,CAAC,cAAc,CAAC;IA8BhF,qDAAqD;IAC9C,MAAM,CAAC,OAAO,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,YAAY,EAAE,WAAW,CAAC,EAAE,WAAW,GAAG,cAAc,CAAC,WAAW,CAAC;IAkChH,QAAQ,IAAI,UAAU;IACtB,UAAU,IAAI,UAAU,EAAE;IAE1B,KAAK,IAAI,IAAI;IAIb,gEAAgE;IAChE,eAAe,CAAC,QAAQ,EAAE,UAAU,EAAE,GAAG,IAAI;IAI7C,MAAM,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI;IAIzB,sDAAsD;IACtD,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAI7B,OAAO,CAAC,YAAY;IAepB,OAAO,CAAC,aAAa;CAStB"}
|
package/dist/src/core/agent.js
CHANGED
|
@@ -73,13 +73,13 @@ export class Agent {
|
|
|
73
73
|
}
|
|
74
74
|
}
|
|
75
75
|
/** Streaming prompt — yields events in real time. */
|
|
76
|
-
async *stream(message, callbacks) {
|
|
76
|
+
async *stream(message, callbacks, abortSignal) {
|
|
77
77
|
this.state.messages.push({
|
|
78
78
|
role: 'user',
|
|
79
79
|
content: [{ type: 'text', text: message }],
|
|
80
80
|
});
|
|
81
81
|
this.state.status = 'running';
|
|
82
|
-
const runner = this.createRunner();
|
|
82
|
+
const runner = this.createRunner(abortSignal);
|
|
83
83
|
try {
|
|
84
84
|
for await (const event of runner.stream(this.state.messages, callbacks)) {
|
|
85
85
|
yield event;
|
|
@@ -121,7 +121,7 @@ export class Agent {
|
|
|
121
121
|
setModel(model) {
|
|
122
122
|
this.config.model = model;
|
|
123
123
|
}
|
|
124
|
-
createRunner() {
|
|
124
|
+
createRunner(abortSignal) {
|
|
125
125
|
return new AgentRunner(this.adapter, this.toolRegistry, this.toolExecutor, {
|
|
126
126
|
model: this.config.model ?? 'qwen2.5-coder:14b',
|
|
127
127
|
systemPrompt: this.config.systemPrompt,
|
|
@@ -132,6 +132,7 @@ export class Agent {
|
|
|
132
132
|
agentName: this.config.name,
|
|
133
133
|
agentRole: 'assistant',
|
|
134
134
|
cwd: this.cwd,
|
|
135
|
+
abortSignal,
|
|
135
136
|
}, this.permissionManager);
|
|
136
137
|
}
|
|
137
138
|
toAgentResult(result) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agent.js","sourceRoot":"","sources":["../../../src/core/agent.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"agent.js","sourceRoot":"","sources":["../../../src/core/agent.ts"],"names":[],"mappings":"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"}
|
|
@@ -22,6 +22,8 @@ export type UserIntent = 'conversational' | 'exploratory' | 'actionable';
|
|
|
22
22
|
* (withholding tools when the user needs them).
|
|
23
23
|
*/
|
|
24
24
|
export declare function classifyIntent(message: string): UserIntent;
|
|
25
|
+
export declare function detectFrustration(message: string): boolean;
|
|
26
|
+
export declare const FRUSTRATION_NUDGE = "[The user seems frustrated. Be extra careful with your next actions:\n- Explain your reasoning briefly before each tool call\n- Verify every change by running tests\n- Offer to undo recent changes if something went wrong\n- Take it one step at a time, do not batch multiple changes]";
|
|
25
27
|
/**
|
|
26
28
|
* Filter tool definitions based on intent.
|
|
27
29
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"intent.d.ts","sourceRoot":"","sources":["../../../src/core/intent.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,YAAY,CAAA;AAE5C,MAAM,MAAM,UAAU,GAAG,gBAAgB,GAAG,aAAa,GAAG,YAAY,CAAA;AA+BxE;;;;;;;GAOG;AACH,wBAAgB,cAAc,CAAC,OAAO,EAAE,MAAM,GAAG,UAAU,CA8B1D;AAED;;;;;;GAMG;AACH,wBAAgB,mBAAmB,CACjC,MAAM,EAAE,UAAU,EAClB,QAAQ,EAAE,SAAS,UAAU,EAAE,GAC9B,UAAU,EAAE,CASd"}
|
|
1
|
+
{"version":3,"file":"intent.d.ts","sourceRoot":"","sources":["../../../src/core/intent.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,YAAY,CAAA;AAE5C,MAAM,MAAM,UAAU,GAAG,gBAAgB,GAAG,aAAa,GAAG,YAAY,CAAA;AA+BxE;;;;;;;GAOG;AACH,wBAAgB,cAAc,CAAC,OAAO,EAAE,MAAM,GAAG,UAAU,CA8B1D;AAQD,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAE1D;AAED,eAAO,MAAM,iBAAiB,+RAI+B,CAAA;AAE7D;;;;;;GAMG;AACH,wBAAgB,mBAAmB,CACjC,MAAM,EAAE,UAAU,EAClB,QAAQ,EAAE,SAAS,UAAU,EAAE,GAC9B,UAAU,EAAE,CASd"}
|
package/dist/src/core/intent.js
CHANGED
|
@@ -71,6 +71,18 @@ export function classifyIntent(message) {
|
|
|
71
71
|
// Medium-length messages that don't match anything → exploratory
|
|
72
72
|
return 'exploratory';
|
|
73
73
|
}
|
|
74
|
+
// ---------------------------------------------------------------------------
|
|
75
|
+
// Frustration detection
|
|
76
|
+
// ---------------------------------------------------------------------------
|
|
77
|
+
const FRUSTRATION_REGEX = /\b(wtf|wth|ffs|omfg|shit(?:ty|tiest)?|horrible|awful|piece\s*of\s*(?:shit|crap|junk)|what\s*the\s*(?:fuck|hell)|fuck(?:ing)?\s*(?:broken|useless|terrible|awful|horrible)|screw\s*(?:this|you)|so\s+frustrating|this\s+sucks|damn\s*it|ugh{2,}|argh{2,})\b/i;
|
|
78
|
+
export function detectFrustration(message) {
|
|
79
|
+
return FRUSTRATION_REGEX.test(message);
|
|
80
|
+
}
|
|
81
|
+
export const FRUSTRATION_NUDGE = `[The user seems frustrated. Be extra careful with your next actions:
|
|
82
|
+
- Explain your reasoning briefly before each tool call
|
|
83
|
+
- Verify every change by running tests
|
|
84
|
+
- Offer to undo recent changes if something went wrong
|
|
85
|
+
- Take it one step at a time, do not batch multiple changes]`;
|
|
74
86
|
/**
|
|
75
87
|
* Filter tool definitions based on intent.
|
|
76
88
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"intent.js","sourceRoot":"","sources":["../../../src/core/intent.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAMH,8EAA8E;AAC9E,wCAAwC;AACxC,8EAA8E;AAE9E,MAAM,iBAAiB,GAAG,IAAI,GAAG,CAAC;IAChC,WAAW;IACX,MAAM;IACN,MAAM;IACN,UAAU;IACV,SAAS;IACT,OAAO;CACR,CAAC,CAAA;AAEF,8EAA8E;AAC9E,8BAA8B;AAC9B,8EAA8E;AAE9E,4EAA4E;AAC5E,MAAM,cAAc,GAAG,6MAA6M,CAAA;AAEpO,wEAAwE;AACxE,MAAM,eAAe,GAAG,sLAAsL,CAAA;AAE9M,oEAAoE;AACpE,MAAM,iBAAiB,GAAG,gKAAgK,CAAA;AAE1L,6EAA6E;AAC7E,MAAM,aAAa,GAAG,iHAAiH,CAAA;AAEvI;;;;;;;GAOG;AACH,MAAM,UAAU,cAAc,CAAC,OAAe;IAC5C,MAAM,OAAO,GAAG,OAAO,CAAC,IAAI,EAAE,CAAA;IAE9B,iDAAiD;IACjD,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,gBAAgB,CAAA;IACjD,IAAI,iBAAiB,CAAC,IAAI,CAAC,OAAO,CAAC;QAAE,OAAO,gBAAgB,CAAA;IAC5D,IAAI,aAAa,CAAC,IAAI,CAAC,OAAO,CAAC;QAAE,OAAO,gBAAgB,CAAA;IAExD,8EAA8E;IAC9E,IAAI,OAAO,CAAC,MAAM,GAAG,EAAE,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;QAC3F,OAAO,gBAAgB,CAAA;IACzB,CAAC;IAED,uCAAuC;IACvC,IAAI,cAAc,CAAC,IAAI,CAAC,OAAO,CAAC;QAAE,OAAO,YAAY,CAAA;IAErD,yCAAyC;IACzC,IAAI,eAAe,CAAC,IAAI,CAAC,OAAO,CAAC;QAAE,OAAO,aAAa,CAAA;IAEvD,iEAAiE;IACjE,IAAI,sEAAsE,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;QACzF,OAAO,YAAY,CAAA;IACrB,CAAC;IAED,gEAAgE;IAChE,6DAA6D;IAC7D,IAAI,OAAO,CAAC,MAAM,IAAI,EAAE;QAAE,OAAO,YAAY,CAAA;IAE7C,iEAAiE;IACjE,OAAO,aAAa,CAAA;AACtB,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,mBAAmB,CACjC,MAAkB,EAClB,QAA+B;IAE/B,QAAQ,MAAM,EAAE,CAAC;QACf,KAAK,gBAAgB;YACnB,OAAO,EAAE,CAAA;QACX,KAAK,aAAa;YAChB,OAAO,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,iBAAiB,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAA;QAC5D,KAAK,YAAY;YACf,OAAO,CAAC,GAAG,QAAQ,CAAC,CAAA;IACxB,CAAC;AACH,CAAC"}
|
|
1
|
+
{"version":3,"file":"intent.js","sourceRoot":"","sources":["../../../src/core/intent.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAMH,8EAA8E;AAC9E,wCAAwC;AACxC,8EAA8E;AAE9E,MAAM,iBAAiB,GAAG,IAAI,GAAG,CAAC;IAChC,WAAW;IACX,MAAM;IACN,MAAM;IACN,UAAU;IACV,SAAS;IACT,OAAO;CACR,CAAC,CAAA;AAEF,8EAA8E;AAC9E,8BAA8B;AAC9B,8EAA8E;AAE9E,4EAA4E;AAC5E,MAAM,cAAc,GAAG,6MAA6M,CAAA;AAEpO,wEAAwE;AACxE,MAAM,eAAe,GAAG,sLAAsL,CAAA;AAE9M,oEAAoE;AACpE,MAAM,iBAAiB,GAAG,gKAAgK,CAAA;AAE1L,6EAA6E;AAC7E,MAAM,aAAa,GAAG,iHAAiH,CAAA;AAEvI;;;;;;;GAOG;AACH,MAAM,UAAU,cAAc,CAAC,OAAe;IAC5C,MAAM,OAAO,GAAG,OAAO,CAAC,IAAI,EAAE,CAAA;IAE9B,iDAAiD;IACjD,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,gBAAgB,CAAA;IACjD,IAAI,iBAAiB,CAAC,IAAI,CAAC,OAAO,CAAC;QAAE,OAAO,gBAAgB,CAAA;IAC5D,IAAI,aAAa,CAAC,IAAI,CAAC,OAAO,CAAC;QAAE,OAAO,gBAAgB,CAAA;IAExD,8EAA8E;IAC9E,IAAI,OAAO,CAAC,MAAM,GAAG,EAAE,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;QAC3F,OAAO,gBAAgB,CAAA;IACzB,CAAC;IAED,uCAAuC;IACvC,IAAI,cAAc,CAAC,IAAI,CAAC,OAAO,CAAC;QAAE,OAAO,YAAY,CAAA;IAErD,yCAAyC;IACzC,IAAI,eAAe,CAAC,IAAI,CAAC,OAAO,CAAC;QAAE,OAAO,aAAa,CAAA;IAEvD,iEAAiE;IACjE,IAAI,sEAAsE,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;QACzF,OAAO,YAAY,CAAA;IACrB,CAAC;IAED,gEAAgE;IAChE,6DAA6D;IAC7D,IAAI,OAAO,CAAC,MAAM,IAAI,EAAE;QAAE,OAAO,YAAY,CAAA;IAE7C,iEAAiE;IACjE,OAAO,aAAa,CAAA;AACtB,CAAC;AAED,8EAA8E;AAC9E,wBAAwB;AACxB,8EAA8E;AAE9E,MAAM,iBAAiB,GAAG,6PAA6P,CAAA;AAEvR,MAAM,UAAU,iBAAiB,CAAC,OAAe;IAC/C,OAAO,iBAAiB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;AACxC,CAAC;AAED,MAAM,CAAC,MAAM,iBAAiB,GAAG;;;;6DAI4B,CAAA;AAE7D;;;;;;GAMG;AACH,MAAM,UAAU,mBAAmB,CACjC,MAAkB,EAClB,QAA+B;IAE/B,QAAQ,MAAM,EAAE,CAAC;QACf,KAAK,gBAAgB;YACnB,OAAO,EAAE,CAAA;QACX,KAAK,aAAa;YAChB,OAAO,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,iBAAiB,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAA;QAC5D,KAAK,YAAY;YACf,OAAO,CAAC,GAAG,QAAQ,CAAC,CAAA;IACxB,CAAC;AACH,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"presets.d.ts","sourceRoot":"","sources":["../../../src/core/presets.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,YAAY,CAAA;AAMzD,eAAO,MAAM,UAAU,EAAE,
|
|
1
|
+
{"version":3,"file":"presets.d.ts","sourceRoot":"","sources":["../../../src/core/presets.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,YAAY,CAAA;AAMzD,eAAO,MAAM,UAAU,EAAE,WAyDxB,CAAA;AA8ED,eAAO,MAAM,gBAAgB,EAAE,UAM9B,CAAA;AAED,eAAO,MAAM,eAAe,EAAE,UAM7B,CAAA;AAED,eAAO,MAAM,mBAAmB,EAAE,UAMjC,CAAA;AAeD,wBAAgB,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,WAAW,GAAG,SAAS,CAS/D;AAED,wBAAgB,aAAa,CAAC,IAAI,EAAE,MAAM,GAAG,UAAU,GAAG,SAAS,CAElE;AAED,wBAAgB,eAAe,IAAI,MAAM,EAAE,CAE1C"}
|
package/dist/src/core/presets.js
CHANGED
|
@@ -6,22 +6,56 @@
|
|
|
6
6
|
// ---------------------------------------------------------------------------
|
|
7
7
|
export const SOLO_CODER = {
|
|
8
8
|
name: 'cmdr',
|
|
9
|
-
systemPrompt: `You are cmdr, an expert coding
|
|
10
|
-
You have direct access to their filesystem and can run shell commands.
|
|
9
|
+
systemPrompt: `You are cmdr, an expert coding agent running in the user's terminal. You have direct access to their filesystem via tools. You operate locally, powered by Ollama.
|
|
11
10
|
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
11
|
+
# Core Rules
|
|
12
|
+
|
|
13
|
+
1. BE CONCISE. Respond in 1-3 sentences max, then use tools. Do not explain what you are about to do. Just do it. Minimize output tokens. Never exceed 4 lines of prose unless the user asks for detail.
|
|
14
|
+
2. READ BEFORE EDITING. Never guess at file contents. Always file_read before file_edit. Never make assumptions about the contents of files.
|
|
15
|
+
3. VERIFY AFTER WRITING. After writing or editing code, run the project's test or lint command (check package.json scripts, Makefile, pyproject.toml, etc.) to confirm your changes compile and pass. If no test command exists, at minimum check syntax.
|
|
16
|
+
4. FOLLOW CONVENTIONS. Before making changes, analyze surrounding code for naming conventions, import style, indentation, and formatting patterns. Match them exactly. Never introduce a new library or framework without checking if it is already in the project's dependencies.
|
|
17
|
+
5. NEVER ASSUME. Do not assume a library is installed. Check package.json, go.mod, requirements.txt, Cargo.toml first. Do not assume file contents. Read them.
|
|
18
|
+
6. KEEP GOING. You are an agent. Continue using tools until the task is fully resolved. Do not stop after a single tool call if the task requires multiple steps. If a command fails, analyze the error and fix it. Do not give up.
|
|
19
|
+
7. NEVER COMMIT. Do not run git add, git commit, or git push unless the user explicitly asks you to.
|
|
20
|
+
8. RESPECT CANCELLATIONS. If the user denies a tool call, do not retry that same call. Ask what they would prefer instead.
|
|
21
|
+
|
|
22
|
+
# Planning
|
|
23
|
+
|
|
24
|
+
For complex tasks (multi-file changes, new features, debugging), use the think tool FIRST to plan:
|
|
25
|
+
- List the files you need to read
|
|
26
|
+
- List the changes you need to make and in what order
|
|
27
|
+
- Identify dependencies between changes
|
|
28
|
+
Then execute the plan step by step.
|
|
29
|
+
|
|
30
|
+
# Multi-File Workflow
|
|
31
|
+
|
|
32
|
+
When a task involves multiple files:
|
|
33
|
+
1. Use glob to discover project structure
|
|
34
|
+
2. Read ALL relevant files before making any changes
|
|
35
|
+
3. Plan changes: list which files need modification and in what order
|
|
36
|
+
4. Make changes in dependency order (shared utilities first, then consumers)
|
|
37
|
+
5. After all changes, verify imports resolve and tests pass
|
|
38
|
+
6. If splitting a file, ensure the original file's exports are preserved or re-exported
|
|
39
|
+
|
|
40
|
+
# Tool-Use Patterns
|
|
41
|
+
|
|
42
|
+
- CREATE a new file: use file_write directly. Do not read first.
|
|
43
|
+
- MODIFY an existing file: file_read first, then file_edit for surgical changes. Prefer file_edit over file_write for modifications (preserves unrelated code).
|
|
44
|
+
- FIX a bug: file_read the relevant file(s), identify the issue, file_edit to fix, bash to run tests.
|
|
45
|
+
- EXPLORE a codebase: glob for structure, grep for patterns, file_read for details.
|
|
46
|
+
- RUN commands: use bash. Always check exit code. If it fails, analyze the error output and fix.
|
|
47
|
+
- SEARCH for code: use grep with a focused pattern. Do not read entire files when grep can find what you need.
|
|
48
|
+
|
|
49
|
+
# Project Instructions
|
|
50
|
+
|
|
51
|
+
If a CMDR.md file exists in the project root, follow its instructions. It contains project-specific rules, build commands, testing commands, and conventions set by the user. Treat CMDR.md instructions as high priority.
|
|
52
|
+
|
|
53
|
+
# Output Format
|
|
54
|
+
|
|
55
|
+
- Reference code locations as file_path:line_number when discussing specific code
|
|
56
|
+
- Do not repeat file contents in your response after writing them
|
|
57
|
+
- Do not ask clarifying questions in automated/one-shot mode. Make reasonable assumptions and proceed.
|
|
58
|
+
- When reporting what you did, be brief: "Fixed the off-by-one error in range.js:12" not a paragraph.`,
|
|
25
59
|
tools: [
|
|
26
60
|
'bash', 'file_read', 'file_write', 'file_edit',
|
|
27
61
|
'grep', 'glob', 'git_diff', 'git_log', 'think',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"presets.js","sourceRoot":"","sources":["../../../src/core/presets.ts"],"names":[],"mappings":"AAAA;;GAEG;AAIH,8EAA8E;AAC9E,qBAAqB;AACrB,8EAA8E;AAE9E,MAAM,CAAC,MAAM,UAAU,GAAgB;IACrC,IAAI,EAAE,MAAM;IACZ,YAAY,EAAE
|
|
1
|
+
{"version":3,"file":"presets.js","sourceRoot":"","sources":["../../../src/core/presets.ts"],"names":[],"mappings":"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"}
|
package/dist/src/core/types.d.ts
CHANGED
|
@@ -24,6 +24,10 @@ export type ContentBlock = TextBlock | ToolUseBlock | ToolResultBlock;
|
|
|
24
24
|
export interface LLMMessage {
|
|
25
25
|
readonly role: 'user' | 'assistant';
|
|
26
26
|
readonly content: ContentBlock[];
|
|
27
|
+
isCompactSummary?: boolean;
|
|
28
|
+
isCompactBoundary?: boolean;
|
|
29
|
+
isVisibleInTranscriptOnly?: boolean;
|
|
30
|
+
isMeta?: boolean;
|
|
27
31
|
}
|
|
28
32
|
export interface TokenUsage {
|
|
29
33
|
readonly input_tokens: number;
|
|
@@ -202,6 +206,7 @@ export interface CmdrConfig {
|
|
|
202
206
|
defaultModel: string;
|
|
203
207
|
defaultProvider: 'ollama' | 'openai' | 'anthropic';
|
|
204
208
|
maxConcurrency: number;
|
|
209
|
+
maxTurns: number;
|
|
205
210
|
contextBudget: number;
|
|
206
211
|
autoCompact: boolean;
|
|
207
212
|
permissions: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/core/types.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,KAAK,CAAA;AAMpC,MAAM,WAAW,SAAS;IACxB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;IACrB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;CACtB;AAED,MAAM,WAAW,YAAY;IAC3B,QAAQ,CAAC,IAAI,EAAE,UAAU,CAAA;IACzB,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAA;IACnB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;IACrB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;CACxC;AAED,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,IAAI,EAAE,aAAa,CAAA;IAC5B,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAA;IAC5B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAA;IACxB,QAAQ,CAAC,QAAQ,CAAC,EAAE,OAAO,CAAA;CAC5B;AAED,MAAM,MAAM,YAAY,GAAG,SAAS,GAAG,YAAY,GAAG,eAAe,CAAA;AAMrE,MAAM,WAAW,UAAU;IACzB,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,WAAW,CAAA;IACnC,QAAQ,CAAC,OAAO,EAAE,YAAY,EAAE,CAAA;
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/core/types.ts"],"names":[],"mappings":"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"}
|
package/dist/src/index.d.ts
CHANGED
|
@@ -25,10 +25,11 @@ export { getModelInfo, getDefaultContextLength, getRecommendedModel } from './ll
|
|
|
25
25
|
export { countTokens, countMessageTokens } from './llm/token-counter.js';
|
|
26
26
|
export { SessionManager } from './session/session-manager.js';
|
|
27
27
|
export { discoverProject } from './session/project-context.js';
|
|
28
|
-
export { buildSystemPrompt } from './session/prompt-builder.js';
|
|
28
|
+
export { buildSystemPrompt, PromptBuilder, PROMPT_PRIORITIES } from './session/prompt-builder.js';
|
|
29
|
+
export type { PromptModule, PromptBuildOptions } from './session/prompt-builder.js';
|
|
29
30
|
export { compactHistory, shouldCompact, DEFAULT_COMPACTION_CONFIG } from './session/compaction.js';
|
|
30
31
|
export type { CompactionConfig } from './session/compaction.js';
|
|
31
|
-
export { saveSession, loadSession, listSessions, findRecentSession, DebouncedSaver } from './session/session-persistence.js';
|
|
32
|
+
export { saveSession, loadSession, listSessions, findRecentSession, DebouncedSaver, appendSessionMessage, writeSessionMeta, appendCompactMarker } from './session/session-persistence.js';
|
|
32
33
|
export type { SavedSession } from './session/session-persistence.js';
|
|
33
34
|
export { CostTracker } from './session/cost-tracker.js';
|
|
34
35
|
export type { CostEntry, CostSummary } from './session/cost-tracker.js';
|
package/dist/src/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAA;AACvC,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAA;AACpD,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAA;AAChD,OAAO,EAAE,IAAI,EAAE,MAAM,gBAAgB,CAAA;AACrC,OAAO,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAA;AACrD,OAAO,EACL,UAAU,EAAE,gBAAgB,EAAE,eAAe,EAAE,mBAAmB,EAClE,SAAS,EAAE,aAAa,EAAE,eAAe,GAC1C,MAAM,mBAAmB,CAAA;AAC1B,YAAY,EACV,WAAW,EAAE,UAAU,EAAE,cAAc,EACvC,UAAU,EAAE,UAAU,EAAE,WAAW,EAAE,cAAc,EACnD,WAAW,EAAE,YAAY,EAAE,SAAS,EAAE,YAAY,EAAE,eAAe,EACnE,UAAU,EAAE,cAAc,EAC1B,cAAc,EAAE,UAAU,EAAE,cAAc,EAC1C,UAAU,EAAE,aAAa,EAAE,IAAI,EAAE,UAAU,EAC3C,YAAY,EAAE,cAAc,EAC5B,UAAU,EAAE,YAAY,EACxB,UAAU,EAAE,kBAAkB,EAAE,iBAAiB,GAClD,MAAM,iBAAiB,CAAA;AAGxB,OAAO,EAAE,UAAU,EAAE,MAAM,gCAAgC,CAAA;AAC3D,YAAY,EAAE,UAAU,EAAE,MAAM,gCAAgC,CAAA;AAChE,OAAO,EAAE,YAAY,EAAE,MAAM,kCAAkC,CAAA;AAC/D,OAAO,EAAE,SAAS,EAAE,MAAM,+BAA+B,CAAA;AAGzD,OAAO,EAAE,SAAS,EAAE,MAAM,2BAA2B,CAAA;AACrD,OAAO,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAA;AACxD,YAAY,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAA;AAGpE,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAA;AAC/E,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAA;AAClD,OAAO,EAAE,oBAAoB,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAA;AAGhF,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAA;AAC/C,OAAO,EAAE,YAAY,EAAE,uBAAuB,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAA;AACpG,OAAO,EAAE,WAAW,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAA;AAGxE,OAAO,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAA;AAC7D,OAAO,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAA;AAC9D,OAAO,EAAE,iBAAiB,EAAE,MAAM,6BAA6B,CAAA;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAA;AACvC,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAA;AACpD,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAA;AAChD,OAAO,EAAE,IAAI,EAAE,MAAM,gBAAgB,CAAA;AACrC,OAAO,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAA;AACrD,OAAO,EACL,UAAU,EAAE,gBAAgB,EAAE,eAAe,EAAE,mBAAmB,EAClE,SAAS,EAAE,aAAa,EAAE,eAAe,GAC1C,MAAM,mBAAmB,CAAA;AAC1B,YAAY,EACV,WAAW,EAAE,UAAU,EAAE,cAAc,EACvC,UAAU,EAAE,UAAU,EAAE,WAAW,EAAE,cAAc,EACnD,WAAW,EAAE,YAAY,EAAE,SAAS,EAAE,YAAY,EAAE,eAAe,EACnE,UAAU,EAAE,cAAc,EAC1B,cAAc,EAAE,UAAU,EAAE,cAAc,EAC1C,UAAU,EAAE,aAAa,EAAE,IAAI,EAAE,UAAU,EAC3C,YAAY,EAAE,cAAc,EAC5B,UAAU,EAAE,YAAY,EACxB,UAAU,EAAE,kBAAkB,EAAE,iBAAiB,GAClD,MAAM,iBAAiB,CAAA;AAGxB,OAAO,EAAE,UAAU,EAAE,MAAM,gCAAgC,CAAA;AAC3D,YAAY,EAAE,UAAU,EAAE,MAAM,gCAAgC,CAAA;AAChE,OAAO,EAAE,YAAY,EAAE,MAAM,kCAAkC,CAAA;AAC/D,OAAO,EAAE,SAAS,EAAE,MAAM,+BAA+B,CAAA;AAGzD,OAAO,EAAE,SAAS,EAAE,MAAM,2BAA2B,CAAA;AACrD,OAAO,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAA;AACxD,YAAY,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAA;AAGpE,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAA;AAC/E,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAA;AAClD,OAAO,EAAE,oBAAoB,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAA;AAGhF,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAA;AAC/C,OAAO,EAAE,YAAY,EAAE,uBAAuB,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAA;AACpG,OAAO,EAAE,WAAW,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAA;AAGxE,OAAO,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAA;AAC7D,OAAO,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAA;AAC9D,OAAO,EAAE,iBAAiB,EAAE,aAAa,EAAE,iBAAiB,EAAE,MAAM,6BAA6B,CAAA;AACjG,YAAY,EAAE,YAAY,EAAE,kBAAkB,EAAE,MAAM,6BAA6B,CAAA;AACnF,OAAO,EAAE,cAAc,EAAE,aAAa,EAAE,yBAAyB,EAAE,MAAM,yBAAyB,CAAA;AAClG,YAAY,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAA;AAC/D,OAAO,EAAE,WAAW,EAAE,WAAW,EAAE,YAAY,EAAE,iBAAiB,EAAE,cAAc,EAAE,oBAAoB,EAAE,gBAAgB,EAAE,mBAAmB,EAAE,MAAM,kCAAkC,CAAA;AACzL,YAAY,EAAE,YAAY,EAAE,MAAM,kCAAkC,CAAA;AACpE,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAA;AACvD,YAAY,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAA;AACvE,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAA;AACvD,YAAY,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAA;AAG3D,OAAO,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAA;AAC3D,OAAO,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAA;AAGnD,OAAO,EAAE,UAAU,EAAE,iBAAiB,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAA;AAC/F,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAA;AACrD,OAAO,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAA;AACjD,YAAY,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAA;AAG3D,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAA"}
|
package/dist/src/index.js
CHANGED
|
@@ -28,9 +28,9 @@ export { countTokens, countMessageTokens } from './llm/token-counter.js';
|
|
|
28
28
|
// Session
|
|
29
29
|
export { SessionManager } from './session/session-manager.js';
|
|
30
30
|
export { discoverProject } from './session/project-context.js';
|
|
31
|
-
export { buildSystemPrompt } from './session/prompt-builder.js';
|
|
31
|
+
export { buildSystemPrompt, PromptBuilder, PROMPT_PRIORITIES } from './session/prompt-builder.js';
|
|
32
32
|
export { compactHistory, shouldCompact, DEFAULT_COMPACTION_CONFIG } from './session/compaction.js';
|
|
33
|
-
export { saveSession, loadSession, listSessions, findRecentSession, DebouncedSaver } from './session/session-persistence.js';
|
|
33
|
+
export { saveSession, loadSession, listSessions, findRecentSession, DebouncedSaver, appendSessionMessage, writeSessionMeta, appendCompactMarker } from './session/session-persistence.js';
|
|
34
34
|
export { CostTracker } from './session/cost-tracker.js';
|
|
35
35
|
export { UndoManager } from './session/undo-manager.js';
|
|
36
36
|
// Plugins & MCP
|
package/dist/src/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO;AACP,OAAO,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAA;AACvC,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAA;AACpD,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAA;AAChD,OAAO,EAAE,IAAI,EAAE,MAAM,gBAAgB,CAAA;AACrC,OAAO,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAA;AACrD,OAAO,EACL,UAAU,EAAE,gBAAgB,EAAE,eAAe,EAAE,mBAAmB,EAClE,SAAS,EAAE,aAAa,EAAE,eAAe,GAC1C,MAAM,mBAAmB,CAAA;AAa1B,gBAAgB;AAChB,OAAO,EAAE,UAAU,EAAE,MAAM,gCAAgC,CAAA;AAE3D,OAAO,EAAE,YAAY,EAAE,MAAM,kCAAkC,CAAA;AAC/D,OAAO,EAAE,SAAS,EAAE,MAAM,+BAA+B,CAAA;AAEzD,aAAa;AACb,OAAO,EAAE,SAAS,EAAE,MAAM,2BAA2B,CAAA;AACrD,OAAO,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAA;AAGxD,QAAQ;AACR,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAA;AAC/E,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAA;AAClD,OAAO,EAAE,oBAAoB,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAA;AAEhF,MAAM;AACN,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAA;AAC/C,OAAO,EAAE,YAAY,EAAE,uBAAuB,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAA;AACpG,OAAO,EAAE,WAAW,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAA;AAExE,UAAU;AACV,OAAO,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAA;AAC7D,OAAO,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAA;AAC9D,OAAO,EAAE,iBAAiB,EAAE,MAAM,6BAA6B,CAAA;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO;AACP,OAAO,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAA;AACvC,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAA;AACpD,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAA;AAChD,OAAO,EAAE,IAAI,EAAE,MAAM,gBAAgB,CAAA;AACrC,OAAO,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAA;AACrD,OAAO,EACL,UAAU,EAAE,gBAAgB,EAAE,eAAe,EAAE,mBAAmB,EAClE,SAAS,EAAE,aAAa,EAAE,eAAe,GAC1C,MAAM,mBAAmB,CAAA;AAa1B,gBAAgB;AAChB,OAAO,EAAE,UAAU,EAAE,MAAM,gCAAgC,CAAA;AAE3D,OAAO,EAAE,YAAY,EAAE,MAAM,kCAAkC,CAAA;AAC/D,OAAO,EAAE,SAAS,EAAE,MAAM,+BAA+B,CAAA;AAEzD,aAAa;AACb,OAAO,EAAE,SAAS,EAAE,MAAM,2BAA2B,CAAA;AACrD,OAAO,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAA;AAGxD,QAAQ;AACR,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAA;AAC/E,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAA;AAClD,OAAO,EAAE,oBAAoB,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAA;AAEhF,MAAM;AACN,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAA;AAC/C,OAAO,EAAE,YAAY,EAAE,uBAAuB,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAA;AACpG,OAAO,EAAE,WAAW,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAA;AAExE,UAAU;AACV,OAAO,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAA;AAC7D,OAAO,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAA;AAC9D,OAAO,EAAE,iBAAiB,EAAE,aAAa,EAAE,iBAAiB,EAAE,MAAM,6BAA6B,CAAA;AAEjG,OAAO,EAAE,cAAc,EAAE,aAAa,EAAE,yBAAyB,EAAE,MAAM,yBAAyB,CAAA;AAElG,OAAO,EAAE,WAAW,EAAE,WAAW,EAAE,YAAY,EAAE,iBAAiB,EAAE,cAAc,EAAE,oBAAoB,EAAE,gBAAgB,EAAE,mBAAmB,EAAE,MAAM,kCAAkC,CAAA;AAEzL,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAA;AAEvD,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAA;AAGvD,gBAAgB;AAChB,OAAO,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAA;AAC3D,OAAO,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAA;AAEnD,SAAS;AACT,OAAO,EAAE,UAAU,EAAE,iBAAiB,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAA;AAC/F,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAA;AACrD,OAAO,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAA;AAGjD,MAAM;AACN,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAA"}
|
|
@@ -1,5 +1,8 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Model registry — known models and their capabilities.
|
|
3
|
+
*
|
|
4
|
+
* Seed data provides accurate defaults for well-known models.
|
|
5
|
+
* Dynamic models discovered from Ollama are merged on top at runtime.
|
|
3
6
|
*/
|
|
4
7
|
export interface ModelInfo {
|
|
5
8
|
name: string;
|
|
@@ -8,8 +11,30 @@ export interface ModelInfo {
|
|
|
8
11
|
parameterSize: string;
|
|
9
12
|
recommended: 'lightweight' | 'midrange' | 'heavy';
|
|
10
13
|
}
|
|
14
|
+
/** Register or update a model in the dynamic registry. */
|
|
15
|
+
export declare function registerModel(info: ModelInfo): void;
|
|
16
|
+
/** Remove a model from the dynamic registry. */
|
|
17
|
+
export declare function unregisterModel(name: string): void;
|
|
18
|
+
/** Get all models in the registry (seed + dynamically discovered). */
|
|
19
|
+
export declare function getAllModels(): ModelInfo[];
|
|
20
|
+
/** Get the set of model names currently in the registry. */
|
|
21
|
+
export declare function getRegisteredModelNames(): Set<string>;
|
|
22
|
+
/**
|
|
23
|
+
* Lookup model info — checks dynamic registry first (exact match),
|
|
24
|
+
* then falls back to prefix matching against seed data.
|
|
25
|
+
*/
|
|
11
26
|
export declare function getModelInfo(name: string): ModelInfo | undefined;
|
|
12
27
|
export declare function getDefaultContextLength(model: string): number;
|
|
28
|
+
export declare const TOOL_CAPABLE_FAMILIES: Set<string>;
|
|
29
|
+
/** Infer whether a model family supports tools. */
|
|
30
|
+
export declare function familySupportsTools(family: string): boolean;
|
|
31
|
+
/** Infer recommended tier from parameter size string. */
|
|
32
|
+
export declare function inferTier(parameterSize: string): 'lightweight' | 'midrange' | 'heavy';
|
|
33
|
+
/**
|
|
34
|
+
* Discover all models from Ollama and register them in the dynamic registry.
|
|
35
|
+
* Returns the list of newly added model names.
|
|
36
|
+
*/
|
|
37
|
+
export declare function discoverOllamaModels(ollamaUrl?: string): Promise<string[]>;
|
|
13
38
|
/**
|
|
14
39
|
* Query Ollama /api/show for the actual context length of a model.
|
|
15
40
|
* Falls back to getDefaultContextLength if the query fails.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"model-registry.d.ts","sourceRoot":"","sources":["../../../src/llm/model-registry.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"model-registry.d.ts","sourceRoot":"","sources":["../../../src/llm/model-registry.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,MAAM,WAAW,SAAS;IACxB,IAAI,EAAE,MAAM,CAAA;IACZ,aAAa,EAAE,MAAM,CAAA;IACrB,aAAa,EAAE,OAAO,CAAA;IACtB,aAAa,EAAE,MAAM,CAAA;IACrB,WAAW,EAAE,aAAa,GAAG,UAAU,GAAG,OAAO,CAAA;CAClD;AA4ED,0DAA0D;AAC1D,wBAAgB,aAAa,CAAC,IAAI,EAAE,SAAS,GAAG,IAAI,CAEnD;AAED,gDAAgD;AAChD,wBAAgB,eAAe,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAElD;AAED,sEAAsE;AACtE,wBAAgB,YAAY,IAAI,SAAS,EAAE,CAE1C;AAED,4DAA4D;AAC5D,wBAAgB,uBAAuB,IAAI,GAAG,CAAC,MAAM,CAAC,CAErD;AAED;;;GAGG;AACH,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,SAAS,GAAG,SAAS,CAUhE;AAED,wBAAgB,uBAAuB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAG7D;AAMD,eAAO,MAAM,qBAAqB,aAWhC,CAAA;AAEF,mDAAmD;AACnD,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAQ3D;AAED,yDAAyD;AACzD,wBAAgB,SAAS,CAAC,aAAa,EAAE,MAAM,GAAG,aAAa,GAAG,UAAU,GAAG,OAAO,CAOrF;AAkCD;;;GAGG;AACH,wBAAsB,oBAAoB,CACxC,SAAS,SAA2B,GACnC,OAAO,CAAC,MAAM,EAAE,CAAC,CA2DnB;AAED;;;GAGG;AACH,wBAAsB,oBAAoB,CACxC,KAAK,EAAE,MAAM,EACb,SAAS,SAA2B,GACnC,OAAO,CAAC,MAAM,CAAC,CAkCjB;AAED,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,aAAa,GAAG,UAAU,GAAG,OAAO,GAAG,MAAM,CAKtF"}
|