aoaoe 0.2.0 → 0.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/config.d.ts +1 -0
- package/dist/config.d.ts.map +1 -1
- package/dist/config.js +15 -3
- package/dist/config.js.map +1 -1
- package/dist/console.d.ts +15 -0
- package/dist/console.d.ts.map +1 -0
- package/dist/console.js +121 -0
- package/dist/console.js.map +1 -0
- package/dist/index.js +52 -9
- package/dist/index.js.map +1 -1
- package/package.json +1 -1
package/dist/config.d.ts
CHANGED
package/dist/config.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,WAAW,EAAmB,MAAM,YAAY,CAAC;AA2B/D,wBAAgB,UAAU,CAAC,SAAS,CAAC,EAAE,OAAO,CAAC,WAAW,CAAC,GAAG,WAAW,CAqBxE;AAGD,wBAAsB,mBAAmB,CAAC,MAAM,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC,CAgB5E;AAkCD,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG;IAC5C,SAAS,EAAE,OAAO,CAAC,WAAW,CAAC,CAAC;IAChC,IAAI,EAAE,OAAO,CAAC;IACd,OAAO,EAAE,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,WAAW,EAAmB,MAAM,YAAY,CAAC;AA2B/D,wBAAgB,UAAU,CAAC,SAAS,CAAC,EAAE,OAAO,CAAC,WAAW,CAAC,GAAG,WAAW,CAqBxE;AAGD,wBAAsB,mBAAmB,CAAC,MAAM,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC,CAgB5E;AAkCD,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG;IAC5C,SAAS,EAAE,OAAO,CAAC,WAAW,CAAC,CAAC;IAChC,IAAI,EAAE,OAAO,CAAC;IACd,OAAO,EAAE,OAAO,CAAC;IACjB,MAAM,EAAE,OAAO,CAAC;CACjB,CAiDA;AAED,wBAAgB,SAAS,SAsBxB"}
|
package/dist/config.js
CHANGED
|
@@ -92,6 +92,11 @@ export function parseCliArgs(argv) {
|
|
|
92
92
|
const overrides = {};
|
|
93
93
|
let help = false;
|
|
94
94
|
let version = false;
|
|
95
|
+
let attach = false;
|
|
96
|
+
// check for subcommand as first non-flag arg
|
|
97
|
+
if (argv[2] === "attach") {
|
|
98
|
+
return { overrides, help: false, version: false, attach: true };
|
|
99
|
+
}
|
|
95
100
|
for (let i = 2; i < argv.length; i++) {
|
|
96
101
|
const arg = argv[i];
|
|
97
102
|
switch (arg) {
|
|
@@ -128,12 +133,16 @@ export function parseCliArgs(argv) {
|
|
|
128
133
|
break;
|
|
129
134
|
}
|
|
130
135
|
}
|
|
131
|
-
return { overrides, help, version };
|
|
136
|
+
return { overrides, help, version, attach };
|
|
132
137
|
}
|
|
133
138
|
export function printHelp() {
|
|
134
139
|
console.log(`aoaoe - autonomous supervisor for agent-of-empires sessions
|
|
135
140
|
|
|
136
|
-
usage: aoaoe [options]
|
|
141
|
+
usage: aoaoe [command] [options]
|
|
142
|
+
|
|
143
|
+
commands:
|
|
144
|
+
(none) start the daemon
|
|
145
|
+
attach enter the reasoner console (Ctrl+B D to detach)
|
|
137
146
|
|
|
138
147
|
options:
|
|
139
148
|
--reasoner <opencode|claude-code> reasoning backend (default: opencode)
|
|
@@ -144,6 +153,9 @@ options:
|
|
|
144
153
|
--dry-run observe + reason but don't execute
|
|
145
154
|
--verbose, -v verbose logging
|
|
146
155
|
--help, -h show this help
|
|
147
|
-
--version show version
|
|
156
|
+
--version show version
|
|
157
|
+
|
|
158
|
+
console commands (inside reasoner console):
|
|
159
|
+
type any text send a message to the reasoner on next tick`);
|
|
148
160
|
}
|
|
149
161
|
//# sourceMappingURL=config.js.map
|
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,UAAU,EAAE,MAAM,SAAS,CAAC;AACnD,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAGpC,MAAM,QAAQ,GAAgB;IAC5B,QAAQ,EAAE,UAAU;IACpB,cAAc,EAAE,MAAM;IACtB,QAAQ,EAAE;QACR,IAAI,EAAE,IAAI;KACX;IACD,UAAU,EAAE;QACV,IAAI,EAAE,IAAI;QACV,MAAM,EAAE,IAAI;KACb;IACD,GAAG,EAAE;QACH,OAAO,EAAE,SAAS;KACnB;IACD,QAAQ,EAAE;QACR,oBAAoB,EAAE,OAAO;QAC7B,sBAAsB,EAAE,CAAC;QACzB,qBAAqB,EAAE,IAAI;KAC5B;IACD,iBAAiB,EAAE,GAAG;IACtB,OAAO,EAAE,KAAK;IACd,MAAM,EAAE,KAAK;CACd,CAAC;AAEF,MAAM,YAAY,GAAG,CAAC,mBAAmB,EAAE,aAAa,CAAC,CAAC;AAE1D,MAAM,UAAU,UAAU,CAAC,SAAgC;IACzD,IAAI,UAAU,GAAyB,EAAE,CAAC;IAE1C,KAAK,MAAM,IAAI,IAAI,YAAY,EAAE,CAAC;QAChC,MAAM,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,IAAI,CAAC,CAAC;QACvC,IAAI,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC;YAClB,IAAI,CAAC;gBACH,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC;gBAClD,GAAG,CAAC,sBAAsB,CAAC,EAAE,CAAC,CAAC;YACjC,CAAC;YAAC,OAAO,CAAC,EAAE,CAAC;gBACX,OAAO,CAAC,KAAK,CAAC,4BAA4B,CAAC,kBAAkB,CAAC,CAAC;YACjE,CAAC;YACD,MAAM;QACR,CAAC;IACH,CAAC;IAED,OAAO,SAAS,CACd,QAA8C,EAC9C,UAAqC,EACrC,CAAC,SAAS,IAAI,EAAE,CAA4B,CAC7C,CAAC;AACJ,CAAC;AAED,2CAA2C;AAC3C,MAAM,CAAC,KAAK,UAAU,mBAAmB,CAAC,MAAmB;IAC3D,MAAM,OAAO,GAAa,EAAE,CAAC;IAE7B,IAAI,CAAC,CAAC,MAAM,KAAK,CAAC,KAAK,CAAC,CAAC;QAAE,OAAO,CAAC,IAAI,CAAC,wBAAwB,CAAC,CAAC;IAClE,IAAI,CAAC,CAAC,MAAM,KAAK,CAAC,MAAM,CAAC,CAAC;QAAE,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAEjD,IAAI,MAAM,CAAC,QAAQ,KAAK,UAAU,IAAI,CAAC,CAAC,MAAM,KAAK,CAAC,UAAU,CAAC,CAAC,EAAE,CAAC;QACjE,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IAC3B,CAAC;IACD,IAAI,MAAM,CAAC,QAAQ,KAAK,aAAa,IAAI,CAAC,CAAC,MAAM,KAAK,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC;QAClE,OAAO,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAC;IACvC,CAAC;IAED,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACvB,MAAM,IAAI,KAAK,CAAC,2BAA2B,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACnE,CAAC;AACH,CAAC;AAED,KAAK,UAAU,KAAK,CAAC,GAAW;IAC9B,MAAM,EAAE,QAAQ,EAAE,GAAG,MAAM,MAAM,CAAC,oBAAoB,CAAC,CAAC;IACxD,MAAM,EAAE,SAAS,EAAE,GAAG,MAAM,MAAM,CAAC,WAAW,CAAC,CAAC;IAChD,MAAM,IAAI,GAAG,SAAS,CAAC,QAAQ,CAAC,CAAC;IACjC,IAAI,CAAC;QACH,MAAM,IAAI,CAAC,OAAO,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;QAC3B,OAAO,IAAI,CAAC;IACd,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC;AAED,SAAS,SAAS,CAAC,GAAG,OAAkC;IACtD,MAAM,MAAM,GAA4B,EAAE,CAAC;IAC3C,KAAK,MAAM,GAAG,IAAI,OAAO,EAAE,CAAC;QAC1B,KAAK,MAAM,CAAC,GAAG,EAAE,GAAG,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;YAC7C,IAAI,GAAG,KAAK,SAAS,IAAI,GAAG,KAAK,IAAI,EAAE,CAAC;gBACtC,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,OAAO,MAAM,CAAC,GAAG,CAAC,KAAK,QAAQ,EAAE,CAAC;oBACtF,MAAM,CAAC,GAAG,CAAC,GAAG,SAAS,CAAC,MAAM,CAAC,GAAG,CAA4B,EAAE,GAA8B,CAAC,CAAC;gBAClG,CAAC;qBAAM,CAAC;oBACN,MAAM,CAAC,GAAG,CAAC,GAAG,GAAG,CAAC;gBACpB,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC;IACD,OAAO,MAAgC,CAAC;AAC1C,CAAC;AAED,SAAS,GAAG,CAAC,GAAW;IACtB,OAAO,CAAC,KAAK,CAAC,YAAY,GAAG,EAAE,CAAC,CAAC;AACnC,CAAC;AAED,MAAM,UAAU,YAAY,CAAC,IAAc;
|
|
1
|
+
{"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
export declare class ReasonerConsole {
|
|
2
|
+
private started;
|
|
3
|
+
start(): Promise<void>;
|
|
4
|
+
writeObservation(sessionCount: number, changeCount: number, changes: string[]): void;
|
|
5
|
+
writeUserMessage(msg: string): void;
|
|
6
|
+
writeReasoning(reasoning: string): void;
|
|
7
|
+
writeAction(action: string, detail: string, success: boolean): void;
|
|
8
|
+
writeSystem(msg: string): void;
|
|
9
|
+
drainInput(): string[];
|
|
10
|
+
stop(): Promise<void>;
|
|
11
|
+
private append;
|
|
12
|
+
private ts;
|
|
13
|
+
static sessionName(): string;
|
|
14
|
+
}
|
|
15
|
+
//# sourceMappingURL=console.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"console.d.ts","sourceRoot":"","sources":["../src/console.ts"],"names":[],"mappings":"AAaA,qBAAa,eAAe;IAC1B,OAAO,CAAC,OAAO,CAAS;IAElB,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAgD5B,gBAAgB,CAAC,YAAY,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,IAAI;IAQpF,gBAAgB,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI;IAInC,cAAc,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI;IAIvC,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,GAAG,IAAI;IAKnE,WAAW,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI;IAK9B,UAAU,IAAI,MAAM,EAAE;IAYhB,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAO3B,OAAO,CAAC,MAAM;IAMd,OAAO,CAAC,EAAE;IAIV,MAAM,CAAC,WAAW,IAAI,MAAM;CAG7B"}
|
package/dist/console.js
ADDED
|
@@ -0,0 +1,121 @@
|
|
|
1
|
+
// console.ts -- manages the aoaoe_reasoner tmux session
|
|
2
|
+
// two-pane layout: top shows conversation, bottom accepts user input
|
|
3
|
+
// "aoaoe attach" drops you into this session, Ctrl+B D to detach
|
|
4
|
+
import { mkdirSync, appendFileSync, readFileSync, writeFileSync, existsSync } from "node:fs";
|
|
5
|
+
import { join } from "node:path";
|
|
6
|
+
import { homedir } from "node:os";
|
|
7
|
+
import { execQuiet, exec } from "./shell.js";
|
|
8
|
+
const AOAOE_DIR = join(homedir(), ".aoaoe");
|
|
9
|
+
const CONVO_LOG = join(AOAOE_DIR, "conversation.log");
|
|
10
|
+
const INPUT_FILE = join(AOAOE_DIR, "pending-input.txt");
|
|
11
|
+
const SESSION_NAME = "aoaoe_reasoner";
|
|
12
|
+
export class ReasonerConsole {
|
|
13
|
+
started = false;
|
|
14
|
+
async start() {
|
|
15
|
+
mkdirSync(AOAOE_DIR, { recursive: true });
|
|
16
|
+
// clear previous conversation log (fresh session)
|
|
17
|
+
writeFileSync(CONVO_LOG, "");
|
|
18
|
+
writeFileSync(INPUT_FILE, "");
|
|
19
|
+
// kill any stale session
|
|
20
|
+
await execQuiet("tmux", ["kill-session", "-t", SESSION_NAME]);
|
|
21
|
+
// create the session with the conversation viewer in the top pane
|
|
22
|
+
// using ANSI colors for a nice look
|
|
23
|
+
await exec("tmux", [
|
|
24
|
+
"new-session", "-d", "-s", SESSION_NAME, "-x", "200", "-y", "50",
|
|
25
|
+
`tail -f ${CONVO_LOG}`,
|
|
26
|
+
]);
|
|
27
|
+
// split bottom pane for user input
|
|
28
|
+
await exec("tmux", [
|
|
29
|
+
"split-window", "-t", SESSION_NAME, "-v", "-l", "4",
|
|
30
|
+
`bash ${join(AOAOE_DIR, "input-loop.sh")}`,
|
|
31
|
+
]);
|
|
32
|
+
// write the input loop script
|
|
33
|
+
writeFileSync(join(AOAOE_DIR, "input-loop.sh"), INPUT_LOOP_SCRIPT);
|
|
34
|
+
// select top pane by default (so user sees conversation first)
|
|
35
|
+
await execQuiet("tmux", ["select-pane", "-t", `${SESSION_NAME}:.0`]);
|
|
36
|
+
// style: set pane border labels
|
|
37
|
+
await execQuiet("tmux", [
|
|
38
|
+
"set-option", "-t", SESSION_NAME, "pane-border-format",
|
|
39
|
+
" #{?pane_active,#[fg=green],#[fg=white]}#{pane_title} ",
|
|
40
|
+
]);
|
|
41
|
+
await execQuiet("tmux", ["select-pane", "-t", `${SESSION_NAME}:.0`, "-T", "conversation"]);
|
|
42
|
+
await execQuiet("tmux", ["select-pane", "-t", `${SESSION_NAME}:.1`, "-T", "input (type here)"]);
|
|
43
|
+
// focus the input pane so user can type immediately on attach
|
|
44
|
+
await execQuiet("tmux", ["select-pane", "-t", `${SESSION_NAME}:.1`]);
|
|
45
|
+
this.started = true;
|
|
46
|
+
this.writeSystem("aoaoe reasoner console started");
|
|
47
|
+
this.writeSystem("type a message below to send to the reasoner");
|
|
48
|
+
this.writeSystem("detach with Ctrl+B D to return to your shell");
|
|
49
|
+
this.writeSystem("---");
|
|
50
|
+
}
|
|
51
|
+
// write a formatted entry to the conversation log
|
|
52
|
+
writeObservation(sessionCount, changeCount, changes) {
|
|
53
|
+
const ts = this.ts();
|
|
54
|
+
this.append(`\n${ts} [observation] ${sessionCount} sessions, ${changeCount} changed`);
|
|
55
|
+
for (const c of changes) {
|
|
56
|
+
this.append(` ${c}`);
|
|
57
|
+
}
|
|
58
|
+
}
|
|
59
|
+
writeUserMessage(msg) {
|
|
60
|
+
this.append(`\n${this.ts()} [you] ${msg}`);
|
|
61
|
+
}
|
|
62
|
+
writeReasoning(reasoning) {
|
|
63
|
+
this.append(`${this.ts()} [reasoner] ${reasoning}`);
|
|
64
|
+
}
|
|
65
|
+
writeAction(action, detail, success) {
|
|
66
|
+
const icon = success ? "+" : "!";
|
|
67
|
+
this.append(`${this.ts()} [${icon} action] ${action}: ${detail}`);
|
|
68
|
+
}
|
|
69
|
+
writeSystem(msg) {
|
|
70
|
+
this.append(`${this.ts()} [system] ${msg}`);
|
|
71
|
+
}
|
|
72
|
+
// read and clear pending user input from the input pane
|
|
73
|
+
drainInput() {
|
|
74
|
+
if (!existsSync(INPUT_FILE))
|
|
75
|
+
return [];
|
|
76
|
+
const content = readFileSync(INPUT_FILE, "utf-8").trim();
|
|
77
|
+
if (!content)
|
|
78
|
+
return [];
|
|
79
|
+
// clear the file
|
|
80
|
+
writeFileSync(INPUT_FILE, "");
|
|
81
|
+
return content.split("\n").filter((l) => l.trim());
|
|
82
|
+
}
|
|
83
|
+
async stop() {
|
|
84
|
+
if (this.started) {
|
|
85
|
+
await execQuiet("tmux", ["kill-session", "-t", SESSION_NAME]);
|
|
86
|
+
this.started = false;
|
|
87
|
+
}
|
|
88
|
+
}
|
|
89
|
+
append(line) {
|
|
90
|
+
try {
|
|
91
|
+
appendFileSync(CONVO_LOG, line + "\n");
|
|
92
|
+
}
|
|
93
|
+
catch { }
|
|
94
|
+
}
|
|
95
|
+
ts() {
|
|
96
|
+
return new Date().toLocaleTimeString();
|
|
97
|
+
}
|
|
98
|
+
static sessionName() {
|
|
99
|
+
return SESSION_NAME;
|
|
100
|
+
}
|
|
101
|
+
}
|
|
102
|
+
// shell script that runs in the bottom tmux pane -- simple input loop
|
|
103
|
+
const INPUT_LOOP_SCRIPT = `#!/usr/bin/env bash
|
|
104
|
+
INPUT_FILE="${INPUT_FILE}"
|
|
105
|
+
touch "$INPUT_FILE"
|
|
106
|
+
|
|
107
|
+
# colors
|
|
108
|
+
GREEN="\\033[32m"
|
|
109
|
+
RESET="\\033[0m"
|
|
110
|
+
DIM="\\033[2m"
|
|
111
|
+
|
|
112
|
+
while true; do
|
|
113
|
+
printf "\${GREEN}>\${RESET} "
|
|
114
|
+
read -r msg
|
|
115
|
+
if [ -n "$msg" ]; then
|
|
116
|
+
echo "$msg" >> "$INPUT_FILE"
|
|
117
|
+
printf "\${DIM}queued for next reasoning cycle\${RESET}\\n"
|
|
118
|
+
fi
|
|
119
|
+
done
|
|
120
|
+
`;
|
|
121
|
+
//# sourceMappingURL=console.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"console.js","sourceRoot":"","sources":["../src/console.ts"],"names":[],"mappings":"AAAA,wDAAwD;AACxD,qEAAqE;AACrE,iEAAiE;AACjE,OAAO,EAAE,SAAS,EAAE,cAAc,EAAE,YAAY,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAC7F,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAClC,OAAO,EAAE,SAAS,EAAE,IAAI,EAAE,MAAM,YAAY,CAAC;AAE7C,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,EAAE,EAAE,QAAQ,CAAC,CAAC;AAC5C,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,EAAE,kBAAkB,CAAC,CAAC;AACtD,MAAM,UAAU,GAAG,IAAI,CAAC,SAAS,EAAE,mBAAmB,CAAC,CAAC;AACxD,MAAM,YAAY,GAAG,gBAAgB,CAAC;AAEtC,MAAM,OAAO,eAAe;IAClB,OAAO,GAAG,KAAK,CAAC;IAExB,KAAK,CAAC,KAAK;QACT,SAAS,CAAC,SAAS,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QAE1C,kDAAkD;QAClD,aAAa,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC;QAC7B,aAAa,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC;QAE9B,yBAAyB;QACzB,MAAM,SAAS,CAAC,MAAM,EAAE,CAAC,cAAc,EAAE,IAAI,EAAE,YAAY,CAAC,CAAC,CAAC;QAE9D,kEAAkE;QAClE,oCAAoC;QACpC,MAAM,IAAI,CAAC,MAAM,EAAE;YACjB,aAAa,EAAE,IAAI,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI;YAChE,WAAW,SAAS,EAAE;SACvB,CAAC,CAAC;QAEH,mCAAmC;QACnC,MAAM,IAAI,CAAC,MAAM,EAAE;YACjB,cAAc,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG;YACnD,QAAQ,IAAI,CAAC,SAAS,EAAE,eAAe,CAAC,EAAE;SAC3C,CAAC,CAAC;QAEH,8BAA8B;QAC9B,aAAa,CAAC,IAAI,CAAC,SAAS,EAAE,eAAe,CAAC,EAAE,iBAAiB,CAAC,CAAC;QAEnE,+DAA+D;QAC/D,MAAM,SAAS,CAAC,MAAM,EAAE,CAAC,aAAa,EAAE,IAAI,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC;QAErE,gCAAgC;QAChC,MAAM,SAAS,CAAC,MAAM,EAAE;YACtB,YAAY,EAAE,IAAI,EAAE,YAAY,EAAE,oBAAoB;YACtD,wDAAwD;SACzD,CAAC,CAAC;QACH,MAAM,SAAS,CAAC,MAAM,EAAE,CAAC,aAAa,EAAE,IAAI,EAAE,GAAG,YAAY,KAAK,EAAE,IAAI,EAAE,cAAc,CAAC,CAAC,CAAC;QAC3F,MAAM,SAAS,CAAC,MAAM,EAAE,CAAC,aAAa,EAAE,IAAI,EAAE,GAAG,YAAY,KAAK,EAAE,IAAI,EAAE,mBAAmB,CAAC,CAAC,CAAC;QAEhG,8DAA8D;QAC9D,MAAM,SAAS,CAAC,MAAM,EAAE,CAAC,aAAa,EAAE,IAAI,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC;QAErE,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;QACpB,IAAI,CAAC,WAAW,CAAC,gCAAgC,CAAC,CAAC;QACnD,IAAI,CAAC,WAAW,CAAC,8CAA8C,CAAC,CAAC;QACjE,IAAI,CAAC,WAAW,CAAC,8CAA8C,CAAC,CAAC;QACjE,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;IAC1B,CAAC;IAED,kDAAkD;IAClD,gBAAgB,CAAC,YAAoB,EAAE,WAAmB,EAAE,OAAiB;QAC3E,MAAM,EAAE,GAAG,IAAI,CAAC,EAAE,EAAE,CAAC;QACrB,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,kBAAkB,YAAY,cAAc,WAAW,UAAU,CAAC,CAAC;QACtF,KAAK,MAAM,CAAC,IAAI,OAAO,EAAE,CAAC;YACxB,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QACxB,CAAC;IACH,CAAC;IAED,gBAAgB,CAAC,GAAW;QAC1B,IAAI,CAAC,MAAM,CAAC,KAAK,IAAI,CAAC,EAAE,EAAE,UAAU,GAAG,EAAE,CAAC,CAAC;IAC7C,CAAC;IAED,cAAc,CAAC,SAAiB;QAC9B,IAAI,CAAC,MAAM,CAAC,GAAG,IAAI,CAAC,EAAE,EAAE,eAAe,SAAS,EAAE,CAAC,CAAC;IACtD,CAAC;IAED,WAAW,CAAC,MAAc,EAAE,MAAc,EAAE,OAAgB;QAC1D,MAAM,IAAI,GAAG,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC;QACjC,IAAI,CAAC,MAAM,CAAC,GAAG,IAAI,CAAC,EAAE,EAAE,KAAK,IAAI,YAAY,MAAM,KAAK,MAAM,EAAE,CAAC,CAAC;IACpE,CAAC;IAED,WAAW,CAAC,GAAW;QACrB,IAAI,CAAC,MAAM,CAAC,GAAG,IAAI,CAAC,EAAE,EAAE,aAAa,GAAG,EAAE,CAAC,CAAC;IAC9C,CAAC;IAED,wDAAwD;IACxD,UAAU;QACR,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC;YAAE,OAAO,EAAE,CAAC;QAEvC,MAAM,OAAO,GAAG,YAAY,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC,IAAI,EAAE,CAAC;QACzD,IAAI,CAAC,OAAO;YAAE,OAAO,EAAE,CAAC;QAExB,iBAAiB;QACjB,aAAa,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC;QAE9B,OAAO,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;IACrD,CAAC;IAED,KAAK,CAAC,IAAI;QACR,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;YACjB,MAAM,SAAS,CAAC,MAAM,EAAE,CAAC,cAAc,EAAE,IAAI,EAAE,YAAY,CAAC,CAAC,CAAC;YAC9D,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;QACvB,CAAC;IACH,CAAC;IAEO,MAAM,CAAC,IAAY;QACzB,IAAI,CAAC;YACH,cAAc,CAAC,SAAS,EAAE,IAAI,GAAG,IAAI,CAAC,CAAC;QACzC,CAAC;QAAC,MAAM,CAAC,CAAA,CAAC;IACZ,CAAC;IAEO,EAAE;QACR,OAAO,IAAI,IAAI,EAAE,CAAC,kBAAkB,EAAE,CAAC;IACzC,CAAC;IAED,MAAM,CAAC,WAAW;QAChB,OAAO,YAAY,CAAC;IACtB,CAAC;CACF;AAED,sEAAsE;AACtE,MAAM,iBAAiB,GAAG;cACZ,UAAU;;;;;;;;;;;;;;;;CAgBvB,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -5,12 +5,13 @@ import { createReasoner } from "./reasoner/index.js";
|
|
|
5
5
|
import { Executor } from "./executor.js";
|
|
6
6
|
import { printDashboard } from "./dashboard.js";
|
|
7
7
|
import { InputReader } from "./input.js";
|
|
8
|
+
import { ReasonerConsole } from "./console.js";
|
|
8
9
|
import { readFileSync } from "node:fs";
|
|
9
10
|
import { resolve, dirname } from "node:path";
|
|
10
11
|
import { fileURLToPath } from "node:url";
|
|
11
12
|
const __dirname = dirname(fileURLToPath(import.meta.url));
|
|
12
13
|
async function main() {
|
|
13
|
-
const { overrides, help, version } = parseCliArgs(process.argv);
|
|
14
|
+
const { overrides, help, version, attach } = parseCliArgs(process.argv);
|
|
14
15
|
if (help) {
|
|
15
16
|
printHelp();
|
|
16
17
|
process.exit(0);
|
|
@@ -25,6 +26,11 @@ async function main() {
|
|
|
25
26
|
}
|
|
26
27
|
process.exit(0);
|
|
27
28
|
}
|
|
29
|
+
// `aoaoe attach` -- drop into the reasoner console tmux session
|
|
30
|
+
if (attach) {
|
|
31
|
+
await attachToConsole();
|
|
32
|
+
return;
|
|
33
|
+
}
|
|
28
34
|
const config = loadConfig(overrides);
|
|
29
35
|
log("starting aoaoe supervisor");
|
|
30
36
|
log(`reasoner: ${config.reasoner}`);
|
|
@@ -37,12 +43,15 @@ async function main() {
|
|
|
37
43
|
const reasoner = createReasoner(config);
|
|
38
44
|
const executor = new Executor(config);
|
|
39
45
|
const input = new InputReader();
|
|
46
|
+
const console_ = new ReasonerConsole();
|
|
40
47
|
// init reasoner (starts opencode serve, verifies claude, etc)
|
|
41
48
|
log("initializing reasoner...");
|
|
42
49
|
await reasoner.init();
|
|
43
50
|
log("reasoner ready");
|
|
44
|
-
// start interactive input listener
|
|
51
|
+
// start interactive input listener (stdin fallback) and console tmux session
|
|
45
52
|
input.start();
|
|
53
|
+
await console_.start();
|
|
54
|
+
log(`reasoner console ready -- run 'aoaoe attach' to enter`);
|
|
46
55
|
// graceful shutdown
|
|
47
56
|
let running = true;
|
|
48
57
|
const shutdown = async () => {
|
|
@@ -51,6 +60,7 @@ async function main() {
|
|
|
51
60
|
running = false;
|
|
52
61
|
log("shutting down...");
|
|
53
62
|
input.stop();
|
|
63
|
+
await console_.stop();
|
|
54
64
|
await reasoner.shutdown();
|
|
55
65
|
process.exit(0);
|
|
56
66
|
};
|
|
@@ -62,8 +72,10 @@ async function main() {
|
|
|
62
72
|
log("entering main loop (Ctrl+C to stop)\n");
|
|
63
73
|
while (running) {
|
|
64
74
|
pollCount++;
|
|
65
|
-
// drain user input
|
|
66
|
-
const
|
|
75
|
+
// drain user input from both stdin and console tmux session
|
|
76
|
+
const stdinMessages = input.drain();
|
|
77
|
+
const consoleMessages = console_.drainInput();
|
|
78
|
+
const userMessages = [...stdinMessages, ...consoleMessages];
|
|
67
79
|
let userMessage;
|
|
68
80
|
// handle built-in command markers
|
|
69
81
|
for (const msg of userMessages) {
|
|
@@ -89,7 +101,7 @@ async function main() {
|
|
|
89
101
|
continue;
|
|
90
102
|
}
|
|
91
103
|
try {
|
|
92
|
-
await tick(config, poller, reasoner, executor, pollCount, userMessage, forceDashboard);
|
|
104
|
+
await tick(config, poller, reasoner, executor, console_, pollCount, userMessage, forceDashboard);
|
|
93
105
|
forceDashboard = false;
|
|
94
106
|
}
|
|
95
107
|
catch (err) {
|
|
@@ -100,7 +112,7 @@ async function main() {
|
|
|
100
112
|
}
|
|
101
113
|
}
|
|
102
114
|
}
|
|
103
|
-
async function tick(config, poller, reasoner, executor, pollCount, userMessage, forceDashboard) {
|
|
115
|
+
async function tick(config, poller, reasoner, executor, console_, pollCount, userMessage, forceDashboard) {
|
|
104
116
|
// 1. poll
|
|
105
117
|
const observation = await poller.poll();
|
|
106
118
|
const sessionCount = observation.sessions.length;
|
|
@@ -108,6 +120,7 @@ async function tick(config, poller, reasoner, executor, pollCount, userMessage,
|
|
|
108
120
|
// attach user message to observation if present
|
|
109
121
|
if (userMessage) {
|
|
110
122
|
observation.userMessage = userMessage;
|
|
123
|
+
console_.writeUserMessage(userMessage);
|
|
111
124
|
}
|
|
112
125
|
if (sessionCount === 0 && !userMessage) {
|
|
113
126
|
if (pollCount % 6 === 1) {
|
|
@@ -124,6 +137,11 @@ async function tick(config, poller, reasoner, executor, pollCount, userMessage,
|
|
|
124
137
|
const statuses = summarizeStatuses(observation);
|
|
125
138
|
const userTag = userMessage ? " | +operator msg" : "";
|
|
126
139
|
process.stdout.write(`\r[poll #${pollCount}] ${sessionCount} sessions (${statuses}) | ${changeCount} changed${userTag}`);
|
|
140
|
+
// write observation to console
|
|
141
|
+
if (changeCount > 0) {
|
|
142
|
+
const changeSummary = observation.changes.map((c) => `${c.title} (${c.tool}): ${c.status}`);
|
|
143
|
+
console_.writeObservation(sessionCount, changeCount, changeSummary);
|
|
144
|
+
}
|
|
127
145
|
// 2. if nothing changed AND no user message, skip reasoning (save tokens)
|
|
128
146
|
if (changeCount === 0 && !userMessage) {
|
|
129
147
|
if (config.verbose) {
|
|
@@ -137,8 +155,10 @@ async function tick(config, poller, reasoner, executor, pollCount, userMessage,
|
|
|
137
155
|
{ actions: [{ action: "wait", reason: "reasoner timeout" }] });
|
|
138
156
|
const actionSummary = result.actions.map((a) => a.action).join(", ");
|
|
139
157
|
process.stdout.write(` -> ${actionSummary}\n`);
|
|
140
|
-
if (result.reasoning
|
|
141
|
-
|
|
158
|
+
if (result.reasoning) {
|
|
159
|
+
console_.writeReasoning(result.reasoning);
|
|
160
|
+
if (config.verbose)
|
|
161
|
+
log(`reasoning: ${result.reasoning}`);
|
|
142
162
|
}
|
|
143
163
|
// 4. execute (skip if all actions are "wait")
|
|
144
164
|
const nonWaitActions = result.actions.filter((a) => a.action !== "wait");
|
|
@@ -148,7 +168,9 @@ async function tick(config, poller, reasoner, executor, pollCount, userMessage,
|
|
|
148
168
|
// dry-run: log what would happen, don't actually execute
|
|
149
169
|
if (config.dryRun) {
|
|
150
170
|
for (const action of nonWaitActions) {
|
|
151
|
-
|
|
171
|
+
const msg = `would ${action.action}: ${JSON.stringify(action)}`;
|
|
172
|
+
log(`[dry-run] ${msg}`);
|
|
173
|
+
console_.writeAction(action.action, "dry-run", true);
|
|
152
174
|
}
|
|
153
175
|
return;
|
|
154
176
|
}
|
|
@@ -158,6 +180,7 @@ async function tick(config, poller, reasoner, executor, pollCount, userMessage,
|
|
|
158
180
|
continue;
|
|
159
181
|
const icon = entry.success ? "+" : "!";
|
|
160
182
|
log(`[${icon}] ${entry.action.action}: ${entry.detail}`);
|
|
183
|
+
console_.writeAction(entry.action.action, entry.detail, entry.success);
|
|
161
184
|
}
|
|
162
185
|
}
|
|
163
186
|
function summarizeStatuses(obs) {
|
|
@@ -184,6 +207,26 @@ function withTimeout(promise, ms, fallback) {
|
|
|
184
207
|
}, ms)),
|
|
185
208
|
]);
|
|
186
209
|
}
|
|
210
|
+
// `aoaoe attach` -- enter the reasoner console tmux session
|
|
211
|
+
async function attachToConsole() {
|
|
212
|
+
const { execQuiet } = await import("./shell.js");
|
|
213
|
+
const name = ReasonerConsole.sessionName();
|
|
214
|
+
// check if the session exists
|
|
215
|
+
const exists = await execQuiet("tmux", ["has-session", "-t", name]);
|
|
216
|
+
if (!exists) {
|
|
217
|
+
console.error(`no running aoaoe session found (looking for tmux session '${name}')`);
|
|
218
|
+
console.error("start the daemon first: aoaoe");
|
|
219
|
+
process.exit(1);
|
|
220
|
+
}
|
|
221
|
+
// attach -- replace this process with tmux attach
|
|
222
|
+
const { execFileSync } = await import("node:child_process");
|
|
223
|
+
try {
|
|
224
|
+
execFileSync("tmux", ["attach-session", "-t", name], { stdio: "inherit" });
|
|
225
|
+
}
|
|
226
|
+
catch {
|
|
227
|
+
// normal exit when user detaches
|
|
228
|
+
}
|
|
229
|
+
}
|
|
187
230
|
main().catch((err) => {
|
|
188
231
|
console.error(`fatal: ${err}`);
|
|
189
232
|
process.exit(1);
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AACA,OAAO,EAAE,UAAU,EAAE,mBAAmB,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACvF,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACrC,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AACrD,OAAO,EAAE,QAAQ,EAAuB,MAAM,eAAe,CAAC;AAC9D,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAChD,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|