@smooai/smooth-operator-core 1.7.11 → 1.7.13
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/agent.d.ts +10 -0
- package/dist/agent.d.ts.map +1 -1
- package/dist/agent.js +9 -1
- package/dist/agent.js.map +1 -1
- package/dist/context.d.ts +73 -0
- package/dist/context.d.ts.map +1 -0
- package/dist/context.js +267 -0
- package/dist/context.js.map +1 -0
- package/dist/gatewayClient.d.ts +51 -0
- package/dist/gatewayClient.d.ts.map +1 -0
- package/dist/gatewayClient.js +92 -0
- package/dist/gatewayClient.js.map +1 -0
- package/dist/index.d.ts +4 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +2 -0
- package/dist/index.js.map +1 -1
- package/package.json +1 -1
package/dist/agent.d.ts
CHANGED
|
@@ -290,6 +290,16 @@ export interface ChatChunk {
|
|
|
290
290
|
prompt_tokens?: number | null;
|
|
291
291
|
completion_tokens?: number | null;
|
|
292
292
|
} | null;
|
|
293
|
+
/**
|
|
294
|
+
* The gateway's per-request cost, when the client surfaced one. It lives ONLY in
|
|
295
|
+
* a response HEADER, which is gone once the SSE body is being consumed — so a
|
|
296
|
+
* streaming client reads it up front and rides it on a chunk (the gateway client
|
|
297
|
+
* uses a leading chunk with no `choices`, matching the Go engine). Absent ⇒
|
|
298
|
+
* unmeasured, and the local pricing estimate is used instead of a bogus $0.
|
|
299
|
+
*/
|
|
300
|
+
gatewayCostUsd?: number;
|
|
301
|
+
/** Raw response headers, when the client hangs them off a chunk instead of pre-parsing. */
|
|
302
|
+
headers?: unknown;
|
|
293
303
|
}
|
|
294
304
|
/**
|
|
295
305
|
* The minimal shape of the OpenAI-compatible client the agent needs. The real
|
package/dist/agent.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agent.d.ts","sourceRoot":"","sources":["../src/agent.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"agent.d.ts","sourceRoot":"","sources":["../src/agent.ts"],"names":[],"mappings":"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"}
|
package/dist/agent.js
CHANGED
|
@@ -412,7 +412,15 @@ export class SmoothAgent {
|
|
|
412
412
|
...metadataField(this.options.metadata),
|
|
413
413
|
stream: true,
|
|
414
414
|
});
|
|
415
|
+
// Cost lives in a response HEADER, which is gone once the SSE body is
|
|
416
|
+
// being consumed — so a streaming client reads it up front and rides it
|
|
417
|
+
// on a chunk. Mirrors python/agent.py's run_stream and Go's first-chunk
|
|
418
|
+
// ChatChunk{CostUSD}.
|
|
419
|
+
let gatewayCost;
|
|
415
420
|
for await (const chunk of stream) {
|
|
421
|
+
const chunkCost = responseGatewayCost(chunk);
|
|
422
|
+
if (chunkCost !== undefined)
|
|
423
|
+
gatewayCost = chunkCost;
|
|
416
424
|
if (chunk.usage)
|
|
417
425
|
assembled.usage = chunk.usage;
|
|
418
426
|
const delta = chunk.choices[0]?.delta;
|
|
@@ -437,7 +445,7 @@ export class SmoothAgent {
|
|
|
437
445
|
assembled.toolCalls = [...partials.entries()]
|
|
438
446
|
.sort((a, b) => a[0] - b[0])
|
|
439
447
|
.map(([, p]) => ({ id: p.id, function: { name: p.name, arguments: p.arguments } }));
|
|
440
|
-
tracker.recordWithGatewayCost(model, extractUsage(assembled.usage),
|
|
448
|
+
tracker.recordWithGatewayCost(model, extractUsage(assembled.usage), gatewayCost, this.options.pricing);
|
|
441
449
|
lastText = assembled.content;
|
|
442
450
|
const assistantMsg = { role: 'assistant', content: assembled.content };
|
|
443
451
|
if (assembled.toolCalls.length > 0) {
|
package/dist/agent.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agent.js","sourceRoot":"","sources":["../src/agent.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"agent.js","sourceRoot":"","sources":["../src/agent.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Project context loader — AGENTS.md (or its fallbacks) plus resolved file
|
|
3
|
+
* references. The TypeScript port of the Rust reference
|
|
4
|
+
* `smooth-operator-core::context` (pearl th-5002c4).
|
|
5
|
+
*
|
|
6
|
+
* Smooth previously only read AGENTS.md. Many projects don't have one but DO
|
|
7
|
+
* have CLAUDE.md or a SMOOTH.md or .smooth/CONTEXT.md. User-level facts also
|
|
8
|
+
* belong in the prompt, so we walk a preference order and STACK user-level +
|
|
9
|
+
* project-level context.
|
|
10
|
+
*
|
|
11
|
+
* Preference order (first hit per layer; layers stack):
|
|
12
|
+
*
|
|
13
|
+
* - USER layer (read once, prepended):
|
|
14
|
+
* `~/.smooth/CONTEXT.md` → `~/.smooth/AGENTS.md` → `~/.smooth/CLAUDE.md`
|
|
15
|
+
*
|
|
16
|
+
* - PROJECT layer (walk up from `workingDir`, first hit wins):
|
|
17
|
+
* `<dir>/.smooth/CONTEXT.md` → `<dir>/SMOOTH.md` → `<dir>/AGENTS.md` → `<dir>/CLAUDE.md`
|
|
18
|
+
*
|
|
19
|
+
* AGENTS.md / SMOOTH.md can carry file references in a `## File References`
|
|
20
|
+
* section:
|
|
21
|
+
*
|
|
22
|
+
* ```markdown
|
|
23
|
+
* ## File References
|
|
24
|
+
* - [CLAUDE.md](CLAUDE.md) — full file
|
|
25
|
+
* - [Section name](CLAUDE.md#6-pearl-tracking) — specific section
|
|
26
|
+
* ```
|
|
27
|
+
*
|
|
28
|
+
* Those are resolved against the file's directory and appended inline. The
|
|
29
|
+
* combined string is what the host injects into the agent's system prompt —
|
|
30
|
+
* like the Rust reference, this is a standalone loader, NOT a hook inside the
|
|
31
|
+
* agent loop.
|
|
32
|
+
*/
|
|
33
|
+
/** A parsed file reference from the `## File References` section. */
|
|
34
|
+
export interface FileRef {
|
|
35
|
+
/** Display label from the markdown link text. */
|
|
36
|
+
label: string;
|
|
37
|
+
/** Relative file path (without fragment). */
|
|
38
|
+
path: string;
|
|
39
|
+
/** Optional `#fragment` pointing to a heading. */
|
|
40
|
+
fragment?: string;
|
|
41
|
+
/** Optional description after the ` — `. */
|
|
42
|
+
description?: string;
|
|
43
|
+
}
|
|
44
|
+
/**
|
|
45
|
+
* Load the combined project + user context, user-level prepended, with file
|
|
46
|
+
* references in any AGENTS.md / SMOOTH.md resolved inline.
|
|
47
|
+
*
|
|
48
|
+
* `undefined` only when NEITHER layer found anything — so a workspace with a
|
|
49
|
+
* bare CLAUDE.md and no user-level file still loads context.
|
|
50
|
+
*/
|
|
51
|
+
export declare function loadProjectContext(workingDir: string): string | undefined;
|
|
52
|
+
/**
|
|
53
|
+
* Walk up from `startDir` looking for a project context file. Preference order
|
|
54
|
+
* at each level: `.smooth/CONTEXT.md` → `SMOOTH.md` → `AGENTS.md` →
|
|
55
|
+
* `CLAUDE.md`. First hit wins per directory, then keep walking up.
|
|
56
|
+
*/
|
|
57
|
+
export declare function findProjectContextFile(startDir: string): string | undefined;
|
|
58
|
+
/**
|
|
59
|
+
* Parse the `## File References` section out of AGENTS.md content. Expects
|
|
60
|
+
* markdown list items like `- [Label](path.md#fragment) — description`.
|
|
61
|
+
*/
|
|
62
|
+
export declare function parseFileReferences(content: string): FileRef[];
|
|
63
|
+
/** Parse a single markdown list-item link line. */
|
|
64
|
+
export declare function parseLinkLine(line: string): FileRef | undefined;
|
|
65
|
+
/**
|
|
66
|
+
* Extract a markdown section by heading fragment. The fragment is matched
|
|
67
|
+
* against GitHub-style heading anchors; the section runs until the next
|
|
68
|
+
* heading at the same or a higher level.
|
|
69
|
+
*/
|
|
70
|
+
export declare function extractSection(content: string, fragment: string): string;
|
|
71
|
+
/** Convert heading text to a GitHub-style anchor. */
|
|
72
|
+
export declare function headingToAnchor(text: string): string;
|
|
73
|
+
//# sourceMappingURL=context.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../src/context.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;AAMH,qEAAqE;AACrE,MAAM,WAAW,OAAO;IACpB,iDAAiD;IACjD,KAAK,EAAE,MAAM,CAAC;IACd,6CAA6C;IAC7C,IAAI,EAAE,MAAM,CAAC;IACb,kDAAkD;IAClD,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,4CAA4C;IAC5C,WAAW,CAAC,EAAE,MAAM,CAAC;CACxB;AAKD;;;;;;GAMG;AACH,wBAAgB,kBAAkB,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAQzE;AAsCD;;;;GAIG;AACH,wBAAgB,sBAAsB,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAe3E;AAED;;;GAGG;AACH,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,EAAE,CAkB9D;AAED,mDAAmD;AACnD,wBAAgB,aAAa,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,GAAG,SAAS,CAuC/D;AAcD;;;;GAIG;AACH,wBAAgB,cAAc,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,CAoBxE;AAYD,qDAAqD;AACrD,wBAAgB,eAAe,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CASpD"}
|
package/dist/context.js
ADDED
|
@@ -0,0 +1,267 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Project context loader — AGENTS.md (or its fallbacks) plus resolved file
|
|
3
|
+
* references. The TypeScript port of the Rust reference
|
|
4
|
+
* `smooth-operator-core::context` (pearl th-5002c4).
|
|
5
|
+
*
|
|
6
|
+
* Smooth previously only read AGENTS.md. Many projects don't have one but DO
|
|
7
|
+
* have CLAUDE.md or a SMOOTH.md or .smooth/CONTEXT.md. User-level facts also
|
|
8
|
+
* belong in the prompt, so we walk a preference order and STACK user-level +
|
|
9
|
+
* project-level context.
|
|
10
|
+
*
|
|
11
|
+
* Preference order (first hit per layer; layers stack):
|
|
12
|
+
*
|
|
13
|
+
* - USER layer (read once, prepended):
|
|
14
|
+
* `~/.smooth/CONTEXT.md` → `~/.smooth/AGENTS.md` → `~/.smooth/CLAUDE.md`
|
|
15
|
+
*
|
|
16
|
+
* - PROJECT layer (walk up from `workingDir`, first hit wins):
|
|
17
|
+
* `<dir>/.smooth/CONTEXT.md` → `<dir>/SMOOTH.md` → `<dir>/AGENTS.md` → `<dir>/CLAUDE.md`
|
|
18
|
+
*
|
|
19
|
+
* AGENTS.md / SMOOTH.md can carry file references in a `## File References`
|
|
20
|
+
* section:
|
|
21
|
+
*
|
|
22
|
+
* ```markdown
|
|
23
|
+
* ## File References
|
|
24
|
+
* - [CLAUDE.md](CLAUDE.md) — full file
|
|
25
|
+
* - [Section name](CLAUDE.md#6-pearl-tracking) — specific section
|
|
26
|
+
* ```
|
|
27
|
+
*
|
|
28
|
+
* Those are resolved against the file's directory and appended inline. The
|
|
29
|
+
* combined string is what the host injects into the agent's system prompt —
|
|
30
|
+
* like the Rust reference, this is a standalone loader, NOT a hook inside the
|
|
31
|
+
* agent loop.
|
|
32
|
+
*/
|
|
33
|
+
import { readFileSync, statSync } from 'node:fs';
|
|
34
|
+
import { homedir } from 'node:os';
|
|
35
|
+
import { dirname, join } from 'node:path';
|
|
36
|
+
const USER_CONTEXT_CANDIDATES = ['.smooth/CONTEXT.md', '.smooth/AGENTS.md', '.smooth/CLAUDE.md'];
|
|
37
|
+
const PROJECT_CONTEXT_CANDIDATES = ['.smooth/CONTEXT.md', 'SMOOTH.md', 'AGENTS.md', 'CLAUDE.md'];
|
|
38
|
+
/**
|
|
39
|
+
* Load the combined project + user context, user-level prepended, with file
|
|
40
|
+
* references in any AGENTS.md / SMOOTH.md resolved inline.
|
|
41
|
+
*
|
|
42
|
+
* `undefined` only when NEITHER layer found anything — so a workspace with a
|
|
43
|
+
* bare CLAUDE.md and no user-level file still loads context.
|
|
44
|
+
*/
|
|
45
|
+
export function loadProjectContext(workingDir) {
|
|
46
|
+
const user = loadUserContext();
|
|
47
|
+
const project = loadLayeredProjectContext(workingDir);
|
|
48
|
+
if (user === undefined && project === undefined)
|
|
49
|
+
return undefined;
|
|
50
|
+
if (project === undefined)
|
|
51
|
+
return `## User context (~/.smooth)\n\n${user}`;
|
|
52
|
+
if (user === undefined)
|
|
53
|
+
return project;
|
|
54
|
+
return `## User context (~/.smooth)\n\n${user}\n\n---\n\n${project}`;
|
|
55
|
+
}
|
|
56
|
+
/** First non-blank hit from the user-level preference list. */
|
|
57
|
+
function loadUserContext() {
|
|
58
|
+
const home = homedir();
|
|
59
|
+
if (!home)
|
|
60
|
+
return undefined;
|
|
61
|
+
for (const candidate of USER_CONTEXT_CANDIDATES) {
|
|
62
|
+
const raw = readFileOrUndefined(join(home, candidate));
|
|
63
|
+
if (raw !== undefined && raw.trim() !== '')
|
|
64
|
+
return raw;
|
|
65
|
+
}
|
|
66
|
+
return undefined;
|
|
67
|
+
}
|
|
68
|
+
/** The project context file with its file references resolved. */
|
|
69
|
+
function loadLayeredProjectContext(workingDir) {
|
|
70
|
+
const contextPath = findProjectContextFile(workingDir);
|
|
71
|
+
if (contextPath === undefined)
|
|
72
|
+
return undefined;
|
|
73
|
+
const raw = readFileOrUndefined(contextPath);
|
|
74
|
+
if (raw === undefined)
|
|
75
|
+
return undefined;
|
|
76
|
+
const refs = parseFileReferences(raw);
|
|
77
|
+
if (refs.length === 0)
|
|
78
|
+
return raw;
|
|
79
|
+
const resolved = resolveReferences(dirname(contextPath), refs);
|
|
80
|
+
if (resolved.length === 0)
|
|
81
|
+
return raw;
|
|
82
|
+
let output = raw;
|
|
83
|
+
output += '\n---\n\n## Resolved File References\n\n';
|
|
84
|
+
for (const { ref, content } of resolved) {
|
|
85
|
+
output += ref.description === undefined ? `### ${ref.label}\n` : `### ${ref.label} — ${ref.description}\n`;
|
|
86
|
+
output += '\n```\n';
|
|
87
|
+
output += content;
|
|
88
|
+
if (!content.endsWith('\n'))
|
|
89
|
+
output += '\n';
|
|
90
|
+
output += '```\n\n';
|
|
91
|
+
}
|
|
92
|
+
return output;
|
|
93
|
+
}
|
|
94
|
+
/**
|
|
95
|
+
* Walk up from `startDir` looking for a project context file. Preference order
|
|
96
|
+
* at each level: `.smooth/CONTEXT.md` → `SMOOTH.md` → `AGENTS.md` →
|
|
97
|
+
* `CLAUDE.md`. First hit wins per directory, then keep walking up.
|
|
98
|
+
*/
|
|
99
|
+
export function findProjectContextFile(startDir) {
|
|
100
|
+
let dir = startDir;
|
|
101
|
+
for (;;) {
|
|
102
|
+
for (const candidate of PROJECT_CONTEXT_CANDIDATES) {
|
|
103
|
+
const path = join(dir, candidate);
|
|
104
|
+
try {
|
|
105
|
+
if (statSync(path).isFile())
|
|
106
|
+
return path;
|
|
107
|
+
}
|
|
108
|
+
catch {
|
|
109
|
+
// Not there — try the next candidate.
|
|
110
|
+
}
|
|
111
|
+
}
|
|
112
|
+
const parent = dirname(dir);
|
|
113
|
+
if (parent === dir)
|
|
114
|
+
return undefined;
|
|
115
|
+
dir = parent;
|
|
116
|
+
}
|
|
117
|
+
}
|
|
118
|
+
/**
|
|
119
|
+
* Parse the `## File References` section out of AGENTS.md content. Expects
|
|
120
|
+
* markdown list items like `- [Label](path.md#fragment) — description`.
|
|
121
|
+
*/
|
|
122
|
+
export function parseFileReferences(content) {
|
|
123
|
+
const refs = [];
|
|
124
|
+
let inSection = false;
|
|
125
|
+
for (const line of splitLines(content)) {
|
|
126
|
+
const trimmed = line.trim();
|
|
127
|
+
// Detect the file references section.
|
|
128
|
+
if (trimmed.startsWith('## ') || trimmed.startsWith('# ')) {
|
|
129
|
+
inSection = trimmed.toLowerCase().includes('file reference');
|
|
130
|
+
continue;
|
|
131
|
+
}
|
|
132
|
+
if (!inSection)
|
|
133
|
+
continue;
|
|
134
|
+
const ref = parseLinkLine(trimmed);
|
|
135
|
+
if (ref !== undefined)
|
|
136
|
+
refs.push(ref);
|
|
137
|
+
}
|
|
138
|
+
return refs;
|
|
139
|
+
}
|
|
140
|
+
/** Parse a single markdown list-item link line. */
|
|
141
|
+
export function parseLinkLine(line) {
|
|
142
|
+
// Strip leading `- ` or `* `.
|
|
143
|
+
let rest;
|
|
144
|
+
if (line.startsWith('- '))
|
|
145
|
+
rest = line.slice(2);
|
|
146
|
+
else if (line.startsWith('* '))
|
|
147
|
+
rest = line.slice(2);
|
|
148
|
+
else
|
|
149
|
+
return undefined;
|
|
150
|
+
// Match [label](target).
|
|
151
|
+
const openBracket = rest.indexOf('[');
|
|
152
|
+
if (openBracket < 0)
|
|
153
|
+
return undefined;
|
|
154
|
+
const closeBracket = rest.indexOf(']', openBracket);
|
|
155
|
+
if (closeBracket < 0)
|
|
156
|
+
return undefined;
|
|
157
|
+
const label = rest.slice(openBracket + 1, closeBracket);
|
|
158
|
+
const after = rest.slice(closeBracket + 1);
|
|
159
|
+
const openParen = after.indexOf('(');
|
|
160
|
+
if (openParen < 0)
|
|
161
|
+
return undefined;
|
|
162
|
+
const closeParen = after.indexOf(')', openParen);
|
|
163
|
+
if (closeParen < 0)
|
|
164
|
+
return undefined;
|
|
165
|
+
const target = after.slice(openParen + 1, closeParen);
|
|
166
|
+
// Split path and fragment.
|
|
167
|
+
const hash = target.indexOf('#');
|
|
168
|
+
const path = hash < 0 ? target : target.slice(0, hash);
|
|
169
|
+
const fragment = hash < 0 ? undefined : target.slice(hash + 1);
|
|
170
|
+
// Description after ` — ` / ` - ` / ` -- `.
|
|
171
|
+
const afterLink = after.slice(closeParen + 1);
|
|
172
|
+
let description;
|
|
173
|
+
for (const sep of [' — ', ' - ', ' -- ']) {
|
|
174
|
+
if (afterLink.startsWith(sep)) {
|
|
175
|
+
const d = afterLink.slice(sep.length).trim();
|
|
176
|
+
if (d !== '')
|
|
177
|
+
description = d;
|
|
178
|
+
break;
|
|
179
|
+
}
|
|
180
|
+
}
|
|
181
|
+
if (path === '' && fragment === undefined)
|
|
182
|
+
return undefined;
|
|
183
|
+
return { label, path, fragment, description };
|
|
184
|
+
}
|
|
185
|
+
/** Resolve file references against a base directory, skipping unreadable ones. */
|
|
186
|
+
function resolveReferences(baseDir, refs) {
|
|
187
|
+
const results = [];
|
|
188
|
+
for (const ref of refs) {
|
|
189
|
+
const raw = readFileOrUndefined(join(baseDir, ref.path));
|
|
190
|
+
if (raw === undefined)
|
|
191
|
+
continue; // Skip unreadable files.
|
|
192
|
+
const content = ref.fragment === undefined ? raw : extractSection(raw, ref.fragment);
|
|
193
|
+
if (content.trim() !== '')
|
|
194
|
+
results.push({ ref, content });
|
|
195
|
+
}
|
|
196
|
+
return results;
|
|
197
|
+
}
|
|
198
|
+
/**
|
|
199
|
+
* Extract a markdown section by heading fragment. The fragment is matched
|
|
200
|
+
* against GitHub-style heading anchors; the section runs until the next
|
|
201
|
+
* heading at the same or a higher level.
|
|
202
|
+
*/
|
|
203
|
+
export function extractSection(content, fragment) {
|
|
204
|
+
const target = headingToAnchor(fragment);
|
|
205
|
+
const lines = splitLines(content);
|
|
206
|
+
let start = -1;
|
|
207
|
+
let startLevel = 0;
|
|
208
|
+
for (let i = 0; i < lines.length; i++) {
|
|
209
|
+
const heading = parseHeading(lines[i]);
|
|
210
|
+
if (heading === undefined)
|
|
211
|
+
continue;
|
|
212
|
+
const anchor = headingToAnchor(heading.text);
|
|
213
|
+
if (anchor === target || anchor.includes(target) || target.includes(anchor)) {
|
|
214
|
+
start = i;
|
|
215
|
+
startLevel = heading.level;
|
|
216
|
+
continue;
|
|
217
|
+
}
|
|
218
|
+
// Started capturing and hit a same-or-higher-level heading: stop.
|
|
219
|
+
if (start >= 0 && heading.level <= startLevel)
|
|
220
|
+
return lines.slice(start, i).join('\n');
|
|
221
|
+
}
|
|
222
|
+
return start >= 0 ? lines.slice(start).join('\n') : '';
|
|
223
|
+
}
|
|
224
|
+
/** Parse a markdown heading line into its level and text. */
|
|
225
|
+
function parseHeading(line) {
|
|
226
|
+
const trimmed = line.trim();
|
|
227
|
+
if (!trimmed.startsWith('#'))
|
|
228
|
+
return undefined;
|
|
229
|
+
const level = trimmed.length - trimmed.replace(/^#+/, '').length;
|
|
230
|
+
const text = trimmed.slice(level).trim();
|
|
231
|
+
if (text === '')
|
|
232
|
+
return undefined;
|
|
233
|
+
return { level, text };
|
|
234
|
+
}
|
|
235
|
+
/** Convert heading text to a GitHub-style anchor. */
|
|
236
|
+
export function headingToAnchor(text) {
|
|
237
|
+
let out = '';
|
|
238
|
+
for (const ch of text.toLowerCase()) {
|
|
239
|
+
if (/[\p{L}\p{N}\-_]/u.test(ch))
|
|
240
|
+
out += ch;
|
|
241
|
+
else if (ch === ' ')
|
|
242
|
+
out += '-';
|
|
243
|
+
// Other characters are dropped.
|
|
244
|
+
}
|
|
245
|
+
// Single non-overlapping pass, matching Rust's `str::replace`.
|
|
246
|
+
return out.replaceAll('--', '-');
|
|
247
|
+
}
|
|
248
|
+
/** `undefined` instead of throwing, for any unreadable path. */
|
|
249
|
+
function readFileOrUndefined(path) {
|
|
250
|
+
try {
|
|
251
|
+
return readFileSync(path, 'utf8');
|
|
252
|
+
}
|
|
253
|
+
catch {
|
|
254
|
+
return undefined;
|
|
255
|
+
}
|
|
256
|
+
}
|
|
257
|
+
/**
|
|
258
|
+
* Mirrors Rust's `str::lines`: split on \n, drop a trailing \r on each line,
|
|
259
|
+
* and emit no trailing empty line for a final newline.
|
|
260
|
+
*/
|
|
261
|
+
function splitLines(s) {
|
|
262
|
+
if (s === '')
|
|
263
|
+
return [];
|
|
264
|
+
const body = s.endsWith('\n') ? s.slice(0, -1) : s;
|
|
265
|
+
return body.split('\n').map((line) => (line.endsWith('\r') ? line.slice(0, -1) : line));
|
|
266
|
+
}
|
|
267
|
+
//# sourceMappingURL=context.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"context.js","sourceRoot":"","sources":["../src/context.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* A REAL OpenAI-compatible chat client for the agent's {@link ChatClientLike} seam.
|
|
3
|
+
*
|
|
4
|
+
* Until now the TypeScript engine could only be driven by {@link MockLlmProvider}
|
|
5
|
+
* or a client the consumer hand-rolled; this is the shipped one, pointed at any
|
|
6
|
+
* `/chat/completions` endpoint (the SmooAI gateway, or anything OpenAI-compatible)
|
|
7
|
+
* with a base URL + API key.
|
|
8
|
+
*
|
|
9
|
+
* It is a thin adapter over the `openai` SDK, which this package already depends
|
|
10
|
+
* on — the SDK owns the wire format, the SSE framing, timeouts and connection
|
|
11
|
+
* retries, so the only thing this file adds is the two bits the SDK's parsed
|
|
12
|
+
* response throws away:
|
|
13
|
+
*
|
|
14
|
+
* 1. **The gateway cost header.** Cost is reported ONLY in a response header, and
|
|
15
|
+
* on the streaming path those headers are gone once the SSE body is being
|
|
16
|
+
* consumed — the regression core#102 fixed in Rust. `.withResponse()` hands
|
|
17
|
+
* back the `Response` alongside the data, so both paths read the headers BEFORE
|
|
18
|
+
* touching the body and surface the parsed cost on the documented seam
|
|
19
|
+
* ({@link responseGatewayCost}): `headers` on a non-streaming response,
|
|
20
|
+
* `gatewayCostUsd` on a leading {@link ChatChunk} when streaming.
|
|
21
|
+
* 2. **Nothing else.** The request body is passed through verbatim, so the
|
|
22
|
+
* agent's `metadata` (core#100) and every other field reach the wire unchanged.
|
|
23
|
+
*
|
|
24
|
+
* {@link MockLlmProvider} remains the default/test seam. This is opt-in: nothing
|
|
25
|
+
* constructs it for you, so an unwired consumer behaves exactly as before.
|
|
26
|
+
*
|
|
27
|
+
* ```ts
|
|
28
|
+
* const agent = new SmoothAgent(createGatewayClient({ baseURL: 'https://llm.smoo.ai/v1', apiKey: key }), options);
|
|
29
|
+
* ```
|
|
30
|
+
*/
|
|
31
|
+
import OpenAI from 'openai';
|
|
32
|
+
import type { ChatClientLike } from './agent.js';
|
|
33
|
+
export interface GatewayClientOptions {
|
|
34
|
+
/** The OpenAI-compatible base URL, e.g. `https://llm.smoo.ai/v1`. */
|
|
35
|
+
baseURL: string;
|
|
36
|
+
/** Bearer key sent as `Authorization: Bearer <apiKey>`. */
|
|
37
|
+
apiKey: string;
|
|
38
|
+
/** Request timeout in milliseconds. Defaults to the SDK's own default. */
|
|
39
|
+
timeoutMs?: number;
|
|
40
|
+
/** Connection-level retries the SDK performs. Defaults to the SDK's own default. */
|
|
41
|
+
maxRetries?: number;
|
|
42
|
+
}
|
|
43
|
+
/** Build a gateway-backed {@link ChatClientLike} from a base URL + key. */
|
|
44
|
+
export declare function createGatewayClient(options: GatewayClientOptions): ChatClientLike;
|
|
45
|
+
/**
|
|
46
|
+
* Wrap an already-configured `openai` SDK client — for consumers that need to own
|
|
47
|
+
* the SDK's construction (custom `fetch`, proxy agent, default headers) and just
|
|
48
|
+
* want the cost-header plumbing on top.
|
|
49
|
+
*/
|
|
50
|
+
export declare function gatewayClientFrom(sdk: OpenAI): ChatClientLike;
|
|
51
|
+
//# sourceMappingURL=gatewayClient.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"gatewayClient.d.ts","sourceRoot":"","sources":["../src/gatewayClient.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AACH,OAAO,MAAM,MAAM,QAAQ,CAAC;AAG5B,OAAO,KAAK,EAAa,cAAc,EAAE,MAAM,YAAY,CAAC;AAM5D,MAAM,WAAW,oBAAoB;IACjC,qEAAqE;IACrE,OAAO,EAAE,MAAM,CAAC;IAChB,2DAA2D;IAC3D,MAAM,EAAE,MAAM,CAAC;IACf,0EAA0E;IAC1E,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,oFAAoF;IACpF,UAAU,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,2EAA2E;AAC3E,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,oBAAoB,GAAG,cAAc,CASjF;AAED;;;;GAIG;AACH,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,MAAM,GAAG,cAAc,CAmB7D"}
|
|
@@ -0,0 +1,92 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* A REAL OpenAI-compatible chat client for the agent's {@link ChatClientLike} seam.
|
|
3
|
+
*
|
|
4
|
+
* Until now the TypeScript engine could only be driven by {@link MockLlmProvider}
|
|
5
|
+
* or a client the consumer hand-rolled; this is the shipped one, pointed at any
|
|
6
|
+
* `/chat/completions` endpoint (the SmooAI gateway, or anything OpenAI-compatible)
|
|
7
|
+
* with a base URL + API key.
|
|
8
|
+
*
|
|
9
|
+
* It is a thin adapter over the `openai` SDK, which this package already depends
|
|
10
|
+
* on — the SDK owns the wire format, the SSE framing, timeouts and connection
|
|
11
|
+
* retries, so the only thing this file adds is the two bits the SDK's parsed
|
|
12
|
+
* response throws away:
|
|
13
|
+
*
|
|
14
|
+
* 1. **The gateway cost header.** Cost is reported ONLY in a response header, and
|
|
15
|
+
* on the streaming path those headers are gone once the SSE body is being
|
|
16
|
+
* consumed — the regression core#102 fixed in Rust. `.withResponse()` hands
|
|
17
|
+
* back the `Response` alongside the data, so both paths read the headers BEFORE
|
|
18
|
+
* touching the body and surface the parsed cost on the documented seam
|
|
19
|
+
* ({@link responseGatewayCost}): `headers` on a non-streaming response,
|
|
20
|
+
* `gatewayCostUsd` on a leading {@link ChatChunk} when streaming.
|
|
21
|
+
* 2. **Nothing else.** The request body is passed through verbatim, so the
|
|
22
|
+
* agent's `metadata` (core#100) and every other field reach the wire unchanged.
|
|
23
|
+
*
|
|
24
|
+
* {@link MockLlmProvider} remains the default/test seam. This is opt-in: nothing
|
|
25
|
+
* constructs it for you, so an unwired consumer behaves exactly as before.
|
|
26
|
+
*
|
|
27
|
+
* ```ts
|
|
28
|
+
* const agent = new SmoothAgent(createGatewayClient({ baseURL: 'https://llm.smoo.ai/v1', apiKey: key }), options);
|
|
29
|
+
* ```
|
|
30
|
+
*/
|
|
31
|
+
import OpenAI from 'openai';
|
|
32
|
+
import { parseGatewayCost } from './cost.js';
|
|
33
|
+
/** Build a gateway-backed {@link ChatClientLike} from a base URL + key. */
|
|
34
|
+
export function createGatewayClient(options) {
|
|
35
|
+
return gatewayClientFrom(new OpenAI({
|
|
36
|
+
baseURL: options.baseURL,
|
|
37
|
+
apiKey: options.apiKey,
|
|
38
|
+
...(options.timeoutMs !== undefined ? { timeout: options.timeoutMs } : {}),
|
|
39
|
+
...(options.maxRetries !== undefined ? { maxRetries: options.maxRetries } : {}),
|
|
40
|
+
}));
|
|
41
|
+
}
|
|
42
|
+
/**
|
|
43
|
+
* Wrap an already-configured `openai` SDK client — for consumers that need to own
|
|
44
|
+
* the SDK's construction (custom `fetch`, proxy agent, default headers) and just
|
|
45
|
+
* want the cost-header plumbing on top.
|
|
46
|
+
*/
|
|
47
|
+
export function gatewayClientFrom(sdk) {
|
|
48
|
+
return {
|
|
49
|
+
chat: {
|
|
50
|
+
completions: {
|
|
51
|
+
async create(body) {
|
|
52
|
+
// `.withResponse()` keeps the raw Response next to the parsed body, which
|
|
53
|
+
// is the only way to see the cost header at all — the SDK's parsed
|
|
54
|
+
// response drops it. `headers` is the seam `responseGatewayCost` reads.
|
|
55
|
+
const { data, response } = await sdk.chat.completions
|
|
56
|
+
.create(body)
|
|
57
|
+
.withResponse();
|
|
58
|
+
return { ...data, headers: response.headers };
|
|
59
|
+
},
|
|
60
|
+
createStream(body) {
|
|
61
|
+
return streamCompletion(sdk, body);
|
|
62
|
+
},
|
|
63
|
+
},
|
|
64
|
+
},
|
|
65
|
+
};
|
|
66
|
+
}
|
|
67
|
+
/**
|
|
68
|
+
* Open a streaming completion and yield its chunks, with the gateway cost riding a
|
|
69
|
+
* leading chunk.
|
|
70
|
+
*
|
|
71
|
+
* The ordering here is the load-bearing part: `.withResponse()` resolves as soon as
|
|
72
|
+
* the response HEAD arrives, so the cost header is parsed while the SSE body is
|
|
73
|
+
* still untouched. Reading it after iterating the stream would find nothing — that
|
|
74
|
+
* is the exact bug core#102 fixed in Rust and core#121 called out for Go.
|
|
75
|
+
*
|
|
76
|
+
* The cost is emitted on its own leading chunk (matching Go's `ChatChunk{CostUSD}`)
|
|
77
|
+
* so it is folded into the turn even if the stream errors before any usage arrives.
|
|
78
|
+
* That chunk carries no `choices`, which the agent's stream loop skips.
|
|
79
|
+
*/
|
|
80
|
+
async function* streamCompletion(sdk, body) {
|
|
81
|
+
const { data, response } = await sdk.chat.completions
|
|
82
|
+
.create({ ...body, stream: true })
|
|
83
|
+
.withResponse();
|
|
84
|
+
const gatewayCostUsd = parseGatewayCost(response.headers);
|
|
85
|
+
if (gatewayCostUsd !== undefined) {
|
|
86
|
+
yield { choices: [], gatewayCostUsd };
|
|
87
|
+
}
|
|
88
|
+
for await (const chunk of data) {
|
|
89
|
+
yield chunk;
|
|
90
|
+
}
|
|
91
|
+
}
|
|
92
|
+
//# sourceMappingURL=gatewayClient.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"gatewayClient.js","sourceRoot":"","sources":["../src/gatewayClient.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AACH,OAAO,MAAM,MAAM,QAAQ,CAAC;AAI5B,OAAO,EAAE,gBAAgB,EAAE,MAAM,WAAW,CAAC;AAgB7C,2EAA2E;AAC3E,MAAM,UAAU,mBAAmB,CAAC,OAA6B;IAC7D,OAAO,iBAAiB,CACpB,IAAI,MAAM,CAAC;QACP,OAAO,EAAE,OAAO,CAAC,OAAO;QACxB,MAAM,EAAE,OAAO,CAAC,MAAM;QACtB,GAAG,CAAC,OAAO,CAAC,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,OAAO,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC1E,GAAG,CAAC,OAAO,CAAC,UAAU,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,OAAO,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KAClF,CAAC,CACL,CAAC;AACN,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,iBAAiB,CAAC,GAAW;IACzC,OAAO;QACH,IAAI,EAAE;YACF,WAAW,EAAE;gBACT,KAAK,CAAC,MAAM,CAAC,IAA6B;oBACtC,0EAA0E;oBAC1E,mEAAmE;oBACnE,wEAAwE;oBACxE,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,GAAG,MAAM,GAAG,CAAC,IAAI,CAAC,WAAW;yBAChD,MAAM,CAAC,IAAyD,CAAC;yBACjE,YAAY,EAAE,CAAC;oBACpB,OAAO,EAAE,GAAG,IAAI,EAAE,OAAO,EAAE,QAAQ,CAAC,OAAO,EAAiC,CAAC;gBACjF,CAAC;gBACD,YAAY,CAAC,IAA6B;oBACtC,OAAO,gBAAgB,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;gBACvC,CAAC;aACJ;SACJ;KACJ,CAAC;AACN,CAAC;AAED;;;;;;;;;;;;GAYG;AACH,KAAK,SAAS,CAAC,CAAC,gBAAgB,CAAC,GAAW,EAAE,IAA6B;IACvE,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,GAAG,MAAM,GAAG,CAAC,IAAI,CAAC,WAAW;SAChD,MAAM,CAAC,EAAE,GAAG,IAAI,EAAE,MAAM,EAAE,IAAI,EAAoD,CAAC;SACnF,YAAY,EAAE,CAAC;IACpB,MAAM,cAAc,GAAG,gBAAgB,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;IAC1D,IAAI,cAAc,KAAK,SAAS,EAAE,CAAC;QAC/B,MAAM,EAAE,OAAO,EAAE,EAAE,EAAE,cAAc,EAAE,CAAC;IAC1C,CAAC;IACD,IAAI,KAAK,EAAE,MAAM,KAAK,IAAI,IAA2C,EAAE,CAAC;QACpE,MAAM,KAAK,CAAC;IAChB,CAAC;AACL,CAAC"}
|
package/dist/index.d.ts
CHANGED
|
@@ -11,8 +11,12 @@ export { Cast, Clearance, makeRole, RoleKind } from './cast.js';
|
|
|
11
11
|
export type { OperatorRole } from './cast.js';
|
|
12
12
|
export { InMemoryCheckpointStore } from './checkpoint.js';
|
|
13
13
|
export type { Checkpoint, CheckpointStore } from './checkpoint.js';
|
|
14
|
+
export { extractSection, findProjectContextFile, headingToAnchor, loadProjectContext, parseFileReferences, parseLinkLine } from './context.js';
|
|
15
|
+
export type { FileRef } from './context.js';
|
|
14
16
|
export { CostTracker, DEFAULT_PRICING, GATEWAY_COST_HEADERS, parseGatewayCost } from './cost.js';
|
|
15
17
|
export type { CostBudget, HeaderLike, ModelPricing, Usage } from './cost.js';
|
|
18
|
+
export { createGatewayClient, gatewayClientFrom } from './gatewayClient.js';
|
|
19
|
+
export type { GatewayClientOptions } from './gatewayClient.js';
|
|
16
20
|
export { approve, approveAlways, deny, HumanDecision, isApproved } from './humanGate.js';
|
|
17
21
|
export type { HumanApprovalRequest, HumanApprovalResponse, HumanGate } from './humanGate.js';
|
|
18
22
|
export { AutoMode, autoModeFromEnv, autoModeFromValue, decide, domainMatchesSuffixList, extractHosts, hostFromToken, PermissionHook, splitCompound, stripWrappersAndSudo, toolCategory, } from './permission.js';
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,YAAY,EAAE,kBAAkB,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAC3E,YAAY,EAAE,YAAY,EAAE,gBAAgB,EAAE,SAAS,EAAE,cAAc,EAAE,aAAa,EAAE,cAAc,EAAE,WAAW,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAC9K,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAC;AAChE,YAAY,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AAC9C,OAAO,EAAE,uBAAuB,EAAE,MAAM,iBAAiB,CAAC;AAC1D,YAAY,EAAE,UAAU,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AACnE,OAAO,EAAE,WAAW,EAAE,eAAe,EAAE,oBAAoB,EAAE,gBAAgB,EAAE,MAAM,WAAW,CAAC;AACjG,YAAY,EAAE,UAAU,EAAE,UAAU,EAAE,YAAY,EAAE,KAAK,EAAE,MAAM,WAAW,CAAC;AAC7E,OAAO,EAAE,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AACzF,YAAY,EAAE,oBAAoB,EAAE,qBAAqB,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC7F,OAAO,EACH,QAAQ,EACR,eAAe,EACf,iBAAiB,EACjB,MAAM,EACN,uBAAuB,EACvB,YAAY,EACZ,aAAa,EACb,cAAc,EACd,aAAa,EACb,oBAAoB,EACpB,YAAY,GACf,MAAM,iBAAiB,CAAC;AACzB,YAAY,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAC;AACzD,OAAO,EAAE,eAAe,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAC1E,YAAY,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AACxD,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AACnE,YAAY,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AACrD,OAAO,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AACnD,YAAY,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9D,OAAO,EAAE,eAAe,EAAE,YAAY,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AACnF,YAAY,EAAE,WAAW,EAAE,YAAY,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAClG,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAC7C,YAAY,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AACvD,OAAO,EAAE,eAAe,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAC5D,YAAY,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAChD,OAAO,EAAE,WAAW,EAAE,gBAAgB,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC5E,OAAO,EAAE,YAAY,EAAE,SAAS,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AACvE,YAAY,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,EAAE,GAAG,EAAE,QAAQ,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAC7D,YAAY,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/index.js
CHANGED
|
@@ -8,7 +8,9 @@
|
|
|
8
8
|
export { delegateTool, effectiveMaxTokens, SmoothAgent } from './agent.js';
|
|
9
9
|
export { Cast, Clearance, makeRole, RoleKind } from './cast.js';
|
|
10
10
|
export { InMemoryCheckpointStore } from './checkpoint.js';
|
|
11
|
+
export { extractSection, findProjectContextFile, headingToAnchor, loadProjectContext, parseFileReferences, parseLinkLine } from './context.js';
|
|
11
12
|
export { CostTracker, DEFAULT_PRICING, GATEWAY_COST_HEADERS, parseGatewayCost } from './cost.js';
|
|
13
|
+
export { createGatewayClient, gatewayClientFrom } from './gatewayClient.js';
|
|
12
14
|
export { approve, approveAlways, deny, HumanDecision, isApproved } from './humanGate.js';
|
|
13
15
|
export { AutoMode, autoModeFromEnv, autoModeFromValue, decide, domainMatchesSuffixList, extractHosts, hostFromToken, PermissionHook, splitCompound, stripWrappersAndSudo, toolCategory, } from './permission.js';
|
|
14
16
|
export { hostMatchesGlob, PermissionGrants } from './permissionGrants.js';
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,YAAY,EAAE,kBAAkB,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAE3E,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAC;AAEhE,OAAO,EAAE,uBAAuB,EAAE,MAAM,iBAAiB,CAAC;AAE1D,OAAO,EAAE,WAAW,EAAE,eAAe,EAAE,oBAAoB,EAAE,gBAAgB,EAAE,MAAM,WAAW,CAAC;AAEjG,OAAO,EAAE,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAEzF,OAAO,EACH,QAAQ,EACR,eAAe,EACf,iBAAiB,EACjB,MAAM,EACN,uBAAuB,EACvB,YAAY,EACZ,aAAa,EACb,cAAc,EACd,aAAa,EACb,oBAAoB,EACpB,YAAY,GACf,MAAM,iBAAiB,CAAC;AAEzB,OAAO,EAAE,eAAe,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAE1E,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAEnE,OAAO,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AAEnD,OAAO,EAAE,eAAe,EAAE,YAAY,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AAEnF,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAE7C,OAAO,EAAE,eAAe,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAE5D,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAChD,OAAO,EAAE,WAAW,EAAE,gBAAgB,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC5E,OAAO,EAAE,YAAY,EAAE,SAAS,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAEvE,OAAO,EAAE,GAAG,EAAE,QAAQ,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,YAAY,EAAE,kBAAkB,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAE3E,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAC;AAEhE,OAAO,EAAE,uBAAuB,EAAE,MAAM,iBAAiB,CAAC;AAE1D,OAAO,EAAE,cAAc,EAAE,sBAAsB,EAAE,eAAe,EAAE,kBAAkB,EAAE,mBAAmB,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAE/I,OAAO,EAAE,WAAW,EAAE,eAAe,EAAE,oBAAoB,EAAE,gBAAgB,EAAE,MAAM,WAAW,CAAC;AAEjG,OAAO,EAAE,mBAAmB,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAE5E,OAAO,EAAE,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAEzF,OAAO,EACH,QAAQ,EACR,eAAe,EACf,iBAAiB,EACjB,MAAM,EACN,uBAAuB,EACvB,YAAY,EACZ,aAAa,EACb,cAAc,EACd,aAAa,EACb,oBAAoB,EACpB,YAAY,GACf,MAAM,iBAAiB,CAAC;AAEzB,OAAO,EAAE,eAAe,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAE1E,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAEnE,OAAO,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AAEnD,OAAO,EAAE,eAAe,EAAE,YAAY,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AAEnF,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAE7C,OAAO,EAAE,eAAe,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAE5D,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAChD,OAAO,EAAE,WAAW,EAAE,gBAAgB,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC5E,OAAO,EAAE,YAAY,EAAE,SAAS,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAEvE,OAAO,EAAE,GAAG,EAAE,QAAQ,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@smooai/smooth-operator-core",
|
|
3
|
-
"version": "1.7.
|
|
3
|
+
"version": "1.7.13",
|
|
4
4
|
"description": "Native TypeScript implementation of the smooth-operator agent engine — an in-process, OpenAI-compatible agentic tool-calling loop with knowledge grounding. The TypeScript sibling of the Rust reference engine, the C# core, and the Python core.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"license": "MIT",
|