@markusylisiurunen/tau 0.2.36 → 0.2.37
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 +50 -0
- package/dist/core/cli.js +20 -1
- package/dist/core/cli.js.map +1 -1
- package/dist/core/index.js +4 -1
- package/dist/core/index.js.map +1 -1
- package/dist/core/modes/index.js +2 -0
- package/dist/core/modes/index.js.map +1 -1
- package/dist/core/modes/rpc_protocol.js +240 -0
- package/dist/core/modes/rpc_protocol.js.map +1 -0
- package/dist/core/modes/rpc_server.js +275 -0
- package/dist/core/modes/rpc_server.js.map +1 -0
- package/dist/core/runtime/chat_runtime.js +124 -0
- package/dist/core/runtime/chat_runtime.js.map +1 -0
- package/dist/core/runtime/conversation_turn_runtime.js +49 -0
- package/dist/core/runtime/conversation_turn_runtime.js.map +1 -0
- package/dist/core/runtime/session_prompt_composer.js +55 -0
- package/dist/core/runtime/session_prompt_composer.js.map +1 -0
- package/dist/core/utils/auto_retry.js +1 -1
- package/dist/core/utils/auto_retry.js.map +1 -1
- package/dist/core/version.js +1 -1
- package/dist/main.js +140 -5
- package/dist/main.js.map +1 -1
- package/dist/sdk/client.d.ts +2 -0
- package/dist/sdk/client.js +409 -0
- package/dist/sdk/client.js.map +1 -0
- package/dist/sdk/errors.d.ts +32 -0
- package/dist/sdk/errors.js +37 -0
- package/dist/sdk/errors.js.map +1 -0
- package/dist/sdk/index.d.ts +4 -0
- package/dist/sdk/index.js +3 -0
- package/dist/sdk/index.js.map +1 -0
- package/dist/sdk/types.d.ts +83 -0
- package/dist/sdk/types.js +2 -0
- package/dist/sdk/types.js.map +1 -0
- package/dist/tui/app.js.map +1 -1
- package/dist/tui/chat_controller.js +101 -99
- package/dist/tui/chat_controller.js.map +1 -1
- package/package.json +9 -3
package/README.md
CHANGED
|
@@ -80,6 +80,46 @@ tau usage --since 2025-01-01 --persona gpt-5.2-coder
|
|
|
80
80
|
|
|
81
81
|
filters: `--since`, `--persona`, `--provider`, `--model`.
|
|
82
82
|
|
|
83
|
+
## rpc mode (headless stdio)
|
|
84
|
+
|
|
85
|
+
tau can run without the TUI via NDJSON RPC over stdin/stdout:
|
|
86
|
+
|
|
87
|
+
```sh
|
|
88
|
+
tau rpc --persona gpt-5.2-coder --risk read-only
|
|
89
|
+
```
|
|
90
|
+
|
|
91
|
+
RPC mode reuses the same startup config/persona/risk/sandbox loading as interactive mode. stdin/stdout are reserved for protocol traffic in this mode (piped stdin is **not** treated as an initial user message).
|
|
92
|
+
|
|
93
|
+
for protocol details and examples, see [docs/rpc.md](docs/rpc.md).
|
|
94
|
+
|
|
95
|
+
## sdk usage (node)
|
|
96
|
+
|
|
97
|
+
tau also ships a Node SDK at `@markusylisiurunen/tau/sdk` that talks to the same rpc subprocess (`tau rpc`) behind the scenes.
|
|
98
|
+
|
|
99
|
+
```ts
|
|
100
|
+
import { createTauSdkClient } from "@markusylisiurunen/tau/sdk";
|
|
101
|
+
|
|
102
|
+
const client = await createTauSdkClient();
|
|
103
|
+
const unsubscribe = client.onEvent((event) => {
|
|
104
|
+
// stream core events
|
|
105
|
+
});
|
|
106
|
+
|
|
107
|
+
try {
|
|
108
|
+
const result = await client.submit("summarize this repo");
|
|
109
|
+
console.log(result.userHistoryEntryId, result.turn.aborted);
|
|
110
|
+
|
|
111
|
+
const snapshot = await client.snapshot();
|
|
112
|
+
console.log(snapshot.sessionId, snapshot.historyLength);
|
|
113
|
+
|
|
114
|
+
await client.shutdown();
|
|
115
|
+
} finally {
|
|
116
|
+
unsubscribe();
|
|
117
|
+
await client.close();
|
|
118
|
+
}
|
|
119
|
+
```
|
|
120
|
+
|
|
121
|
+
for full api details (options, methods, events, and errors), see [docs/sdk.md](docs/sdk.md).
|
|
122
|
+
|
|
83
123
|
## install starter prompts and skills
|
|
84
124
|
|
|
85
125
|
tau ships starter prompt and skill templates as markdown content in this repository. install them with:
|
|
@@ -204,6 +244,16 @@ example config:
|
|
|
204
244
|
|
|
205
245
|
note: when `--sandbox` is enabled, `!` commands also run inside the container.
|
|
206
246
|
|
|
247
|
+
## power management (macOS)
|
|
248
|
+
|
|
249
|
+
start tau with `--caffeinated` to keep macOS awake while an assistant turn is running:
|
|
250
|
+
|
|
251
|
+
```sh
|
|
252
|
+
tau --caffeinated
|
|
253
|
+
```
|
|
254
|
+
|
|
255
|
+
tau uses `caffeinate -i` and only holds the sleep assertion during active assistant turns. it does not keep the display awake, and it does not apply to `tau rpc` mode.
|
|
256
|
+
|
|
207
257
|
## personas
|
|
208
258
|
|
|
209
259
|
tau comes with several built-in personas across different models:
|
package/dist/core/cli.js
CHANGED
|
@@ -8,6 +8,7 @@ export const CliOptionsSchema = z.object({
|
|
|
8
8
|
reasoningOverride: ReasoningEffortSchema.optional(),
|
|
9
9
|
riskLevel: RiskLevelSchema.optional(),
|
|
10
10
|
sandbox: z.boolean(),
|
|
11
|
+
caffeinated: z.boolean(),
|
|
11
12
|
noAgentContextFiles: z.boolean(),
|
|
12
13
|
});
|
|
13
14
|
export class CliError extends Error {
|
|
@@ -80,6 +81,7 @@ export function parseCliArgs(argv, personas) {
|
|
|
80
81
|
let reasoningOverride;
|
|
81
82
|
let riskLevel;
|
|
82
83
|
let sandbox = false;
|
|
84
|
+
let caffeinated = false;
|
|
83
85
|
let noAgentContextFiles = false;
|
|
84
86
|
for (let i = 0; i < argv.length; i++) {
|
|
85
87
|
const arg = argv[i];
|
|
@@ -105,6 +107,10 @@ export function parseCliArgs(argv, personas) {
|
|
|
105
107
|
sandbox = true;
|
|
106
108
|
continue;
|
|
107
109
|
}
|
|
110
|
+
if (arg === "--caffeinated") {
|
|
111
|
+
caffeinated = true;
|
|
112
|
+
continue;
|
|
113
|
+
}
|
|
108
114
|
if (arg === "--persona" ||
|
|
109
115
|
arg === "-p" ||
|
|
110
116
|
arg.startsWith("--persona=") ||
|
|
@@ -157,6 +163,7 @@ export function parseCliArgs(argv, personas) {
|
|
|
157
163
|
reasoningOverride,
|
|
158
164
|
riskLevel,
|
|
159
165
|
sandbox,
|
|
166
|
+
caffeinated,
|
|
160
167
|
noAgentContextFiles,
|
|
161
168
|
};
|
|
162
169
|
return CliOptionsSchema.parse(options);
|
|
@@ -170,6 +177,10 @@ export function printHelp(personas) {
|
|
|
170
177
|
"",
|
|
171
178
|
"usage:",
|
|
172
179
|
" tau [options]",
|
|
180
|
+
" tau rpc [options]",
|
|
181
|
+
" tau auth <subcommand>",
|
|
182
|
+
" tau usage [options]",
|
|
183
|
+
" tau install [options]",
|
|
173
184
|
"",
|
|
174
185
|
"options:",
|
|
175
186
|
" --help show this help and exit.",
|
|
@@ -181,8 +192,15 @@ export function printHelp(personas) {
|
|
|
181
192
|
` --risk, -r <level> set initial model risk level. levels: ${riskList}.`,
|
|
182
193
|
` if not specified, uses defaultRisk from ~/.config/tau/config.json (default: read-only).`,
|
|
183
194
|
" --sandbox run all tool execution inside a session docker container.",
|
|
195
|
+
" --caffeinated keep macOS awake during active assistant turns in TUI mode.",
|
|
184
196
|
" --no-agent-context-files disable AGENTS.md injection into the system prompt.",
|
|
185
197
|
"",
|
|
198
|
+
"subcommands:",
|
|
199
|
+
" rpc run headless stdio RPC mode (no TUI).",
|
|
200
|
+
" auth authenticate/list/logout Codex OAuth accounts.",
|
|
201
|
+
" usage summarize usage logs.",
|
|
202
|
+
" install install starter prompts and skills.",
|
|
203
|
+
"",
|
|
186
204
|
"examples:",
|
|
187
205
|
" tau --persona gpt-5.2-chat:high",
|
|
188
206
|
" tau -p opus-4.6-coder",
|
|
@@ -198,7 +216,8 @@ export function printHelp(personas) {
|
|
|
198
216
|
" you can switch persona during a session with /persona:<id>.",
|
|
199
217
|
" insert prompt templates with /prompt:<id>.",
|
|
200
218
|
" you can change model risk level during a session with /risk:read-only or /risk:read-write.",
|
|
201
|
-
" if stdin is piped, its contents are sent as the first message automatically.",
|
|
219
|
+
" if stdin is piped, its contents are sent as the first message automatically in TUI mode.",
|
|
220
|
+
" in RPC mode, stdin/stdout are reserved for protocol traffic.",
|
|
202
221
|
" reasoning only affects providers that support it.",
|
|
203
222
|
].join("\n"));
|
|
204
223
|
}
|
package/dist/core/cli.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../../src/core/cli.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAEL,gBAAgB,EAEhB,qBAAqB,EAErB,eAAe,GAChB,MAAM,YAAY,CAAC;AAEpB,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,CAAC,MAAM,CAAC;IACvC,IAAI,EAAE,CAAC,CAAC,OAAO,EAAE;IACjB,KAAK,EAAE,CAAC,CAAC,OAAO,EAAE;IAClB,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC/B,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAChC,iBAAiB,EAAE,qBAAqB,CAAC,QAAQ,EAAE;IACnD,SAAS,EAAE,eAAe,CAAC,QAAQ,EAAE;IACrC,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE;IACpB,mBAAmB,EAAE,CAAC,CAAC,OAAO,EAAE;CACjC,CAAC,CAAC;AAIH,MAAM,OAAO,QAAS,SAAQ,KAAK;IACjC,YAAY,OAAe;QACzB,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,IAAI,CAAC,IAAI,GAAG,UAAU,CAAC;IACzB,CAAC;CACF;AAED,MAAM,UAAU,gBAAgB,CAAC,GAAW,EAAE,QAAmB;IAC/D,MAAM,OAAO,GAAG,GAAG,CAAC,IAAI,EAAE,CAAC;IAC3B,IAAI,CAAC,OAAO;QAAE,OAAO,SAAS,CAAC;IAC/B,MAAM,KAAK,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,OAAO,CAAC,CAAC;IACrD,IAAI,KAAK;QAAE,OAAO,KAAK,CAAC,EAAE,CAAC;IAC3B,MAAM,KAAK,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC;IACpC,OAAO,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,WAAW,EAAE,KAAK,KAAK,CAAC,EAAE,EAAE,CAAC;AAChE,CAAC;AAED,MAAM,UAAU,kBAAkB,CAChC,GAAW,EACX,QAAmB;IAEnB,MAAM,OAAO,GAAG,GAAG,CAAC,IAAI,EAAE,CAAC;IAC3B,IAAI,CAAC,OAAO;QAAE,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,CAAC;IAEpE,MAAM,UAAU,GAAG,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;IACxC,IAAI,UAAU,KAAK,CAAC,CAAC,EAAE,CAAC;QACtB,OAAO,EAAE,SAAS,EAAE,gBAAgB,CAAC,OAAO,EAAE,QAAQ,CAAC,EAAE,SAAS,EAAE,SAAS,EAAE,CAAC;IAClF,CAAC;IAED,MAAM,YAAY,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,UAAU,CAAC,CAAC;IAClD,MAAM,cAAc,GAAG,OAAO;SAC3B,KAAK,CAAC,UAAU,GAAG,CAAC,CAAC;SACrB,IAAI,EAAE;SACN,WAAW,EAAE,CAAC;IACjB,MAAM,SAAS,GAAG,gBAAgB,CAAC,YAAY,EAAE,QAAQ,CAAC,CAAC;IAC3D,MAAM,SAAS,GAAI,gBAA6B,CAAC,QAAQ,CAAC,cAAc,CAAC;QACvE,CAAC,CAAE,cAAkC;QACrC,CAAC,CAAC,SAAS,CAAC;IAEd,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,CAAC;AAClC,CAAC;AAED,SAAS,cAAc,CAAC,GAAW;IACjC,MAAM,UAAU,GAAG,GAAG,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;IAC5C,IAAI,CAAC,UAAU,EAAE,CAAC;QAChB,MAAM,IAAI,QAAQ,CAAC,0BAA0B,CAAC,CAAC;IACjD,CAAC;IAED,MAAM,MAAM,GAAG,eAAe,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC;IACrD,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;QACnB,OAAO,MAAM,CAAC,IAAI,CAAC;IACrB,CAAC;IAED,MAAM,OAAO,GAAG,eAAe,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACnD,MAAM,IAAI,QAAQ,CAAC,uBAAuB,GAAG,sBAAsB,OAAO,EAAE,CAAC,CAAC;AAChF,CAAC;AAED,SAAS,UAAU,CACjB,GAAW,EACX,IAAc,EACd,KAAa;IAEb,MAAM,OAAO,GAAG,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;IACjC,IAAI,OAAO,KAAK,CAAC,CAAC,EAAE,CAAC;QACnB,MAAM,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC,OAAO,GAAG,CAAC,CAAC,CAAC;QACrC,IAAI,CAAC,KAAK,EAAE,CAAC;YACX,MAAM,IAAI,QAAQ,CAAC,qBAAqB,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,OAAO,CAAC,EAAE,CAAC,CAAC;QACnE,CAAC;QACD,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC;IACrC,CAAC;IAED,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC;IAC7B,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;QAClC,MAAM,IAAI,QAAQ,CAAC,qBAAqB,GAAG,EAAE,CAAC,CAAC;IACjD,CAAC;IACD,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC;AAC/C,CAAC;AAED,MAAM,UAAU,YAAY,CAAC,IAAc,EAAE,QAAmB;IAC9D,IAAI,IAAI,GAAG,KAAK,CAAC;IACjB,IAAI,KAAK,GAAG,KAAK,CAAC;IAClB,IAAI,QAA4B,CAAC;IACjC,IAAI,SAA6B,CAAC;IAClC,IAAI,iBAA8C,CAAC;IACnD,IAAI,SAAgC,CAAC;IACrC,IAAI,OAAO,GAAG,KAAK,CAAC;IACpB,IAAI,mBAAmB,GAAG,KAAK,CAAC;IAEhC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACrC,MAAM,GAAG,GAAG,IAAI,CAAC,CAAC,CAAE,CAAC;QAErB,IAAI,GAAG,KAAK,QAAQ,IAAI,GAAG,KAAK,IAAI,EAAE,CAAC;YACrC,IAAI,GAAG,IAAI,CAAC;YACZ,SAAS;QACX,CAAC;QAED,IAAI,GAAG,KAAK,SAAS,EAAE,CAAC;YACtB,KAAK,GAAG,IAAI,CAAC;YACb,SAAS;QACX,CAAC;QAED,IAAI,GAAG,KAAK,QAAQ,IAAI,GAAG,KAAK,IAAI,IAAI,GAAG,CAAC,UAAU,CAAC,SAAS,CAAC,IAAI,GAAG,CAAC,UAAU,CAAC,KAAK,CAAC,EAAE,CAAC;YAC3F,MAAM,EAAE,KAAK,EAAE,SAAS,EAAE,GAAG,UAAU,CAAC,GAAG,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;YACtD,CAAC,GAAG,SAAS,CAAC;YACd,QAAQ,GAAG,KAAK,CAAC;YACjB,SAAS;QACX,CAAC;QAED,IAAI,GAAG,KAAK,0BAA0B,EAAE,CAAC;YACvC,mBAAmB,GAAG,IAAI,CAAC;YAC3B,SAAS;QACX,CAAC;QAED,IAAI,GAAG,KAAK,WAAW,EAAE,CAAC;YACxB,OAAO,GAAG,IAAI,CAAC;YACf,SAAS;QACX,CAAC;QAED,IACE,GAAG,KAAK,WAAW;YACnB,GAAG,KAAK,IAAI;YACZ,GAAG,CAAC,UAAU,CAAC,YAAY,CAAC;YAC5B,GAAG,CAAC,UAAU,CAAC,KAAK,CAAC,EACrB,CAAC;YACD,MAAM,EAAE,KAAK,EAAE,SAAS,EAAE,GAAG,UAAU,CAAC,GAAG,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;YACtD,CAAC,GAAG,SAAS,CAAC;YAEd,MAAM,MAAM,GAAG,kBAAkB,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;YACnD,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,CAAC;gBACtB,MAAM,UAAU,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;gBACtC,MAAM,YAAY,GAAG,UAAU,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,UAAU,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;gBAC5E,MAAM,SAAS,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBACvD,MAAM,IAAI,QAAQ,CAAC,oBAAoB,YAAY,0BAA0B,SAAS,EAAE,CAAC,CAAC;YAC5F,CAAC;YACD,MAAM,UAAU,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;YACtC,IAAI,UAAU,KAAK,CAAC,CAAC,EAAE,CAAC;gBACtB,MAAM,cAAc,GAAG,KAAK;qBACzB,KAAK,CAAC,UAAU,GAAG,CAAC,CAAC;qBACrB,IAAI,EAAE;qBACN,WAAW,EAAE,CAAC;gBACjB,IAAI,CAAC,cAAc,EAAE,CAAC;oBACpB,MAAM,IAAI,QAAQ,CAAC,gDAAgD,CAAC,CAAC;gBACvE,CAAC;gBACD,IAAI,MAAM,CAAC,SAAS,KAAK,SAAS,EAAE,CAAC;oBACnC,MAAM,OAAO,GAAG,CAAC,GAAG,gBAAgB,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;oBACjD,MAAM,IAAI,QAAQ,CAChB,4BAA4B,cAAc,sBAAsB,OAAO,EAAE,CAC1E,CAAC;gBACJ,CAAC;YACH,CAAC;YACD,SAAS,GAAG,MAAM,CAAC,SAAS,CAAC;YAC7B,IAAI,MAAM,CAAC,SAAS,KAAK,SAAS,EAAE,CAAC;gBACnC,iBAAiB,GAAG,MAAM,CAAC,SAAS,CAAC;YACvC,CAAC;YAED,SAAS;QACX,CAAC;QAED,IAAI,GAAG,KAAK,QAAQ,IAAI,GAAG,KAAK,IAAI,IAAI,GAAG,CAAC,UAAU,CAAC,SAAS,CAAC,IAAI,GAAG,CAAC,UAAU,CAAC,KAAK,CAAC,EAAE,CAAC;YAC3F,MAAM,EAAE,KAAK,EAAE,SAAS,EAAE,GAAG,UAAU,CAAC,GAAG,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;YACtD,CAAC,GAAG,SAAS,CAAC;YACd,SAAS,GAAG,cAAc,CAAC,KAAK,CAAC,CAAC;YAClC,SAAS;QACX,CAAC;QAED,IAAI,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;YACxB,MAAM,IAAI,QAAQ,CAAC,mBAAmB,GAAG,EAAE,CAAC,CAAC;QAC/C,CAAC;QACD,MAAM,IAAI,QAAQ,CAAC,wBAAwB,GAAG,EAAE,CAAC,CAAC;IACpD,CAAC;IAED,MAAM,OAAO,GAAG;QACd,IAAI;QACJ,KAAK;QACL,QAAQ;QACR,SAAS;QACT,iBAAiB;QACjB,SAAS;QACT,OAAO;QACP,mBAAmB;KACpB,CAAC;IACF,OAAO,gBAAgB,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;AACzC,CAAC;AAED,MAAM,UAAU,SAAS,CAAC,QAAmB;IAC3C,MAAM,WAAW,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACzD,MAAM,aAAa,GAAG,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAClD,MAAM,QAAQ,GAAG,eAAe,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAEpD,OAAO,CAAC,GAAG,CACT;QACE,qBAAqB;QACrB,EAAE;QACF,QAAQ;QACR,iBAAiB;QACjB,EAAE;QACF,UAAU;QACV,0DAA0D;QAC1D,uGAAuG;QACvG,yDAAyD;QACzD,oEAAoE,WAAW,GAAG;QAClF,+EAA+E,aAAa,GAAG;QAC/F,uGAAuG;QACvG,yEAAyE,QAAQ,GAAG;QACpF,yHAAyH;QACzH,2FAA2F;QAC3F,qFAAqF;QACrF,EAAE;QACF,WAAW;QACX,mCAAmC;QACnC,yBAAyB;QACzB,uDAAuD;QACvD,2CAA2C;QAC3C,qDAAqD;QACrD,EAAE;QACF,QAAQ;QACR,gFAAgF;QAChF,qFAAqF;QACrF,uEAAuE;QACvE,4DAA4D;QAC5D,+DAA+D;QAC/D,8CAA8C;QAC9C,8FAA8F;QAC9F,
|
|
1
|
+
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../../src/core/cli.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAEL,gBAAgB,EAEhB,qBAAqB,EAErB,eAAe,GAChB,MAAM,YAAY,CAAC;AAEpB,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,CAAC,MAAM,CAAC;IACvC,IAAI,EAAE,CAAC,CAAC,OAAO,EAAE;IACjB,KAAK,EAAE,CAAC,CAAC,OAAO,EAAE;IAClB,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC/B,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAChC,iBAAiB,EAAE,qBAAqB,CAAC,QAAQ,EAAE;IACnD,SAAS,EAAE,eAAe,CAAC,QAAQ,EAAE;IACrC,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE;IACpB,WAAW,EAAE,CAAC,CAAC,OAAO,EAAE;IACxB,mBAAmB,EAAE,CAAC,CAAC,OAAO,EAAE;CACjC,CAAC,CAAC;AAIH,MAAM,OAAO,QAAS,SAAQ,KAAK;IACjC,YAAY,OAAe;QACzB,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,IAAI,CAAC,IAAI,GAAG,UAAU,CAAC;IACzB,CAAC;CACF;AAED,MAAM,UAAU,gBAAgB,CAAC,GAAW,EAAE,QAAmB;IAC/D,MAAM,OAAO,GAAG,GAAG,CAAC,IAAI,EAAE,CAAC;IAC3B,IAAI,CAAC,OAAO;QAAE,OAAO,SAAS,CAAC;IAC/B,MAAM,KAAK,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,OAAO,CAAC,CAAC;IACrD,IAAI,KAAK;QAAE,OAAO,KAAK,CAAC,EAAE,CAAC;IAC3B,MAAM,KAAK,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC;IACpC,OAAO,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,WAAW,EAAE,KAAK,KAAK,CAAC,EAAE,EAAE,CAAC;AAChE,CAAC;AAED,MAAM,UAAU,kBAAkB,CAChC,GAAW,EACX,QAAmB;IAEnB,MAAM,OAAO,GAAG,GAAG,CAAC,IAAI,EAAE,CAAC;IAC3B,IAAI,CAAC,OAAO;QAAE,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,CAAC;IAEpE,MAAM,UAAU,GAAG,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;IACxC,IAAI,UAAU,KAAK,CAAC,CAAC,EAAE,CAAC;QACtB,OAAO,EAAE,SAAS,EAAE,gBAAgB,CAAC,OAAO,EAAE,QAAQ,CAAC,EAAE,SAAS,EAAE,SAAS,EAAE,CAAC;IAClF,CAAC;IAED,MAAM,YAAY,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,UAAU,CAAC,CAAC;IAClD,MAAM,cAAc,GAAG,OAAO;SAC3B,KAAK,CAAC,UAAU,GAAG,CAAC,CAAC;SACrB,IAAI,EAAE;SACN,WAAW,EAAE,CAAC;IACjB,MAAM,SAAS,GAAG,gBAAgB,CAAC,YAAY,EAAE,QAAQ,CAAC,CAAC;IAC3D,MAAM,SAAS,GAAI,gBAA6B,CAAC,QAAQ,CAAC,cAAc,CAAC;QACvE,CAAC,CAAE,cAAkC;QACrC,CAAC,CAAC,SAAS,CAAC;IAEd,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,CAAC;AAClC,CAAC;AAED,SAAS,cAAc,CAAC,GAAW;IACjC,MAAM,UAAU,GAAG,GAAG,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;IAC5C,IAAI,CAAC,UAAU,EAAE,CAAC;QAChB,MAAM,IAAI,QAAQ,CAAC,0BAA0B,CAAC,CAAC;IACjD,CAAC;IAED,MAAM,MAAM,GAAG,eAAe,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC;IACrD,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;QACnB,OAAO,MAAM,CAAC,IAAI,CAAC;IACrB,CAAC;IAED,MAAM,OAAO,GAAG,eAAe,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACnD,MAAM,IAAI,QAAQ,CAAC,uBAAuB,GAAG,sBAAsB,OAAO,EAAE,CAAC,CAAC;AAChF,CAAC;AAED,SAAS,UAAU,CACjB,GAAW,EACX,IAAc,EACd,KAAa;IAEb,MAAM,OAAO,GAAG,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;IACjC,IAAI,OAAO,KAAK,CAAC,CAAC,EAAE,CAAC;QACnB,MAAM,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC,OAAO,GAAG,CAAC,CAAC,CAAC;QACrC,IAAI,CAAC,KAAK,EAAE,CAAC;YACX,MAAM,IAAI,QAAQ,CAAC,qBAAqB,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,OAAO,CAAC,EAAE,CAAC,CAAC;QACnE,CAAC;QACD,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC;IACrC,CAAC;IAED,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC;IAC7B,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;QAClC,MAAM,IAAI,QAAQ,CAAC,qBAAqB,GAAG,EAAE,CAAC,CAAC;IACjD,CAAC;IACD,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC;AAC/C,CAAC;AAED,MAAM,UAAU,YAAY,CAAC,IAAc,EAAE,QAAmB;IAC9D,IAAI,IAAI,GAAG,KAAK,CAAC;IACjB,IAAI,KAAK,GAAG,KAAK,CAAC;IAClB,IAAI,QAA4B,CAAC;IACjC,IAAI,SAA6B,CAAC;IAClC,IAAI,iBAA8C,CAAC;IACnD,IAAI,SAAgC,CAAC;IACrC,IAAI,OAAO,GAAG,KAAK,CAAC;IACpB,IAAI,WAAW,GAAG,KAAK,CAAC;IACxB,IAAI,mBAAmB,GAAG,KAAK,CAAC;IAEhC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACrC,MAAM,GAAG,GAAG,IAAI,CAAC,CAAC,CAAE,CAAC;QAErB,IAAI,GAAG,KAAK,QAAQ,IAAI,GAAG,KAAK,IAAI,EAAE,CAAC;YACrC,IAAI,GAAG,IAAI,CAAC;YACZ,SAAS;QACX,CAAC;QAED,IAAI,GAAG,KAAK,SAAS,EAAE,CAAC;YACtB,KAAK,GAAG,IAAI,CAAC;YACb,SAAS;QACX,CAAC;QAED,IAAI,GAAG,KAAK,QAAQ,IAAI,GAAG,KAAK,IAAI,IAAI,GAAG,CAAC,UAAU,CAAC,SAAS,CAAC,IAAI,GAAG,CAAC,UAAU,CAAC,KAAK,CAAC,EAAE,CAAC;YAC3F,MAAM,EAAE,KAAK,EAAE,SAAS,EAAE,GAAG,UAAU,CAAC,GAAG,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;YACtD,CAAC,GAAG,SAAS,CAAC;YACd,QAAQ,GAAG,KAAK,CAAC;YACjB,SAAS;QACX,CAAC;QAED,IAAI,GAAG,KAAK,0BAA0B,EAAE,CAAC;YACvC,mBAAmB,GAAG,IAAI,CAAC;YAC3B,SAAS;QACX,CAAC;QAED,IAAI,GAAG,KAAK,WAAW,EAAE,CAAC;YACxB,OAAO,GAAG,IAAI,CAAC;YACf,SAAS;QACX,CAAC;QAED,IAAI,GAAG,KAAK,eAAe,EAAE,CAAC;YAC5B,WAAW,GAAG,IAAI,CAAC;YACnB,SAAS;QACX,CAAC;QAED,IACE,GAAG,KAAK,WAAW;YACnB,GAAG,KAAK,IAAI;YACZ,GAAG,CAAC,UAAU,CAAC,YAAY,CAAC;YAC5B,GAAG,CAAC,UAAU,CAAC,KAAK,CAAC,EACrB,CAAC;YACD,MAAM,EAAE,KAAK,EAAE,SAAS,EAAE,GAAG,UAAU,CAAC,GAAG,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;YACtD,CAAC,GAAG,SAAS,CAAC;YAEd,MAAM,MAAM,GAAG,kBAAkB,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;YACnD,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,CAAC;gBACtB,MAAM,UAAU,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;gBACtC,MAAM,YAAY,GAAG,UAAU,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,UAAU,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;gBAC5E,MAAM,SAAS,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBACvD,MAAM,IAAI,QAAQ,CAAC,oBAAoB,YAAY,0BAA0B,SAAS,EAAE,CAAC,CAAC;YAC5F,CAAC;YACD,MAAM,UAAU,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;YACtC,IAAI,UAAU,KAAK,CAAC,CAAC,EAAE,CAAC;gBACtB,MAAM,cAAc,GAAG,KAAK;qBACzB,KAAK,CAAC,UAAU,GAAG,CAAC,CAAC;qBACrB,IAAI,EAAE;qBACN,WAAW,EAAE,CAAC;gBACjB,IAAI,CAAC,cAAc,EAAE,CAAC;oBACpB,MAAM,IAAI,QAAQ,CAAC,gDAAgD,CAAC,CAAC;gBACvE,CAAC;gBACD,IAAI,MAAM,CAAC,SAAS,KAAK,SAAS,EAAE,CAAC;oBACnC,MAAM,OAAO,GAAG,CAAC,GAAG,gBAAgB,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;oBACjD,MAAM,IAAI,QAAQ,CAChB,4BAA4B,cAAc,sBAAsB,OAAO,EAAE,CAC1E,CAAC;gBACJ,CAAC;YACH,CAAC;YACD,SAAS,GAAG,MAAM,CAAC,SAAS,CAAC;YAC7B,IAAI,MAAM,CAAC,SAAS,KAAK,SAAS,EAAE,CAAC;gBACnC,iBAAiB,GAAG,MAAM,CAAC,SAAS,CAAC;YACvC,CAAC;YAED,SAAS;QACX,CAAC;QAED,IAAI,GAAG,KAAK,QAAQ,IAAI,GAAG,KAAK,IAAI,IAAI,GAAG,CAAC,UAAU,CAAC,SAAS,CAAC,IAAI,GAAG,CAAC,UAAU,CAAC,KAAK,CAAC,EAAE,CAAC;YAC3F,MAAM,EAAE,KAAK,EAAE,SAAS,EAAE,GAAG,UAAU,CAAC,GAAG,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;YACtD,CAAC,GAAG,SAAS,CAAC;YACd,SAAS,GAAG,cAAc,CAAC,KAAK,CAAC,CAAC;YAClC,SAAS;QACX,CAAC;QAED,IAAI,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;YACxB,MAAM,IAAI,QAAQ,CAAC,mBAAmB,GAAG,EAAE,CAAC,CAAC;QAC/C,CAAC;QACD,MAAM,IAAI,QAAQ,CAAC,wBAAwB,GAAG,EAAE,CAAC,CAAC;IACpD,CAAC;IAED,MAAM,OAAO,GAAG;QACd,IAAI;QACJ,KAAK;QACL,QAAQ;QACR,SAAS;QACT,iBAAiB;QACjB,SAAS;QACT,OAAO;QACP,WAAW;QACX,mBAAmB;KACpB,CAAC;IACF,OAAO,gBAAgB,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;AACzC,CAAC;AAED,MAAM,UAAU,SAAS,CAAC,QAAmB;IAC3C,MAAM,WAAW,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACzD,MAAM,aAAa,GAAG,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAClD,MAAM,QAAQ,GAAG,eAAe,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAEpD,OAAO,CAAC,GAAG,CACT;QACE,qBAAqB;QACrB,EAAE;QACF,QAAQ;QACR,iBAAiB;QACjB,qBAAqB;QACrB,yBAAyB;QACzB,uBAAuB;QACvB,yBAAyB;QACzB,EAAE;QACF,UAAU;QACV,0DAA0D;QAC1D,uGAAuG;QACvG,yDAAyD;QACzD,oEAAoE,WAAW,GAAG;QAClF,+EAA+E,aAAa,GAAG;QAC/F,uGAAuG;QACvG,yEAAyE,QAAQ,GAAG;QACpF,yHAAyH;QACzH,2FAA2F;QAC3F,6FAA6F;QAC7F,qFAAqF;QACrF,EAAE;QACF,cAAc;QACd,uEAAuE;QACvE,gFAAgF;QAChF,uDAAuD;QACvD,qEAAqE;QACrE,EAAE;QACF,WAAW;QACX,mCAAmC;QACnC,yBAAyB;QACzB,uDAAuD;QACvD,2CAA2C;QAC3C,qDAAqD;QACrD,EAAE;QACF,QAAQ;QACR,gFAAgF;QAChF,qFAAqF;QACrF,uEAAuE;QACvE,4DAA4D;QAC5D,+DAA+D;QAC/D,8CAA8C;QAC9C,8FAA8F;QAC9F,4FAA4F;QAC5F,gEAAgE;QAChE,qDAAqD;KACtD,CAAC,IAAI,CAAC,IAAI,CAAC,CACb,CAAC;AACJ,CAAC"}
|
package/dist/core/index.js
CHANGED
|
@@ -4,9 +4,12 @@ export { buildVirtualBundle, createDefaultConfigDeps, loadAllContent, loadConfig
|
|
|
4
4
|
export { printDebugInfo } from "./debug.js";
|
|
5
5
|
export { CORE_EVENT_VERSION, serializeCoreEvent, wrapCoreEvent } from "./events/index.js";
|
|
6
6
|
export { InstallCliError, printInstallHelp, runInstallCommand } from "./install/cli.js";
|
|
7
|
-
export
|
|
7
|
+
export * from "./modes/index.js";
|
|
8
8
|
export { personas } from "./personas.js";
|
|
9
|
+
export { ChatRuntime } from "./runtime/chat_runtime.js";
|
|
10
|
+
export { ConversationTurnRuntime } from "./runtime/conversation_turn_runtime.js";
|
|
9
11
|
export { createDefaultCoreDeps } from "./runtime/deps.js";
|
|
12
|
+
export { composeSessionPrompts } from "./runtime/session_prompt_composer.js";
|
|
10
13
|
export { createCheckpoint, parseCheckpoint } from "./session/checkpoint.js";
|
|
11
14
|
export { createBashToolDefinition } from "./tools/bash.js";
|
|
12
15
|
export { ToolCatalog } from "./tools/catalog.js";
|
package/dist/core/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/core/index.ts"],"names":[],"mappings":"AAOA,OAAO,EACL,WAAW,EACX,WAAW,EACX,wBAAwB,EACxB,oBAAoB,EACpB,WAAW,EACX,cAAc,EACd,eAAe,EACf,gBAAgB,EAChB,yBAAyB,GAC1B,MAAM,iBAAiB,CAAC;AAEzB,OAAO,EAAE,QAAQ,EAAE,YAAY,EAAE,kBAAkB,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AAWjF,OAAO,EACL,kBAAkB,EAClB,uBAAuB,EACvB,cAAc,EACd,UAAU,EACV,iBAAiB,EACjB,mBAAmB,EACnB,sBAAsB,EACtB,+BAA+B,GAChC,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAO5C,OAAO,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAC1F,OAAO,EAAE,eAAe,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/core/index.ts"],"names":[],"mappings":"AAOA,OAAO,EACL,WAAW,EACX,WAAW,EACX,wBAAwB,EACxB,oBAAoB,EACpB,WAAW,EACX,cAAc,EACd,eAAe,EACf,gBAAgB,EAChB,yBAAyB,GAC1B,MAAM,iBAAiB,CAAC;AAEzB,OAAO,EAAE,QAAQ,EAAE,YAAY,EAAE,kBAAkB,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AAWjF,OAAO,EACL,kBAAkB,EAClB,uBAAuB,EACvB,cAAc,EACd,UAAU,EACV,iBAAiB,EACjB,mBAAmB,EACnB,sBAAsB,EACtB,+BAA+B,GAChC,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAO5C,OAAO,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAC1F,OAAO,EAAE,eAAe,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AACxF,cAAc,kBAAkB,CAAC;AACjC,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAQzC,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAExD,OAAO,EAAE,uBAAuB,EAAE,MAAM,wCAAwC,CAAC;AAEjF,OAAO,EAAE,qBAAqB,EAAE,MAAM,mBAAmB,CAAC;AAK1D,OAAO,EAAE,qBAAqB,EAAE,MAAM,sCAAsC,CAAC;AAE7E,OAAO,EAAE,gBAAgB,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAC5E,OAAO,EAAE,wBAAwB,EAAE,MAAM,iBAAiB,CAAC;AAC3D,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,EAAE,wBAAwB,EAAE,MAAM,iBAAiB,CAAC;AAC3D,OAAO,EAAE,8BAA8B,EAAE,MAAM,wBAAwB,CAAC;AACxE,OAAO,EACL,+BAA+B,EAC/B,iCAAiC,GAClC,MAAM,8BAA8B,CAAC;AACtC,OAAO,EAAE,wBAAwB,EAAE,MAAM,iBAAiB,CAAC;AAC3D,OAAO,EAAE,wBAAwB,EAAE,MAAM,iBAAiB,CAAC;AAC3D,OAAO,EAAE,wBAAwB,EAAE,MAAM,iBAAiB,CAAC;AAC3D,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACnD,OAAO,EAAE,oCAAoC,EAAE,MAAM,gCAAgC,CAAC;AACtF,OAAO,EAAE,8BAA8B,EAAE,MAAM,wBAAwB,CAAC;AACxE,OAAO,EAAE,kCAAkC,EAAE,MAAM,4BAA4B,CAAC;AAChF,OAAO,EAAE,6BAA6B,EAAE,MAAM,uBAAuB,CAAC;AACtE,OAAO,EAAE,gCAAgC,EAAE,MAAM,2BAA2B,CAAC;AAC7E,OAAO,EAAE,yBAAyB,EAAE,MAAM,kBAAkB,CAAC;AAE7D,OAAO,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAC9C,OAAO,EAAE,cAAc,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC"}
|
package/dist/core/modes/index.js
CHANGED
|
@@ -1,2 +1,4 @@
|
|
|
1
1
|
export { RpcAdapter } from "./rpc_adapter.js";
|
|
2
|
+
export { createRpcError, createRpcErrorResponse, createRpcEventMessage, createRpcReadyMessage, createRpcSuccessResponse, isRpcMethod, parseRpcRequestLine, RPC_ERROR_CODES, RPC_METHODS, RPC_PROTOCOL_VERSION, serializeRpcMessage, validateRpcParams, } from "./rpc_protocol.js";
|
|
3
|
+
export { RpcServer, runRpcServer } from "./rpc_server.js";
|
|
2
4
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/core/modes/index.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/core/modes/index.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AA+B9C,OAAO,EACL,cAAc,EACd,sBAAsB,EACtB,qBAAqB,EACrB,qBAAqB,EACrB,wBAAwB,EACxB,WAAW,EACX,mBAAmB,EACnB,eAAe,EACf,WAAW,EACX,oBAAoB,EACpB,mBAAmB,EACnB,iBAAiB,GAClB,MAAM,mBAAmB,CAAC;AAE3B,OAAO,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC"}
|
|
@@ -0,0 +1,240 @@
|
|
|
1
|
+
import { CORE_EVENT_VERSION, } from "../events/types.js";
|
|
2
|
+
export const RPC_PROTOCOL_VERSION = 1;
|
|
3
|
+
export const RPC_METHODS = [
|
|
4
|
+
"initialize",
|
|
5
|
+
"session.submit",
|
|
6
|
+
"session.interrupt",
|
|
7
|
+
"session.snapshot",
|
|
8
|
+
"session.reset",
|
|
9
|
+
"session.shutdown",
|
|
10
|
+
];
|
|
11
|
+
export const RPC_ERROR_CODES = {
|
|
12
|
+
parseError: "parse_error",
|
|
13
|
+
invalidRequest: "invalid_request",
|
|
14
|
+
methodNotFound: "method_not_found",
|
|
15
|
+
invalidParams: "invalid_params",
|
|
16
|
+
busy: "busy",
|
|
17
|
+
internalError: "internal_error",
|
|
18
|
+
};
|
|
19
|
+
const EMPTY_OBJECT = Object.freeze({});
|
|
20
|
+
export function isRpcMethod(value) {
|
|
21
|
+
return typeof value === "string" && RPC_METHODS.includes(value);
|
|
22
|
+
}
|
|
23
|
+
export function createRpcError(code, message, data) {
|
|
24
|
+
return data === undefined ? { code, message } : { code, message, data };
|
|
25
|
+
}
|
|
26
|
+
export function createRpcSuccessResponse(id, result) {
|
|
27
|
+
return {
|
|
28
|
+
version: RPC_PROTOCOL_VERSION,
|
|
29
|
+
type: "response",
|
|
30
|
+
id,
|
|
31
|
+
ok: true,
|
|
32
|
+
result,
|
|
33
|
+
};
|
|
34
|
+
}
|
|
35
|
+
export function createRpcErrorResponse(id, code, message, data) {
|
|
36
|
+
return {
|
|
37
|
+
version: RPC_PROTOCOL_VERSION,
|
|
38
|
+
type: "response",
|
|
39
|
+
id,
|
|
40
|
+
ok: false,
|
|
41
|
+
error: createRpcError(code, message, data),
|
|
42
|
+
};
|
|
43
|
+
}
|
|
44
|
+
export function createRpcEventMessage(event, options = {}) {
|
|
45
|
+
return {
|
|
46
|
+
version: RPC_PROTOCOL_VERSION,
|
|
47
|
+
type: "event",
|
|
48
|
+
event,
|
|
49
|
+
...(options.requestId !== undefined ? { requestId: options.requestId } : {}),
|
|
50
|
+
};
|
|
51
|
+
}
|
|
52
|
+
export function createRpcReadyMessage(args) {
|
|
53
|
+
return {
|
|
54
|
+
version: RPC_PROTOCOL_VERSION,
|
|
55
|
+
type: "ready",
|
|
56
|
+
sessionId: args.sessionId,
|
|
57
|
+
methods: [...RPC_METHODS],
|
|
58
|
+
coreEventVersion: CORE_EVENT_VERSION,
|
|
59
|
+
};
|
|
60
|
+
}
|
|
61
|
+
export function serializeRpcMessage(message) {
|
|
62
|
+
return JSON.stringify(message);
|
|
63
|
+
}
|
|
64
|
+
export function parseRpcRequestLine(line) {
|
|
65
|
+
const trimmed = line.trim();
|
|
66
|
+
if (!trimmed) {
|
|
67
|
+
return {
|
|
68
|
+
ok: false,
|
|
69
|
+
id: null,
|
|
70
|
+
error: createRpcError(RPC_ERROR_CODES.invalidRequest, "request line cannot be empty"),
|
|
71
|
+
};
|
|
72
|
+
}
|
|
73
|
+
let parsed;
|
|
74
|
+
try {
|
|
75
|
+
parsed = JSON.parse(trimmed);
|
|
76
|
+
}
|
|
77
|
+
catch (error) {
|
|
78
|
+
return {
|
|
79
|
+
ok: false,
|
|
80
|
+
id: null,
|
|
81
|
+
error: createRpcError(RPC_ERROR_CODES.parseError, "failed to parse JSON request line", {
|
|
82
|
+
cause: error instanceof Error ? error.message : String(error),
|
|
83
|
+
}),
|
|
84
|
+
};
|
|
85
|
+
}
|
|
86
|
+
if (!isRecord(parsed)) {
|
|
87
|
+
return {
|
|
88
|
+
ok: false,
|
|
89
|
+
id: null,
|
|
90
|
+
error: createRpcError(RPC_ERROR_CODES.invalidRequest, "request must be a JSON object"),
|
|
91
|
+
};
|
|
92
|
+
}
|
|
93
|
+
const maybeId = parseRequestId(parsed.id);
|
|
94
|
+
if (!maybeId.ok) {
|
|
95
|
+
return {
|
|
96
|
+
ok: false,
|
|
97
|
+
id: null,
|
|
98
|
+
error: createRpcError(RPC_ERROR_CODES.invalidRequest, "request id must be a string or number"),
|
|
99
|
+
};
|
|
100
|
+
}
|
|
101
|
+
const id = maybeId.id;
|
|
102
|
+
if (parsed.version !== RPC_PROTOCOL_VERSION) {
|
|
103
|
+
return {
|
|
104
|
+
ok: false,
|
|
105
|
+
id,
|
|
106
|
+
error: createRpcError(RPC_ERROR_CODES.invalidRequest, `unsupported rpc version: ${String(parsed.version)}`),
|
|
107
|
+
};
|
|
108
|
+
}
|
|
109
|
+
if (parsed.type !== "request") {
|
|
110
|
+
return {
|
|
111
|
+
ok: false,
|
|
112
|
+
id,
|
|
113
|
+
error: createRpcError(RPC_ERROR_CODES.invalidRequest, 'request.type must be "request"'),
|
|
114
|
+
};
|
|
115
|
+
}
|
|
116
|
+
const method = parsed.method;
|
|
117
|
+
if (typeof method !== "string") {
|
|
118
|
+
return {
|
|
119
|
+
ok: false,
|
|
120
|
+
id,
|
|
121
|
+
error: createRpcError(RPC_ERROR_CODES.invalidRequest, "request.method must be a string"),
|
|
122
|
+
};
|
|
123
|
+
}
|
|
124
|
+
if (!isRpcMethod(method)) {
|
|
125
|
+
return {
|
|
126
|
+
ok: false,
|
|
127
|
+
id,
|
|
128
|
+
error: createRpcError(RPC_ERROR_CODES.methodNotFound, `unsupported method: ${method}`),
|
|
129
|
+
};
|
|
130
|
+
}
|
|
131
|
+
const params = validateRpcParams(method, parsed.params);
|
|
132
|
+
if (!params.ok) {
|
|
133
|
+
return {
|
|
134
|
+
ok: false,
|
|
135
|
+
id,
|
|
136
|
+
error: params.error,
|
|
137
|
+
};
|
|
138
|
+
}
|
|
139
|
+
return {
|
|
140
|
+
ok: true,
|
|
141
|
+
request: {
|
|
142
|
+
version: RPC_PROTOCOL_VERSION,
|
|
143
|
+
type: "request",
|
|
144
|
+
id,
|
|
145
|
+
method,
|
|
146
|
+
params: params.value,
|
|
147
|
+
},
|
|
148
|
+
};
|
|
149
|
+
}
|
|
150
|
+
export function validateRpcParams(method, params) {
|
|
151
|
+
switch (method) {
|
|
152
|
+
case "initialize":
|
|
153
|
+
return validateInitializeParams(params);
|
|
154
|
+
case "session.submit":
|
|
155
|
+
return validateSubmitParams(params);
|
|
156
|
+
case "session.interrupt":
|
|
157
|
+
case "session.snapshot":
|
|
158
|
+
case "session.reset":
|
|
159
|
+
case "session.shutdown":
|
|
160
|
+
return validateNoParams(method, params);
|
|
161
|
+
}
|
|
162
|
+
}
|
|
163
|
+
function validateInitializeParams(params) {
|
|
164
|
+
if (params === undefined) {
|
|
165
|
+
return { ok: true, value: EMPTY_OBJECT };
|
|
166
|
+
}
|
|
167
|
+
if (!isRecord(params) || !hasOnlyKeys(params, ["client"])) {
|
|
168
|
+
return invalidParams("initialize params must be an object with optional client metadata");
|
|
169
|
+
}
|
|
170
|
+
const client = params.client;
|
|
171
|
+
if (client === undefined) {
|
|
172
|
+
return { ok: true, value: EMPTY_OBJECT };
|
|
173
|
+
}
|
|
174
|
+
if (!isRecord(client) || !hasOnlyKeys(client, ["name", "version"])) {
|
|
175
|
+
return invalidParams("initialize.client must be an object with optional name/version strings");
|
|
176
|
+
}
|
|
177
|
+
if ((client.name !== undefined && typeof client.name !== "string") ||
|
|
178
|
+
(client.version !== undefined && typeof client.version !== "string")) {
|
|
179
|
+
return invalidParams("initialize.client.name and initialize.client.version must be strings");
|
|
180
|
+
}
|
|
181
|
+
return {
|
|
182
|
+
ok: true,
|
|
183
|
+
value: {
|
|
184
|
+
client: {
|
|
185
|
+
...(client.name !== undefined ? { name: client.name } : {}),
|
|
186
|
+
...(client.version !== undefined ? { version: client.version } : {}),
|
|
187
|
+
},
|
|
188
|
+
},
|
|
189
|
+
};
|
|
190
|
+
}
|
|
191
|
+
function validateSubmitParams(params) {
|
|
192
|
+
if (!isRecord(params)) {
|
|
193
|
+
return invalidParams("session.submit params must be an object");
|
|
194
|
+
}
|
|
195
|
+
if (!hasOnlyKeys(params, ["text", "historyEntryId"])) {
|
|
196
|
+
return invalidParams("session.submit params only support text and optional historyEntryId");
|
|
197
|
+
}
|
|
198
|
+
if (typeof params.text !== "string") {
|
|
199
|
+
return invalidParams("session.submit params.text must be a string");
|
|
200
|
+
}
|
|
201
|
+
if (params.historyEntryId !== undefined && typeof params.historyEntryId !== "string") {
|
|
202
|
+
return invalidParams("session.submit params.historyEntryId must be a string when provided");
|
|
203
|
+
}
|
|
204
|
+
return {
|
|
205
|
+
ok: true,
|
|
206
|
+
value: {
|
|
207
|
+
text: params.text,
|
|
208
|
+
...(params.historyEntryId !== undefined ? { historyEntryId: params.historyEntryId } : {}),
|
|
209
|
+
},
|
|
210
|
+
};
|
|
211
|
+
}
|
|
212
|
+
function validateNoParams(method, params) {
|
|
213
|
+
if (params === undefined) {
|
|
214
|
+
return { ok: true, value: EMPTY_OBJECT };
|
|
215
|
+
}
|
|
216
|
+
if (!isRecord(params) || Object.keys(params).length !== 0) {
|
|
217
|
+
return invalidParams(`${method} does not accept params`);
|
|
218
|
+
}
|
|
219
|
+
return { ok: true, value: EMPTY_OBJECT };
|
|
220
|
+
}
|
|
221
|
+
function parseRequestId(value) {
|
|
222
|
+
if (typeof value === "string" || typeof value === "number") {
|
|
223
|
+
return { ok: true, id: value };
|
|
224
|
+
}
|
|
225
|
+
return { ok: false };
|
|
226
|
+
}
|
|
227
|
+
function invalidParams(message) {
|
|
228
|
+
return {
|
|
229
|
+
ok: false,
|
|
230
|
+
error: createRpcError(RPC_ERROR_CODES.invalidParams, message),
|
|
231
|
+
};
|
|
232
|
+
}
|
|
233
|
+
function isRecord(value) {
|
|
234
|
+
return typeof value === "object" && value !== null && !Array.isArray(value);
|
|
235
|
+
}
|
|
236
|
+
function hasOnlyKeys(value, keys) {
|
|
237
|
+
const allowed = new Set(keys);
|
|
238
|
+
return Object.keys(value).every((key) => allowed.has(key));
|
|
239
|
+
}
|
|
240
|
+
//# sourceMappingURL=rpc_protocol.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"rpc_protocol.js","sourceRoot":"","sources":["../../../src/core/modes/rpc_protocol.ts"],"names":[],"mappings":"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"}
|