bajaclaw 0.11.1 → 0.11.3
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 +1 -1
- package/dist/claude.js +95 -26
- package/dist/claude.js.map +1 -1
- package/dist/commands/chat.js +121 -117
- package/dist/commands/chat.js.map +1 -1
- package/dist/config.js +5 -4
- package/dist/config.js.map +1 -1
- package/dist/model-picker.js +7 -4
- package/dist/model-picker.js.map +1 -1
- package/dist/types.d.ts +1 -0
- package/package.json +1 -1
- package/skills/setup-discord/SKILL.md +101 -48
- package/skills/setup-telegram/SKILL.md +109 -48
package/README.md
CHANGED
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
██╔══██╗██╔══██║██ ██║██╔══██║ ██║ ██║ ██╔══██║██║███╗██║
|
|
8
8
|
██████╔╝██║ ██║╚█████╔╝██║ ██║ ╚██████╗███████╗██║ ██║╚███╔███╔╝
|
|
9
9
|
╚═════╝ ╚═╝ ╚═╝ ╚════╝ ╚═╝ ╚═╝ ╚═════╝╚══════╝╚═╝ ╚═╝ ╚══╝╚══╝
|
|
10
|
-
autonomous agents on your terms · MIT · v0.11.
|
|
10
|
+
autonomous agents on your terms · MIT · v0.11.3
|
|
11
11
|
```
|
|
12
12
|
|
|
13
13
|
**BajaClaw is a long-running agent runtime for the `claude` CLI.** It turns
|
package/dist/claude.js
CHANGED
|
@@ -64,6 +64,13 @@ export function buildCommand(prompt, opts) {
|
|
|
64
64
|
args.push("--mcp-config", opts.mcpConfig);
|
|
65
65
|
if (opts.systemPrompt)
|
|
66
66
|
args.push("--system-prompt", opts.systemPrompt);
|
|
67
|
+
// Skip interactive permission prompts. BajaClaw spawns claude with
|
|
68
|
+
// stdin closed, so the interactive prompt would hang / auto-deny.
|
|
69
|
+
// The agent is trusted within the user's account; if they want
|
|
70
|
+
// per-tool confirmations they should use `claude` directly.
|
|
71
|
+
if (opts.skipPermissions !== false) {
|
|
72
|
+
args.push("--dangerously-skip-permissions");
|
|
73
|
+
}
|
|
67
74
|
// JSON output always included when the flag is supported. runOnce checks support.
|
|
68
75
|
return args;
|
|
69
76
|
}
|
|
@@ -136,36 +143,98 @@ function parseResult(stdout, stderr, exitCode, start, jsonMode, command) {
|
|
|
136
143
|
durationMs: Date.now() - start,
|
|
137
144
|
command,
|
|
138
145
|
};
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
if (
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
146
|
+
// Try JSON parse regardless of exit code — claude sometimes emits
|
|
147
|
+
// useful error detail in JSON even when exiting non-zero.
|
|
148
|
+
if (jsonMode) {
|
|
149
|
+
try {
|
|
150
|
+
const parsed = JSON.parse(stdout);
|
|
151
|
+
if (Array.isArray(parsed)) {
|
|
152
|
+
base.events = parsed;
|
|
153
|
+
}
|
|
154
|
+
else if (parsed && typeof parsed === "object") {
|
|
155
|
+
const obj = parsed;
|
|
156
|
+
if (Array.isArray(obj.messages))
|
|
157
|
+
base.events = obj.messages;
|
|
158
|
+
if (typeof obj.result === "string")
|
|
159
|
+
base.text = obj.result;
|
|
160
|
+
if (typeof obj.total_cost_usd === "number")
|
|
161
|
+
base.costUsd = obj.total_cost_usd;
|
|
162
|
+
else if (typeof obj.cost_usd === "number")
|
|
163
|
+
base.costUsd = obj.cost_usd;
|
|
164
|
+
const usage = obj.usage;
|
|
165
|
+
if (usage) {
|
|
166
|
+
// Sum all input-side token classes so the displayed "in" count
|
|
167
|
+
// reflects the true scale the model processed. Cache reads are
|
|
168
|
+
// cheap but still count toward context.
|
|
169
|
+
base.inputTokens =
|
|
170
|
+
(usage.input_tokens ?? 0) +
|
|
171
|
+
(usage.cache_creation_input_tokens ?? 0) +
|
|
172
|
+
(usage.cache_read_input_tokens ?? 0);
|
|
173
|
+
base.outputTokens = usage.output_tokens;
|
|
174
|
+
}
|
|
175
|
+
if (typeof obj.num_turns === "number")
|
|
176
|
+
base.turns = obj.num_turns;
|
|
177
|
+
// Error extraction. Claude's result wrapper sets is_error:true
|
|
178
|
+
// for a handful of terminal conditions (max_turns, execution
|
|
179
|
+
// error, rate limit mid-run). Normalize each subtype into a
|
|
180
|
+
// clean, actionable message. Also force ok=false and clear
|
|
181
|
+
// base.text so the raw JSON never bleeds into the agent's
|
|
182
|
+
// "response".
|
|
183
|
+
if (typeof obj.error === "string") {
|
|
184
|
+
base.error = obj.error;
|
|
185
|
+
base.ok = false;
|
|
186
|
+
base.text = "";
|
|
187
|
+
}
|
|
188
|
+
else if (obj.type === "error" && typeof obj.message === "string") {
|
|
189
|
+
base.error = obj.message;
|
|
190
|
+
base.ok = false;
|
|
191
|
+
base.text = "";
|
|
192
|
+
}
|
|
193
|
+
else if (obj.is_error === true) {
|
|
194
|
+
const subtype = typeof obj.subtype === "string" ? obj.subtype : "";
|
|
195
|
+
const numTurns = typeof obj.num_turns === "number" ? obj.num_turns : undefined;
|
|
196
|
+
if (subtype === "error_max_turns") {
|
|
197
|
+
// Sentinel format. chat.ts pretty-prints; other callers
|
|
198
|
+
// see a short machine-parseable prefix.
|
|
199
|
+
base.error = `max_turns_hit:${numTurns ?? "?"}`;
|
|
200
|
+
}
|
|
201
|
+
else if (subtype === "error_during_execution") {
|
|
202
|
+
const detail = typeof obj.result === "string" ? obj.result : "";
|
|
203
|
+
base.error = `backend error during execution${detail ? `: ${detail}` : ""}`;
|
|
204
|
+
}
|
|
205
|
+
else if (typeof obj.result === "string") {
|
|
206
|
+
base.error = obj.result;
|
|
207
|
+
}
|
|
208
|
+
else if (subtype) {
|
|
209
|
+
base.error = `backend error (${subtype})`;
|
|
210
|
+
}
|
|
211
|
+
else {
|
|
212
|
+
base.error = "backend reported an error with no message";
|
|
213
|
+
}
|
|
214
|
+
base.ok = false;
|
|
215
|
+
base.text = "";
|
|
216
|
+
}
|
|
161
217
|
}
|
|
162
|
-
|
|
163
|
-
|
|
218
|
+
}
|
|
219
|
+
catch {
|
|
220
|
+
// Non-JSON stdout. Could be a streaming fragment or a warning.
|
|
221
|
+
// Leave text as raw stdout.
|
|
164
222
|
}
|
|
165
223
|
}
|
|
166
|
-
|
|
167
|
-
//
|
|
224
|
+
if (exitCode !== 0 && !base.error) {
|
|
225
|
+
// Prefer stderr, then stdout first-line fallback. Never echo the
|
|
226
|
+
// entire stdout into the error field — it may be a multi-KB JSON.
|
|
227
|
+
const trimmedStderr = stderr.trim();
|
|
228
|
+
if (trimmedStderr)
|
|
229
|
+
base.error = trimmedStderr.slice(0, 400);
|
|
230
|
+
else if (stdout.trim())
|
|
231
|
+
base.error = stdout.trim().split("\n")[0].slice(0, 400);
|
|
232
|
+
else
|
|
233
|
+
base.error = `backend exited ${exitCode} with no output`;
|
|
168
234
|
}
|
|
235
|
+
// If we determined an error from JSON but exit was 0, still mark not-ok.
|
|
236
|
+
if (base.error && base.ok)
|
|
237
|
+
base.ok = false;
|
|
169
238
|
return base;
|
|
170
239
|
}
|
|
171
240
|
export function resetCache() {
|
package/dist/claude.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"claude.js","sourceRoot":"","sources":["../src/claude.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAsB,MAAM,OAAO,CAAC;AAClD,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAGnC,MAAM,eAAe,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC;AAEvC,IAAI,YAAuC,CAAC;AAC5C,IAAI,kBAAuC,CAAC;AAE5C,MAAM,CAAC,KAAK,UAAU,gBAAgB;IACpC,IAAI,YAAY,KAAK,SAAS;QAAE,OAAO,YAAY,CAAC;IACpD,MAAM,GAAG,GAAG,QAAQ,EAAE,KAAK,OAAO,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,OAAO,CAAC;IAC3D,IAAI,CAAC;QACH,MAAM,CAAC,GAAG,MAAM,KAAK,CAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,CAAC;QAC1D,IAAI,CAAC,CAAC,QAAQ,KAAK,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,IAAI,EAAE,EAAE,CAAC;YACxC,YAAY,GAAG,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAE,CAAC,IAAI,EAAE,CAAC;YAClD,OAAO,YAAY,CAAC;QACtB,CAAC;IACH,CAAC;IAAC,MAAM,CAAC,CAAC,kBAAkB,CAAC,CAAC;IAC9B,YAAY,GAAG,IAAI,CAAC;IACpB,OAAO,IAAI,CAAC;AACd,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,aAAa;IACjC,MAAM,GAAG,GAAG,MAAM,gBAAgB,EAAE,CAAC;IACrC,IAAI,CAAC,GAAG;QAAE,OAAO,IAAI,CAAC;IACtB,IAAI,CAAC;QACH,MAAM,CAAC,GAAG,MAAM,KAAK,CAAC,GAAG,EAAE,CAAC,WAAW,CAAC,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC;QAC5E,OAAO,CAAC,CAAC,QAAQ,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;IACnD,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,kBAAkB;IACtC,IAAI,kBAAkB,KAAK,SAAS;QAAE,OAAO,kBAAkB,CAAC;IAChE,MAAM,GAAG,GAAG,MAAM,gBAAgB,EAAE,CAAC;IACrC,IAAI,CAAC,GAAG,EAAE,CAAC;QAAC,kBAAkB,GAAG,KAAK,CAAC;QAAC,OAAO,KAAK,CAAC;IAAC,CAAC;IACvD,IAAI,CAAC;QACH,MAAM,CAAC,GAAG,MAAM,KAAK,CAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC;QACzE,MAAM,IAAI,GAAG,GAAG,CAAC,CAAC,MAAM,KAAK,CAAC,CAAC,MAAM,EAAE,CAAC;QACxC,kBAAkB,GAAG,kBAAkB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACrD,CAAC;IAAC,MAAM,CAAC;QACP,kBAAkB,GAAG,KAAK,CAAC;IAC7B,CAAC;IACD,OAAO,kBAAkB,CAAC;AAC5B,CAAC;AAED,MAAM,UAAU,YAAY,CAAC,MAAc,EAAE,IAAmB;IAC9D,MAAM,IAAI,GAAa,EAAE,CAAC;IAC1B,IAAI,IAAI,CAAC,SAAS,KAAK,KAAK;QAAE,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;IACtD,IAAI,IAAI,CAAC,KAAK;QAAE,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;IACjD,IAAI,IAAI,CAAC,QAAQ,KAAK,SAAS;QAAE,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC;IACjF,IAAI,IAAI,CAAC,YAAY,EAAE,MAAM;QAAE,IAAI,CAAC,IAAI,CAAC,gBAAgB,EAAE,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;IACxF,IAAI,IAAI,CAAC,eAAe,EAAE,MAAM;QAAE,IAAI,CAAC,IAAI,CAAC,mBAAmB,EAAE,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;IACjG,IAAI,IAAI,CAAC,SAAS;QAAE,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;IAC9D,IAAI,IAAI,CAAC,YAAY;QAAE,IAAI,CAAC,IAAI,CAAC,iBAAiB,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC;IACvE,kFAAkF;IAClF,OAAO,IAAI,CAAC;AACd,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,OAAO,CAAC,MAAc,EAAE,OAAsB,EAAE;IACpE,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACzB,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,gBAAgB,KAAK,GAAG,IAAK,IAA6B,CAAC,MAAM,KAAK,IAAI,CAAC;IAEtG,IAAI,GAAG,GAAG,YAAY,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;IACrC,MAAM,aAAa,GAAG,MAAM,kBAAkB,EAAE,CAAC;IACjD,IAAI,aAAa;QAAE,GAAG,GAAG,CAAC,GAAG,GAAG,EAAE,iBAAiB,EAAE,MAAM,CAAC,CAAC;IAE7D,IAAI,MAAM,EAAE,CAAC;QACX,OAAO;YACL,EAAE,EAAE,IAAI;YACR,IAAI,EAAE,mBAAmB;YACzB,MAAM,EAAE,EAAE;YACV,MAAM,EAAE,IAAI;YACZ,UAAU,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,KAAK;YAC9B,OAAO,EAAE,CAAC,QAAQ,EAAE,GAAG,GAAG,CAAC;SAC5B,CAAC;IACJ,CAAC;IAED,MAAM,GAAG,GAAG,MAAM,gBAAgB,EAAE,CAAC;IACrC,IAAI,CAAC,GAAG,EAAE,CAAC;QACT,OAAO;YACL,EAAE,EAAE,KAAK;YACT,IAAI,EAAE,EAAE;YACR,MAAM,EAAE,EAAE;YACV,KAAK,EAAE,uDAAuD;YAC9D,UAAU,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,KAAK;SAC/B,CAAC;IACJ,CAAC;IAED,IAAI,CAAC;QACH,MAAM,CAAC,GAAG,MAAM,KAAK,CAAC,GAAG,EAAE,GAAG,EAAE;YAC9B,GAAG,EAAE,IAAI,CAAC,OAAO;YACjB,OAAO,EAAE,IAAI,CAAC,OAAO,IAAI,eAAe;YACxC,MAAM,EAAE,KAAK;YACb,gEAAgE;YAChE,8DAA8D;YAC9D,4DAA4D;YAC5D,wDAAwD;YACxD,KAAK,EAAE,QAAQ;SAChB,CAAC,CAAC;QACH,OAAO,WAAW,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,IAAI,CAAC,EAAE,KAAK,EAAE,aAAa,EAAE,CAAC,QAAQ,EAAE,GAAG,GAAG,CAAC,CAAC,CAAC;IACpG,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,OAAO;YACL,EAAE,EAAE,KAAK;YACT,IAAI,EAAE,EAAE;YACR,MAAM,EAAE,EAAE;YACV,KAAK,EAAG,CAAW,CAAC,OAAO;YAC3B,UAAU,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,KAAK;YAC9B,OAAO,EAAE,CAAC,QAAQ,EAAE,GAAG,GAAG,CAAC;SAC5B,CAAC;IACJ,CAAC;AACH,CAAC;AAED,MAAM,UAAU,SAAS,CAAC,MAAc,EAAE,OAAsB,EAAE;IAChE,MAAM,GAAG,GAAG,YAAY,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;IACvC,MAAM,GAAG,GAAG,YAAY,CAAC;IACzB,IAAI,CAAC,GAAG;QAAE,OAAO,IAAI,CAAC;IACtB,OAAO,KAAK,CAAC,GAAG,EAAE,CAAC,GAAG,GAAG,EAAE,iBAAiB,EAAE,aAAa,CAAC,EAAE;QAC5D,GAAG,EAAE,IAAI,CAAC,OAAO;QACjB,KAAK,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,CAAC;KAClC,CAAC,CAAC;AACL,CAAC;AAED,SAAS,WAAW,CAClB,MAAc,EACd,MAAc,EACd,QAAgB,EAChB,KAAa,EACb,QAAiB,EACjB,OAAiB;IAEjB,MAAM,IAAI,GAAiB;QACzB,EAAE,EAAE,QAAQ,KAAK,CAAC;QAClB,IAAI,EAAE,MAAM;QACZ,MAAM,EAAE,EAAE;QACV,UAAU,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,KAAK;QAC9B,OAAO;KACR,CAAC;
|
|
1
|
+
{"version":3,"file":"claude.js","sourceRoot":"","sources":["../src/claude.ts"],"names":[],"mappings":"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"}
|
package/dist/commands/chat.js
CHANGED
|
@@ -1,14 +1,18 @@
|
|
|
1
|
-
// `bajaclaw chat [profile]` — interactive REPL
|
|
2
|
-
// agent turn-by-turn. Each user message runs one BajaClaw cycle.
|
|
3
|
-
// Session history is injected into the next prompt's "Recent Chat"
|
|
4
|
-
// section so the agent remembers within the session.
|
|
1
|
+
// `bajaclaw chat [profile]` — interactive REPL.
|
|
5
2
|
//
|
|
6
|
-
//
|
|
7
|
-
// `.question()`
|
|
8
|
-
//
|
|
9
|
-
//
|
|
10
|
-
//
|
|
11
|
-
|
|
3
|
+
// Design notes:
|
|
4
|
+
// - Uses `readline/promises` with `.question()` in a `while` loop.
|
|
5
|
+
// Readline is only "active" while awaiting user input — while the
|
|
6
|
+
// cycle runs, it's idle, so stdout writes don't fight with its
|
|
7
|
+
// terminal-mode redraw logic.
|
|
8
|
+
// - No animated spinner. A static "…is thinking…" line is written
|
|
9
|
+
// once and erased with cursor-up + clear-line (no `\r` writes,
|
|
10
|
+
// which would trigger readline's prompt-redraw behavior).
|
|
11
|
+
// - Each turn is fully sequential: read input → run cycle → print
|
|
12
|
+
// response → loop. No concurrent dispatch, no race conditions.
|
|
13
|
+
// - Errors are surfaced with friendly context. Raw `exit 1` is
|
|
14
|
+
// translated into actionable text.
|
|
15
|
+
import { createInterface } from "node:readline/promises";
|
|
12
16
|
import { stdin, stdout } from "node:process";
|
|
13
17
|
import chalk from "chalk";
|
|
14
18
|
import { runCycle } from "../agent.js";
|
|
@@ -60,117 +64,117 @@ export async function runChat(opts) {
|
|
|
60
64
|
const rl = createInterface({
|
|
61
65
|
input: stdin,
|
|
62
66
|
output: stdout,
|
|
63
|
-
terminal: true,
|
|
64
|
-
prompt: chalk.cyan("you › "),
|
|
65
|
-
});
|
|
66
|
-
rl.prompt();
|
|
67
|
-
// Serial line processing: while a turn is running, incoming "line"
|
|
68
|
-
// events are ignored (they just print another prompt). Prevents
|
|
69
|
-
// stomping on an in-flight cycle.
|
|
70
|
-
let busy = false;
|
|
71
|
-
// Wrap the whole REPL in a promise that resolves on rl 'close'.
|
|
72
|
-
// runChat awaits this promise, which keeps the Node event loop
|
|
73
|
-
// alive for the duration of the chat session.
|
|
74
|
-
await new Promise((resolve) => {
|
|
75
|
-
const handleLine = async (line) => {
|
|
76
|
-
if (busy) {
|
|
77
|
-
rl.prompt();
|
|
78
|
-
return;
|
|
79
|
-
}
|
|
80
|
-
busy = true;
|
|
81
|
-
const input = line.trim();
|
|
82
|
-
if (!input) {
|
|
83
|
-
busy = false;
|
|
84
|
-
rl.prompt();
|
|
85
|
-
return;
|
|
86
|
-
}
|
|
87
|
-
try {
|
|
88
|
-
if (input.startsWith("/")) {
|
|
89
|
-
const action = await handleSlash(input, {
|
|
90
|
-
profile: opts.profile,
|
|
91
|
-
cfg,
|
|
92
|
-
agentName,
|
|
93
|
-
history,
|
|
94
|
-
stats,
|
|
95
|
-
getModel: () => modelOverride,
|
|
96
|
-
setModel: (m) => { modelOverride = m; },
|
|
97
|
-
});
|
|
98
|
-
if (action === "exit") {
|
|
99
|
-
rl.close();
|
|
100
|
-
return;
|
|
101
|
-
}
|
|
102
|
-
busy = false;
|
|
103
|
-
rl.prompt();
|
|
104
|
-
return;
|
|
105
|
-
}
|
|
106
|
-
history.push({ role: "user", content: input, ts: Date.now() });
|
|
107
|
-
const stopThinking = startThinking(agentName);
|
|
108
|
-
let r;
|
|
109
|
-
try {
|
|
110
|
-
const recent = history.slice(-HISTORY_LIMIT - 1, -1);
|
|
111
|
-
r = await runCycle({
|
|
112
|
-
profile: opts.profile,
|
|
113
|
-
task: input,
|
|
114
|
-
modelOverride,
|
|
115
|
-
sessionHistory: recent,
|
|
116
|
-
});
|
|
117
|
-
}
|
|
118
|
-
finally {
|
|
119
|
-
stopThinking();
|
|
120
|
-
}
|
|
121
|
-
if (!r.ok) {
|
|
122
|
-
console.log(chalk.red(`${agentName} › `) + chalk.red(r.error ?? "(error)"));
|
|
123
|
-
console.log("");
|
|
124
|
-
history.pop();
|
|
125
|
-
}
|
|
126
|
-
else {
|
|
127
|
-
console.log(chalk.green(`${agentName} › `) + r.text);
|
|
128
|
-
console.log("");
|
|
129
|
-
history.push({ role: "assistant", content: r.text, ts: Date.now() });
|
|
130
|
-
stats.turnCount += 1;
|
|
131
|
-
stats.inputTokens += r.inputTokens ?? 0;
|
|
132
|
-
stats.outputTokens += r.outputTokens ?? 0;
|
|
133
|
-
stats.costUsd += r.costUsd ?? 0;
|
|
134
|
-
printStatusLine(r, cfg);
|
|
135
|
-
}
|
|
136
|
-
}
|
|
137
|
-
catch (e) {
|
|
138
|
-
console.log(chalk.red("error: ") + e.message);
|
|
139
|
-
console.log("");
|
|
140
|
-
}
|
|
141
|
-
finally {
|
|
142
|
-
busy = false;
|
|
143
|
-
rl.prompt();
|
|
144
|
-
}
|
|
145
|
-
};
|
|
146
|
-
rl.on("line", (line) => {
|
|
147
|
-
// fire-and-forget; errors are caught inside handleLine
|
|
148
|
-
void handleLine(line);
|
|
149
|
-
});
|
|
150
|
-
rl.on("close", () => {
|
|
151
|
-
printSessionSummary(stats);
|
|
152
|
-
resolve();
|
|
153
|
-
});
|
|
154
67
|
});
|
|
68
|
+
const youLabel = chalk.cyan("you › ");
|
|
69
|
+
// Main loop. One turn at a time, no concurrency.
|
|
70
|
+
while (true) {
|
|
71
|
+
let input;
|
|
72
|
+
try {
|
|
73
|
+
input = (await rl.question(youLabel)).trim();
|
|
74
|
+
}
|
|
75
|
+
catch {
|
|
76
|
+
break; // rl closed (EOF / Ctrl-D)
|
|
77
|
+
}
|
|
78
|
+
if (!input)
|
|
79
|
+
continue;
|
|
80
|
+
// Slash commands
|
|
81
|
+
if (input.startsWith("/")) {
|
|
82
|
+
const action = await handleSlash(input, {
|
|
83
|
+
profile: opts.profile,
|
|
84
|
+
cfg,
|
|
85
|
+
agentName,
|
|
86
|
+
history,
|
|
87
|
+
stats,
|
|
88
|
+
getModel: () => modelOverride,
|
|
89
|
+
setModel: (m) => { modelOverride = m; },
|
|
90
|
+
});
|
|
91
|
+
if (action === "exit")
|
|
92
|
+
break;
|
|
93
|
+
continue;
|
|
94
|
+
}
|
|
95
|
+
// Normal turn: run a cycle.
|
|
96
|
+
history.push({ role: "user", content: input, ts: Date.now() });
|
|
97
|
+
writeThinkingLine(agentName);
|
|
98
|
+
let r = null;
|
|
99
|
+
let caughtError = null;
|
|
100
|
+
try {
|
|
101
|
+
const recent = history.slice(-HISTORY_LIMIT - 1, -1);
|
|
102
|
+
r = await runCycle({
|
|
103
|
+
profile: opts.profile,
|
|
104
|
+
task: input,
|
|
105
|
+
modelOverride,
|
|
106
|
+
sessionHistory: recent,
|
|
107
|
+
});
|
|
108
|
+
}
|
|
109
|
+
catch (e) {
|
|
110
|
+
caughtError = e;
|
|
111
|
+
}
|
|
112
|
+
eraseThinkingLine();
|
|
113
|
+
if (caughtError) {
|
|
114
|
+
console.log(chalk.red(`${agentName} › `) + chalk.red(`error: ${caughtError.message}`));
|
|
115
|
+
console.log("");
|
|
116
|
+
history.pop();
|
|
117
|
+
continue;
|
|
118
|
+
}
|
|
119
|
+
if (!r || !r.ok) {
|
|
120
|
+
console.log(chalk.red(`${agentName} › `) + chalk.red(formatCycleError(r)));
|
|
121
|
+
console.log("");
|
|
122
|
+
history.pop();
|
|
123
|
+
continue;
|
|
124
|
+
}
|
|
125
|
+
const responseText = (r.text ?? "").trim() || chalk.dim("(empty response)");
|
|
126
|
+
console.log(chalk.green(`${agentName} › `) + responseText);
|
|
127
|
+
console.log("");
|
|
128
|
+
history.push({ role: "assistant", content: r.text ?? "", ts: Date.now() });
|
|
129
|
+
stats.turnCount += 1;
|
|
130
|
+
stats.inputTokens += r.inputTokens ?? 0;
|
|
131
|
+
stats.outputTokens += r.outputTokens ?? 0;
|
|
132
|
+
stats.costUsd += r.costUsd ?? 0;
|
|
133
|
+
printStatusLine(r, cfg);
|
|
134
|
+
}
|
|
135
|
+
rl.close();
|
|
136
|
+
printSessionSummary(stats);
|
|
155
137
|
}
|
|
156
138
|
// ───────────────────────────────────────────────────────────────
|
|
157
|
-
//
|
|
139
|
+
// Thinking indicator — static, erased on response
|
|
158
140
|
// ───────────────────────────────────────────────────────────────
|
|
159
|
-
function
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
141
|
+
function writeThinkingLine(agentName) {
|
|
142
|
+
stdout.write(chalk.dim(`${agentName} is thinking…\n`));
|
|
143
|
+
}
|
|
144
|
+
function eraseThinkingLine() {
|
|
145
|
+
// Cursor up one line, erase in line. Avoids `\r` which can trigger
|
|
146
|
+
// readline's prompt-redraw machinery.
|
|
147
|
+
stdout.write("\x1b[1A\x1b[2K");
|
|
148
|
+
}
|
|
149
|
+
// ───────────────────────────────────────────────────────────────
|
|
150
|
+
// Error formatting
|
|
151
|
+
// ───────────────────────────────────────────────────────────────
|
|
152
|
+
function formatCycleError(r) {
|
|
153
|
+
if (!r)
|
|
154
|
+
return "no response from backend";
|
|
155
|
+
const raw = (r.error ?? "").trim();
|
|
156
|
+
if (!raw)
|
|
157
|
+
return "backend returned no output";
|
|
158
|
+
// Max turns — translate claude.ts sentinel into a chat-friendly tip.
|
|
159
|
+
const maxTurnsMatch = raw.match(/^max_turns_hit:(\d+|\?)/);
|
|
160
|
+
if (maxTurnsMatch) {
|
|
161
|
+
const used = maxTurnsMatch[1];
|
|
162
|
+
return `ran out of turns (${used} used this cycle). The task needed more tool calls than the per-cycle budget. Try: (a) break it into smaller asks, (b) "/model opus" for a higher cap, or (c) just send the request again — the agent often finishes on retry.`;
|
|
163
|
+
}
|
|
164
|
+
if (/permission|needs write/i.test(raw)) {
|
|
165
|
+
return `backend wanted to use a tool that needs approval, and BajaClaw closes stdin. Fixed in v0.11.2+ via --dangerously-skip-permissions. If you're seeing this, update: npm install -g bajaclaw@latest`;
|
|
166
|
+
}
|
|
167
|
+
if (/rate[- ]?limit/i.test(raw)) {
|
|
168
|
+
return "rate-limited by Anthropic. Wait a few minutes and retry.";
|
|
169
|
+
}
|
|
170
|
+
if (/credit|quota|billing/i.test(raw)) {
|
|
171
|
+
return `${raw} — check your Anthropic plan at anthropic.com.`;
|
|
172
|
+
}
|
|
173
|
+
if (/^exit \d+$/i.test(raw)) {
|
|
174
|
+
return `backend exited (${raw}) with no detail. Check the profile log: bajaclaw daemon logs`;
|
|
175
|
+
}
|
|
176
|
+
// Fallback: first line + truncate. Never echo multi-KB JSON.
|
|
177
|
+
return raw.split("\n")[0].slice(0, 400);
|
|
174
178
|
}
|
|
175
179
|
// ───────────────────────────────────────────────────────────────
|
|
176
180
|
// Header / status / summary
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"chat.js","sourceRoot":"","sources":["../../src/commands/chat.ts"],"names":[],"mappings":"AAAA,sEAAsE;AACtE,iEAAiE;AACjE,mEAAmE;AACnE,qDAAqD;AACrD,EAAE;AACF,mEAAmE;AACnE,sEAAsE;AACtE,mEAAmE;AACnE,kEAAkE;AAClE,6CAA6C;AAE7C,OAAO,EAAE,eAAe,EAAuC,MAAM,eAAe,CAAC;AACrF,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAC7C,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AACvC,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AACtD,OAAO,EAAE,MAAM,EAAW,MAAM,UAAU,CAAC;AAC3C,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,oBAAoB,CAAC;AACnF,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAC/C,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAG/C,MAAM,aAAa,GAAG,EAAE,CAAC;AAEzB,MAAM,WAAW,GAA2B;IAC1C,IAAI,EAAE,IAAI;IACV,KAAK,EAAE,KAAK;IACZ,MAAM,EAAE,MAAM;IACd,IAAI,EAAE,IAAI;CACX,CAAC;AAEF,MAAM,UAAU,GAAgD;IAC9D,KAAK,EAAE,OAAO;IACd,MAAM,EAAE,OAAO;IACf,IAAI,EAAE,OAAO;CACd,CAAC;AAsBF,MAAM,CAAC,KAAK,UAAU,OAAO,CAAC,IAAiB;IAC7C,IAAI,CAAC,KAAK,CAAC,KAAK,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;QAClC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,iDAAiD,CAAC,CAAC,CAAC;QAC5E,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,sDAAsD,CAAC,CAAC,CAAC;QACjF,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAC;QACrB,OAAO;IACT,CAAC;IAED,IAAI,GAAgB,CAAC;IACrB,IAAI,CAAC;QACH,GAAG,GAAG,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IACjC,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,UAAW,CAAW,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;QAC3D,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAC;QACrB,OAAO;IACT,CAAC;IAED,MAAM,OAAO,GAAG,WAAW,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IAC1C,MAAM,SAAS,GAAG,CAAC,OAAO,EAAE,SAAS,IAAI,MAAM,CAAC,CAAC,WAAW,EAAE,CAAC;IAE/D,IAAI,aAAa,GAAuB,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,iBAAiB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IAC/F,MAAM,OAAO,GAAe,EAAE,CAAC;IAC/B,MAAM,KAAK,GAAiB;QAC1B,OAAO,EAAE,IAAI,CAAC,GAAG,EAAE;QACnB,SAAS,EAAE,CAAC;QACZ,WAAW,EAAE,CAAC;QACd,YAAY,EAAE,CAAC;QACf,OAAO,EAAE,CAAC;KACX,CAAC;IAEF,WAAW,CAAC,IAAI,CAAC,OAAO,EAAE,GAAG,EAAE,SAAS,EAAE,aAAa,CAAC,CAAC;IAEzD,MAAM,EAAE,GAAG,eAAe,CAAC;QACzB,KAAK,EAAE,KAAK;QACZ,MAAM,EAAE,MAAM;QACd,QAAQ,EAAE,IAAI;QACd,MAAM,EAAE,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC;KAC7B,CAAC,CAAC;IACH,EAAE,CAAC,MAAM,EAAE,CAAC;IAEZ,mEAAmE;IACnE,gEAAgE;IAChE,kCAAkC;IAClC,IAAI,IAAI,GAAG,KAAK,CAAC;IAEjB,gEAAgE;IAChE,+DAA+D;IAC/D,8CAA8C;IAC9C,MAAM,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,EAAE;QAClC,MAAM,UAAU,GAAG,KAAK,EAAE,IAAY,EAAiB,EAAE;YACvD,IAAI,IAAI,EAAE,CAAC;gBACT,EAAE,CAAC,MAAM,EAAE,CAAC;gBACZ,OAAO;YACT,CAAC;YACD,IAAI,GAAG,IAAI,CAAC;YAEZ,MAAM,KAAK,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC;YAC1B,IAAI,CAAC,KAAK,EAAE,CAAC;gBACX,IAAI,GAAG,KAAK,CAAC;gBACb,EAAE,CAAC,MAAM,EAAE,CAAC;gBACZ,OAAO;YACT,CAAC;YAED,IAAI,CAAC;gBACH,IAAI,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;oBAC1B,MAAM,MAAM,GAAG,MAAM,WAAW,CAAC,KAAK,EAAE;wBACtC,OAAO,EAAE,IAAI,CAAC,OAAO;wBACrB,GAAG;wBACH,SAAS;wBACT,OAAO;wBACP,KAAK;wBACL,QAAQ,EAAE,GAAG,EAAE,CAAC,aAAa;wBAC7B,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE,GAAG,aAAa,GAAG,CAAC,CAAC,CAAC,CAAC;qBACxC,CAAC,CAAC;oBACH,IAAI,MAAM,KAAK,MAAM,EAAE,CAAC;wBACtB,EAAE,CAAC,KAAK,EAAE,CAAC;wBACX,OAAO;oBACT,CAAC;oBACD,IAAI,GAAG,KAAK,CAAC;oBACb,EAAE,CAAC,MAAM,EAAE,CAAC;oBACZ,OAAO;gBACT,CAAC;gBAED,OAAO,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE,EAAE,IAAI,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;gBAC/D,MAAM,YAAY,GAAG,aAAa,CAAC,SAAS,CAAC,CAAC;gBAE9C,IAAI,CAAC,CAAC;gBACN,IAAI,CAAC;oBACH,MAAM,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,aAAa,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;oBACrD,CAAC,GAAG,MAAM,QAAQ,CAAC;wBACjB,OAAO,EAAE,IAAI,CAAC,OAAO;wBACrB,IAAI,EAAE,KAAK;wBACX,aAAa;wBACb,cAAc,EAAE,MAAM;qBACvB,CAAC,CAAC;gBACL,CAAC;wBAAS,CAAC;oBACT,YAAY,EAAE,CAAC;gBACjB,CAAC;gBAED,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;oBACV,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,SAAS,KAAK,CAAC,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,IAAI,SAAS,CAAC,CAAC,CAAC;oBAC5E,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;oBAChB,OAAO,CAAC,GAAG,EAAE,CAAC;gBAChB,CAAC;qBAAM,CAAC;oBACN,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,SAAS,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC;oBACrD,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;oBAChB,OAAO,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,OAAO,EAAE,CAAC,CAAC,IAAI,EAAE,EAAE,EAAE,IAAI,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;oBACrE,KAAK,CAAC,SAAS,IAAI,CAAC,CAAC;oBACrB,KAAK,CAAC,WAAW,IAAI,CAAC,CAAC,WAAW,IAAI,CAAC,CAAC;oBACxC,KAAK,CAAC,YAAY,IAAI,CAAC,CAAC,YAAY,IAAI,CAAC,CAAC;oBAC1C,KAAK,CAAC,OAAO,IAAI,CAAC,CAAC,OAAO,IAAI,CAAC,CAAC;oBAChC,eAAe,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;gBAC1B,CAAC;YACH,CAAC;YAAC,OAAO,CAAC,EAAE,CAAC;gBACX,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,SAAS,CAAC,GAAI,CAAW,CAAC,OAAO,CAAC,CAAC;gBACzD,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YAClB,CAAC;oBAAS,CAAC;gBACT,IAAI,GAAG,KAAK,CAAC;gBACb,EAAE,CAAC,MAAM,EAAE,CAAC;YACd,CAAC;QACH,CAAC,CAAC;QAEF,EAAE,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,EAAE;YACrB,uDAAuD;YACvD,KAAK,UAAU,CAAC,IAAI,CAAC,CAAC;QACxB,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,EAAE,CAAC,OAAO,EAAE,GAAG,EAAE;YAClB,mBAAmB,CAAC,KAAK,CAAC,CAAC;YAC3B,OAAO,EAAE,CAAC;QACZ,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC;AAED,kEAAkE;AAClE,sDAAsD;AACtD,kEAAkE;AAElE,SAAS,aAAa,CAAC,SAAiB;IACtC,IAAI,IAAI,GAAG,CAAC,CAAC;IACb,MAAM,MAAM,GAAG,GAAG,EAAE;QAClB,0DAA0D;QAC1D,MAAM,GAAG,GAAG,GAAG,CAAC,MAAM,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;QACtD,MAAM,CAAC,KAAK,CAAC,YAAY,KAAK,CAAC,GAAG,CAAC,GAAG,SAAS,eAAe,GAAG,EAAE,CAAC,EAAE,CAAC,CAAC;QACxE,IAAI,IAAI,CAAC,CAAC;IACZ,CAAC,CAAC;IACF,MAAM,EAAE,CAAC;IACT,MAAM,KAAK,GAAG,WAAW,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IACvC,OAAO,GAAG,EAAE;QACV,aAAa,CAAC,KAAK,CAAC,CAAC;QACrB,8CAA8C;QAC9C,MAAM,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;IAC5B,CAAC,CAAC;AACJ,CAAC;AAED,kEAAkE;AAClE,4BAA4B;AAC5B,kEAAkE;AAElE,SAAS,WAAW,CAClB,OAAe,EACf,GAAgB,EAChB,SAAiB,EACjB,aAAiC;IAEjC,MAAM,YAAY,GAAG,aAAa,IAAI,GAAG,CAAC,KAAK,CAAC;IAChD,MAAM,QAAQ,GAAG,YAAY,KAAK,IAAI;QACpC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,sCAAsC,CAAC;QACnD,CAAC,CAAC,EAAE,CAAC;IACP,MAAM,IAAI,GAAG,OAAO,CAAC,YAAY,KAAK,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC;IACpE,MAAM,GAAG,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC;IAC7B,MAAM,MAAM,GAAG,SAAS,CAAC,IAAI,CAAC,CAAC;IAE/B,MAAM,EAAE,GAAG,MAAM,CAAC,OAAO,CAAC,CAAC;IAC3B,IAAI,KAAkB,CAAC;IACvB,IAAI,IAAiB,CAAC;IACtB,IAAI,CAAC;QACH,KAAK,GAAG,WAAW,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;QAC3B,IAAI,GAAG,WAAW,CAAC,EAAE,EAAE,EAAE,GAAG,CAAC,CAAC,CAAC;IACjC,CAAC;YAAS,CAAC;QACT,EAAE,CAAC,KAAK,EAAE,CAAC;IACb,CAAC;IAED,MAAM,KAAK,GAAG,mBAAmB,OAAO,OAAO,cAAc,EAAE,EAAE,CAAC;IAClE,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAChB,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,KAAK,GAAG,GAAG,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,GAAG,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC;IACpG,OAAO,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,IAAI,CAAC,cAAc,CAAC,IAAI,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;IACtE,OAAO,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,IAAI,CAAC,cAAc,CAAC,IAAI,KAAK,CAAC,IAAI,CAAC,YAAY,CAAC,GAAG,QAAQ,EAAE,CAAC,CAAC;IACpF,OAAO,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,IAAI,CAAC,cAAc,CAAC,IAAI,GAAG,CAAC,MAAM,EAAE,CAAC,CAAC;IAC3D,OAAO,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,IAAI,CAAC,cAAc,CAAC,IAAI,SAAS,CAAC,GAAG,CAAC,aAAa,MAAM,CAAC,QAAQ,qBAAqB,CAAC,CAAC;IAC9G,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAChB,OAAO,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,IAAI,CAAC,cAAc,CAAC,IAAI,WAAW,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;IACnE,OAAO,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,IAAI,CAAC,cAAc,CAAC,IAAI,WAAW,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAClE,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,sEAAsE,CAAC,CAAC,CAAC;IAC/F,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAChB,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,gDAAgD,CAAC,CAAC,CAAC;IACzE,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,GAAG,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC;IACzD,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;AAClB,CAAC;AAED,SAAS,eAAe,CAAC,CAAuC,EAAE,GAAgB;IAChF,MAAM,IAAI,GAAa,EAAE,CAAC;IAC1B,IAAI,CAAC,CAAC,KAAK;QAAE,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IAC3D,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC;IACjC,IAAI,CAAC,CAAC,WAAW,IAAI,IAAI,IAAI,CAAC,CAAC,YAAY,IAAI,IAAI,EAAE,CAAC;QACpD,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,SAAS,CAAC,CAAC,CAAC,WAAW,IAAI,CAAC,CAAC,SAAS,SAAS,CAAC,CAAC,CAAC,YAAY,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC;IACtG,CAAC;IACD,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,UAAU,GAAG,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;IAC7D,IAAI,CAAC,CAAC,OAAO,IAAI,IAAI;QAAE,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IACxE,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;IACtC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,GAAG,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC;IAC7E,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;AAClB,CAAC;AAED,SAAS,mBAAmB,CAAC,KAAmB;IAC9C,IAAI,KAAK,CAAC,SAAS,KAAK,CAAC,EAAE,CAAC;QAC1B,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC;QACjC,OAAO;IACT,CAAC;IACD,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,IAAI,CAAC,CAAC;IACnE,MAAM,GAAG,GAAG,UAAU,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,UAAU,GAAG,EAAE,CAAC,KAAK,UAAU,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC,GAAG,UAAU,GAAG,CAAC;IACvG,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAChB,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,YAAY,KAAK,CAAC,SAAS,YAAY,SAAS,CAAC,KAAK,CAAC,WAAW,GAAG,KAAK,CAAC,YAAY,CAAC,cAAc,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,GAAG,EAAE,CAAC,CAAC,CAAC;IAClK,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;AAClB,CAAC;AAgBD,KAAK,UAAU,WAAW,CAAC,KAAa,EAAE,GAAa;IACrD,MAAM,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;IACnD,MAAM,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC;IAElC,QAAQ,GAAG,EAAE,CAAC;QACZ,KAAK,MAAM,CAAC;QACZ,KAAK,GAAG,CAAC,CAAC,CAAC;YACT,SAAS,EAAE,CAAC;YACZ,OAAO,UAAU,CAAC;QACpB,CAAC;QACD,KAAK,MAAM,CAAC;QACZ,KAAK,MAAM,CAAC;QACZ,KAAK,GAAG,CAAC,CAAC,CAAC;YACT,OAAO,MAAM,CAAC;QAChB,CAAC;QACD,KAAK,OAAO,CAAC,CAAC,CAAC;YACb,GAAG,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC;YACvB,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,iDAAiD,CAAC,CAAC,CAAC;YAC5E,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YAChB,OAAO,UAAU,CAAC;QACpB,CAAC;QACD,KAAK,OAAO,CAAC,CAAC,CAAC;YACb,kBAAkB,CAAC,GAAG,CAAC,CAAC;YACxB,OAAO,UAAU,CAAC;QACpB,CAAC;QACD,KAAK,SAAS,CAAC;QACf,KAAK,KAAK,CAAC,CAAC,CAAC;YACX,MAAM,aAAa,GAAG,GAAG,CAAC,QAAQ,EAAE,CAAC;YACrC,MAAM,CAAC,GAAG,aAAa,IAAI,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC;YACzC,MAAM,IAAI,GAAG,OAAO,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YAC9C,MAAM,MAAM,GAAG,SAAS,CAAC,IAAI,CAAC,CAAC;YAC/B,OAAO,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,IAAI,CAAC,mBAAmB,CAAC,IAAI,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,YAAY,IAAI,GAAG,CAAC,CAAC;YAClG,OAAO,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,IAAI,CAAC,mBAAmB,CAAC,IAAI,MAAM,CAAC,WAAW,eAAe,MAAM,CAAC,UAAU,aAAa,MAAM,CAAC,QAAQ,QAAQ,CAAC,CAAC;YAC1I,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YAChB,OAAO,UAAU,CAAC;QACpB,CAAC;QACD,KAAK,OAAO,CAAC,CAAC,CAAC;YACb,IAAI,CAAC,GAAG,EAAE,CAAC;gBACT,MAAM,OAAO,GAAG,GAAG,CAAC,QAAQ,EAAE,IAAI,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC;gBAChD,OAAO,CAAC,GAAG,CAAC,YAAY,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;gBAC/C,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,2DAA2D,CAAC,CAAC,CAAC;gBACpF,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,0CAA0C,CAAC,CAAC,CAAC;gBACnE,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;gBAChB,OAAO,UAAU,CAAC;YACpB,CAAC;YACD,MAAM,QAAQ,GAAG,iBAAiB,CAAC,GAAG,CAAC,CAAC;YACxC,GAAG,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;YACvB,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,6BAA6B,QAAQ,EAAE,CAAC,CAAC,CAAC;YAClE,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YAChB,OAAO,UAAU,CAAC;QACpB,CAAC;QACD,KAAK,QAAQ,CAAC,CAAC,CAAC;YACd,IAAI,CAAC,GAAG,EAAE,CAAC;gBACT,OAAO,CAAC,GAAG,CAAC,YAAY,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;gBACtD,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,uCAAuC,CAAC,CAAC,CAAC;gBAChE,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;gBAChB,OAAO,UAAU,CAAC;YACpB,CAAC;YACD,MAAM,KAAK,GAAG,GAAG,CAAC,WAAW,EAAE,CAAC;YAChC,IAAI,KAAK,KAAK,KAAK,IAAI,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,MAAM,EAAE,CAAC;gBAC9D,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,mCAAmC,CAAC,CAAC,CAAC;gBAC5D,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;gBAChB,OAAO,UAAU,CAAC;YACpB,CAAC;YACD,GAAG,CAAC,GAAG,CAAC,MAAM,GAAG,KAAK,CAAC;YACvB,UAAU,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;YACpB,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,mBAAmB,KAAK,6BAA6B,CAAC,CAAC,CAAC;YAChF,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YAChB,OAAO,UAAU,CAAC;QACpB,CAAC;QACD,KAAK,SAAS,CAAC,CAAC,CAAC;YACf,MAAM,EAAE,OAAO,EAAE,aAAa,EAAE,GAAG,MAAM,MAAM,CAAC,sBAAsB,CAAC,CAAC;YACxE,MAAM,EAAE,GAAG,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;YAC/B,IAAI,CAAC;gBACH,MAAM,QAAQ,GAAG,aAAa,CAAC,EAAE,EAAE,GAAG,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;gBACvD,IAAI,CAAC,QAAQ,CAAC,GAAG,EAAE,CAAC;oBAClB,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,gBAAgB,QAAQ,CAAC,MAAM,6BAA6B,CAAC,CAAC,CAAC;gBACvF,CAAC;gBACD,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC;gBACvC,MAAM,CAAC,GAAG,MAAM,OAAO,CAAC,EAAE,EAAE,GAAG,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;gBAChD,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAC,cAAc,MAAM,CAAC,CAAC,aAAa,eAAe,CAAC,CAAC,YAAY,oBAAoB,CAAC,CAAC,UAAU,IAAI,CAAC,CAAC,CAAC;YACnJ,CAAC;oBAAS,CAAC;gBACT,EAAE,CAAC,KAAK,EAAE,CAAC;YACb,CAAC;YACD,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YAChB,OAAO,UAAU,CAAC;QACpB,CAAC;QACD,KAAK,SAAS,CAAC,CAAC,CAAC;YACf,IAAI,GAAG,CAAC,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBAC7B,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC;YACpC,CAAC;iBAAM,CAAC;gBACN,KAAK,MAAM,CAAC,IAAI,GAAG,CAAC,OAAO,EAAE,CAAC;oBAC5B,MAAM,KAAK,GAAG,CAAC,CAAC,IAAI,KAAK,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;oBACjF,OAAO,CAAC,GAAG,CAAC,GAAG,KAAK,KAAK,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,MAAM,GAAG,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;gBAC1F,CAAC;YACH,CAAC;YACD,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YAChB,OAAO,UAAU,CAAC;QACpB,CAAC;QACD;YACE,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,qBAAqB,GAAG,EAAE,CAAC,CAAC,CAAC;YACnD,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,yBAAyB,CAAC,CAAC,CAAC;YAClD,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YAChB,OAAO,UAAU,CAAC;IACtB,CAAC;AACH,CAAC;AAED,SAAS,SAAS;IAChB,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC;IACrC,OAAO,CAAC,GAAG,CAAC,KAAK,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,4BAA4B,CAAC,CAAC;IAClE,OAAO,CAAC,GAAG,CAAC,KAAK,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,gCAAgC,CAAC,CAAC;IACrH,OAAO,CAAC,GAAG,CAAC,KAAK,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,6DAA6D,CAAC,CAAC;IACpG,OAAO,CAAC,GAAG,CAAC,KAAK,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,iDAAiD,CAAC,CAAC;IACxF,OAAO,CAAC,GAAG,CAAC,KAAK,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,MAAM,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,+CAA+C,CAAC,CAAC;IAChH,OAAO,CAAC,GAAG,CAAC,KAAK,KAAK,CAAC,IAAI,CAAC,mBAAmB,CAAC,gCAAgC,CAAC,CAAC;IAClF,OAAO,CAAC,GAAG,CAAC,0BAA0B,KAAK,CAAC,GAAG,CAAC,oCAAoC,CAAC,EAAE,CAAC,CAAC;IACzF,OAAO,CAAC,GAAG,CAAC,KAAK,KAAK,CAAC,IAAI,CAAC,2BAA2B,CAAC,uBAAuB,CAAC,CAAC;IACjF,OAAO,CAAC,GAAG,CAAC,KAAK,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,yCAAyC,CAAC,CAAC;IAClF,OAAO,CAAC,GAAG,CAAC,KAAK,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,yCAAyC,CAAC,CAAC;IAClF,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;AAClB,CAAC;AAED,SAAS,kBAAkB,CAAC,GAAa;IACvC,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,IAAI,CAAC,CAAC;IACvE,MAAM,EAAE,GAAG,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;IAC/B,IAAI,KAAkB,EAAE,IAAiB,EAAE,GAAgB,CAAC;IAC5D,IAAI,CAAC;QACH,KAAK,GAAG,WAAW,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;QAC3B,GAAG,GAAG,WAAW,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;QAC1B,IAAI,GAAG,WAAW,CAAC,EAAE,EAAE,EAAE,GAAG,CAAC,CAAC,CAAC;IACjC,CAAC;YAAS,CAAC;QACT,EAAE,CAAC,KAAK,EAAE,CAAC;IACb,CAAC;IACD,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC;IACxC,OAAO,CAAC,GAAG,CAAC,mBAAmB,GAAG,CAAC,KAAK,CAAC,SAAS,EAAE,CAAC,CAAC;IACtD,OAAO,CAAC,GAAG,CAAC,mBAAmB,SAAS,CAAC,GAAG,CAAC,KAAK,CAAC,WAAW,CAAC,SAAS,SAAS,CAAC,GAAG,CAAC,KAAK,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC;IACjH,OAAO,CAAC,GAAG,CAAC,oBAAoB,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;IAChE,OAAO,CAAC,GAAG,CAAC,mBAAmB,UAAU,GAAG,CAAC,CAAC;IAC9C,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAChB,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,gCAAgC,CAAC,CAAC,CAAC;IAC1D,OAAO,CAAC,GAAG,CAAC,mBAAmB,WAAW,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;IACrD,OAAO,CAAC,GAAG,CAAC,mBAAmB,WAAW,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IACnD,OAAO,CAAC,GAAG,CAAC,mBAAmB,WAAW,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACpD,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAChB,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,wEAAwE,CAAC,CAAC,CAAC;IACjG,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;AAClB,CAAC;AAED,kEAAkE;AAClE,UAAU;AACV,kEAAkE;AAElE,SAAS,WAAW,CAAC,EAAM,EAAE,KAAa;IACxC,MAAM,KAAK,GAAG,IAAI,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,KAAK,GAAG,IAAI,GAAG,IAAI,CAAC,CAAC,WAAW,EAAE,CAAC;IACvE,MAAM,GAAG,GAAG,EAAE,CAAC,OAAO,CAAC;;;;;;;;GAQtB,CAAC,CAAC,GAAG,CAAC,KAAK,CAA4E,CAAC;IACzF,OAAO;QACL,MAAM,EAAE,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC;QAC1B,WAAW,EAAE,MAAM,CAAC,GAAG,CAAC,SAAS,CAAC;QAClC,YAAY,EAAE,MAAM,CAAC,GAAG,CAAC,UAAU,CAAC;QACpC,OAAO,EAAE,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC;KAC1B,CAAC;AACJ,CAAC;AAED,SAAS,WAAW,CAAC,CAAc;IACjC,MAAM,KAAK,GAAG,CAAC,CAAC,WAAW,GAAG,CAAC,CAAC,YAAY,CAAC;IAC7C,OAAO,GAAG,CAAC,CAAC,MAAM,aAAa,SAAS,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC;AACtF,CAAC;AAED,SAAS,SAAS,CAAC,CAAS;IAC1B,IAAI,CAAC,IAAI,IAAI;QAAE,OAAO,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC;IAClD,OAAO,MAAM,CAAC,CAAC,CAAC,CAAC;AACnB,CAAC;AAED,SAAS,UAAU,CAAC,IAAY;IAC9B,IAAI,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC;QAAE,OAAO,OAAO,CAAC;IAC3C,IAAI,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC;QAAE,OAAO,QAAQ,CAAC;IAC7C,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC;QAAE,OAAO,MAAM,CAAC;IACzC,OAAO,IAAI,CAAC;AACd,CAAC;AAED,SAAS,iBAAiB,CAAC,KAAa;IACtC,MAAM,KAAK,GAAG,KAAK,CAAC,WAAW,EAAE,CAAC;IAClC,IAAI,KAAK,IAAI,WAAW;QAAE,OAAO,WAAW,CAAC,KAAK,CAAE,CAAC;IACrD,OAAO,KAAK,CAAC;AACf,CAAC"}
|
|
1
|
+
{"version":3,"file":"chat.js","sourceRoot":"","sources":["../../src/commands/chat.ts"],"names":[],"mappings":"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"}
|
package/dist/config.js
CHANGED
|
@@ -6,10 +6,11 @@ const DEFAULT = {
|
|
|
6
6
|
// Override with a specific id to disable auto-selection.
|
|
7
7
|
model: "auto",
|
|
8
8
|
effort: "medium",
|
|
9
|
-
//
|
|
10
|
-
//
|
|
11
|
-
//
|
|
12
|
-
|
|
9
|
+
// Generous default so complex multi-command tasks (setup flows,
|
|
10
|
+
// refactors, multi-file edits) complete without hitting the cap.
|
|
11
|
+
// The tier budget in src/model-picker.ts is the actual ceiling;
|
|
12
|
+
// this config is the floor.
|
|
13
|
+
maxTurns: 30,
|
|
13
14
|
dashboardPort: 7337,
|
|
14
15
|
memorySync: false,
|
|
15
16
|
compaction: {
|
package/dist/config.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAClE,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAEjC,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAEnD,MAAM,OAAO,GAAyB;IACpC,mEAAmE;IACnE,yDAAyD;IACzD,KAAK,EAAE,MAAM;IACb,MAAM,EAAE,QAAQ;IAChB,
|
|
1
|
+
{"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAClE,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAEjC,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAEnD,MAAM,OAAO,GAAyB;IACpC,mEAAmE;IACnE,yDAAyD;IACzD,KAAK,EAAE,MAAM;IACb,MAAM,EAAE,QAAQ;IAChB,gEAAgE;IAChE,iEAAiE;IACjE,gEAAgE;IAChE,4BAA4B;IAC5B,QAAQ,EAAE,EAAE;IACZ,aAAa,EAAE,IAAI;IACnB,UAAU,EAAE,KAAK;IACjB,UAAU,EAAE;QACV,OAAO,EAAE,IAAI;QACb,SAAS,EAAE,IAAI;QACf,QAAQ,EAAE,MAAM;QAChB,UAAU,EAAE,OAAO;QACnB,iBAAiB,EAAE,EAAE;QACrB,cAAc,EAAE,EAAE;KACnB;CACF,CAAC;AAEF,MAAM,UAAU,UAAU,CAAC,OAAe;IACxC,OAAO,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,aAAa,CAAC,CAAC;AAClD,CAAC;AAED,MAAM,UAAU,UAAU,CAAC,OAAe;IACxC,MAAM,IAAI,GAAG,UAAU,CAAC,OAAO,CAAC,CAAC;IACjC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;QACtB,MAAM,IAAI,KAAK,CAAC,sBAAsB,OAAO,cAAc,IAAI,2BAA2B,CAAC,CAAC;IAC9F,CAAC;IACD,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC;IACnD,OAAO,EAAE,GAAG,OAAO,EAAE,GAAG,GAAG,EAAE,OAAO,EAAiB,CAAC;AACxD,CAAC;AAED,MAAM,UAAU,UAAU,CAAC,GAAgB;IACzC,SAAS,CAAC,UAAU,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC;IACnC,aAAa,CAAC,UAAU,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,IAAI,CAAC,SAAS,CAAC,GAAG,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;AACvE,CAAC;AAED,MAAM,UAAU,cAAc,CAAC,OAA6B;IAC1D,OAAO,EAAE,GAAG,OAAO,EAAE,GAAG,OAAO,EAAiB,CAAC;AACnD,CAAC"}
|
package/dist/model-picker.js
CHANGED
|
@@ -45,16 +45,19 @@ export function tierFor(modelId) {
|
|
|
45
45
|
return "haiku";
|
|
46
46
|
return "sonnet";
|
|
47
47
|
}
|
|
48
|
-
// Context budgets per model tier.
|
|
48
|
+
// Context budgets per model tier. Generous turn caps so real work
|
|
49
|
+
// (multi-command setups, code refactors, research) doesn't truncate
|
|
50
|
+
// mid-task. Memory and skill counts are still tight to keep per-cycle
|
|
51
|
+
// prompts lean.
|
|
49
52
|
export function budgetFor(tier) {
|
|
50
53
|
switch (tier) {
|
|
51
54
|
case "haiku":
|
|
52
|
-
return { memoryCount: 3, memoryCharsEach: 180, skillCount: 1, maxTurns:
|
|
55
|
+
return { memoryCount: 3, memoryCharsEach: 180, skillCount: 1, maxTurns: 8 };
|
|
53
56
|
case "opus":
|
|
54
|
-
return { memoryCount: 7, memoryCharsEach: 280, skillCount: 3, maxTurns:
|
|
57
|
+
return { memoryCount: 7, memoryCharsEach: 280, skillCount: 3, maxTurns: 30 };
|
|
55
58
|
case "sonnet":
|
|
56
59
|
default:
|
|
57
|
-
return { memoryCount: 5, memoryCharsEach: 220, skillCount: 2, maxTurns:
|
|
60
|
+
return { memoryCount: 5, memoryCharsEach: 220, skillCount: 2, maxTurns: 20 };
|
|
58
61
|
}
|
|
59
62
|
}
|
|
60
63
|
// ---------------------------------------------------------------------------
|
package/dist/model-picker.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"model-picker.js","sourceRoot":"","sources":["../src/model-picker.ts"],"names":[],"mappings":"AAAA,wEAAwE;AACxE,mEAAmE;AACnE,uBAAuB;AACvB,EAAE;AACF,SAAS;AACT,oDAAoD;AACpD,kDAAkD;AAClD,mEAAmE;AAInE,MAAM,CAAC,MAAM,IAAI,GAAG,MAAM,CAAC;AAE3B,uEAAuE;AACvE,qEAAqE;AACrE,8CAA8C;AAC9C,MAAM,CAAC,MAAM,KAAK,GAAG,kBAAkB,CAAC;AACxC,MAAM,CAAC,MAAM,MAAM,GAAG,mBAAmB,CAAC;AAC1C,MAAM,CAAC,MAAM,IAAI,GAAG,iBAAiB,CAAC;AAiBtC,MAAM,UAAU,SAAS,CAAC,GAAgB;IACxC,MAAM,UAAU,GAAG,GAAG,CAAC,eAAe,IAAI,IAAI,CAAC;IAC/C,IAAI,UAAU,KAAK,IAAI,EAAE,CAAC;QACxB,OAAO,EAAE,KAAK,EAAE,UAAU,EAAE,IAAI,EAAE,OAAO,CAAC,UAAU,CAAC,EAAE,MAAM,EAAE,YAAY,EAAE,CAAC;IAChF,CAAC;IAED,MAAM,IAAI,GAAG,CAAC,GAAG,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;IACrC,MAAM,KAAK,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC;IACjC,MAAM,KAAK,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC;IAE/B,yEAAyE;IACzE,IAAI,UAAU,CAAC,KAAK,EAAE,YAAY,CAAC,EAAE,CAAC;QACpC,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,aAAa,EAAE,CAAC;IAC9D,CAAC;IAED,yEAAyE;IACzE,IAAI,GAAG,CAAC,MAAM,KAAK,WAAW,IAAI,KAAK,CAAC,UAAU,CAAC,iBAAiB,CAAC,EAAE,CAAC;QACtE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,CAAC;IAC9D,CAAC;IACD,IAAI,KAAK,IAAI,CAAC,IAAI,UAAU,CAAC,KAAK,EAAE,aAAa,CAAC,EAAE,CAAC;QACnD,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,eAAe,EAAE,CAAC;IAClE,CAAC;IACD,IAAI,KAAK,IAAI,CAAC,EAAE,CAAC;QACf,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,CAAC;IAC/D,CAAC;IAED,yEAAyE;IACzE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC;AAC9D,CAAC;AAED,MAAM,UAAU,OAAO,CAAC,OAAe;IACrC,IAAI,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC;QAAE,OAAO,MAAM,CAAC;IAC5C,IAAI,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC;QAAE,OAAO,OAAO,CAAC;IAC9C,OAAO,QAAQ,CAAC;AAClB,CAAC;AASD,
|
|
1
|
+
{"version":3,"file":"model-picker.js","sourceRoot":"","sources":["../src/model-picker.ts"],"names":[],"mappings":"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"}
|
package/dist/types.d.ts
CHANGED
package/package.json
CHANGED
|
@@ -1,54 +1,107 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: setup-discord
|
|
3
|
-
description:
|
|
4
|
-
version: 0.
|
|
3
|
+
description: Wire up a bidirectional Discord chat bridge between the user and the agent
|
|
4
|
+
version: 0.2.0
|
|
5
5
|
tools: [Bash, Read, Write, Edit]
|
|
6
|
-
triggers: ["setup discord", "help me with discord", "connect discord", "discord bot", "add discord", "discord setup"]
|
|
6
|
+
triggers: ["setup discord", "help me with discord", "connect discord", "discord bot", "add discord", "discord setup", "discord chat", "talk to you on discord"]
|
|
7
7
|
effort: medium
|
|
8
8
|
---
|
|
9
9
|
|
|
10
|
-
##
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
-
|
|
19
|
-
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
URL
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
10
|
+
## ⚠️ NON-NEGOTIABLE RULE: NEVER ASK "WHAT DO YOU WANT TO USE IT FOR?"
|
|
11
|
+
|
|
12
|
+
When the user says **anything** that triggers this skill — "set up
|
|
13
|
+
discord", "connect discord", "discord bot", "talk to you on discord",
|
|
14
|
+
etc. — the intent is **always the same**: a **two-way chat bridge**
|
|
15
|
+
so the user can message you in a Discord channel and you reply there.
|
|
16
|
+
|
|
17
|
+
You **must not** ask any of these:
|
|
18
|
+
- "What do you want to use Discord for?"
|
|
19
|
+
- "Notifications or something else?"
|
|
20
|
+
- "What should the bot do in the channel?"
|
|
21
|
+
- Any other meta-question about intent.
|
|
22
|
+
|
|
23
|
+
Just wire it up. If the user specifically says they want something
|
|
24
|
+
different, ADJUST then. Otherwise: collect credentials, run the
|
|
25
|
+
commands, confirm.
|
|
26
|
+
|
|
27
|
+
## Execution plan
|
|
28
|
+
|
|
29
|
+
You have `Bash`, `Read`, `Write`, `Edit` tools. Permission prompts are
|
|
30
|
+
auto-approved. Do the work.
|
|
31
|
+
|
|
32
|
+
### Step 1 — Collect credentials from the user
|
|
33
|
+
|
|
34
|
+
Tell the user exactly three things:
|
|
35
|
+
|
|
36
|
+
```
|
|
37
|
+
To wire up a Discord chat with me, I need three things. Steps:
|
|
38
|
+
|
|
39
|
+
1) Go to https://discord.com/developers/applications
|
|
40
|
+
→ New Application → name it → create → "Bot" tab → Reset Token → copy.
|
|
41
|
+
Under "Privileged Gateway Intents", enable "MESSAGE CONTENT INTENT".
|
|
42
|
+
|
|
43
|
+
2) In OAuth2 → URL Generator, tick `bot` + `applications.commands`
|
|
44
|
+
plus "Send Messages" + "Read Message History". Visit the generated
|
|
45
|
+
URL to add the bot to your server.
|
|
46
|
+
|
|
47
|
+
3) In Discord, Settings → Advanced → Developer Mode ON.
|
|
48
|
+
Then right-click the channel you want the bot in → Copy Channel ID.
|
|
49
|
+
And right-click your own avatar → Copy User ID.
|
|
50
|
+
|
|
51
|
+
Paste the three values: bot token, channel id, your user id.
|
|
52
|
+
```
|
|
53
|
+
|
|
54
|
+
Wait for all three. Don't proceed partial.
|
|
55
|
+
|
|
56
|
+
### Step 2 — Wire the channel
|
|
57
|
+
|
|
58
|
+
```bash
|
|
59
|
+
bajaclaw channel add <profile> discord --token <TOKEN> --channel-id <CHANNEL_ID>
|
|
60
|
+
```
|
|
61
|
+
|
|
62
|
+
Then add the user id to the allowlist by editing
|
|
63
|
+
`~/.bajaclaw/profiles/<profile>/config.json`. Find the discord entry
|
|
64
|
+
under `channels[]` and set `allowlist: [<USER_ID>]` (as a number).
|
|
65
|
+
|
|
66
|
+
Verify:
|
|
67
|
+
|
|
68
|
+
```bash
|
|
69
|
+
bajaclaw channel list <profile>
|
|
70
|
+
```
|
|
71
|
+
|
|
72
|
+
### Step 3 — Ensure the dep is present
|
|
73
|
+
|
|
74
|
+
```bash
|
|
75
|
+
npm install -g discord.js
|
|
76
|
+
```
|
|
77
|
+
|
|
78
|
+
### Step 4 — Start the gateway
|
|
79
|
+
|
|
80
|
+
```bash
|
|
81
|
+
bajaclaw daemon start <profile>
|
|
82
|
+
```
|
|
83
|
+
|
|
84
|
+
### Step 5 — Confirm and invite a test message
|
|
85
|
+
|
|
86
|
+
Say: "Done. Go to the channel you added me to and send any message —
|
|
87
|
+
I'll reply there."
|
|
88
|
+
|
|
89
|
+
## Verification checklist
|
|
90
|
+
|
|
91
|
+
- `bajaclaw channel list <profile>` shows a `discord` entry with the
|
|
92
|
+
token masked and the allowlist containing the user id.
|
|
93
|
+
- `bajaclaw daemon status <profile>` shows `running`.
|
|
94
|
+
- A test message in the channel appears as `gateway.discord.msg` in
|
|
95
|
+
`bajaclaw daemon logs <profile> --lines 30`.
|
|
96
|
+
- The user sees the bot reply within ~10s.
|
|
97
|
+
|
|
98
|
+
## Pitfalls (to anticipate, not pre-ask)
|
|
99
|
+
|
|
100
|
+
- If MESSAGE CONTENT INTENT is off in the portal, message bodies are
|
|
101
|
+
empty and the bot can't respond to content. Ask them to re-check
|
|
102
|
+
only if they report it's "not picking up messages."
|
|
103
|
+
- If the bot isn't in the server, the OAuth2 invite URL step was
|
|
104
|
+
missed — walk them through it if needed.
|
|
105
|
+
- To include DMs, remove the `channelId` filter from the config or
|
|
106
|
+
set it to the user's DM channel id.
|
|
107
|
+
- Don't echo the token back after it's in config.json.
|
|
@@ -1,54 +1,115 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: setup-telegram
|
|
3
|
-
description:
|
|
4
|
-
version: 0.
|
|
3
|
+
description: Wire up a bidirectional Telegram chat bridge between the user and the agent
|
|
4
|
+
version: 0.2.0
|
|
5
5
|
tools: [Bash, Read, Write, Edit]
|
|
6
|
-
triggers: ["setup telegram", "help me with telegram", "connect telegram", "telegram bot", "add telegram", "telegram setup"]
|
|
6
|
+
triggers: ["setup telegram", "help me with telegram", "connect telegram", "telegram bot", "add telegram", "telegram setup", "telegram chat", "message you on phone", "phone chat", "mobile chat"]
|
|
7
7
|
effort: medium
|
|
8
8
|
---
|
|
9
9
|
|
|
10
|
-
##
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
10
|
+
## ⚠️ NON-NEGOTIABLE RULE: NEVER ASK "WHAT DO YOU WANT TO USE IT FOR?"
|
|
11
|
+
|
|
12
|
+
When the user says **anything** that triggers this skill — "set up
|
|
13
|
+
telegram", "connect telegram", "telegram bot", "talk to you on my
|
|
14
|
+
phone", "message you from my phone", etc. — the intent is **always
|
|
15
|
+
the same**: a **two-way chat bridge** so the user can message you from
|
|
16
|
+
Telegram and you reply in the same thread.
|
|
17
|
+
|
|
18
|
+
You **must not** ask any of these:
|
|
19
|
+
- "What do you want to use Telegram for?"
|
|
20
|
+
- "Notifications, commands, or something else?"
|
|
21
|
+
- "What should this bot do?"
|
|
22
|
+
- Any other meta-question about intent.
|
|
23
|
+
|
|
24
|
+
The user already told you — they want to chat. Just wire it up.
|
|
25
|
+
|
|
26
|
+
If they specifically say they want something different (e.g.
|
|
27
|
+
"I want it for error alerts only"), ADJUST then. Otherwise: silence,
|
|
28
|
+
collect credentials, run the commands.
|
|
29
|
+
|
|
30
|
+
## Execution plan
|
|
31
|
+
|
|
32
|
+
You have `Bash`, `Read`, `Write`, `Edit` tools. Permission prompts are
|
|
33
|
+
auto-approved by BajaClaw's backend invocation. Just do the work.
|
|
34
|
+
|
|
35
|
+
### Step 1 — Collect credentials from the user
|
|
36
|
+
|
|
37
|
+
Tell the user exactly two things to get:
|
|
38
|
+
|
|
39
|
+
```
|
|
40
|
+
To wire up a Telegram chat with me, I need:
|
|
41
|
+
|
|
42
|
+
1) A bot token from @BotFather
|
|
43
|
+
In Telegram, message @BotFather → /newbot → follow the prompts
|
|
44
|
+
→ copy the token (looks like 123456789:ABCdef...).
|
|
45
|
+
|
|
46
|
+
2) Your numeric Telegram user ID from @userinfobot
|
|
47
|
+
Message @userinfobot → copy the number it replies with.
|
|
48
|
+
|
|
49
|
+
Paste both here and I'll wire it up.
|
|
50
|
+
```
|
|
51
|
+
|
|
52
|
+
Wait for the user to reply with the token + user id. Don't proceed
|
|
53
|
+
without both — without the user id the allowlist is empty and no
|
|
54
|
+
messages will route through.
|
|
55
|
+
|
|
56
|
+
### Step 2 — Wire the channel
|
|
57
|
+
|
|
58
|
+
Once you have both values, run:
|
|
59
|
+
|
|
60
|
+
```bash
|
|
61
|
+
bajaclaw channel add <profile> telegram --token <TOKEN> --channel-id <USER_ID>
|
|
62
|
+
```
|
|
63
|
+
|
|
64
|
+
Where `<profile>` is the currently active profile (default: `default`
|
|
65
|
+
unless BAJACLAW_PROFILE is set to something else in the environment).
|
|
66
|
+
|
|
67
|
+
Then verify:
|
|
68
|
+
|
|
69
|
+
```bash
|
|
70
|
+
bajaclaw channel list <profile>
|
|
71
|
+
```
|
|
72
|
+
|
|
73
|
+
### Step 3 — Ensure the dep is present
|
|
74
|
+
|
|
75
|
+
The adapter uses `node-telegram-bot-api` (optional dependency). Check
|
|
76
|
+
if it's installed; if not, install it globally:
|
|
77
|
+
|
|
78
|
+
```bash
|
|
79
|
+
npm install -g node-telegram-bot-api
|
|
80
|
+
```
|
|
81
|
+
|
|
82
|
+
### Step 4 — Start the gateway
|
|
83
|
+
|
|
84
|
+
```bash
|
|
85
|
+
bajaclaw daemon start <profile>
|
|
86
|
+
```
|
|
87
|
+
|
|
88
|
+
The daemon hosts the telegram adapter that polls for messages.
|
|
89
|
+
|
|
90
|
+
### Step 5 — Confirm and invite the user to test
|
|
91
|
+
|
|
92
|
+
Say something like: "Done. Open Telegram, send any message to the bot
|
|
93
|
+
(it'll be named whatever you picked in @BotFather), and I'll reply."
|
|
94
|
+
|
|
95
|
+
## Verification checklist
|
|
96
|
+
|
|
97
|
+
- `bajaclaw channel list <profile>` shows a `telegram` entry with the
|
|
98
|
+
token set (printed as `***…<last 4 chars>`) and the allowlist
|
|
99
|
+
containing the user's numeric id.
|
|
100
|
+
- `bajaclaw daemon status <profile>` shows `running`.
|
|
101
|
+
- Sending a message from Telegram lands in `bajaclaw daemon logs
|
|
102
|
+
<profile> --lines 30` as a `gateway.telegram.msg` entry.
|
|
103
|
+
- The user sees a reply in the Telegram thread (may take a few seconds
|
|
104
|
+
for the cycle to run on first message).
|
|
105
|
+
|
|
106
|
+
## Pitfalls (to anticipate, not pre-ask)
|
|
107
|
+
|
|
108
|
+
- Bot cannot DM the user first — the user must message the bot first
|
|
109
|
+
OR add the bot to a group. Tell the user this only if they report
|
|
110
|
+
"I don't see anything happen."
|
|
111
|
+
- If the token is wrong: `gateway.telegram.error` will appear in the
|
|
112
|
+
daemon log within ~10 seconds. Ask them to re-check the token.
|
|
113
|
+
- Never echo the token back in the chat once it's in config.json.
|
|
114
|
+
- `bajaclaw uninstall --keep-data` preserves the channel config;
|
|
115
|
+
full uninstall removes it.
|