gnosys 5.6.0 → 5.7.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/dist/cli.js +736 -401
- package/dist/cli.js.map +1 -1
- package/dist/lib/audit.d.ts +13 -0
- package/dist/lib/audit.d.ts.map +1 -1
- package/dist/lib/audit.js +42 -0
- package/dist/lib/audit.js.map +1 -1
- package/dist/lib/chat/llmTurn.d.ts +20 -2
- package/dist/lib/chat/llmTurn.d.ts.map +1 -1
- package/dist/lib/chat/llmTurn.js +58 -16
- package/dist/lib/chat/llmTurn.js.map +1 -1
- package/dist/lib/chat/render.d.ts.map +1 -1
- package/dist/lib/chat/render.js +18 -0
- package/dist/lib/chat/render.js.map +1 -1
- package/dist/lib/chat/toolFence.d.ts +54 -0
- package/dist/lib/chat/toolFence.d.ts.map +1 -0
- package/dist/lib/chat/toolFence.js +90 -0
- package/dist/lib/chat/toolFence.js.map +1 -0
- package/dist/lib/chat/tools.d.ts +48 -0
- package/dist/lib/chat/tools.d.ts.map +1 -0
- package/dist/lib/chat/tools.js +338 -0
- package/dist/lib/chat/tools.js.map +1 -0
- package/dist/lib/db.d.ts +38 -0
- package/dist/lib/db.d.ts.map +1 -1
- package/dist/lib/db.js +118 -26
- package/dist/lib/db.js.map +1 -1
- package/dist/lib/remote.d.ts +23 -0
- package/dist/lib/remote.d.ts.map +1 -1
- package/dist/lib/remote.js +88 -0
- package/dist/lib/remote.js.map +1 -1
- package/dist/lib/remoteWizard.d.ts.map +1 -1
- package/dist/lib/remoteWizard.js +13 -17
- package/dist/lib/remoteWizard.js.map +1 -1
- package/dist/lib/setup/sections/ides.d.ts +20 -0
- package/dist/lib/setup/sections/ides.d.ts.map +1 -0
- package/dist/lib/setup/sections/ides.js +124 -0
- package/dist/lib/setup/sections/ides.js.map +1 -0
- package/dist/lib/setup/sections/preferences.d.ts +30 -0
- package/dist/lib/setup/sections/preferences.d.ts.map +1 -0
- package/dist/lib/setup/sections/preferences.js +128 -0
- package/dist/lib/setup/sections/preferences.js.map +1 -0
- package/dist/lib/setup/sections/routing.d.ts +21 -0
- package/dist/lib/setup/sections/routing.d.ts.map +1 -0
- package/dist/lib/setup/sections/routing.js +160 -0
- package/dist/lib/setup/sections/routing.js.map +1 -0
- package/dist/lib/setup/summary.d.ts +42 -0
- package/dist/lib/setup/summary.d.ts.map +1 -0
- package/dist/lib/setup/summary.js +206 -0
- package/dist/lib/setup/summary.js.map +1 -0
- package/dist/lib/timeline.d.ts +7 -0
- package/dist/lib/timeline.d.ts.map +1 -1
- package/dist/lib/timeline.js +19 -5
- package/dist/lib/timeline.js.map +1 -1
- package/package.json +1 -1
package/dist/lib/audit.d.ts
CHANGED
|
@@ -7,6 +7,7 @@
|
|
|
7
7
|
*
|
|
8
8
|
* Logs are stored in .gnosys/.config/audit.jsonl (append-only).
|
|
9
9
|
*/
|
|
10
|
+
import type { GnosysDB } from "./db.js";
|
|
10
11
|
export interface AuditEntry {
|
|
11
12
|
timestamp: string;
|
|
12
13
|
operation: AuditOperation;
|
|
@@ -36,6 +37,18 @@ export declare function readAuditLog(storePath: string, options?: {
|
|
|
36
37
|
operation?: AuditOperation;
|
|
37
38
|
limit?: number;
|
|
38
39
|
}): AuditEntry[];
|
|
40
|
+
/**
|
|
41
|
+
* v5.7.0: read audit entries from the central DB's audit_log table.
|
|
42
|
+
*
|
|
43
|
+
* The legacy `readAuditLog(storePath)` reads `.gnosys/.config/audit.jsonl`
|
|
44
|
+
* which post-DB-only is empty for most users. This variant queries the
|
|
45
|
+
* central DB directly and returns entries in the same shape.
|
|
46
|
+
*/
|
|
47
|
+
export declare function readAuditFromDb(db: GnosysDB, options?: {
|
|
48
|
+
days?: number;
|
|
49
|
+
operation?: AuditOperation;
|
|
50
|
+
limit?: number;
|
|
51
|
+
}): AuditEntry[];
|
|
39
52
|
/**
|
|
40
53
|
* Format audit entries as a human-readable timeline.
|
|
41
54
|
*/
|
package/dist/lib/audit.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"audit.d.ts","sourceRoot":"","sources":["../../src/lib/audit.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;
|
|
1
|
+
{"version":3,"file":"audit.d.ts","sourceRoot":"","sources":["../../src/lib/audit.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAIH,OAAO,KAAK,EAAE,QAAQ,EAAgB,MAAM,SAAS,CAAC;AAItD,MAAM,WAAW,UAAU;IACzB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,cAAc,CAAC;IAC1B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACnC;AAED,MAAM,MAAM,cAAc,GACtB,MAAM,GACN,OAAO,GACP,QAAQ,GACR,QAAQ,GACR,WAAW,GACX,WAAW,GACX,SAAS,GACT,UAAU,GACV,QAAQ,GACR,KAAK,GACL,QAAQ,GACR,aAAa,GACb,OAAO,CAAC;AAOZ;;;GAGG;AACH,wBAAgB,SAAS,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,CAcjD;AAED;;GAEG;AACH,wBAAgB,QAAQ,CACtB,KAAK,EAAE,IAAI,CAAC,UAAU,EAAE,WAAW,CAAC,GACnC,IAAI,CASN;AAED;;GAEG;AACH,wBAAgB,YAAY,CAC1B,SAAS,EAAE,MAAM,EACjB,OAAO,CAAC,EAAE;IAAE,IAAI,CAAC,EAAE,MAAM,CAAC;IAAC,SAAS,CAAC,EAAE,cAAc,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,GACtE,UAAU,EAAE,CAwCd;AAED;;;;;;GAMG;AACH,wBAAgB,eAAe,CAC7B,EAAE,EAAE,QAAQ,EACZ,OAAO,CAAC,EAAE;IAAE,IAAI,CAAC,EAAE,MAAM,CAAC;IAAC,SAAS,CAAC,EAAE,cAAc,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,GACtE,UAAU,EAAE,CAkCd;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,UAAU,EAAE,GAAG,MAAM,CA6CjE;AAED;;GAEG;AACH,wBAAgB,UAAU,IAAI,IAAI,CAKjC"}
|
package/dist/lib/audit.js
CHANGED
|
@@ -80,6 +80,48 @@ export function readAuditLog(storePath, options) {
|
|
|
80
80
|
}
|
|
81
81
|
return entries;
|
|
82
82
|
}
|
|
83
|
+
/**
|
|
84
|
+
* v5.7.0: read audit entries from the central DB's audit_log table.
|
|
85
|
+
*
|
|
86
|
+
* The legacy `readAuditLog(storePath)` reads `.gnosys/.config/audit.jsonl`
|
|
87
|
+
* which post-DB-only is empty for most users. This variant queries the
|
|
88
|
+
* central DB directly and returns entries in the same shape.
|
|
89
|
+
*/
|
|
90
|
+
export function readAuditFromDb(db, options) {
|
|
91
|
+
if (!db.isAvailable())
|
|
92
|
+
return [];
|
|
93
|
+
let sinceIso;
|
|
94
|
+
if (options?.days) {
|
|
95
|
+
const cutoff = new Date();
|
|
96
|
+
cutoff.setDate(cutoff.getDate() - options.days);
|
|
97
|
+
sinceIso = cutoff.toISOString();
|
|
98
|
+
}
|
|
99
|
+
const rows = db.queryAuditLog({
|
|
100
|
+
sinceIso,
|
|
101
|
+
operation: options?.operation,
|
|
102
|
+
limit: options?.limit,
|
|
103
|
+
});
|
|
104
|
+
return rows.map((row) => {
|
|
105
|
+
const detailsParsed = (() => {
|
|
106
|
+
if (!row.details)
|
|
107
|
+
return undefined;
|
|
108
|
+
try {
|
|
109
|
+
return JSON.parse(row.details);
|
|
110
|
+
}
|
|
111
|
+
catch {
|
|
112
|
+
return { raw: row.details };
|
|
113
|
+
}
|
|
114
|
+
})();
|
|
115
|
+
return {
|
|
116
|
+
timestamp: row.timestamp,
|
|
117
|
+
operation: row.operation,
|
|
118
|
+
memoryId: row.memory_id ?? undefined,
|
|
119
|
+
durationMs: row.duration_ms ?? undefined,
|
|
120
|
+
traceId: row.trace_id ?? undefined,
|
|
121
|
+
details: detailsParsed,
|
|
122
|
+
};
|
|
123
|
+
});
|
|
124
|
+
}
|
|
83
125
|
/**
|
|
84
126
|
* Format audit entries as a human-readable timeline.
|
|
85
127
|
*/
|
package/dist/lib/audit.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"audit.js","sourceRoot":"","sources":["../../src/lib/audit.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EAAE,MAAM,IAAI,CAAC;AACpB,OAAO,IAAI,MAAM,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"audit.js","sourceRoot":"","sources":["../../src/lib/audit.ts"],"names":[],"mappings":"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"}
|
|
@@ -19,6 +19,15 @@ export interface LLMTurnOptions {
|
|
|
19
19
|
onToken: (token: string) => void;
|
|
20
20
|
/** Recalled memories to inject into the system prompt. Empty disables recall. */
|
|
21
21
|
recalled?: RecalledMemory[];
|
|
22
|
+
/** Tool-execution status callback (e.g. "calling list_projects..."). Optional. */
|
|
23
|
+
onToolCall?: (info: {
|
|
24
|
+
tool: string;
|
|
25
|
+
args: Record<string, string>;
|
|
26
|
+
result?: string;
|
|
27
|
+
error?: string;
|
|
28
|
+
}) => void;
|
|
29
|
+
/** Maximum tool-call iterations per turn before forcing a final answer. Default 4. */
|
|
30
|
+
maxToolIterations?: number;
|
|
22
31
|
}
|
|
23
32
|
export interface LLMTurnResult {
|
|
24
33
|
text: string;
|
|
@@ -26,10 +35,19 @@ export interface LLMTurnResult {
|
|
|
26
35
|
model: string;
|
|
27
36
|
/** Memory IDs surfaced in the system prompt for this turn (used for citations). */
|
|
28
37
|
recalledIds: string[];
|
|
38
|
+
/** Tool calls executed during this turn (in order), with results. */
|
|
39
|
+
toolCalls?: Array<{
|
|
40
|
+
tool: string;
|
|
41
|
+
args: Record<string, string>;
|
|
42
|
+
result: string;
|
|
43
|
+
}>;
|
|
29
44
|
}
|
|
30
45
|
/**
|
|
31
|
-
* Run a single turn
|
|
32
|
-
*
|
|
46
|
+
* Run a single turn against the LLM. Loops if the assistant emits
|
|
47
|
+
* gnosys-tool fences: each tool is executed in-process, the result is
|
|
48
|
+
* appended as a system-style turn, and the LLM is invoked again. Stops
|
|
49
|
+
* when the assistant produces a turn with no fences (or maxToolIterations
|
|
50
|
+
* is hit).
|
|
33
51
|
*/
|
|
34
52
|
export declare function runTurn(config: GnosysConfig, opts: LLMTurnOptions): Promise<LLMTurnResult>;
|
|
35
53
|
/** Build a provider for /provider switching mid-session. */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"llmTurn.d.ts","sourceRoot":"","sources":["../../../src/lib/chat/llmTurn.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,YAAY,EAAoB,MAAM,cAAc,CAAC;AAC9D,OAAO,EAAE,WAAW,EAAkC,MAAM,WAAW,CAAC;AACxE,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAC/C,OAAO,EAAE,IAAI,EAAE,MAAM,YAAY,CAAC;AAClC,OAAO,EAAE,cAAc,EAAyB,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"llmTurn.d.ts","sourceRoot":"","sources":["../../../src/lib/chat/llmTurn.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,YAAY,EAAoB,MAAM,cAAc,CAAC;AAC9D,OAAO,EAAE,WAAW,EAAkC,MAAM,WAAW,CAAC;AACxE,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAC/C,OAAO,EAAE,IAAI,EAAE,MAAM,YAAY,CAAC;AAClC,OAAO,EAAE,cAAc,EAAyB,MAAM,aAAa,CAAC;AAKpE,MAAM,WAAW,cAAc;IAC7B,4EAA4E;IAC5E,MAAM,EAAE,IAAI,EAAE,CAAC;IACf,+CAA+C;IAC/C,SAAS,EAAE,MAAM,CAAC;IAClB,sCAAsC;IACtC,OAAO,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACjC,iFAAiF;IACjF,QAAQ,CAAC,EAAE,cAAc,EAAE,CAAC;IAC5B,kFAAkF;IAClF,UAAU,CAAC,EAAE,CAAC,IAAI,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE,KAAK,IAAI,CAAC;IAC7G,sFAAsF;IACtF,iBAAiB,CAAC,EAAE,MAAM,CAAC;CAC5B;AAED,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,mFAAmF;IACnF,WAAW,EAAE,MAAM,EAAE,CAAC;IACtB,qEAAqE;IACrE,SAAS,CAAC,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;CACnF;AAyBD;;;;;;GAMG;AACH,wBAAsB,OAAO,CAC3B,MAAM,EAAE,YAAY,EACpB,IAAI,EAAE,cAAc,GACnB,OAAO,CAAC,aAAa,CAAC,CA8DxB;AAED,4DAA4D;AAC5D,wBAAgB,aAAa,CAC3B,MAAM,EAAE,YAAY,EACpB,YAAY,EAAE,eAAe,EAC7B,KAAK,CAAC,EAAE,MAAM,GACb,WAAW,CAGb"}
|
package/dist/lib/chat/llmTurn.js
CHANGED
|
@@ -9,14 +9,18 @@ import { getProviderModel } from "../config.js";
|
|
|
9
9
|
import { getLLMProvider, createProvider } from "../llm.js";
|
|
10
10
|
import { formatRecallForPrompt } from "./recall.js";
|
|
11
11
|
import { CHOOSE_SYSTEM_PROMPT_ADDENDUM } from "./choose.js";
|
|
12
|
+
import { buildToolsSystemPrompt, findTool } from "./tools.js";
|
|
13
|
+
import { extractToolFences } from "./toolFence.js";
|
|
12
14
|
const BASE_SYSTEM_PROMPT = `You are an assistant inside the Gnosys terminal chat — a memory-aware REPL. The user has persistent memory across sessions; relevant memories are injected as <memory id="..."> blocks before their question. Cite memory IDs in square brackets like [deci-037] when you use them. Be concise and direct. Markdown renders.${CHOOSE_SYSTEM_PROMPT_ADDENDUM}`;
|
|
13
15
|
function composeSystemPrompt(recalled) {
|
|
16
|
+
const toolsAddendum = buildToolsSystemPrompt();
|
|
17
|
+
const base = `${BASE_SYSTEM_PROMPT}\n${toolsAddendum}`;
|
|
14
18
|
if (!recalled || recalled.length === 0)
|
|
15
|
-
return
|
|
16
|
-
return `${
|
|
19
|
+
return base;
|
|
20
|
+
return `${base}\n\n${formatRecallForPrompt(recalled)}`;
|
|
17
21
|
}
|
|
18
22
|
/** Format the conversation buffer + new input into a single prompt string. */
|
|
19
|
-
function buildPrompt(buffer, userInput) {
|
|
23
|
+
function buildPrompt(buffer, userInput, toolPreamble) {
|
|
20
24
|
const lines = [];
|
|
21
25
|
for (const turn of buffer) {
|
|
22
26
|
if (turn.role === "user")
|
|
@@ -26,31 +30,69 @@ function buildPrompt(buffer, userInput) {
|
|
|
26
30
|
// System turns are not replayed into the prompt (they're TUI-side notices)
|
|
27
31
|
}
|
|
28
32
|
lines.push(`User: ${userInput}`);
|
|
33
|
+
if (toolPreamble)
|
|
34
|
+
lines.push(toolPreamble);
|
|
29
35
|
lines.push(`Assistant:`);
|
|
30
36
|
return lines.join("\n\n");
|
|
31
37
|
}
|
|
32
38
|
/**
|
|
33
|
-
* Run a single turn
|
|
34
|
-
*
|
|
39
|
+
* Run a single turn against the LLM. Loops if the assistant emits
|
|
40
|
+
* gnosys-tool fences: each tool is executed in-process, the result is
|
|
41
|
+
* appended as a system-style turn, and the LLM is invoked again. Stops
|
|
42
|
+
* when the assistant produces a turn with no fences (or maxToolIterations
|
|
43
|
+
* is hit).
|
|
35
44
|
*/
|
|
36
45
|
export async function runTurn(config, opts) {
|
|
37
|
-
// Phase 2: use the synthesis provider (suitable for free-form chat).
|
|
38
|
-
// Future phases may route to a "chat" task type if added to config.
|
|
39
46
|
const provider = getLLMProvider(config, "synthesis");
|
|
40
|
-
const prompt = buildPrompt(opts.buffer, opts.userInput);
|
|
41
47
|
const system = composeSystemPrompt(opts.recalled);
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
48
|
+
const maxIterations = opts.maxToolIterations ?? 4;
|
|
49
|
+
const toolCalls = [];
|
|
50
|
+
let toolPreamble;
|
|
51
|
+
let combinedText = "";
|
|
52
|
+
for (let iteration = 0; iteration < maxIterations; iteration++) {
|
|
53
|
+
const prompt = buildPrompt(opts.buffer, opts.userInput, toolPreamble);
|
|
54
|
+
let chunk = "";
|
|
55
|
+
await provider.generate(prompt, { system, stream: true, maxTokens: 4096 }, {
|
|
56
|
+
onToken: (token) => {
|
|
57
|
+
chunk += token;
|
|
58
|
+
opts.onToken(token);
|
|
59
|
+
},
|
|
60
|
+
});
|
|
61
|
+
combinedText += (combinedText ? "\n\n" : "") + chunk;
|
|
62
|
+
// Look for tool fences; if none, this iteration's chunk IS the answer.
|
|
63
|
+
const extraction = extractToolFences(chunk);
|
|
64
|
+
if (!extraction || extraction.calls.length === 0) {
|
|
65
|
+
break;
|
|
66
|
+
}
|
|
67
|
+
// Run each tool, accumulate results into the next prompt as a system block
|
|
68
|
+
const resultBlocks = [];
|
|
69
|
+
for (const call of extraction.calls) {
|
|
70
|
+
const tool = findTool(call.tool);
|
|
71
|
+
if (!tool) {
|
|
72
|
+
opts.onToolCall?.({ tool: call.tool, args: call.args, error: `unknown tool: ${call.tool}` });
|
|
73
|
+
resultBlocks.push(`[tool error] unknown tool: ${call.tool}`);
|
|
74
|
+
continue;
|
|
75
|
+
}
|
|
76
|
+
try {
|
|
77
|
+
const result = await tool.run(call.args);
|
|
78
|
+
toolCalls.push({ tool: call.tool, args: call.args, result });
|
|
79
|
+
opts.onToolCall?.({ tool: call.tool, args: call.args, result });
|
|
80
|
+
resultBlocks.push(`[tool result: ${call.tool}]\n${result}`);
|
|
81
|
+
}
|
|
82
|
+
catch (err) {
|
|
83
|
+
const message = err instanceof Error ? err.message : String(err);
|
|
84
|
+
opts.onToolCall?.({ tool: call.tool, args: call.args, error: message });
|
|
85
|
+
resultBlocks.push(`[tool error: ${call.tool}] ${message}`);
|
|
86
|
+
}
|
|
87
|
+
}
|
|
88
|
+
toolPreamble = resultBlocks.join("\n\n");
|
|
89
|
+
}
|
|
49
90
|
return {
|
|
50
|
-
text:
|
|
91
|
+
text: combinedText,
|
|
51
92
|
provider: provider.name,
|
|
52
93
|
model: provider.model,
|
|
53
94
|
recalledIds: (opts.recalled ?? []).map((m) => m.id),
|
|
95
|
+
toolCalls: toolCalls.length > 0 ? toolCalls : undefined,
|
|
54
96
|
};
|
|
55
97
|
}
|
|
56
98
|
/** Build a provider for /provider switching mid-session. */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"llmTurn.js","sourceRoot":"","sources":["../../../src/lib/chat/llmTurn.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAgB,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAC9D,OAAO,EAAe,cAAc,EAAE,cAAc,EAAE,MAAM,WAAW,CAAC;AAGxE,OAAO,EAAkB,qBAAqB,EAAE,MAAM,aAAa,CAAC;AACpE,OAAO,EAAE,6BAA6B,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"llmTurn.js","sourceRoot":"","sources":["../../../src/lib/chat/llmTurn.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"render.d.ts","sourceRoot":"","sources":["../../../src/lib/chat/render.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH,OAAO,KAAsC,MAAM,OAAO,CAAC;AAK3D,OAAO,EAAE,cAAc,EAAc,IAAI,EAAE,MAAM,YAAY,CAAC;AAyB9D,OAAO,EAAE,YAAY,EAAmB,MAAM,cAAc,CAAC;AAG7D,MAAM,WAAW,YAAY;IAC3B,aAAa,EAAE,cAAc,CAAC;IAC9B,aAAa,EAAE,IAAI,EAAE,CAAC;IACtB,MAAM,EAAE,YAAY,CAAC;IACrB,oEAAoE;IACpE,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,6DAA6D;IAC7D,MAAM,CAAC,EAAE,MAAM,IAAI,CAAC;CACrB;AAED,eAAO,MAAM,OAAO,EAAE,KAAK,CAAC,EAAE,CAAC,YAAY,
|
|
1
|
+
{"version":3,"file":"render.d.ts","sourceRoot":"","sources":["../../../src/lib/chat/render.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH,OAAO,KAAsC,MAAM,OAAO,CAAC;AAK3D,OAAO,EAAE,cAAc,EAAc,IAAI,EAAE,MAAM,YAAY,CAAC;AAyB9D,OAAO,EAAE,YAAY,EAAmB,MAAM,cAAc,CAAC;AAG7D,MAAM,WAAW,YAAY;IAC3B,aAAa,EAAE,cAAc,CAAC;IAC9B,aAAa,EAAE,IAAI,EAAE,CAAC;IACtB,MAAM,EAAE,YAAY,CAAC;IACrB,oEAAoE;IACpE,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,6DAA6D;IAC7D,MAAM,CAAC,EAAE,MAAM,IAAI,CAAC;CACrB;AAED,eAAO,MAAM,OAAO,EAAE,KAAK,CAAC,EAAE,CAAC,YAAY,CA4sB1C,CAAC"}
|
package/dist/lib/chat/render.js
CHANGED
|
@@ -580,6 +580,24 @@ export const ChatApp = ({ initialHeader, initialBuffer, config, projectId, onExi
|
|
|
580
580
|
partial += tok;
|
|
581
581
|
setStatus({ kind: "streaming", partial });
|
|
582
582
|
},
|
|
583
|
+
onToolCall: (info) => {
|
|
584
|
+
if (info.error) {
|
|
585
|
+
pushSystem(`tool ${info.tool} failed: ${info.error}`);
|
|
586
|
+
}
|
|
587
|
+
else {
|
|
588
|
+
const argSummary = Object.keys(info.args).length > 0
|
|
589
|
+
? ` ${Object.entries(info.args).map(([k, v]) => `${k}=${v}`).join(", ")}`
|
|
590
|
+
: "";
|
|
591
|
+
pushSystem(`called ${info.tool}${argSummary}`);
|
|
592
|
+
appendEvent(header.sessionId, {
|
|
593
|
+
type: "command",
|
|
594
|
+
ts: nowIso(),
|
|
595
|
+
name: `tool:${info.tool}`,
|
|
596
|
+
args: Object.entries(info.args).map(([k, v]) => `${k}=${v}`),
|
|
597
|
+
result: info.result?.slice(0, 200),
|
|
598
|
+
});
|
|
599
|
+
}
|
|
600
|
+
},
|
|
583
601
|
});
|
|
584
602
|
// Check for gnosys-choose fence — if present, strip it from the
|
|
585
603
|
// visible turn and surface as an interactive picker.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"render.js","sourceRoot":"","sources":["../../../src/lib/chat/render.tsx"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"render.js","sourceRoot":"","sources":["../../../src/lib/chat/render.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Parse `gnosys-tool` fenced blocks emitted by the chat LLM.
|
|
3
|
+
*
|
|
4
|
+
* Format:
|
|
5
|
+
* ```gnosys-tool
|
|
6
|
+
* tool: <name>
|
|
7
|
+
* <param>: <value>
|
|
8
|
+
* <param>: <value>
|
|
9
|
+
* ```
|
|
10
|
+
*
|
|
11
|
+
* Supports multiple fences in one assistant turn (the LLM might call list +
|
|
12
|
+
* read in one go). Each parse returns the tool name + key/value args + the
|
|
13
|
+
* surrounding text so the renderer can show the conversation cleanly.
|
|
14
|
+
*/
|
|
15
|
+
export interface ParsedToolCall {
|
|
16
|
+
tool: string;
|
|
17
|
+
args: Record<string, string>;
|
|
18
|
+
/** Source text of the full fence (for fail-soft display when needed). */
|
|
19
|
+
rawFence: string;
|
|
20
|
+
}
|
|
21
|
+
export interface ToolFenceExtraction {
|
|
22
|
+
/** Text before any fences. */
|
|
23
|
+
before: string;
|
|
24
|
+
/** Text after the last fence. */
|
|
25
|
+
after: string;
|
|
26
|
+
/** Each parsed tool call in order of appearance. */
|
|
27
|
+
calls: ParsedToolCall[];
|
|
28
|
+
/** Errors keyed to the index in `calls` they would have occupied. */
|
|
29
|
+
parseErrors: Array<{
|
|
30
|
+
rawFence: string;
|
|
31
|
+
reason: string;
|
|
32
|
+
}>;
|
|
33
|
+
}
|
|
34
|
+
/**
|
|
35
|
+
* Extract every gnosys-tool fence in the text. Returns the text between
|
|
36
|
+
* fences alongside the parsed calls. Failed parses are surfaced separately
|
|
37
|
+
* so the renderer can warn without breaking the chat.
|
|
38
|
+
*/
|
|
39
|
+
export declare function extractToolFences(text: string): ToolFenceExtraction | null;
|
|
40
|
+
/**
|
|
41
|
+
* Parse the body of a gnosys-tool fence into { tool, args }.
|
|
42
|
+
*
|
|
43
|
+
* Schema:
|
|
44
|
+
* tool: <name> # required
|
|
45
|
+
* <param>: <value> # zero or more
|
|
46
|
+
*
|
|
47
|
+
* Whitespace and trailing punctuation are tolerated. Comments (lines
|
|
48
|
+
* starting with `#`) are ignored.
|
|
49
|
+
*/
|
|
50
|
+
export declare function parseToolBody(body: string): {
|
|
51
|
+
tool: string;
|
|
52
|
+
args: Record<string, string>;
|
|
53
|
+
};
|
|
54
|
+
//# sourceMappingURL=toolFence.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"toolFence.d.ts","sourceRoot":"","sources":["../../../src/lib/chat/toolFence.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC7B,yEAAyE;IACzE,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,mBAAmB;IAClC,8BAA8B;IAC9B,MAAM,EAAE,MAAM,CAAC;IACf,iCAAiC;IACjC,KAAK,EAAE,MAAM,CAAC;IACd,oDAAoD;IACpD,KAAK,EAAE,cAAc,EAAE,CAAC;IACxB,qEAAqE;IACrE,WAAW,EAAE,KAAK,CAAC;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;CAC1D;AAID;;;;GAIG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,mBAAmB,GAAG,IAAI,CAuC1E;AAED;;;;;;;;;GASG;AACH,wBAAgB,aAAa,CAAC,IAAI,EAAE,MAAM,GAAG;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;CAAE,CAoB1F"}
|
|
@@ -0,0 +1,90 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Parse `gnosys-tool` fenced blocks emitted by the chat LLM.
|
|
3
|
+
*
|
|
4
|
+
* Format:
|
|
5
|
+
* ```gnosys-tool
|
|
6
|
+
* tool: <name>
|
|
7
|
+
* <param>: <value>
|
|
8
|
+
* <param>: <value>
|
|
9
|
+
* ```
|
|
10
|
+
*
|
|
11
|
+
* Supports multiple fences in one assistant turn (the LLM might call list +
|
|
12
|
+
* read in one go). Each parse returns the tool name + key/value args + the
|
|
13
|
+
* surrounding text so the renderer can show the conversation cleanly.
|
|
14
|
+
*/
|
|
15
|
+
const FENCE_RE = /```\s*gnosys-tool\s*\n([\s\S]*?)```/g;
|
|
16
|
+
/**
|
|
17
|
+
* Extract every gnosys-tool fence in the text. Returns the text between
|
|
18
|
+
* fences alongside the parsed calls. Failed parses are surfaced separately
|
|
19
|
+
* so the renderer can warn without breaking the chat.
|
|
20
|
+
*/
|
|
21
|
+
export function extractToolFences(text) {
|
|
22
|
+
const calls = [];
|
|
23
|
+
const parseErrors = [];
|
|
24
|
+
const fences = [];
|
|
25
|
+
let match;
|
|
26
|
+
// Reset lastIndex since we use a global regex
|
|
27
|
+
FENCE_RE.lastIndex = 0;
|
|
28
|
+
while ((match = FENCE_RE.exec(text)) !== null) {
|
|
29
|
+
fences.push({
|
|
30
|
+
start: match.index,
|
|
31
|
+
end: match.index + match[0].length,
|
|
32
|
+
raw: match[0],
|
|
33
|
+
body: match[1].trim(),
|
|
34
|
+
});
|
|
35
|
+
}
|
|
36
|
+
if (fences.length === 0)
|
|
37
|
+
return null;
|
|
38
|
+
for (const f of fences) {
|
|
39
|
+
try {
|
|
40
|
+
const parsed = parseToolBody(f.body);
|
|
41
|
+
if (!parsed.tool) {
|
|
42
|
+
parseErrors.push({ rawFence: f.raw, reason: "missing `tool:` line" });
|
|
43
|
+
continue;
|
|
44
|
+
}
|
|
45
|
+
calls.push({ tool: parsed.tool, args: parsed.args, rawFence: f.raw });
|
|
46
|
+
}
|
|
47
|
+
catch (err) {
|
|
48
|
+
parseErrors.push({
|
|
49
|
+
rawFence: f.raw,
|
|
50
|
+
reason: err instanceof Error ? err.message : String(err),
|
|
51
|
+
});
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
const before = text.slice(0, fences[0].start).trimEnd();
|
|
55
|
+
const after = text.slice(fences[fences.length - 1].end).trimStart();
|
|
56
|
+
return { before, after, calls, parseErrors };
|
|
57
|
+
}
|
|
58
|
+
/**
|
|
59
|
+
* Parse the body of a gnosys-tool fence into { tool, args }.
|
|
60
|
+
*
|
|
61
|
+
* Schema:
|
|
62
|
+
* tool: <name> # required
|
|
63
|
+
* <param>: <value> # zero or more
|
|
64
|
+
*
|
|
65
|
+
* Whitespace and trailing punctuation are tolerated. Comments (lines
|
|
66
|
+
* starting with `#`) are ignored.
|
|
67
|
+
*/
|
|
68
|
+
export function parseToolBody(body) {
|
|
69
|
+
const lines = body.replace(/\r\n/g, "\n").split("\n");
|
|
70
|
+
let tool = "";
|
|
71
|
+
const args = {};
|
|
72
|
+
for (const raw of lines) {
|
|
73
|
+
const line = raw.trim();
|
|
74
|
+
if (!line || line.startsWith("#"))
|
|
75
|
+
continue;
|
|
76
|
+
const m = line.match(/^([a-z_][a-z0-9_-]*)\s*:\s*(.+?)\s*$/i);
|
|
77
|
+
if (!m)
|
|
78
|
+
continue;
|
|
79
|
+
const key = m[1];
|
|
80
|
+
const value = m[2];
|
|
81
|
+
if (key.toLowerCase() === "tool") {
|
|
82
|
+
tool = value;
|
|
83
|
+
}
|
|
84
|
+
else {
|
|
85
|
+
args[key] = value;
|
|
86
|
+
}
|
|
87
|
+
}
|
|
88
|
+
return { tool, args };
|
|
89
|
+
}
|
|
90
|
+
//# sourceMappingURL=toolFence.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"toolFence.js","sourceRoot":"","sources":["../../../src/lib/chat/toolFence.ts"],"names":[],"mappings":"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"}
|