aoaoe 0.5.0 → 0.5.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/chat.js +277 -159
- package/dist/chat.js.map +1 -1
- package/dist/daemon-state.d.ts.map +1 -1
- package/dist/daemon-state.js +6 -1
- package/dist/daemon-state.js.map +1 -1
- package/dist/task-parser.d.ts +22 -0
- package/dist/task-parser.d.ts.map +1 -0
- package/dist/task-parser.js +103 -0
- package/dist/task-parser.js.map +1 -0
- package/dist/types.d.ts +1 -0
- package/dist/types.d.ts.map +1 -1
- package/package.json +1 -1
package/dist/chat.js
CHANGED
|
@@ -1,23 +1,22 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
|
-
// chat.ts --
|
|
3
|
-
//
|
|
4
|
-
//
|
|
5
|
-
// and the daemon picks it up on the next poll cycle.
|
|
2
|
+
// chat.ts -- interactive chat UI for the aoaoe reasoner
|
|
3
|
+
// runs inside an AoE-managed tmux pane (registered via `aoaoe register`).
|
|
4
|
+
// reads conversation.log for daemon output, writes user input to pending-input.txt.
|
|
6
5
|
//
|
|
7
|
-
//
|
|
8
|
-
//
|
|
9
|
-
// - per-pane task display (/tasks command)
|
|
10
|
-
// - ESC-ESC to interrupt the current reasoner (like OpenCode)
|
|
6
|
+
// works standalone too: captures all AoE panes directly via tmux + aoe CLI
|
|
7
|
+
// to show /overview even when the daemon isn't running.
|
|
11
8
|
import { createInterface, emitKeypressEvents } from "node:readline";
|
|
12
9
|
import { appendFileSync, writeFileSync, existsSync, mkdirSync, watchFile, unwatchFile, readFileSync, statSync, openSync, readSync, closeSync, unlinkSync } from "node:fs";
|
|
10
|
+
import { execFileSync } from "node:child_process";
|
|
13
11
|
import { join } from "node:path";
|
|
14
12
|
import { homedir } from "node:os";
|
|
15
13
|
import { readState, requestInterrupt } from "./daemon-state.js";
|
|
14
|
+
import { parseTasks, parseModel, parseContext, parseCost, parseLastLine } from "./task-parser.js";
|
|
16
15
|
const AOAOE_DIR = join(homedir(), ".aoaoe");
|
|
17
16
|
const CONVO_LOG = join(AOAOE_DIR, "conversation.log");
|
|
18
17
|
const INPUT_FILE = join(AOAOE_DIR, "pending-input.txt");
|
|
19
18
|
const PID_FILE = join(AOAOE_DIR, "chat.pid");
|
|
20
|
-
// ANSI
|
|
19
|
+
// ANSI
|
|
21
20
|
const DIM = "\x1b[2m";
|
|
22
21
|
const BOLD = "\x1b[1m";
|
|
23
22
|
const GREEN = "\x1b[32m";
|
|
@@ -26,49 +25,44 @@ const YELLOW = "\x1b[33m";
|
|
|
26
25
|
const RED = "\x1b[31m";
|
|
27
26
|
const MAGENTA = "\x1b[35m";
|
|
28
27
|
const RESET = "\x1b[0m";
|
|
29
|
-
const SAVE_CURSOR = "\x1b7";
|
|
30
|
-
const RESTORE_CURSOR = "\x1b8";
|
|
31
|
-
const CLEAR_LINE = "\x1b[2K";
|
|
32
28
|
// ESC-ESC interrupt detection
|
|
33
29
|
let lastEscTime = 0;
|
|
34
30
|
const ESC_DOUBLE_TAP_MS = 500;
|
|
31
|
+
// track last displayed status to avoid spamming
|
|
32
|
+
let lastStatusLine = "";
|
|
35
33
|
function main() {
|
|
36
34
|
mkdirSync(AOAOE_DIR, { recursive: true });
|
|
37
|
-
// write PID so daemon can detect we're running
|
|
38
35
|
writeFileSync(PID_FILE, String(process.pid));
|
|
39
|
-
//
|
|
36
|
+
// banner
|
|
40
37
|
console.log(`${BOLD}${CYAN}aoaoe reasoner chat${RESET}`);
|
|
41
|
-
console.log(`${DIM}messages you type here are sent to the reasoner on the next poll cycle${RESET}`);
|
|
42
|
-
console.log(`${DIM}the daemon writes observations and decisions to this view${RESET}`);
|
|
43
38
|
console.log(`${DIM}type /help for commands, ESC ESC to interrupt reasoner, Ctrl+C to exit${RESET}`);
|
|
39
|
+
// daemon check on startup
|
|
40
|
+
checkDaemon();
|
|
44
41
|
console.log();
|
|
45
|
-
// replay
|
|
42
|
+
// replay conversation history
|
|
46
43
|
replayLog();
|
|
47
|
-
// watch conversation.log for new
|
|
44
|
+
// watch conversation.log for new daemon output
|
|
48
45
|
let lastSize = existsSync(CONVO_LOG) ? statSync(CONVO_LOG).size : 0;
|
|
49
46
|
watchFile(CONVO_LOG, { interval: 500 }, (curr) => {
|
|
50
47
|
if (curr.size > lastSize) {
|
|
51
|
-
// read only new bytes
|
|
52
48
|
const fd = openSync(CONVO_LOG, "r");
|
|
53
49
|
const buf = Buffer.alloc(curr.size - lastSize);
|
|
54
50
|
readSync(fd, buf, 0, buf.length, lastSize);
|
|
55
51
|
closeSync(fd);
|
|
56
52
|
const newText = buf.toString("utf-8");
|
|
57
|
-
// move cursor to start of line, clear it, print new content, then re-show prompt
|
|
58
53
|
process.stdout.write(`\r\x1b[K${colorize(newText)}`);
|
|
59
54
|
rl.prompt(true);
|
|
60
55
|
lastSize = curr.size;
|
|
61
56
|
}
|
|
62
57
|
});
|
|
63
|
-
//
|
|
58
|
+
// ESC-ESC detection
|
|
64
59
|
if (process.stdin.isTTY) {
|
|
65
60
|
emitKeypressEvents(process.stdin);
|
|
66
61
|
process.stdin.on("keypress", (_ch, key) => {
|
|
67
62
|
if (key?.name === "escape" || key?.sequence === "\x1b") {
|
|
68
63
|
const now = Date.now();
|
|
69
64
|
if (now - lastEscTime < ESC_DOUBLE_TAP_MS) {
|
|
70
|
-
|
|
71
|
-
handleInterrupt();
|
|
65
|
+
handleInterrupt(rl);
|
|
72
66
|
lastEscTime = 0;
|
|
73
67
|
}
|
|
74
68
|
else {
|
|
@@ -76,12 +70,11 @@ function main() {
|
|
|
76
70
|
}
|
|
77
71
|
}
|
|
78
72
|
else {
|
|
79
|
-
// any other key resets the ESC timer
|
|
80
73
|
lastEscTime = 0;
|
|
81
74
|
}
|
|
82
75
|
});
|
|
83
76
|
}
|
|
84
|
-
//
|
|
77
|
+
// readline
|
|
85
78
|
const rl = createInterface({
|
|
86
79
|
input: process.stdin,
|
|
87
80
|
output: process.stdout,
|
|
@@ -89,170 +82,300 @@ function main() {
|
|
|
89
82
|
terminal: true,
|
|
90
83
|
});
|
|
91
84
|
rl.prompt();
|
|
92
|
-
//
|
|
85
|
+
// status ticker -- print a status line every 5s, only if it changed
|
|
93
86
|
const statusInterval = setInterval(() => {
|
|
94
|
-
|
|
95
|
-
|
|
87
|
+
const line = buildStatusLine();
|
|
88
|
+
if (line && line !== lastStatusLine) {
|
|
89
|
+
process.stdout.write(`\r\x1b[K${DIM}${line}${RESET}\n`);
|
|
90
|
+
lastStatusLine = line;
|
|
91
|
+
rl.prompt(true);
|
|
92
|
+
}
|
|
93
|
+
// also set tmux pane title
|
|
94
|
+
const titleLine = buildStatusLine(true);
|
|
95
|
+
if (titleLine)
|
|
96
|
+
process.stdout.write(`\x1b]2;${titleLine}\x07`);
|
|
97
|
+
}, 5000);
|
|
96
98
|
rl.on("line", (line) => {
|
|
97
99
|
const trimmed = line.trim();
|
|
98
100
|
if (!trimmed) {
|
|
99
101
|
rl.prompt();
|
|
100
102
|
return;
|
|
101
103
|
}
|
|
102
|
-
//
|
|
103
|
-
if (trimmed
|
|
104
|
-
|
|
104
|
+
// slash commands
|
|
105
|
+
if (trimmed.startsWith("/")) {
|
|
106
|
+
handleCommand(trimmed, rl);
|
|
105
107
|
rl.prompt();
|
|
106
108
|
return;
|
|
107
109
|
}
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
110
|
+
// regular message -> queue for reasoner
|
|
111
|
+
appendToInput(trimmed);
|
|
112
|
+
const eta = getCountdown();
|
|
113
|
+
if (eta !== null) {
|
|
114
|
+
console.log(`${DIM}queued -- reasoner will read this in ~${eta}s${RESET}`);
|
|
113
115
|
}
|
|
114
|
-
if (
|
|
115
|
-
|
|
116
|
-
console.log(`${DIM}dashboard requested${RESET}`);
|
|
117
|
-
rl.prompt();
|
|
118
|
-
return;
|
|
116
|
+
else if (isDaemonRunning()) {
|
|
117
|
+
console.log(`${DIM}queued -- waiting for next reasoning cycle${RESET}`);
|
|
119
118
|
}
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
return;
|
|
119
|
+
else {
|
|
120
|
+
console.log(`${YELLOW}queued, but daemon is not running!${RESET}`);
|
|
121
|
+
console.log(`${DIM}start it with: aoaoe${RESET}`);
|
|
124
122
|
}
|
|
125
|
-
|
|
123
|
+
rl.prompt();
|
|
124
|
+
});
|
|
125
|
+
rl.on("close", () => { clearInterval(statusInterval); cleanup(); process.exit(0); });
|
|
126
|
+
process.on("SIGINT", () => { clearInterval(statusInterval); cleanup(); process.exit(0); });
|
|
127
|
+
process.on("SIGTERM", () => { clearInterval(statusInterval); cleanup(); process.exit(0); });
|
|
128
|
+
}
|
|
129
|
+
// --- commands ---
|
|
130
|
+
function handleCommand(cmd, rl) {
|
|
131
|
+
const parts = cmd.split(/\s+/);
|
|
132
|
+
switch (parts[0]) {
|
|
133
|
+
case "/help":
|
|
134
|
+
printHelp();
|
|
135
|
+
break;
|
|
136
|
+
case "/overview":
|
|
137
|
+
printOverview();
|
|
138
|
+
break;
|
|
139
|
+
case "/tasks":
|
|
140
|
+
printOverview();
|
|
141
|
+
break; // alias
|
|
142
|
+
case "/status":
|
|
143
|
+
printStatus();
|
|
144
|
+
break;
|
|
145
|
+
case "/dashboard":
|
|
146
|
+
appendToInput("__CMD_DASHBOARD__");
|
|
147
|
+
console.log(`${DIM}dashboard requested${RESET}`);
|
|
148
|
+
break;
|
|
149
|
+
case "/verbose":
|
|
126
150
|
appendToInput("__CMD_VERBOSE__");
|
|
127
151
|
console.log(`${DIM}verbose toggled${RESET}`);
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
}
|
|
131
|
-
if (trimmed === "/pause") {
|
|
152
|
+
break;
|
|
153
|
+
case "/pause":
|
|
132
154
|
appendToInput("__CMD_PAUSE__");
|
|
133
155
|
console.log(`${DIM}pause requested${RESET}`);
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
}
|
|
137
|
-
if (trimmed === "/resume") {
|
|
156
|
+
break;
|
|
157
|
+
case "/resume":
|
|
138
158
|
appendToInput("__CMD_RESUME__");
|
|
139
159
|
console.log(`${DIM}resume requested${RESET}`);
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
rl.prompt();
|
|
146
|
-
return;
|
|
147
|
-
}
|
|
148
|
-
if (trimmed === "/clear") {
|
|
160
|
+
break;
|
|
161
|
+
case "/interrupt":
|
|
162
|
+
handleInterrupt(rl);
|
|
163
|
+
break;
|
|
164
|
+
case "/clear":
|
|
149
165
|
process.stdout.write("\x1b[2J\x1b[H");
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
appendToInput(trimmed);
|
|
155
|
-
console.log(`${DIM}queued for next reasoning cycle${RESET}`);
|
|
156
|
-
rl.prompt();
|
|
157
|
-
});
|
|
158
|
-
rl.on("close", () => {
|
|
159
|
-
clearInterval(statusInterval);
|
|
160
|
-
cleanup();
|
|
161
|
-
process.exit(0);
|
|
162
|
-
});
|
|
163
|
-
process.on("SIGINT", () => {
|
|
164
|
-
clearInterval(statusInterval);
|
|
165
|
-
cleanup();
|
|
166
|
-
process.exit(0);
|
|
167
|
-
});
|
|
168
|
-
process.on("SIGTERM", () => {
|
|
169
|
-
clearInterval(statusInterval);
|
|
170
|
-
cleanup();
|
|
171
|
-
process.exit(0);
|
|
172
|
-
});
|
|
166
|
+
break;
|
|
167
|
+
default:
|
|
168
|
+
console.log(`${DIM}unknown command: ${parts[0]} (try /help)${RESET}`);
|
|
169
|
+
}
|
|
173
170
|
}
|
|
174
|
-
|
|
171
|
+
// --- interrupt ---
|
|
172
|
+
function handleInterrupt(rl) {
|
|
175
173
|
const state = readState();
|
|
176
174
|
if (state?.phase === "reasoning") {
|
|
177
175
|
requestInterrupt();
|
|
178
|
-
console.log(
|
|
179
|
-
console.log(`${
|
|
176
|
+
console.log(`\n${RED}${BOLD}>>> interrupting reasoner <<<${RESET}`);
|
|
177
|
+
console.log(`${YELLOW}type your message now -- it will be sent before the next cycle resumes${RESET}`);
|
|
178
|
+
rl.prompt(true);
|
|
179
|
+
}
|
|
180
|
+
else if (!isDaemonRunning()) {
|
|
181
|
+
console.log(`${YELLOW}daemon is not running -- nothing to interrupt${RESET}`);
|
|
182
|
+
console.log(`${DIM}start it with: aoaoe${RESET}`);
|
|
180
183
|
}
|
|
181
184
|
else {
|
|
182
|
-
console.log(`${DIM}
|
|
185
|
+
console.log(`${DIM}reasoner not active right now (phase: ${state?.phase ?? "sleeping"})${RESET}`);
|
|
186
|
+
const eta = getCountdown();
|
|
187
|
+
if (eta !== null)
|
|
188
|
+
console.log(`${DIM}next cycle in ~${eta}s -- type your message, it will be included${RESET}`);
|
|
183
189
|
}
|
|
184
190
|
}
|
|
185
|
-
//
|
|
186
|
-
function
|
|
191
|
+
// --- /overview: capture all panes directly via tmux + aoe, parse tasks ---
|
|
192
|
+
function printOverview() {
|
|
193
|
+
console.log(`\n${BOLD}${CYAN}=== aoaoe overview ===${RESET}`);
|
|
194
|
+
// daemon status
|
|
187
195
|
const state = readState();
|
|
188
|
-
|
|
196
|
+
const daemonUp = isDaemonRunning();
|
|
197
|
+
if (daemonUp) {
|
|
198
|
+
const eta = getCountdown();
|
|
199
|
+
const phaseStr = state?.phase === "reasoning" ? `${YELLOW}reasoning${RESET}`
|
|
200
|
+
: state?.phase === "executing" ? `${GREEN}executing${RESET}`
|
|
201
|
+
: state?.phase === "interrupted" ? `${RED}INTERRUPTED${RESET}`
|
|
202
|
+
: state?.phase ?? "sleeping";
|
|
203
|
+
console.log(` daemon: ${GREEN}running${RESET} | phase: ${phaseStr} | poll #${state?.pollCount ?? "?"}${eta !== null ? ` | next cycle: ${eta}s` : ""}`);
|
|
204
|
+
}
|
|
205
|
+
else {
|
|
206
|
+
console.log(` daemon: ${RED}not running${RESET} ${DIM}(start with: aoaoe)${RESET}`);
|
|
207
|
+
}
|
|
208
|
+
console.log();
|
|
209
|
+
// list all AoE sessions by calling aoe CLI directly
|
|
210
|
+
const sessions = listAoeSessions();
|
|
211
|
+
if (sessions.length === 0) {
|
|
212
|
+
console.log(` ${DIM}no AoE sessions found${RESET}`);
|
|
213
|
+
console.log();
|
|
214
|
+
return;
|
|
215
|
+
}
|
|
216
|
+
for (const s of sessions) {
|
|
217
|
+
// capture tmux pane output
|
|
218
|
+
const output = captureTmuxPane(s.tmuxName);
|
|
219
|
+
if (!output) {
|
|
220
|
+
const statusIcon = `${RED}x${RESET}`;
|
|
221
|
+
console.log(`${statusIcon} ${BOLD}${s.title}${RESET} ${DIM}[${s.tool}]${RESET} ${DIM}(tmux pane not found)${RESET}`);
|
|
222
|
+
console.log();
|
|
223
|
+
continue;
|
|
224
|
+
}
|
|
225
|
+
// parse tasks and metadata
|
|
226
|
+
const tasks = parseTasks(output);
|
|
227
|
+
const model = parseModel(output);
|
|
228
|
+
const context = parseContext(output);
|
|
229
|
+
const cost = parseCost(output);
|
|
230
|
+
const lastLine = parseLastLine(output);
|
|
231
|
+
// status icon
|
|
232
|
+
const statusIcon = s.status === "working" ? `${GREEN}~${RESET}`
|
|
233
|
+
: s.status === "idle" ? `${DIM}.${RESET}`
|
|
234
|
+
: s.status === "error" ? `${RED}!${RESET}`
|
|
235
|
+
: `${YELLOW}?${RESET}`;
|
|
236
|
+
// header
|
|
237
|
+
const meta = [];
|
|
238
|
+
if (model)
|
|
239
|
+
meta.push(model);
|
|
240
|
+
if (context)
|
|
241
|
+
meta.push(context);
|
|
242
|
+
if (cost)
|
|
243
|
+
meta.push(cost);
|
|
244
|
+
const metaStr = meta.length > 0 ? `${DIM}(${meta.join(" | ")})${RESET}` : "";
|
|
245
|
+
console.log(`${statusIcon} ${BOLD}${s.title}${RESET} ${DIM}[${s.tool}]${RESET} ${metaStr}`);
|
|
246
|
+
// tasks
|
|
247
|
+
if (tasks.length > 0) {
|
|
248
|
+
for (const t of tasks) {
|
|
249
|
+
const icon = t.status === "done" ? `${GREEN}✓${RESET}`
|
|
250
|
+
: t.status === "in_progress" ? `${YELLOW}•${RESET}`
|
|
251
|
+
: t.status === "failed" ? `${RED}✗${RESET}`
|
|
252
|
+
: `${DIM}○${RESET}`;
|
|
253
|
+
console.log(` [${icon}] ${t.text}`);
|
|
254
|
+
}
|
|
255
|
+
}
|
|
256
|
+
else {
|
|
257
|
+
console.log(` ${DIM}(no task list detected)${RESET}`);
|
|
258
|
+
}
|
|
259
|
+
// last activity
|
|
260
|
+
console.log(` ${DIM}> ${lastLine}${RESET}`);
|
|
261
|
+
console.log();
|
|
262
|
+
}
|
|
263
|
+
}
|
|
264
|
+
// --- /status: quick daemon status ---
|
|
265
|
+
function printStatus() {
|
|
266
|
+
const state = readState();
|
|
267
|
+
if (!isDaemonRunning()) {
|
|
268
|
+
console.log(`${YELLOW}daemon is not running${RESET}`);
|
|
269
|
+
console.log(`${DIM}start it with: aoaoe${RESET}`);
|
|
189
270
|
return;
|
|
271
|
+
}
|
|
272
|
+
const eta = getCountdown();
|
|
273
|
+
console.log(`${BOLD}daemon status:${RESET}`);
|
|
274
|
+
console.log(` phase: ${state?.phase ?? "?"}`);
|
|
275
|
+
console.log(` poll #${state?.pollCount ?? "?"}`);
|
|
276
|
+
console.log(` sessions: ${state?.sessionCount ?? "?"}`);
|
|
277
|
+
console.log(` interval: ${state?.pollIntervalMs ?? "?"}ms`);
|
|
278
|
+
if (eta !== null)
|
|
279
|
+
console.log(` next cycle: ${eta}s`);
|
|
280
|
+
if (state?.paused)
|
|
281
|
+
console.log(` ${YELLOW}PAUSED${RESET}`);
|
|
282
|
+
}
|
|
283
|
+
function listAoeSessions() {
|
|
284
|
+
try {
|
|
285
|
+
const out = execFileSync("aoe", ["list", "--json"], { timeout: 10_000, encoding: "utf-8" });
|
|
286
|
+
const raw = JSON.parse(out);
|
|
287
|
+
// get status for each session
|
|
288
|
+
return raw.map((s) => {
|
|
289
|
+
const id = s.id ?? "";
|
|
290
|
+
const title = s.title ?? "";
|
|
291
|
+
let status = "unknown";
|
|
292
|
+
try {
|
|
293
|
+
const showOut = execFileSync("aoe", ["session", "show", id, "--json"], { timeout: 5_000, encoding: "utf-8" });
|
|
294
|
+
status = JSON.parse(showOut).status ?? "unknown";
|
|
295
|
+
}
|
|
296
|
+
catch { }
|
|
297
|
+
// replicate AoE tmux naming
|
|
298
|
+
const safeTitle = title.replace(/[^a-zA-Z0-9_-]/g, "_").slice(0, 20);
|
|
299
|
+
const tmuxName = `aoe_${safeTitle}_${id.slice(0, 8)}`;
|
|
300
|
+
return { id, title, tool: s.tool ?? "", status, tmuxName };
|
|
301
|
+
}).filter((s) => s.title !== "aoaoe"); // exclude ourselves
|
|
302
|
+
}
|
|
303
|
+
catch {
|
|
304
|
+
return [];
|
|
305
|
+
}
|
|
306
|
+
}
|
|
307
|
+
function captureTmuxPane(tmuxName) {
|
|
308
|
+
try {
|
|
309
|
+
return execFileSync("tmux", ["capture-pane", "-t", tmuxName, "-p", "-S", "-100"], {
|
|
310
|
+
timeout: 5_000, encoding: "utf-8",
|
|
311
|
+
});
|
|
312
|
+
}
|
|
313
|
+
catch {
|
|
314
|
+
return null;
|
|
315
|
+
}
|
|
316
|
+
}
|
|
317
|
+
// --- daemon connection check ---
|
|
318
|
+
function isDaemonRunning() {
|
|
319
|
+
const state = readState();
|
|
320
|
+
if (!state)
|
|
321
|
+
return false;
|
|
322
|
+
// state file exists -- check if it's recent (within 2x poll interval or 30s max)
|
|
323
|
+
const staleMs = Math.max(state.pollIntervalMs * 2, 30_000);
|
|
324
|
+
const age = Date.now() - state.phaseStartedAt;
|
|
325
|
+
return age < staleMs;
|
|
326
|
+
}
|
|
327
|
+
function getCountdown() {
|
|
328
|
+
const state = readState();
|
|
329
|
+
if (!state || !isDaemonRunning())
|
|
330
|
+
return null;
|
|
331
|
+
if (state.phase === "sleeping" && state.nextTickAt) {
|
|
332
|
+
const remaining = Math.max(0, Math.ceil((state.nextTickAt - Date.now()) / 1000));
|
|
333
|
+
return remaining;
|
|
334
|
+
}
|
|
335
|
+
return null;
|
|
336
|
+
}
|
|
337
|
+
function checkDaemon() {
|
|
338
|
+
if (isDaemonRunning()) {
|
|
339
|
+
const state = readState();
|
|
340
|
+
const eta = getCountdown();
|
|
341
|
+
console.log(`${GREEN}daemon connected${RESET} ${DIM}(${state.sessionCount} sessions, poll #${state.pollCount})${RESET}`);
|
|
342
|
+
if (eta !== null)
|
|
343
|
+
console.log(`${DIM}next reasoning cycle in ${eta}s${RESET}`);
|
|
344
|
+
}
|
|
345
|
+
else {
|
|
346
|
+
console.log(`${YELLOW}daemon not detected${RESET} ${DIM}-- start it with: aoaoe${RESET}`);
|
|
347
|
+
console.log(`${DIM}/overview still works (captures panes directly)${RESET}`);
|
|
348
|
+
}
|
|
349
|
+
}
|
|
350
|
+
// --- status line (printed periodically, only when changed) ---
|
|
351
|
+
function buildStatusLine(forTitle = false) {
|
|
352
|
+
const state = readState();
|
|
353
|
+
if (!state || !isDaemonRunning())
|
|
354
|
+
return forTitle ? "aoaoe (daemon offline)" : null;
|
|
190
355
|
const parts = [];
|
|
191
|
-
// phase indicator
|
|
192
|
-
const phaseIcons = {
|
|
193
|
-
sleeping: "zzz",
|
|
194
|
-
polling: "...",
|
|
195
|
-
reasoning: "thinking",
|
|
196
|
-
executing: "running",
|
|
197
|
-
interrupted: "INTERRUPTED",
|
|
198
|
-
};
|
|
199
|
-
const phaseStr = phaseIcons[state.phase] ?? state.phase;
|
|
200
|
-
// countdown to next tick
|
|
201
356
|
if (state.phase === "sleeping" && state.nextTickAt) {
|
|
202
357
|
const remaining = Math.max(0, Math.ceil((state.nextTickAt - Date.now()) / 1000));
|
|
203
|
-
parts.push(`next
|
|
358
|
+
parts.push(`next: ${remaining}s`);
|
|
204
359
|
}
|
|
205
360
|
else if (state.phase === "reasoning") {
|
|
206
361
|
const elapsed = Math.floor((Date.now() - state.phaseStartedAt) / 1000);
|
|
207
362
|
parts.push(`reasoning: ${elapsed}s`);
|
|
208
363
|
}
|
|
209
364
|
else {
|
|
210
|
-
parts.push(
|
|
365
|
+
parts.push(state.phase);
|
|
211
366
|
}
|
|
212
|
-
// session count
|
|
213
367
|
parts.push(`${state.sessionCount} sessions`);
|
|
368
|
+
parts.push(`poll #${state.pollCount}`);
|
|
214
369
|
if (state.paused)
|
|
215
370
|
parts.push("PAUSED");
|
|
216
|
-
parts.
|
|
217
|
-
const statusLine = parts.join(" | ");
|
|
218
|
-
// write status to terminal title (visible in tmux pane title)
|
|
219
|
-
process.stdout.write(`\x1b]0;aoaoe: ${statusLine}\x07`);
|
|
220
|
-
// also write a status line above the prompt using save/restore cursor
|
|
221
|
-
// this overwrites the line above the current prompt
|
|
222
|
-
process.stderr.write(`${SAVE_CURSOR}\x1b[s` + // save position
|
|
223
|
-
`\x1b[1A` + // move up one line
|
|
224
|
-
`\r${CLEAR_LINE}` + // clear that line
|
|
225
|
-
`${DIM}[${statusLine}]${RESET}` +
|
|
226
|
-
`\x1b[u${RESTORE_CURSOR}` // restore position
|
|
227
|
-
);
|
|
228
|
-
}
|
|
229
|
-
function printTasks() {
|
|
230
|
-
const state = readState();
|
|
231
|
-
if (!state || state.sessions.length === 0) {
|
|
232
|
-
console.log(`${DIM}no active sessions${RESET}`);
|
|
233
|
-
return;
|
|
234
|
-
}
|
|
235
|
-
console.log(`\n${BOLD}session tasks:${RESET}`);
|
|
236
|
-
for (const s of state.sessions) {
|
|
237
|
-
const statusIcon = s.status === "working" ? "~" : s.status === "idle" ? "." : s.status === "error" ? "!" : "?";
|
|
238
|
-
const task = s.currentTask ?? `${DIM}(no task assigned)${RESET}`;
|
|
239
|
-
const activity = s.lastActivity
|
|
240
|
-
? `${DIM}last: ${s.lastActivity.slice(0, 60)}${RESET}`
|
|
241
|
-
: "";
|
|
242
|
-
console.log(` ${statusIcon} ${BOLD}${s.title}${RESET} [${s.tool}] ${s.id.slice(0, 8)}`);
|
|
243
|
-
console.log(` task: ${task}`);
|
|
244
|
-
if (activity)
|
|
245
|
-
console.log(` ${activity}`);
|
|
246
|
-
}
|
|
247
|
-
console.log();
|
|
371
|
+
return parts.join(" | ");
|
|
248
372
|
}
|
|
373
|
+
// --- helpers ---
|
|
249
374
|
function appendToInput(msg) {
|
|
250
375
|
try {
|
|
251
376
|
appendFileSync(INPUT_FILE, msg + "\n");
|
|
252
377
|
}
|
|
253
|
-
catch {
|
|
254
|
-
// ignore write errors
|
|
255
|
-
}
|
|
378
|
+
catch { }
|
|
256
379
|
}
|
|
257
380
|
function replayLog() {
|
|
258
381
|
if (!existsSync(CONVO_LOG))
|
|
@@ -264,11 +387,8 @@ function replayLog() {
|
|
|
264
387
|
console.log(`${DIM}--- end of history ---${RESET}\n`);
|
|
265
388
|
}
|
|
266
389
|
}
|
|
267
|
-
catch {
|
|
268
|
-
// ignore read errors
|
|
269
|
-
}
|
|
390
|
+
catch { }
|
|
270
391
|
}
|
|
271
|
-
// colorize conversation log lines based on their tag
|
|
272
392
|
function colorize(text) {
|
|
273
393
|
return text.replace(/^(.*?\[)(observation|you|reasoner|action|\+ action|! action|system)(\].*$)/gm, (_, pre, tag, post) => {
|
|
274
394
|
switch (tag) {
|
|
@@ -285,18 +405,19 @@ function colorize(text) {
|
|
|
285
405
|
function printHelp() {
|
|
286
406
|
console.log(`
|
|
287
407
|
${BOLD}commands:${RESET}
|
|
288
|
-
/
|
|
289
|
-
/
|
|
290
|
-
/
|
|
291
|
-
/
|
|
292
|
-
/
|
|
293
|
-
/
|
|
294
|
-
/
|
|
295
|
-
/
|
|
296
|
-
/clear
|
|
408
|
+
/overview show all AoE sessions with tasks and status (works without daemon)
|
|
409
|
+
/tasks alias for /overview
|
|
410
|
+
/status daemon connection status + countdown
|
|
411
|
+
/dashboard request full dashboard from daemon
|
|
412
|
+
/interrupt interrupt the current reasoner call
|
|
413
|
+
/verbose toggle verbose logging
|
|
414
|
+
/pause pause the daemon
|
|
415
|
+
/resume resume the daemon
|
|
416
|
+
/clear clear the screen
|
|
417
|
+
/help show this help
|
|
297
418
|
|
|
298
419
|
${BOLD}shortcuts:${RESET}
|
|
299
|
-
ESC ESC
|
|
420
|
+
ESC ESC interrupt the current reasoner (same as /interrupt)
|
|
300
421
|
|
|
301
422
|
${BOLD}anything else${RESET} is sent to the reasoner as an operator message
|
|
302
423
|
`);
|
|
@@ -304,14 +425,11 @@ ${BOLD}anything else${RESET} is sent to the reasoner as an operator message
|
|
|
304
425
|
function cleanup() {
|
|
305
426
|
unwatchFile(CONVO_LOG);
|
|
306
427
|
try {
|
|
307
|
-
// only remove PID file if it's still ours
|
|
308
428
|
if (existsSync(PID_FILE) && readFileSync(PID_FILE, "utf-8").trim() === String(process.pid)) {
|
|
309
429
|
unlinkSync(PID_FILE);
|
|
310
430
|
}
|
|
311
431
|
}
|
|
312
|
-
catch {
|
|
313
|
-
// ignore
|
|
314
|
-
}
|
|
432
|
+
catch { }
|
|
315
433
|
}
|
|
316
434
|
main();
|
|
317
435
|
//# sourceMappingURL=chat.js.map
|
package/dist/chat.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"chat.js","sourceRoot":"","sources":["../src/chat.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"chat.js","sourceRoot":"","sources":["../src/chat.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"daemon-state.d.ts","sourceRoot":"","sources":["../src/daemon-state.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,WAAW,EAAE,WAAW,EAAE,kBAAkB,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"daemon-state.d.ts","sourceRoot":"","sources":["../src/daemon-state.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,WAAW,EAAE,WAAW,EAAE,kBAAkB,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAuB5F,wBAAgB,cAAc,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,IAAI,CAGpE;AAED,wBAAgB,UAAU,CACxB,KAAK,EAAE,WAAW,EAClB,OAAO,GAAE,OAAO,CAAC,IAAI,CAAC,WAAW,EAAE,OAAO,GAAG,gBAAgB,CAAC,CAAM,GACnE,IAAI,CAaN;AAGD,wBAAgB,kBAAkB,CAAC,GAAG,EAAE,WAAW,GAAG,kBAAkB,EAAE,CAqBzE;AAED,wBAAgB,SAAS,IAAI,WAAW,GAAG,IAAI,CAO9C;AAGD,wBAAgB,gBAAgB,IAAI,IAAI,CAOvC;AAED,wBAAgB,cAAc,IAAI,OAAO,CAMxC;AAED,wBAAgB,cAAc,IAAI,IAAI,CAMrC;AAED,wBAAgB,YAAY,IAAI,IAAI,CAKnC"}
|
package/dist/daemon-state.js
CHANGED
|
@@ -4,6 +4,7 @@
|
|
|
4
4
|
import { writeFileSync, readFileSync, existsSync, unlinkSync, mkdirSync } from "node:fs";
|
|
5
5
|
import { join } from "node:path";
|
|
6
6
|
import { homedir } from "node:os";
|
|
7
|
+
import { parseTasks, formatTaskList } from "./task-parser.js";
|
|
7
8
|
const AOAOE_DIR = join(homedir(), ".aoaoe");
|
|
8
9
|
const STATE_FILE = join(AOAOE_DIR, "daemon-state.json");
|
|
9
10
|
const INTERRUPT_FILE = join(AOAOE_DIR, "interrupt");
|
|
@@ -40,13 +41,16 @@ export function writeState(phase, updates = {}) {
|
|
|
40
41
|
// best-effort, don't crash the daemon
|
|
41
42
|
}
|
|
42
43
|
}
|
|
43
|
-
// build session state list from an observation, merging in tracked tasks
|
|
44
|
+
// build session state list from an observation, merging in tracked tasks + parsed TODOs
|
|
44
45
|
export function buildSessionStates(obs) {
|
|
45
46
|
return obs.sessions.map((snap) => {
|
|
46
47
|
const s = snap.session;
|
|
47
48
|
// extract last non-empty line from output as "last activity"
|
|
48
49
|
const lines = snap.output.split("\n").filter((l) => l.trim());
|
|
49
50
|
const lastActivity = lines.length > 0 ? lines[lines.length - 1].trim() : undefined;
|
|
51
|
+
// parse OpenCode-style TODO items from pane output
|
|
52
|
+
const todos = parseTasks(snap.output);
|
|
53
|
+
const todoSummary = todos.length > 0 ? formatTaskList(todos) : undefined;
|
|
50
54
|
return {
|
|
51
55
|
id: s.id,
|
|
52
56
|
title: s.title,
|
|
@@ -56,6 +60,7 @@ export function buildSessionStates(obs) {
|
|
|
56
60
|
lastActivity: lastActivity && lastActivity.length > 100
|
|
57
61
|
? lastActivity.slice(0, 97) + "..."
|
|
58
62
|
: lastActivity,
|
|
63
|
+
todoSummary,
|
|
59
64
|
};
|
|
60
65
|
});
|
|
61
66
|
}
|
package/dist/daemon-state.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"daemon-state.js","sourceRoot":"","sources":["../src/daemon-state.ts"],"names":[],"mappings":"AAAA,0EAA0E;AAC1E,2DAA2D;AAC3D,gFAAgF;AAChF,OAAO,EAAE,aAAa,EAAE,YAAY,EAAE,UAAU,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AACzF,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"daemon-state.js","sourceRoot":"","sources":["../src/daemon-state.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
export interface ParsedTask {
|
|
2
|
+
text: string;
|
|
3
|
+
status: "done" | "in_progress" | "pending" | "failed";
|
|
4
|
+
}
|
|
5
|
+
export interface PaneOverview {
|
|
6
|
+
sessionId: string;
|
|
7
|
+
title: string;
|
|
8
|
+
tool: string;
|
|
9
|
+
status: string;
|
|
10
|
+
tasks: ParsedTask[];
|
|
11
|
+
lastLine: string;
|
|
12
|
+
model?: string;
|
|
13
|
+
context?: string;
|
|
14
|
+
cost?: string;
|
|
15
|
+
}
|
|
16
|
+
export declare function parseTasks(output: string): ParsedTask[];
|
|
17
|
+
export declare function parseModel(output: string): string | undefined;
|
|
18
|
+
export declare function parseContext(output: string): string | undefined;
|
|
19
|
+
export declare function parseCost(output: string): string | undefined;
|
|
20
|
+
export declare function parseLastLine(output: string): string;
|
|
21
|
+
export declare function formatTaskList(tasks: ParsedTask[]): string;
|
|
22
|
+
//# sourceMappingURL=task-parser.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"task-parser.d.ts","sourceRoot":"","sources":["../src/task-parser.ts"],"names":[],"mappings":"AAUA,MAAM,WAAW,UAAU;IACzB,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,GAAG,aAAa,GAAG,SAAS,GAAG,QAAQ,CAAC;CACvD;AAED,MAAM,WAAW,YAAY;IAC3B,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,UAAU,EAAE,CAAC;IACpB,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAGD,wBAAgB,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,UAAU,EAAE,CAkCvD;AAGD,wBAAgB,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAI7D;AAGD,wBAAgB,YAAY,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAI/D;AAGD,wBAAgB,SAAS,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAI5D;AAGD,wBAAgB,aAAa,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAgBpD;AAGD,wBAAgB,cAAc,CAAC,KAAK,EAAE,UAAU,EAAE,GAAG,MAAM,CAS1D"}
|
|
@@ -0,0 +1,103 @@
|
|
|
1
|
+
// task-parser.ts -- extract OpenCode/Claude TODO patterns from tmux pane output
|
|
2
|
+
// OpenCode renders todos in the right sidebar like:
|
|
3
|
+
// [✓] completed task text
|
|
4
|
+
// [•] in progress task text
|
|
5
|
+
// [ ] pending task text
|
|
6
|
+
// [✗] failed/cancelled task
|
|
7
|
+
// Also handles plain markdown-style checkboxes:
|
|
8
|
+
// - [x] done
|
|
9
|
+
// - [ ] not done
|
|
10
|
+
// parse TODO items from tmux captured output
|
|
11
|
+
export function parseTasks(output) {
|
|
12
|
+
const tasks = [];
|
|
13
|
+
const lines = output.split("\n");
|
|
14
|
+
for (const line of lines) {
|
|
15
|
+
const trimmed = line.trim();
|
|
16
|
+
// OpenCode-style: [✓] text, [•] text, [ ] text, [✗] text
|
|
17
|
+
const ocMatch = trimmed.match(/^\[([✓✗•\s])\]\s+(.+)$/);
|
|
18
|
+
if (ocMatch) {
|
|
19
|
+
const [, icon, text] = ocMatch;
|
|
20
|
+
let status;
|
|
21
|
+
if (icon === "✓")
|
|
22
|
+
status = "done";
|
|
23
|
+
else if (icon === "•")
|
|
24
|
+
status = "in_progress";
|
|
25
|
+
else if (icon === "✗")
|
|
26
|
+
status = "failed";
|
|
27
|
+
else
|
|
28
|
+
status = "pending";
|
|
29
|
+
tasks.push({ text: text.trim(), status });
|
|
30
|
+
continue;
|
|
31
|
+
}
|
|
32
|
+
// markdown checkbox: - [x] text, - [ ] text, - [~] text
|
|
33
|
+
const mdMatch = trimmed.match(/^[-*]\s+\[([xX~\s])\]\s+(.+)$/);
|
|
34
|
+
if (mdMatch) {
|
|
35
|
+
const [, icon, text] = mdMatch;
|
|
36
|
+
let status;
|
|
37
|
+
if (icon === "x" || icon === "X")
|
|
38
|
+
status = "done";
|
|
39
|
+
else if (icon === "~")
|
|
40
|
+
status = "in_progress";
|
|
41
|
+
else
|
|
42
|
+
status = "pending";
|
|
43
|
+
tasks.push({ text: text.trim(), status });
|
|
44
|
+
continue;
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
return tasks;
|
|
48
|
+
}
|
|
49
|
+
// extract model name from OpenCode pane output
|
|
50
|
+
export function parseModel(output) {
|
|
51
|
+
// matches lines like: " Build Claude Opus 4.6 Anthropic: Cloudflare AI Gateway · max"
|
|
52
|
+
const match = output.match(/(?:Build|Plan)\s+(Claude\s+\S+\s+[\d.]+|GPT-[\w.-]+|Gemini\s+[\w.-]+)/i);
|
|
53
|
+
return match?.[1];
|
|
54
|
+
}
|
|
55
|
+
// extract context info from OpenCode pane output
|
|
56
|
+
export function parseContext(output) {
|
|
57
|
+
// matches "137,918 tokens" or "111,881 tokens"
|
|
58
|
+
const match = output.match(/([\d,]+)\s+tokens/);
|
|
59
|
+
return match?.[1] ? `${match[1]} tokens` : undefined;
|
|
60
|
+
}
|
|
61
|
+
// extract cost from OpenCode pane output
|
|
62
|
+
export function parseCost(output) {
|
|
63
|
+
// matches "$3.42 spent"
|
|
64
|
+
const match = output.match(/\$([\d.]+)\s+spent/);
|
|
65
|
+
return match ? `$${match[1]}` : undefined;
|
|
66
|
+
}
|
|
67
|
+
// get last meaningful line (non-empty, not just UI chrome)
|
|
68
|
+
export function parseLastLine(output) {
|
|
69
|
+
const lines = output.split("\n");
|
|
70
|
+
// skip from bottom: empty lines, tmux chrome, opencode status bar
|
|
71
|
+
for (let i = lines.length - 1; i >= 0; i--) {
|
|
72
|
+
const trimmed = lines[i].trim();
|
|
73
|
+
if (!trimmed)
|
|
74
|
+
continue;
|
|
75
|
+
// skip opencode UI chrome lines
|
|
76
|
+
if (trimmed.startsWith("⬝") || trimmed.startsWith("╹") || trimmed.startsWith("▀"))
|
|
77
|
+
continue;
|
|
78
|
+
if (trimmed.includes("esc interrupt") || trimmed.includes("ctrl+p commands"))
|
|
79
|
+
continue;
|
|
80
|
+
if (trimmed.includes("OpenCode "))
|
|
81
|
+
continue;
|
|
82
|
+
if (trimmed.match(/^\s*[┃┃╹╻│]\s*$/))
|
|
83
|
+
continue;
|
|
84
|
+
// skip blank-looking lines with only box-drawing chars
|
|
85
|
+
if (trimmed.match(/^[┃│╹╻▀▄█\s]+$/))
|
|
86
|
+
continue;
|
|
87
|
+
return trimmed.length > 100 ? trimmed.slice(0, 97) + "..." : trimmed;
|
|
88
|
+
}
|
|
89
|
+
return "(no output)";
|
|
90
|
+
}
|
|
91
|
+
// format a task list for display
|
|
92
|
+
export function formatTaskList(tasks) {
|
|
93
|
+
if (tasks.length === 0)
|
|
94
|
+
return " (no tasks detected)";
|
|
95
|
+
return tasks.map((t) => {
|
|
96
|
+
const icon = t.status === "done" ? "✓"
|
|
97
|
+
: t.status === "in_progress" ? "•"
|
|
98
|
+
: t.status === "failed" ? "✗"
|
|
99
|
+
: "○";
|
|
100
|
+
return ` [${icon}] ${t.text}`;
|
|
101
|
+
}).join("\n");
|
|
102
|
+
}
|
|
103
|
+
//# sourceMappingURL=task-parser.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"task-parser.js","sourceRoot":"","sources":["../src/task-parser.ts"],"names":[],"mappings":"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"}
|
package/dist/types.d.ts
CHANGED
package/dist/types.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
|