@eidola.app/cli 0.2.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/cli.d.ts +3 -0
- package/cli.d.ts.map +1 -0
- package/cli.js +46 -0
- package/cli.js.map +1 -0
- package/config.d.ts +16 -0
- package/config.d.ts.map +1 -0
- package/config.js +62 -0
- package/config.js.map +1 -0
- package/cursor/auto-activate.d.ts +16 -0
- package/cursor/auto-activate.d.ts.map +1 -0
- package/cursor/auto-activate.js +79 -0
- package/cursor/auto-activate.js.map +1 -0
- package/cursor/compile.d.ts +13 -0
- package/cursor/compile.d.ts.map +1 -0
- package/cursor/compile.js +47 -0
- package/cursor/compile.js.map +1 -0
- package/cursor/ensure-shrine.d.ts +25 -0
- package/cursor/ensure-shrine.d.ts.map +1 -0
- package/cursor/ensure-shrine.js +168 -0
- package/cursor/ensure-shrine.js.map +1 -0
- package/cursor/hash.d.ts +3 -0
- package/cursor/hash.d.ts.map +1 -0
- package/cursor/hash.js +7 -0
- package/cursor/hash.js.map +1 -0
- package/cursor/shrine-lock.d.ts +17 -0
- package/cursor/shrine-lock.d.ts.map +1 -0
- package/cursor/shrine-lock.js +82 -0
- package/cursor/shrine-lock.js.map +1 -0
- package/cursor/shrine-surface.d.ts +40 -0
- package/cursor/shrine-surface.d.ts.map +1 -0
- package/cursor/shrine-surface.js +152 -0
- package/cursor/shrine-surface.js.map +1 -0
- package/cursor/soul-source.d.ts +3 -0
- package/cursor/soul-source.d.ts.map +1 -0
- package/cursor/soul-source.js +15 -0
- package/cursor/soul-source.js.map +1 -0
- package/cursor/stale.d.ts +12 -0
- package/cursor/stale.d.ts.map +1 -0
- package/cursor/stale.js +41 -0
- package/cursor/stale.js.map +1 -0
- package/cursor/types.d.ts +24 -0
- package/cursor/types.d.ts.map +1 -0
- package/cursor/types.js +2 -0
- package/cursor/types.js.map +1 -0
- package/cursor/workspace-config.d.ts +13 -0
- package/cursor/workspace-config.d.ts.map +1 -0
- package/cursor/workspace-config.js +44 -0
- package/cursor/workspace-config.js.map +1 -0
- package/engram/loader.d.ts +3 -0
- package/engram/loader.d.ts.map +1 -0
- package/engram/loader.js +60 -0
- package/engram/loader.js.map +1 -0
- package/engram/parse.d.ts +4 -0
- package/engram/parse.d.ts.map +1 -0
- package/engram/parse.js +190 -0
- package/engram/parse.js.map +1 -0
- package/engram/registry.d.ts +9 -0
- package/engram/registry.d.ts.map +1 -0
- package/engram/registry.js +54 -0
- package/engram/registry.js.map +1 -0
- package/engram/types.d.ts +58 -0
- package/engram/types.d.ts.map +1 -0
- package/engram/types.js +12 -0
- package/engram/types.js.map +1 -0
- package/engram/validate.d.ts +7 -0
- package/engram/validate.d.ts.map +1 -0
- package/engram/validate.js +22 -0
- package/engram/validate.js.map +1 -0
- package/index.d.ts +30 -0
- package/index.d.ts.map +1 -0
- package/index.js +27 -0
- package/index.js.map +1 -0
- package/migrations/json-to-directory.d.ts +8 -0
- package/migrations/json-to-directory.d.ts.map +1 -0
- package/migrations/json-to-directory.js +151 -0
- package/migrations/json-to-directory.js.map +1 -0
- package/migrations/types.d.ts +46 -0
- package/migrations/types.d.ts.map +1 -0
- package/migrations/types.js +2 -0
- package/migrations/types.js.map +1 -0
- package/package.json +42 -0
- package/server.d.ts +5 -0
- package/server.d.ts.map +1 -0
- package/server.js +95 -0
- package/server.js.map +1 -0
- package/session/state.d.ts +29 -0
- package/session/state.d.ts.map +1 -0
- package/session/state.js +69 -0
- package/session/state.js.map +1 -0
- package/shrine/renderer/assets/index-C44XsM0B.js +4083 -0
- package/shrine/renderer/assets/index-DeRYP3aH.css +1 -0
- package/shrine/renderer/index.html +32 -0
- package/shrine/server/display-config.d.ts +20 -0
- package/shrine/server/display-config.d.ts.map +1 -0
- package/shrine/server/display-config.js +98 -0
- package/shrine/server/display-config.js.map +1 -0
- package/shrine/server/index.d.ts +35 -0
- package/shrine/server/index.d.ts.map +1 -0
- package/shrine/server/index.js +337 -0
- package/shrine/server/index.js.map +1 -0
- package/shrine/shared/approval-idle-logic.d.ts +17 -0
- package/shrine/shared/approval-idle-logic.d.ts.map +1 -0
- package/shrine/shared/approval-idle-logic.js +63 -0
- package/shrine/shared/approval-idle-logic.js.map +1 -0
- package/shrine/shared/approval-idle-logic.test.d.ts +2 -0
- package/shrine/shared/approval-idle-logic.test.d.ts.map +1 -0
- package/shrine/shared/approval-idle-logic.test.js +49 -0
- package/shrine/shared/approval-idle-logic.test.js.map +1 -0
- package/shrine/shared/kraken-detect.d.ts +36 -0
- package/shrine/shared/kraken-detect.d.ts.map +1 -0
- package/shrine/shared/kraken-detect.js +61 -0
- package/shrine/shared/kraken-detect.js.map +1 -0
- package/shrine/shared/kraken-detect.test.d.ts +2 -0
- package/shrine/shared/kraken-detect.test.d.ts.map +1 -0
- package/shrine/shared/kraken-detect.test.js +35 -0
- package/shrine/shared/kraken-detect.test.js.map +1 -0
- package/shrine/shared/shrine-api.d.ts +15 -0
- package/shrine/shared/shrine-api.d.ts.map +1 -0
- package/shrine/shared/shrine-api.js +2 -0
- package/shrine/shared/shrine-api.js.map +1 -0
- package/shrine/shared/shrine-display-config.d.ts +34 -0
- package/shrine/shared/shrine-display-config.d.ts.map +1 -0
- package/shrine/shared/shrine-display-config.js +197 -0
- package/shrine/shared/shrine-display-config.js.map +1 -0
- package/shrine/shared/shrine-display-config.test.d.ts +2 -0
- package/shrine/shared/shrine-display-config.test.d.ts.map +1 -0
- package/shrine/shared/shrine-display-config.test.js +53 -0
- package/shrine/shared/shrine-display-config.test.js.map +1 -0
- package/shrine/shared/shrine-state-colors.d.ts +4 -0
- package/shrine/shared/shrine-state-colors.d.ts.map +1 -0
- package/shrine/shared/shrine-state-colors.js +17 -0
- package/shrine/shared/shrine-state-colors.js.map +1 -0
- package/shrine/shared/shrine-surface.d.ts +32 -0
- package/shrine/shared/shrine-surface.d.ts.map +1 -0
- package/shrine/shared/shrine-surface.js +67 -0
- package/shrine/shared/shrine-surface.js.map +1 -0
- package/shrine/shared/shrine-surface.test.d.ts +2 -0
- package/shrine/shared/shrine-surface.test.d.ts.map +1 -0
- package/shrine/shared/shrine-surface.test.js +35 -0
- package/shrine/shared/shrine-surface.test.js.map +1 -0
- package/shrine/shared/state-socket-client.d.ts +30 -0
- package/shrine/shared/state-socket-client.d.ts.map +1 -0
- package/shrine/shared/state-socket-client.js +103 -0
- package/shrine/shared/state-socket-client.js.map +1 -0
- package/shrine/shared/state-socket-client.test.d.ts +2 -0
- package/shrine/shared/state-socket-client.test.d.ts.map +1 -0
- package/shrine/shared/state-socket-client.test.js +20 -0
- package/shrine/shared/state-socket-client.test.js.map +1 -0
- package/shrine/shared/types.d.ts +43 -0
- package/shrine/shared/types.d.ts.map +1 -0
- package/shrine/shared/types.js +58 -0
- package/shrine/shared/types.js.map +1 -0
- package/shrine/shared/types.test.d.ts +2 -0
- package/shrine/shared/types.test.d.ts.map +1 -0
- package/shrine/shared/types.test.js +26 -0
- package/shrine/shared/types.test.js.map +1 -0
- package/shrine/shared/vessel-resolver.d.ts +37 -0
- package/shrine/shared/vessel-resolver.d.ts.map +1 -0
- package/shrine/shared/vessel-resolver.js +135 -0
- package/shrine/shared/vessel-resolver.js.map +1 -0
- package/shrine/vendor/mcp.d.ts +3 -0
- package/shrine/vendor/mcp.d.ts.map +1 -0
- package/shrine/vendor/mcp.js +3 -0
- package/shrine/vendor/mcp.js.map +1 -0
- package/socket/expression.d.ts +3 -0
- package/socket/expression.d.ts.map +1 -0
- package/socket/expression.js +28 -0
- package/socket/expression.js.map +1 -0
- package/socket/protocol.d.ts +16 -0
- package/socket/protocol.d.ts.map +1 -0
- package/socket/protocol.js +75 -0
- package/socket/protocol.js.map +1 -0
- package/socket/server.d.ts +22 -0
- package/socket/server.d.ts.map +1 -0
- package/socket/server.js +184 -0
- package/socket/server.js.map +1 -0
- package/socket/types.d.ts +35 -0
- package/socket/types.d.ts.map +1 -0
- package/socket/types.js +18 -0
- package/socket/types.js.map +1 -0
- package/socket/visual-turn.d.ts +8 -0
- package/socket/visual-turn.d.ts.map +1 -0
- package/socket/visual-turn.js +27 -0
- package/socket/visual-turn.js.map +1 -0
- package/soul/injection.d.ts +13 -0
- package/soul/injection.d.ts.map +1 -0
- package/soul/injection.js +36 -0
- package/soul/injection.js.map +1 -0
- package/soul/reinject.d.ts +13 -0
- package/soul/reinject.d.ts.map +1 -0
- package/soul/reinject.js +28 -0
- package/soul/reinject.js.map +1 -0
- package/tools/handlers.d.ts +20 -0
- package/tools/handlers.d.ts.map +1 -0
- package/tools/handlers.js +148 -0
- package/tools/handlers.js.map +1 -0
- package/tools/register.d.ts +4 -0
- package/tools/register.d.ts.map +1 -0
- package/tools/register.js +48 -0
- package/tools/register.js.map +1 -0
- package/vendor/tool-state-pkg/index.d.ts +23 -0
- package/vendor/tool-state-pkg/index.d.ts.map +1 -0
- package/vendor/tool-state-pkg/index.js +140 -0
- package/vendor/tool-state-pkg/index.js.map +1 -0
- package/vendor/tool-state.d.ts +3 -0
- package/vendor/tool-state.d.ts.map +1 -0
- package/vendor/tool-state.js +3 -0
- package/vendor/tool-state.js.map +1 -0
- package/watch/filesystem.d.ts +7 -0
- package/watch/filesystem.d.ts.map +1 -0
- package/watch/filesystem.js +66 -0
- package/watch/filesystem.js.map +1 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"json-to-directory.js","sourceRoot":"","sources":["../../src/migrations/json-to-directory.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Legacy pre-rebuild `.engram.json` blob shape (PersonaModel v1.x lineage).
|
|
3
|
+
* Migration reads this format and outputs a directory package without mutating source.
|
|
4
|
+
*/
|
|
5
|
+
export interface LegacyEngramMetadata {
|
|
6
|
+
author?: string;
|
|
7
|
+
createdAt?: string;
|
|
8
|
+
updatedAt?: string;
|
|
9
|
+
tags?: string[];
|
|
10
|
+
license?: string;
|
|
11
|
+
builtIn?: boolean;
|
|
12
|
+
sample?: boolean;
|
|
13
|
+
}
|
|
14
|
+
export interface LegacyVoiceConfig {
|
|
15
|
+
enabled?: boolean;
|
|
16
|
+
provider?: string;
|
|
17
|
+
voiceId?: string;
|
|
18
|
+
}
|
|
19
|
+
export interface LegacyVesselSpec {
|
|
20
|
+
name?: string;
|
|
21
|
+
appearance?: string | null;
|
|
22
|
+
mannerisms?: Record<string, string>;
|
|
23
|
+
}
|
|
24
|
+
export interface LegacyPackRef {
|
|
25
|
+
packId?: string;
|
|
26
|
+
sourceType?: 'lottie' | 'webm' | 'gif';
|
|
27
|
+
}
|
|
28
|
+
export interface LegacyEngramJson {
|
|
29
|
+
version?: string;
|
|
30
|
+
id?: string;
|
|
31
|
+
name: string;
|
|
32
|
+
description?: string;
|
|
33
|
+
systemPrompt?: string;
|
|
34
|
+
soulMd?: string;
|
|
35
|
+
styleRules?: string[];
|
|
36
|
+
behaviorRules?: string[];
|
|
37
|
+
states?: string[];
|
|
38
|
+
packId?: string;
|
|
39
|
+
vessel?: LegacyVesselSpec | LegacyPackRef | null;
|
|
40
|
+
voice?: LegacyVoiceConfig | null;
|
|
41
|
+
metadata?: LegacyEngramMetadata;
|
|
42
|
+
reinject_interval?: number;
|
|
43
|
+
extensions?: Record<string, unknown>;
|
|
44
|
+
expressions?: Record<string, string>;
|
|
45
|
+
}
|
|
46
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/migrations/types.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,MAAM,WAAW,oBAAoB;IACnC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AAED,MAAM,WAAW,iBAAiB;IAChC,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,gBAAgB;IAC/B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACrC;AAED,MAAM,WAAW,aAAa;IAC5B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,UAAU,CAAC,EAAE,QAAQ,GAAG,MAAM,GAAG,KAAK,CAAC;CACxC;AAED,MAAM,WAAW,gBAAgB;IAC/B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;IACtB,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;IACzB,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,gBAAgB,GAAG,aAAa,GAAG,IAAI,CAAC;IACjD,KAAK,CAAC,EAAE,iBAAiB,GAAG,IAAI,CAAC;IACjC,QAAQ,CAAC,EAAE,oBAAoB,CAAC;IAChC,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACrC,WAAW,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACtC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/migrations/types.ts"],"names":[],"mappings":""}
|
package/package.json
ADDED
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "@eidola.app/cli",
|
|
3
|
+
"version": "0.2.0",
|
|
4
|
+
"type": "module",
|
|
5
|
+
"description": "Portable AI personality runtime — MCP server, Shrine display, and reactive Vessel control.",
|
|
6
|
+
"license": "MIT",
|
|
7
|
+
"keywords": [
|
|
8
|
+
"eidola",
|
|
9
|
+
"mcp",
|
|
10
|
+
"ai-persona",
|
|
11
|
+
"avatar",
|
|
12
|
+
"engram",
|
|
13
|
+
"vessel",
|
|
14
|
+
"model-context-protocol",
|
|
15
|
+
"cursor"
|
|
16
|
+
],
|
|
17
|
+
"main": "index.js",
|
|
18
|
+
"types": "index.d.ts",
|
|
19
|
+
"bin": {
|
|
20
|
+
"eidola": "cli.js"
|
|
21
|
+
},
|
|
22
|
+
"exports": {
|
|
23
|
+
".": {
|
|
24
|
+
"types": "./index.d.ts",
|
|
25
|
+
"import": "./index.js"
|
|
26
|
+
},
|
|
27
|
+
"./server": {
|
|
28
|
+
"types": "./server.d.ts",
|
|
29
|
+
"import": "./server.js"
|
|
30
|
+
}
|
|
31
|
+
},
|
|
32
|
+
"dependencies": {
|
|
33
|
+
"@modelcontextprotocol/sdk": "^1.29.0",
|
|
34
|
+
"js-yaml": "^4.1.0",
|
|
35
|
+
"lottie-web": "^5.13.0",
|
|
36
|
+
"three": "^0.176.0",
|
|
37
|
+
"zod": "^4.4.3"
|
|
38
|
+
},
|
|
39
|
+
"engines": {
|
|
40
|
+
"node": ">=20.0.0"
|
|
41
|
+
}
|
|
42
|
+
}
|
package/server.d.ts
ADDED
package/server.d.ts.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":";AAmBA,wBAAsB,oBAAoB,IAAI,OAAO,CAAC;IACpD,KAAK,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;CAC5B,CAAC,CA8ED"}
|
package/server.js
ADDED
|
@@ -0,0 +1,95 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
import { McpServer } from '@modelcontextprotocol/sdk/server/mcp.js';
|
|
3
|
+
import { StdioServerTransport } from '@modelcontextprotocol/sdk/server/stdio.js';
|
|
4
|
+
import { resolveEidolaRuntimeConfig } from './config.js';
|
|
5
|
+
import { autoActivateFromWorkspace } from './cursor/auto-activate.js';
|
|
6
|
+
import { SessionState } from './session/state.js';
|
|
7
|
+
import { createStateSocketServer } from './socket/server.js';
|
|
8
|
+
import { createToolHandlers } from './tools/handlers.js';
|
|
9
|
+
import { registerEidolaTools } from './tools/register.js';
|
|
10
|
+
import { watchEidolaPaths } from './watch/filesystem.js';
|
|
11
|
+
const SERVER_NAME = 'eidola';
|
|
12
|
+
const SERVER_VERSION = '0.2.0';
|
|
13
|
+
function debug(...args) {
|
|
14
|
+
console.error('[eidola-mcp]', ...args);
|
|
15
|
+
}
|
|
16
|
+
export async function startEidolaMcpServer() {
|
|
17
|
+
const config = resolveEidolaRuntimeConfig();
|
|
18
|
+
const session = new SessionState();
|
|
19
|
+
let stateSocket;
|
|
20
|
+
stateSocket = createStateSocketServer(session, {
|
|
21
|
+
host: config.stateSocketHost,
|
|
22
|
+
port: config.stateSocketPort,
|
|
23
|
+
bufferSize: config.stateBufferSize,
|
|
24
|
+
onWarn: (message) => debug(message),
|
|
25
|
+
onReassertVessel: async () => {
|
|
26
|
+
const reloaded = await session.reloadActive();
|
|
27
|
+
if (!reloaded || !stateSocket.isListening()) {
|
|
28
|
+
return;
|
|
29
|
+
}
|
|
30
|
+
stateSocket.broadcastState({ state: 'idle' });
|
|
31
|
+
},
|
|
32
|
+
});
|
|
33
|
+
const socketAddress = await stateSocket.start();
|
|
34
|
+
const handlers = createToolHandlers(config, session, stateSocket);
|
|
35
|
+
if (socketAddress.listening) {
|
|
36
|
+
const activation = await autoActivateFromWorkspace(config, session, stateSocket, (message) => debug(message));
|
|
37
|
+
if (activation.activated) {
|
|
38
|
+
debug('auto-activate:', activation.engramId, activation.alreadyActive ? '(already active)' : '(loaded)');
|
|
39
|
+
}
|
|
40
|
+
else if (activation.error) {
|
|
41
|
+
debug('auto-activate skipped:', activation.error);
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
const server = new McpServer({
|
|
45
|
+
name: SERVER_NAME,
|
|
46
|
+
version: SERVER_VERSION,
|
|
47
|
+
}, {
|
|
48
|
+
instructions: 'Eidola MCP server — load Eidolons (Engram + Vessel) for Soul injection and expression control. ' +
|
|
49
|
+
'Use load_eidolon to bind a persona and Vessel. Local-only; no remote API proxy.',
|
|
50
|
+
});
|
|
51
|
+
registerEidolaTools(server, handlers);
|
|
52
|
+
const watcher = watchEidolaPaths(config, session, (reason) => {
|
|
53
|
+
debug('hot-reload:', reason);
|
|
54
|
+
});
|
|
55
|
+
const transport = new StdioServerTransport();
|
|
56
|
+
await server.connect(transport);
|
|
57
|
+
debug('stdio transport connected');
|
|
58
|
+
debug('engrams:', config.engramsDir);
|
|
59
|
+
debug('vessels:', config.vesselsDir);
|
|
60
|
+
if (config.workspaceRoot) {
|
|
61
|
+
debug('workspace:', config.workspaceRoot);
|
|
62
|
+
}
|
|
63
|
+
if (socketAddress.listening) {
|
|
64
|
+
debug('state socket:', `${socketAddress.host}:${socketAddress.port}`);
|
|
65
|
+
}
|
|
66
|
+
else {
|
|
67
|
+
debug('state socket: not bound (port in use) — MCP tools OK; free port', config.stateSocketPort, 'for overlay sync');
|
|
68
|
+
}
|
|
69
|
+
const close = async () => {
|
|
70
|
+
watcher.close();
|
|
71
|
+
await stateSocket.close();
|
|
72
|
+
await server.close();
|
|
73
|
+
};
|
|
74
|
+
return { close };
|
|
75
|
+
}
|
|
76
|
+
async function main() {
|
|
77
|
+
const { close } = await startEidolaMcpServer();
|
|
78
|
+
const shutdown = async (signal) => {
|
|
79
|
+
debug(`${signal} received, shutting down...`);
|
|
80
|
+
await close();
|
|
81
|
+
process.exit(0);
|
|
82
|
+
};
|
|
83
|
+
process.on('SIGINT', () => void shutdown('SIGINT'));
|
|
84
|
+
process.on('SIGTERM', () => void shutdown('SIGTERM'));
|
|
85
|
+
}
|
|
86
|
+
import { pathToFileURL } from 'node:url';
|
|
87
|
+
const isMain = process.argv[1] !== undefined &&
|
|
88
|
+
import.meta.url === pathToFileURL(process.argv[1]).href;
|
|
89
|
+
if (isMain) {
|
|
90
|
+
main().catch((error) => {
|
|
91
|
+
debug('Fatal error:', error);
|
|
92
|
+
process.exit(1);
|
|
93
|
+
});
|
|
94
|
+
}
|
|
95
|
+
//# sourceMappingURL=server.js.map
|
package/server.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import type { LoadedEngram } from '../engram/types.js';
|
|
2
|
+
import type { SoulSource } from '../cursor/soul-source.js';
|
|
3
|
+
import { type SoulInjectionPayload } from '../soul/injection.js';
|
|
4
|
+
import { ReinjectTracker } from '../soul/reinject.js';
|
|
5
|
+
export interface ActiveEidolonSnapshot {
|
|
6
|
+
engram_id: string;
|
|
7
|
+
name: string;
|
|
8
|
+
engram: LoadedEngram['engram'];
|
|
9
|
+
vessel: LoadedEngram['vessel'];
|
|
10
|
+
expression: string | null;
|
|
11
|
+
soul_source: SoulSource;
|
|
12
|
+
reinject: ReturnType<ReinjectTracker['status']>;
|
|
13
|
+
}
|
|
14
|
+
export declare class SessionState {
|
|
15
|
+
private active;
|
|
16
|
+
private expressionOverride;
|
|
17
|
+
private soulSource;
|
|
18
|
+
private readonly reinjectTracker;
|
|
19
|
+
getActive(): LoadedEngram | null;
|
|
20
|
+
getExpressionOverride(): string | null;
|
|
21
|
+
getSoulSource(): SoulSource;
|
|
22
|
+
load(directory: string, soulSource?: Exclude<SoulSource, 'none'>): Promise<LoadedEngram>;
|
|
23
|
+
reloadActive(): Promise<LoadedEngram | null>;
|
|
24
|
+
setExpression(state: string): void;
|
|
25
|
+
recordAssistantTurn(): SoulInjectionPayload | null;
|
|
26
|
+
buildInitialSoulInjection(): SoulInjectionPayload | null;
|
|
27
|
+
snapshot(): ActiveEidolonSnapshot | null;
|
|
28
|
+
}
|
|
29
|
+
//# sourceMappingURL=state.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"state.d.ts","sourceRoot":"","sources":["../../src/session/state.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AACvD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AAC3D,OAAO,EAA6B,KAAK,oBAAoB,EAAE,MAAM,sBAAsB,CAAC;AAC5F,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAEtD,MAAM,WAAW,qBAAqB;IACpC,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,YAAY,CAAC,QAAQ,CAAC,CAAC;IAC/B,MAAM,EAAE,YAAY,CAAC,QAAQ,CAAC,CAAC;IAC/B,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,WAAW,EAAE,UAAU,CAAC;IACxB,QAAQ,EAAE,UAAU,CAAC,eAAe,CAAC,QAAQ,CAAC,CAAC,CAAC;CACjD;AAED,qBAAa,YAAY;IACvB,OAAO,CAAC,MAAM,CAA6B;IAC3C,OAAO,CAAC,kBAAkB,CAAuB;IACjD,OAAO,CAAC,UAAU,CAAsB;IACxC,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAyB;IAEzD,SAAS,IAAI,YAAY,GAAG,IAAI;IAIhC,qBAAqB,IAAI,MAAM,GAAG,IAAI;IAItC,aAAa,IAAI,UAAU;IAIrB,IAAI,CAAC,SAAS,EAAE,MAAM,EAAE,UAAU,GAAE,OAAO,CAAC,UAAU,EAAE,MAAM,CAAe,GAAG,OAAO,CAAC,YAAY,CAAC;IASrG,YAAY,IAAI,OAAO,CAAC,YAAY,GAAG,IAAI,CAAC;IAWlD,aAAa,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAIlC,mBAAmB,IAAI,oBAAoB,GAAG,IAAI;IAalD,yBAAyB,IAAI,oBAAoB,GAAG,IAAI;IAQxD,QAAQ,IAAI,qBAAqB,GAAG,IAAI;CAezC"}
|
package/session/state.js
ADDED
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
import { loadEngramFromDirectory } from '../engram/loader.js';
|
|
2
|
+
import { buildSoulInjectionPayload } from '../soul/injection.js';
|
|
3
|
+
import { ReinjectTracker } from '../soul/reinject.js';
|
|
4
|
+
export class SessionState {
|
|
5
|
+
active = null;
|
|
6
|
+
expressionOverride = null;
|
|
7
|
+
soulSource = 'none';
|
|
8
|
+
reinjectTracker = new ReinjectTracker();
|
|
9
|
+
getActive() {
|
|
10
|
+
return this.active;
|
|
11
|
+
}
|
|
12
|
+
getExpressionOverride() {
|
|
13
|
+
return this.expressionOverride;
|
|
14
|
+
}
|
|
15
|
+
getSoulSource() {
|
|
16
|
+
return this.soulSource;
|
|
17
|
+
}
|
|
18
|
+
async load(directory, soulSource = 'injection') {
|
|
19
|
+
const loaded = await loadEngramFromDirectory(directory);
|
|
20
|
+
this.active = loaded;
|
|
21
|
+
this.expressionOverride = null;
|
|
22
|
+
this.soulSource = soulSource;
|
|
23
|
+
this.reinjectTracker.reset();
|
|
24
|
+
return loaded;
|
|
25
|
+
}
|
|
26
|
+
async reloadActive() {
|
|
27
|
+
if (!this.active) {
|
|
28
|
+
return null;
|
|
29
|
+
}
|
|
30
|
+
const directory = this.active.directory;
|
|
31
|
+
const loaded = await loadEngramFromDirectory(directory);
|
|
32
|
+
this.active = loaded;
|
|
33
|
+
return loaded;
|
|
34
|
+
}
|
|
35
|
+
setExpression(state) {
|
|
36
|
+
this.expressionOverride = state;
|
|
37
|
+
}
|
|
38
|
+
recordAssistantTurn() {
|
|
39
|
+
if (!this.active || this.soulSource === 'cursor_rule') {
|
|
40
|
+
return null;
|
|
41
|
+
}
|
|
42
|
+
const due = this.reinjectTracker.recordAssistantTurn(this.active.engram.reinject_interval);
|
|
43
|
+
if (!due) {
|
|
44
|
+
return null;
|
|
45
|
+
}
|
|
46
|
+
return buildSoulInjectionPayload(this.active.engram.id, this.active.soul);
|
|
47
|
+
}
|
|
48
|
+
buildInitialSoulInjection() {
|
|
49
|
+
if (!this.active || this.soulSource === 'cursor_rule') {
|
|
50
|
+
return null;
|
|
51
|
+
}
|
|
52
|
+
return buildSoulInjectionPayload(this.active.engram.id, this.active.soul);
|
|
53
|
+
}
|
|
54
|
+
snapshot() {
|
|
55
|
+
if (!this.active) {
|
|
56
|
+
return null;
|
|
57
|
+
}
|
|
58
|
+
return {
|
|
59
|
+
engram_id: this.active.engram.id,
|
|
60
|
+
name: this.active.engram.name,
|
|
61
|
+
engram: this.active.engram,
|
|
62
|
+
vessel: this.active.vessel,
|
|
63
|
+
expression: this.expressionOverride,
|
|
64
|
+
soul_source: this.soulSource,
|
|
65
|
+
reinject: this.reinjectTracker.status(this.active.engram.reinject_interval),
|
|
66
|
+
};
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
//# sourceMappingURL=state.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"state.js","sourceRoot":"","sources":["../../src/session/state.ts"],"names":[],"mappings":"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"}
|