@moxt-ai/mobius 0.0.175 → 0.0.177
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/acp/agent-runtime-manager.d.ts +2 -1
- package/dist/acp/agent-runtime-manager.d.ts.map +1 -1
- package/dist/acp/agent-runtime-manager.js +11 -1
- package/dist/acp/agent-runtime-manager.js.map +1 -1
- package/dist/acp/agent-session.d.ts +3 -1
- package/dist/acp/agent-session.d.ts.map +1 -1
- package/dist/acp/agent-session.js +62 -28
- package/dist/acp/agent-session.js.map +1 -1
- package/dist/acp/codex/agent.d.ts.map +1 -1
- package/dist/acp/codex/agent.js +0 -12
- package/dist/acp/codex/agent.js.map +1 -1
- package/dist/acp/session-contracts.d.ts +3 -1
- package/dist/acp/session-contracts.d.ts.map +1 -1
- package/dist/acp/session-contracts.js.map +1 -1
- package/dist/acp/session-event-store-v2.d.ts +37 -0
- package/dist/acp/session-event-store-v2.d.ts.map +1 -0
- package/dist/acp/session-event-store-v2.js +199 -0
- package/dist/acp/session-event-store-v2.js.map +1 -0
- package/dist/acp/session-history.d.ts +3 -2
- package/dist/acp/session-history.d.ts.map +1 -1
- package/dist/acp/session-history.js +37 -41
- package/dist/acp/session-history.js.map +1 -1
- package/dist/acp/session-store.d.ts +7 -1
- package/dist/acp/session-store.d.ts.map +1 -1
- package/dist/acp/session-store.js +20 -37
- package/dist/acp/session-store.js.map +1 -1
- package/dist/cli.js +1167 -1216
- package/dist/cli.js.map +4 -4
- package/dist/daemon-command-handler.d.ts +1 -3
- package/dist/daemon-command-handler.d.ts.map +1 -1
- package/dist/daemon-command-handler.js +11 -9
- package/dist/daemon-command-handler.js.map +1 -1
- package/dist/daemon-command-results.d.ts +2 -3
- package/dist/daemon-command-results.d.ts.map +1 -1
- package/dist/daemon-command-results.js +4 -12
- package/dist/daemon-command-results.js.map +1 -1
- package/dist/daemon-prompt-executor.d.ts +2 -6
- package/dist/daemon-prompt-executor.d.ts.map +1 -1
- package/dist/daemon-prompt-executor.js +20 -73
- package/dist/daemon-prompt-executor.js.map +1 -1
- package/dist/daemon-session-commands.d.ts +2 -3
- package/dist/daemon-session-commands.d.ts.map +1 -1
- package/dist/daemon-session-commands.js +3 -15
- package/dist/daemon-session-commands.js.map +1 -1
- package/dist/generated/session-event-cache-migrations.d.ts +5 -0
- package/dist/generated/session-event-cache-migrations.d.ts.map +1 -0
- package/dist/generated/session-event-cache-migrations.js +9 -0
- package/dist/generated/session-event-cache-migrations.js.map +1 -0
- package/dist/index.js +1161 -1211
- package/dist/index.js.map +4 -4
- package/dist/infra/local-sqlite-database.d.ts +13 -0
- package/dist/infra/local-sqlite-database.d.ts.map +1 -0
- package/dist/infra/local-sqlite-database.js +57 -0
- package/dist/infra/local-sqlite-database.js.map +1 -0
- package/dist/local-databases.d.ts +4 -0
- package/dist/local-databases.d.ts.map +1 -0
- package/dist/local-databases.js +9 -0
- package/dist/local-databases.js.map +1 -0
- package/dist/relay-connection/run-relay-connection.d.ts.map +1 -1
- package/dist/relay-connection/run-relay-connection.js +0 -1
- package/dist/relay-connection/run-relay-connection.js.map +1 -1
- package/dist/relay-connection/session-event-publisher.d.ts +2 -3
- package/dist/relay-connection/session-event-publisher.d.ts.map +1 -1
- package/dist/relay-connection/session-event-publisher.js +8 -46
- package/dist/relay-connection/session-event-publisher.js.map +1 -1
- package/dist/run-daemon.d.ts.map +1 -1
- package/dist/run-daemon.js +18 -6
- package/dist/run-daemon.js.map +1 -1
- package/dist/runtime.js +1149 -1199
- package/dist/runtime.js.map +4 -4
- package/dist/schema/session-event-cache/index.d.ts +2 -0
- package/dist/schema/session-event-cache/index.d.ts.map +1 -0
- package/dist/schema/session-event-cache/index.js +2 -0
- package/dist/schema/session-event-cache/index.js.map +1 -0
- package/dist/schema/session-event-cache/session-event-v2.d.ts +72 -0
- package/dist/schema/session-event-cache/session-event-v2.d.ts.map +1 -0
- package/dist/schema/session-event-cache/session-event-v2.js +11 -0
- package/dist/schema/session-event-cache/session-event-v2.js.map +1 -0
- package/dist/session-event-log-v2.d.ts +8 -6
- package/dist/session-event-log-v2.d.ts.map +1 -1
- package/dist/session-event-log-v2.js +85 -13
- package/dist/session-event-log-v2.js.map +1 -1
- package/package.json +2 -1
- package/dist/relay-connection/coalescing-agent-event-publisher.d.ts +0 -32
- package/dist/relay-connection/coalescing-agent-event-publisher.d.ts.map +0 -1
- package/dist/relay-connection/coalescing-agent-event-publisher.js +0 -116
- package/dist/relay-connection/coalescing-agent-event-publisher.js.map +0 -1
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { type NodeSQLiteDatabase } from "drizzle-orm/node-sqlite";
|
|
2
|
+
export interface LocalSqliteMigration {
|
|
3
|
+
readonly name: string;
|
|
4
|
+
readonly sql: string;
|
|
5
|
+
}
|
|
6
|
+
export declare class LocalSqliteDatabase {
|
|
7
|
+
#private;
|
|
8
|
+
readonly orm: NodeSQLiteDatabase;
|
|
9
|
+
constructor(path: string, label: string, migrations: readonly LocalSqliteMigration[], pragmas?: readonly string[]);
|
|
10
|
+
readonly transaction: <Result>(operation: () => Result) => Result;
|
|
11
|
+
readonly close: () => void;
|
|
12
|
+
}
|
|
13
|
+
//# sourceMappingURL=local-sqlite-database.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"local-sqlite-database.d.ts","sourceRoot":"","sources":["../../src/infra/local-sqlite-database.ts"],"names":[],"mappings":"AAGA,OAAO,EAAW,KAAK,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAG3E,MAAM,WAAW,oBAAoB;IACjC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;CACxB;AAED,qBAAa,mBAAmB;;IAC5B,QAAQ,CAAC,GAAG,EAAE,kBAAkB,CAAC;IAGjC,YACI,IAAI,EAAE,MAAM,EACZ,KAAK,EAAE,MAAM,EACb,UAAU,EAAE,SAAS,oBAAoB,EAAE,EAC3C,OAAO,GAAE,SAAS,MAAM,EAAO,EAelC;IAqBD,QAAQ,CAAC,WAAW,GAAI,MAAM,aAAa,MAAM,MAAM,KAAG,MAAM,CAU9D;IAEF,QAAQ,CAAC,KAAK,QAAO,IAAI,CAAyB;CACrD"}
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
import { chmodSync, mkdirSync } from "node:fs";
|
|
2
|
+
import { dirname } from "node:path";
|
|
3
|
+
import { DatabaseSync } from "node:sqlite";
|
|
4
|
+
import { drizzle } from "drizzle-orm/node-sqlite";
|
|
5
|
+
import { z } from "zod";
|
|
6
|
+
export class LocalSqliteDatabase {
|
|
7
|
+
orm;
|
|
8
|
+
#sqlite;
|
|
9
|
+
constructor(path, label, migrations, pragmas = []) {
|
|
10
|
+
mkdirSync(dirname(path), { mode: 0o700, recursive: true });
|
|
11
|
+
this.#sqlite = new DatabaseSync(path);
|
|
12
|
+
chmodSync(path, 0o600);
|
|
13
|
+
try {
|
|
14
|
+
for (const pragma of pragmas) {
|
|
15
|
+
this.#sqlite.exec(pragma);
|
|
16
|
+
}
|
|
17
|
+
this.#migrate(label, migrations);
|
|
18
|
+
this.orm = drizzle({ client: this.#sqlite });
|
|
19
|
+
}
|
|
20
|
+
catch (error) {
|
|
21
|
+
this.#sqlite.close();
|
|
22
|
+
throw error;
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
#migrate = (label, migrations) => {
|
|
26
|
+
const version = z
|
|
27
|
+
.object({ user_version: z.number().int().nonnegative() })
|
|
28
|
+
.parse(this.#sqlite.prepare("PRAGMA user_version").get()).user_version;
|
|
29
|
+
if (version > migrations.length) {
|
|
30
|
+
throw new Error(`The ${label} was created by a newer Mobius version`);
|
|
31
|
+
}
|
|
32
|
+
for (let index = version; index < migrations.length; index += 1) {
|
|
33
|
+
const migration = migrations[index];
|
|
34
|
+
if (migration === undefined) {
|
|
35
|
+
throw new Error(`The ${label} migration is unavailable`);
|
|
36
|
+
}
|
|
37
|
+
this.transaction(() => {
|
|
38
|
+
this.#sqlite.exec(migration.sql);
|
|
39
|
+
this.#sqlite.exec(`PRAGMA user_version = ${index + 1}`);
|
|
40
|
+
});
|
|
41
|
+
}
|
|
42
|
+
};
|
|
43
|
+
transaction = (operation) => {
|
|
44
|
+
this.#sqlite.exec("BEGIN IMMEDIATE");
|
|
45
|
+
try {
|
|
46
|
+
const result = operation();
|
|
47
|
+
this.#sqlite.exec("COMMIT");
|
|
48
|
+
return result;
|
|
49
|
+
}
|
|
50
|
+
catch (error) {
|
|
51
|
+
this.#sqlite.exec("ROLLBACK");
|
|
52
|
+
throw error;
|
|
53
|
+
}
|
|
54
|
+
};
|
|
55
|
+
close = () => this.#sqlite.close();
|
|
56
|
+
}
|
|
57
|
+
//# sourceMappingURL=local-sqlite-database.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"local-sqlite-database.js","sourceRoot":"","sources":["../../src/infra/local-sqlite-database.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import { LocalSqliteDatabase } from "./infra/local-sqlite-database.ts";
|
|
2
|
+
export declare const openAcpSessionDatabase: (path: string) => LocalSqliteDatabase;
|
|
3
|
+
export declare const openSessionEventCacheV2Database: (path: string) => LocalSqliteDatabase;
|
|
4
|
+
//# sourceMappingURL=local-databases.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"local-databases.d.ts","sourceRoot":"","sources":["../src/local-databases.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,mBAAmB,EAAE,MAAM,kCAAkC,CAAC;AAEvE,eAAO,MAAM,sBAAsB,SAAU,MAAM,KAAG,mBAC8B,CAAC;AAErF,eAAO,MAAM,+BAA+B,SAAU,MAAM,KAAG,mBAIzD,CAAC"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { acpSessionStoreMigrations } from "./generated/acp-session-store-migrations.js";
|
|
2
|
+
import { sessionEventCacheMigrations } from "./generated/session-event-cache-migrations.js";
|
|
3
|
+
import { LocalSqliteDatabase } from "./infra/local-sqlite-database.js";
|
|
4
|
+
export const openAcpSessionDatabase = (path) => new LocalSqliteDatabase(path, "ACP Session database", acpSessionStoreMigrations);
|
|
5
|
+
export const openSessionEventCacheV2Database = (path) => new LocalSqliteDatabase(path, "V2 Session event cache", sessionEventCacheMigrations, [
|
|
6
|
+
"PRAGMA journal_mode = WAL",
|
|
7
|
+
"PRAGMA synchronous = OFF",
|
|
8
|
+
]);
|
|
9
|
+
//# sourceMappingURL=local-databases.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"local-databases.js","sourceRoot":"","sources":["../src/local-databases.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,yBAAyB,EAAE,MAAM,6CAA6C,CAAC;AACxF,OAAO,EAAE,2BAA2B,EAAE,MAAM,+CAA+C,CAAC;AAC5F,OAAO,EAAE,mBAAmB,EAAE,MAAM,kCAAkC,CAAC;AAEvE,MAAM,CAAC,MAAM,sBAAsB,GAAG,CAAC,IAAY,EAAuB,EAAE,CACxE,IAAI,mBAAmB,CAAC,IAAI,EAAE,sBAAsB,EAAE,yBAAyB,CAAC,CAAC;AAErF,MAAM,CAAC,MAAM,+BAA+B,GAAG,CAAC,IAAY,EAAuB,EAAE,CACjF,IAAI,mBAAmB,CAAC,IAAI,EAAE,wBAAwB,EAAE,2BAA2B,EAAE;IACjF,2BAA2B;IAC3B,0BAA0B;CAC7B,CAAC,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"run-relay-connection.d.ts","sourceRoot":"","sources":["../../src/relay-connection/run-relay-connection.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,iCAAiC,CAAC;AAC3E,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,qDAAqD,CAAC;AACpG,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AAC1D,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,yCAAyC,CAAC;AACzF,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAGjD,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,wBAAwB,CAAC;AACzE,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AACrE,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,qDAAqD,CAAC;AAChG,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,+BAA+B,CAAC;AAC1E,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,4BAA4B,CAAC;AAE1E,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAC;AACxE,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,kBAAkB,CAAC;AAGnE,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,8BAA8B,CAAC;AAChF,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAe9C,MAAM,WAAW,sBAAsB;IACnC,QAAQ,CAAC,MAAM,EAAE,YAAY,CAAC;IAC9B,QAAQ,CAAC,WAAW,EAAE,yBAAyB,CAAC;IAChD,QAAQ,CAAC,KAAK,EAAE,UAAU,CAAC;IAC3B,QAAQ,CAAC,QAAQ,EAAE,mBAAmB,CAAC;IACvC,QAAQ,CAAC,aAAa,EAAE,wBAAwB,CAAC;IACjD,QAAQ,CAAC,oBAAoB,EAAE,0BAA0B,CAAC;IAC1D,QAAQ,CAAC,cAAc,EAAE,oBAAoB,CAAC;IAC9C,QAAQ,CAAC,UAAU,EAAE,oBAAoB,CAAC;IAC1C,QAAQ,CAAC,SAAS,EAAE,2BAA2B,CAAC;IAChD,QAAQ,CAAC,UAAU,EAAE,uBAAuB,CAAC;IAC7C,QAAQ,CAAC,eAAe,EAAE,oBAAoB,CAAC;IAC/C,QAAQ,CAAC,WAAW,EAAE,kBAAkB,CAAC;IACzC,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAC;IACjC,QAAQ,CAAC,WAAW,EAAE,0BAA0B,CAAC;IACjD,QAAQ,CAAC,WAAW,EAAE,MAAM,IAAI,CAAC;IACjC,QAAQ,CAAC,MAAM,EAAE,WAAW,CAAC;IAC7B,QAAQ,CAAC,KAAK,EAAE,WAAW,CAAC;CAC/B;AAED,wBAAsB,kBAAkB,CAAC,EACrC,MAAM,EACN,WAAW,EACX,KAAK,EACL,QAAQ,EACR,aAAa,EACb,oBAAoB,EACpB,cAAc,EACd,UAAU,EACV,SAAS,EACT,UAAU,EACV,eAAe,EACf,WAAW,EACX,eAAe,EACf,WAAW,EACX,WAAW,EACX,MAAM,EACN,KAAK,GACR,EAAE,sBAAsB,GAAG,OAAO,CAAC,IAAI,CAAC,
|
|
1
|
+
{"version":3,"file":"run-relay-connection.d.ts","sourceRoot":"","sources":["../../src/relay-connection/run-relay-connection.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,iCAAiC,CAAC;AAC3E,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,qDAAqD,CAAC;AACpG,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AAC1D,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,yCAAyC,CAAC;AACzF,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAGjD,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,wBAAwB,CAAC;AACzE,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AACrE,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,qDAAqD,CAAC;AAChG,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,+BAA+B,CAAC;AAC1E,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,4BAA4B,CAAC;AAE1E,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAC;AACxE,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,kBAAkB,CAAC;AAGnE,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,8BAA8B,CAAC;AAChF,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAe9C,MAAM,WAAW,sBAAsB;IACnC,QAAQ,CAAC,MAAM,EAAE,YAAY,CAAC;IAC9B,QAAQ,CAAC,WAAW,EAAE,yBAAyB,CAAC;IAChD,QAAQ,CAAC,KAAK,EAAE,UAAU,CAAC;IAC3B,QAAQ,CAAC,QAAQ,EAAE,mBAAmB,CAAC;IACvC,QAAQ,CAAC,aAAa,EAAE,wBAAwB,CAAC;IACjD,QAAQ,CAAC,oBAAoB,EAAE,0BAA0B,CAAC;IAC1D,QAAQ,CAAC,cAAc,EAAE,oBAAoB,CAAC;IAC9C,QAAQ,CAAC,UAAU,EAAE,oBAAoB,CAAC;IAC1C,QAAQ,CAAC,SAAS,EAAE,2BAA2B,CAAC;IAChD,QAAQ,CAAC,UAAU,EAAE,uBAAuB,CAAC;IAC7C,QAAQ,CAAC,eAAe,EAAE,oBAAoB,CAAC;IAC/C,QAAQ,CAAC,WAAW,EAAE,kBAAkB,CAAC;IACzC,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAC;IACjC,QAAQ,CAAC,WAAW,EAAE,0BAA0B,CAAC;IACjD,QAAQ,CAAC,WAAW,EAAE,MAAM,IAAI,CAAC;IACjC,QAAQ,CAAC,MAAM,EAAE,WAAW,CAAC;IAC7B,QAAQ,CAAC,KAAK,EAAE,WAAW,CAAC;CAC/B;AAED,wBAAsB,kBAAkB,CAAC,EACrC,MAAM,EACN,WAAW,EACX,KAAK,EACL,QAAQ,EACR,aAAa,EACb,oBAAoB,EACpB,cAAc,EACd,UAAU,EACV,SAAS,EACT,UAAU,EACV,eAAe,EACf,WAAW,EACX,eAAe,EACf,WAAW,EACX,WAAW,EACX,MAAM,EACN,KAAK,GACR,EAAE,sBAAsB,GAAG,OAAO,CAAC,IAAI,CAAC,CA0KxC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"run-relay-connection.js","sourceRoot":"","sources":["../../src/relay-connection/run-relay-connection.ts"],"names":[],"mappings":"AAAA,OAAO,EACH,4BAA4B,EAC5B,0BAA0B,EAC1B,2BAA2B,EAC3B,mCAAmC,GACtC,MAAM,0BAA0B,CAAC;AAClC,OAAO,EAAqB,SAAS,EAAE,MAAM,QAAQ,CAAC;AAMtD,OAAO,EAAE,0BAA0B,EAAE,MAAM,8BAA8B,CAAC;AAC1E,OAAO,EAAE,IAAI,EAAE,MAAM,8BAA8B,CAAC;AAMpD,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAG5C,OAAO,EAAE,uBAAuB,EAAE,MAAM,eAAe,CAAC;AACxD,OAAO,EAAE,wBAAwB,EAAE,wBAAwB,EAAE,MAAM,yBAAyB,CAAC;AAI7F,SAAS,gBAAgB,CAAC,MAAiB,EAAE,IAAY,EAAE,MAAc;IACrE,IAAI,CAAC;QACD,MAAM,CAAC,KAAK,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;IAC/B,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACb,OAAO,CAAC,KAAK,CAAC,mDAAmD,EAAE,KAAK,CAAC,CAAC;QAC1E,IAAI,CAAC;YACD,MAAM,CAAC,KAAK,EAAE,CAAC;QACnB,CAAC;QAAC,OAAO,aAAa,EAAE,CAAC;YACrB,OAAO,CAAC,KAAK,CAAC,qDAAqD,EAAE,aAAa,CAAC,CAAC;QACxF,CAAC;IACL,CAAC;AACL,CAAC;AAsBD,MAAM,CAAC,KAAK,UAAU,kBAAkB,CAAC,EACrC,MAAM,EACN,WAAW,EACX,KAAK,EACL,QAAQ,EACR,aAAa,EACb,oBAAoB,EACpB,cAAc,EACd,UAAU,EACV,SAAS,EACT,UAAU,EACV,eAAe,EACf,WAAW,EACX,eAAe,EACf,WAAW,EACX,WAAW,EACX,MAAM,EACN,KAAK,GACgB;IACrB,MAAM,QAAQ,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;IAC1C,QAAQ,CAAC,YAAY,CAAC,GAAG,CAAC,UAAU,EAAE,GAAG,CAAC,CAAC;IAC3C,MAAM,MAAM,GAAG,MAAM,YAAY,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;IACpD,WAAW,CAAC,gBAAgB,CAAC,eAAe,CAAC,CAAC;IAC9C,MAAM,oBAAoB,GAAG,IAAI,eAAe,EAAE,CAAC;IACnD,MAAM,QAAQ,GAAG,0BAA0B,CAAC;QACxC,MAAM;QACN,WAAW;QACX,KAAK;QACL,QAAQ;QACR,aAAa;QACb,cAAc;QACd,UAAU;QACV,
|
|
1
|
+
{"version":3,"file":"run-relay-connection.js","sourceRoot":"","sources":["../../src/relay-connection/run-relay-connection.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { type
|
|
1
|
+
import { type SessionEventV2, type SessionStatusChangedEvent } from "@moxt-ai/mobius-protocol";
|
|
2
2
|
import { WebSocket } from "undici";
|
|
3
3
|
/** Live delivery is best-effort. Recovery snapshots are owned by the daemon's local Session cache. */
|
|
4
4
|
export declare class DaemonSessionEventPublisher {
|
|
@@ -6,8 +6,7 @@ export declare class DaemonSessionEventPublisher {
|
|
|
6
6
|
readonly connect: (socket: WebSocket) => void;
|
|
7
7
|
readonly disconnect: (socket: WebSocket) => void;
|
|
8
8
|
readonly close: () => void;
|
|
9
|
-
readonly
|
|
10
|
-
readonly publishBatch: (sessionId: string, events: readonly RecordedSessionEvent[]) => void;
|
|
9
|
+
readonly publishOperationFailure: (sessionId: string, requestId: string, code: string, message: string) => void;
|
|
11
10
|
readonly publishStatus: (event: SessionStatusChangedEvent) => void;
|
|
12
11
|
readonly publishV2: (event: SessionEventV2) => void;
|
|
13
12
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"session-event-publisher.d.ts","sourceRoot":"","sources":["../../src/relay-connection/session-event-publisher.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"session-event-publisher.d.ts","sourceRoot":"","sources":["../../src/relay-connection/session-event-publisher.ts"],"names":[],"mappings":"AAAA,OAAO,EAIH,KAAK,cAAc,EACnB,KAAK,yBAAyB,EACjC,MAAM,0BAA0B,CAAC;AAClC,OAAO,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAC;AAInC,sGAAsG;AACtG,qBAAa,2BAA2B;;IAGpC,QAAQ,CAAC,OAAO,WAAY,SAAS,KAAG,IAAI,CAE1C;IAEF,QAAQ,CAAC,UAAU,WAAY,SAAS,KAAG,IAAI,CAI7C;IAEF,QAAQ,CAAC,KAAK,QAAO,IAAI,CAEvB;IAEF,QAAQ,CAAC,uBAAuB,cAAe,MAAM,aAAa,MAAM,QAAQ,MAAM,WAAW,MAAM,KAAG,IAAI,CAE5G;IACF,QAAQ,CAAC,aAAa,UAAW,yBAAyB,KAAG,IAAI,CAAsB;IACvF,QAAQ,CAAC,SAAS,UAAW,cAAc,KAAG,IAAI,CAAuD;CAkB5G"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { encodeDaemonToServiceMessage,
|
|
1
|
+
import { encodeDaemonToServiceMessage, SESSION_EVENT_V2_KIND, } from "@moxt-ai/mobius-protocol";
|
|
2
2
|
import { WebSocket } from "undici";
|
|
3
3
|
const MAX_BUFFERED_BYTES = 32 * 1024 * 1024;
|
|
4
4
|
/** Live delivery is best-effort. Recovery snapshots are owned by the daemon's local Session cache. */
|
|
@@ -15,55 +15,17 @@ export class DaemonSessionEventPublisher {
|
|
|
15
15
|
close = () => {
|
|
16
16
|
this.#socket = null;
|
|
17
17
|
};
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
if (socket === null || socket.readyState !== WebSocket.OPEN) {
|
|
21
|
-
return;
|
|
22
|
-
}
|
|
23
|
-
const encoded = encodeDaemonToServiceMessage({
|
|
24
|
-
kind: SESSION_EVENT_KIND,
|
|
25
|
-
payload: encodeRecordedSessionEvent(event),
|
|
26
|
-
sessionId,
|
|
27
|
-
});
|
|
28
|
-
if (socket.bufferedAmount + Buffer.byteLength(encoded, "utf8") > MAX_BUFFERED_BYTES) {
|
|
29
|
-
socket.close(1013, "Live event transport overloaded");
|
|
30
|
-
return;
|
|
31
|
-
}
|
|
32
|
-
try {
|
|
33
|
-
socket.send(encoded);
|
|
34
|
-
}
|
|
35
|
-
catch {
|
|
36
|
-
// Socket liveness owns reconnection. Missed events are not delivery work.
|
|
37
|
-
}
|
|
38
|
-
};
|
|
39
|
-
publishBatch = (sessionId, events) => {
|
|
40
|
-
for (const event of events) {
|
|
41
|
-
this.publish(sessionId, event);
|
|
42
|
-
}
|
|
43
|
-
};
|
|
44
|
-
publishStatus = (event) => {
|
|
45
|
-
const socket = this.#socket;
|
|
46
|
-
if (socket === null || socket.readyState !== WebSocket.OPEN) {
|
|
47
|
-
return;
|
|
48
|
-
}
|
|
49
|
-
const encoded = encodeDaemonToServiceMessage(event);
|
|
50
|
-
if (socket.bufferedAmount + Buffer.byteLength(encoded, "utf8") > MAX_BUFFERED_BYTES) {
|
|
51
|
-
socket.close(1013, "Live event transport overloaded");
|
|
52
|
-
return;
|
|
53
|
-
}
|
|
54
|
-
try {
|
|
55
|
-
socket.send(encoded);
|
|
56
|
-
}
|
|
57
|
-
catch {
|
|
58
|
-
// Socket liveness owns reconnection. The Session directory provides recovery snapshots.
|
|
59
|
-
}
|
|
18
|
+
publishOperationFailure = (sessionId, requestId, code, message) => {
|
|
19
|
+
this.#send({ kind: "session.operation.failed", sessionId, requestId, code, message });
|
|
60
20
|
};
|
|
61
|
-
|
|
21
|
+
publishStatus = (event) => this.#send(event);
|
|
22
|
+
publishV2 = (event) => this.#send({ event, kind: SESSION_EVENT_V2_KIND });
|
|
23
|
+
#send = (message) => {
|
|
62
24
|
const socket = this.#socket;
|
|
63
25
|
if (socket === null || socket.readyState !== WebSocket.OPEN) {
|
|
64
26
|
return;
|
|
65
27
|
}
|
|
66
|
-
const encoded = encodeDaemonToServiceMessage(
|
|
28
|
+
const encoded = encodeDaemonToServiceMessage(message);
|
|
67
29
|
if (socket.bufferedAmount + Buffer.byteLength(encoded, "utf8") > MAX_BUFFERED_BYTES) {
|
|
68
30
|
socket.close(1013, "Live event transport overloaded");
|
|
69
31
|
return;
|
|
@@ -72,7 +34,7 @@ export class DaemonSessionEventPublisher {
|
|
|
72
34
|
socket.send(encoded);
|
|
73
35
|
}
|
|
74
36
|
catch {
|
|
75
|
-
|
|
37
|
+
/* Connection liveness owns reconnection; live messages are not retried. */
|
|
76
38
|
}
|
|
77
39
|
};
|
|
78
40
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"session-event-publisher.js","sourceRoot":"","sources":["../../src/relay-connection/session-event-publisher.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"session-event-publisher.js","sourceRoot":"","sources":["../../src/relay-connection/session-event-publisher.ts"],"names":[],"mappings":"AAAA,OAAO,EAEH,4BAA4B,EAC5B,qBAAqB,GAGxB,MAAM,0BAA0B,CAAC;AAClC,OAAO,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAC;AAEnC,MAAM,kBAAkB,GAAG,EAAE,GAAG,IAAI,GAAG,IAAI,CAAC;AAE5C,sGAAsG;AACtG,MAAM,OAAO,2BAA2B;IACpC,OAAO,GAAqB,IAAI,CAAC;IAExB,OAAO,GAAG,CAAC,MAAiB,EAAQ,EAAE;QAC3C,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC;IAC1B,CAAC,CAAC;IAEO,UAAU,GAAG,CAAC,MAAiB,EAAQ,EAAE;QAC9C,IAAI,IAAI,CAAC,OAAO,KAAK,MAAM,EAAE,CAAC;YAC1B,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;QACxB,CAAC;IACL,CAAC,CAAC;IAEO,KAAK,GAAG,GAAS,EAAE;QACxB,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;IACxB,CAAC,CAAC;IAEO,uBAAuB,GAAG,CAAC,SAAiB,EAAE,SAAiB,EAAE,IAAY,EAAE,OAAe,EAAQ,EAAE;QAC7G,IAAI,CAAC,KAAK,CAAC,EAAE,IAAI,EAAE,0BAA0B,EAAE,SAAS,EAAE,SAAS,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC;IAC1F,CAAC,CAAC;IACO,aAAa,GAAG,CAAC,KAAgC,EAAQ,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;IAC9E,SAAS,GAAG,CAAC,KAAqB,EAAQ,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,qBAAqB,EAAE,CAAC,CAAC;IAEhG,KAAK,GAAG,CAAC,OAA+B,EAAQ,EAAE;QACvD,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC;QAC5B,IAAI,MAAM,KAAK,IAAI,IAAI,MAAM,CAAC,UAAU,KAAK,SAAS,CAAC,IAAI,EAAE,CAAC;YAC1D,OAAO;QACX,CAAC;QACD,MAAM,OAAO,GAAG,4BAA4B,CAAC,OAAO,CAAC,CAAC;QACtD,IAAI,MAAM,CAAC,cAAc,GAAG,MAAM,CAAC,UAAU,CAAC,OAAO,EAAE,MAAM,CAAC,GAAG,kBAAkB,EAAE,CAAC;YAClF,MAAM,CAAC,KAAK,CAAC,IAAI,EAAE,iCAAiC,CAAC,CAAC;YACtD,OAAO;QACX,CAAC;QACD,IAAI,CAAC;YACD,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACzB,CAAC;QAAC,MAAM,CAAC;YACL,2EAA2E;QAC/E,CAAC;IACL,CAAC,CAAC;CACL"}
|
package/dist/run-daemon.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"run-daemon.d.ts","sourceRoot":"","sources":["../src/run-daemon.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"run-daemon.d.ts","sourceRoot":"","sources":["../src/run-daemon.ts"],"names":[],"mappings":"AAcA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AAEzD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAchD,OAAO,EAAE,KAAK,WAAW,EAAqB,MAAM,6BAA6B,CAAC;AAyElF,MAAM,WAAW,gBAAgB;IAC7B,QAAQ,CAAC,kBAAkB,CAAC,EAAE,CAAC,MAAM,EAAE,QAAQ,GAAG,cAAc,KAAK,IAAI,CAAC;CAC7E;AAED,wBAAsB,SAAS,CAC3B,MAAM,EAAE,YAAY,EACpB,KAAK,EAAE,UAAU,EACjB,MAAM,EAAE,WAAW,EACnB,KAAK,GAAE,WAA+B,EACtC,OAAO,GAAE,gBAAqB,GAC/B,OAAO,CAAC,IAAI,CAAC,CA8Nf"}
|
package/dist/run-daemon.js
CHANGED
|
@@ -55,6 +55,7 @@ import { join } from "node:path";
|
|
|
55
55
|
import { styleText } from "node:util";
|
|
56
56
|
import { AGENT_INSTALL_REQUEST_KIND } from "@moxt-ai/mobius-protocol";
|
|
57
57
|
import { AgentRuntimeManager } from "./acp/agent-runtime-manager.js";
|
|
58
|
+
import { CachedAcpSessionEventStoreV2 } from "./acp/session-event-store-v2.js";
|
|
58
59
|
import { SqliteAcpSessionStore } from "./acp/session-store.js";
|
|
59
60
|
import { supportedLocalAgentSpecifications } from "./agent-catalog/discover-local-agents.js";
|
|
60
61
|
import { AgentIntegrationDefinition } from "./agent-catalog/local-agent.js";
|
|
@@ -67,6 +68,7 @@ import { AuditInstallationEvents, DaemonAcpObserver, DaemonInstallationObserver
|
|
|
67
68
|
import { DaemonTurnRegistry } from "./daemon-turn-registry.js";
|
|
68
69
|
import { AcpContentExternalizer } from "./external-content/acp-content-externalizer.js";
|
|
69
70
|
import { LocalExternalContentStore } from "./external-content/local-external-content-store.js";
|
|
71
|
+
import { openAcpSessionDatabase, openSessionEventCacheV2Database } from "./local-databases.js";
|
|
70
72
|
import { readCodexFullHistory } from "./native-sessions/codex-history.js";
|
|
71
73
|
import { NativeSessionService } from "./native-sessions/service.js";
|
|
72
74
|
import { DaemonOperationState } from "./relay-connection/daemon-operation-state.js";
|
|
@@ -142,16 +144,26 @@ export async function runDaemon(config, audit, signal, timer = systemDaemonTimer
|
|
|
142
144
|
publishCatalog: async (installationSignal) => await publishAgentCatalog(config, installationSignal),
|
|
143
145
|
stateDirectory,
|
|
144
146
|
});
|
|
145
|
-
const
|
|
147
|
+
const channelHash = createHash("sha256").update(config.channelId).digest("hex");
|
|
148
|
+
const daemonGenerationId = randomUUID();
|
|
149
|
+
const sessionDatabase = openAcpSessionDatabase(join(stateDirectory, "sessions", `${channelHash}.sqlite`));
|
|
150
|
+
let eventsV2;
|
|
151
|
+
try {
|
|
152
|
+
eventsV2 = new CachedAcpSessionEventStoreV2(openSessionEventCacheV2Database(join(stateDirectory, "sessions", `${channelHash}.events.sqlite`)), daemonGenerationId);
|
|
153
|
+
}
|
|
154
|
+
catch (error) {
|
|
155
|
+
sessionDatabase.close();
|
|
156
|
+
throw error;
|
|
157
|
+
}
|
|
158
|
+
const sessionStore = new SqliteAcpSessionStore(sessionDatabase, eventsV2);
|
|
146
159
|
const externalContent = __addDisposableResource(env_1, new LocalExternalContentStore(stateDirectory), true);
|
|
147
160
|
const operations = new DaemonOperationState();
|
|
148
161
|
const publisher = new DaemonSessionEventPublisher();
|
|
149
|
-
const eventLogV2 = new DaemonSessionEventLogV2(publisher);
|
|
162
|
+
const eventLogV2 = new DaemonSessionEventLogV2(publisher, (sessionId, event) => agentRuntime.recordLifecycleEventV2(sessionId, event), daemonGenerationId);
|
|
150
163
|
const activeTurns = new DaemonTurnRegistry(operations);
|
|
151
|
-
const
|
|
152
|
-
|
|
153
|
-
}
|
|
154
|
-
const agentRuntime = new AgentRuntimeManager(new DaemonAcpObserver(recordSessionEvent, eventLogV2.record), sessionStore, {
|
|
164
|
+
const agentRuntime = new AgentRuntimeManager(new DaemonAcpObserver((_sessionId, event) => {
|
|
165
|
+
activeTurns.recordEvent(event);
|
|
166
|
+
}, eventLogV2.record), sessionStore, {
|
|
155
167
|
read: async (options, nativeSessionId, nativeTurn) => options.agent.id === "codex"
|
|
156
168
|
? (await readCodexFullHistory(options.agent, options.cwd, nativeSessionId, options.signal, nativeTurn)).history
|
|
157
169
|
: null,
|
package/dist/run-daemon.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"run-daemon.js","sourceRoot":"","sources":["../src/run-daemon.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACrD,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AAEtC,OAAO,EAAE,0BAA0B,
|
|
1
|
+
{"version":3,"file":"run-daemon.js","sourceRoot":"","sources":["../src/run-daemon.ts"],"names":[],"mappings":"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"}
|