@sesamespace/hivemind 0.1.0 → 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/README.md +53 -23
- package/dist/chunk-2I2O6X5D.js +1408 -0
- package/dist/chunk-2I2O6X5D.js.map +1 -0
- package/dist/chunk-DVR2KBL7.js +186 -0
- package/dist/chunk-DVR2KBL7.js.map +1 -0
- package/dist/chunk-MBS5A6BZ.js +132 -0
- package/dist/chunk-MBS5A6BZ.js.map +1 -0
- package/dist/chunk-NVJ424TB.js +731 -0
- package/dist/chunk-NVJ424TB.js.map +1 -0
- package/dist/chunk-RNK5Q5GR.js +44 -0
- package/dist/chunk-RNK5Q5GR.js.map +1 -0
- package/dist/chunk-XNOWVLXD.js +160 -0
- package/dist/chunk-XNOWVLXD.js.map +1 -0
- package/dist/commands/fleet.js +8 -192
- package/dist/commands/fleet.js.map +1 -1
- package/dist/commands/init.js +6 -169
- package/dist/commands/init.js.map +1 -1
- package/dist/commands/service.js +7 -0
- package/dist/commands/service.js.map +1 -0
- package/dist/commands/start.js +8 -38
- package/dist/commands/start.js.map +1 -1
- package/dist/index.js +40 -15
- package/dist/index.js.map +1 -1
- package/dist/main.js +49 -29
- package/dist/main.js.map +1 -1
- package/dist/start.js +18 -16
- package/dist/start.js.map +1 -1
- package/package.json +8 -16
- package/dist/__tests__/fleet-integration.test.d.ts +0 -9
- package/dist/__tests__/fleet-integration.test.d.ts.map +0 -1
- package/dist/__tests__/fleet-integration.test.js +0 -201
- package/dist/__tests__/fleet-integration.test.js.map +0 -1
- package/dist/__tests__/fleet.test.d.ts +0 -7
- package/dist/__tests__/fleet.test.d.ts.map +0 -1
- package/dist/__tests__/fleet.test.js +0 -171
- package/dist/__tests__/fleet.test.js.map +0 -1
- package/dist/__tests__/integration.test.d.ts +0 -2
- package/dist/__tests__/integration.test.d.ts.map +0 -1
- package/dist/__tests__/integration.test.js +0 -348
- package/dist/__tests__/integration.test.js.map +0 -1
- package/dist/agent.d.ts +0 -27
- package/dist/agent.d.ts.map +0 -1
- package/dist/agent.js +0 -217
- package/dist/agent.js.map +0 -1
- package/dist/commands/fleet.d.ts +0 -13
- package/dist/commands/fleet.d.ts.map +0 -1
- package/dist/commands/init.d.ts +0 -2
- package/dist/commands/init.d.ts.map +0 -1
- package/dist/commands/start.d.ts +0 -2
- package/dist/commands/start.d.ts.map +0 -1
- package/dist/config.d.ts +0 -44
- package/dist/config.d.ts.map +0 -1
- package/dist/config.js +0 -73
- package/dist/config.js.map +0 -1
- package/dist/context.d.ts +0 -50
- package/dist/context.d.ts.map +0 -1
- package/dist/context.js +0 -153
- package/dist/context.js.map +0 -1
- package/dist/fleet/fleet-manager.d.ts +0 -86
- package/dist/fleet/fleet-manager.d.ts.map +0 -1
- package/dist/fleet/fleet-manager.js +0 -298
- package/dist/fleet/fleet-manager.js.map +0 -1
- package/dist/fleet/memory-sync.d.ts +0 -91
- package/dist/fleet/memory-sync.d.ts.map +0 -1
- package/dist/fleet/memory-sync.js +0 -292
- package/dist/fleet/memory-sync.js.map +0 -1
- package/dist/fleet/primary-client.d.ts +0 -49
- package/dist/fleet/primary-client.d.ts.map +0 -1
- package/dist/fleet/primary-client.js +0 -222
- package/dist/fleet/primary-client.js.map +0 -1
- package/dist/fleet/worker-protocol.d.ts +0 -125
- package/dist/fleet/worker-protocol.d.ts.map +0 -1
- package/dist/fleet/worker-protocol.js +0 -27
- package/dist/fleet/worker-protocol.js.map +0 -1
- package/dist/fleet/worker-server.d.ts +0 -53
- package/dist/fleet/worker-server.d.ts.map +0 -1
- package/dist/fleet/worker-server.js +0 -191
- package/dist/fleet/worker-server.js.map +0 -1
- package/dist/index.d.ts +0 -26
- package/dist/index.d.ts.map +0 -1
- package/dist/llm-client.d.ts +0 -24
- package/dist/llm-client.d.ts.map +0 -1
- package/dist/llm-client.js +0 -40
- package/dist/llm-client.js.map +0 -1
- package/dist/main.d.ts +0 -3
- package/dist/main.d.ts.map +0 -1
- package/dist/memory-client.d.ts +0 -88
- package/dist/memory-client.d.ts.map +0 -1
- package/dist/memory-client.js +0 -185
- package/dist/memory-client.js.map +0 -1
- package/dist/pipeline.d.ts +0 -2
- package/dist/pipeline.d.ts.map +0 -1
- package/dist/pipeline.js +0 -125
- package/dist/pipeline.js.map +0 -1
- package/dist/prompt.d.ts +0 -6
- package/dist/prompt.d.ts.map +0 -1
- package/dist/prompt.js +0 -75
- package/dist/prompt.js.map +0 -1
- package/dist/sesame.d.ts +0 -33
- package/dist/sesame.d.ts.map +0 -1
- package/dist/sesame.js +0 -67
- package/dist/sesame.js.map +0 -1
- package/dist/start.d.ts +0 -3
- package/dist/start.d.ts.map +0 -1
- package/dist/task-engine.d.ts +0 -32
- package/dist/task-engine.d.ts.map +0 -1
- package/dist/task-engine.js +0 -80
- package/dist/task-engine.js.map +0 -1
- package/dist/worker.d.ts +0 -73
- package/dist/worker.d.ts.map +0 -1
- package/dist/worker.js +0 -279
- package/dist/worker.js.map +0 -1
- package/install.sh +0 -186
- package/packages/memory/Cargo.lock +0 -6480
- package/packages/memory/Cargo.toml +0 -21
- package/packages/memory/src/src/context.rs +0 -179
- package/packages/memory/src/src/embeddings.rs +0 -51
- package/packages/memory/src/src/main.rs +0 -626
- package/packages/memory/src/src/promotion.rs +0 -637
- package/packages/memory/src/src/scoring.rs +0 -131
- package/packages/memory/src/src/store.rs +0 -460
- package/packages/memory/src/src/tasks.rs +0 -321
package/dist/commands/fleet.d.ts
DELETED
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* CLI commands for fleet management.
|
|
3
|
-
*
|
|
4
|
-
* Usage:
|
|
5
|
-
* hivemind fleet status — Show fleet dashboard
|
|
6
|
-
* hivemind fleet add-worker <url> — Register a worker by URL
|
|
7
|
-
* hivemind fleet remove-worker <worker-id> — Remove a worker from the fleet
|
|
8
|
-
* hivemind fleet assign <worker-id> <context> — Assign a context to a worker
|
|
9
|
-
* hivemind fleet migrate <context> <worker-id> — Migrate a context to another worker
|
|
10
|
-
* hivemind fleet discover <url1> [url2] ... — Probe URLs for workers
|
|
11
|
-
*/
|
|
12
|
-
export declare function runFleetCommand(args: string[]): Promise<void>;
|
|
13
|
-
//# sourceMappingURL=fleet.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"fleet.d.ts","sourceRoot":"","sources":["../../src/commands/fleet.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAqEH,wBAAsB,eAAe,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAgHnE"}
|
package/dist/commands/init.d.ts
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../src/commands/init.ts"],"names":[],"mappings":"AAkCA,wBAAsB,cAAc,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAgJlE"}
|
package/dist/commands/start.d.ts
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"start.d.ts","sourceRoot":"","sources":["../../src/commands/start.ts"],"names":[],"mappings":"AAMA,wBAAsB,eAAe,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAwBnE"}
|
package/dist/config.d.ts
DELETED
|
@@ -1,44 +0,0 @@
|
|
|
1
|
-
export interface AgentConfig {
|
|
2
|
-
name: string;
|
|
3
|
-
personality: string;
|
|
4
|
-
team_charter?: string;
|
|
5
|
-
}
|
|
6
|
-
export interface LLMConfig {
|
|
7
|
-
base_url: string;
|
|
8
|
-
model: string;
|
|
9
|
-
max_tokens: number;
|
|
10
|
-
temperature: number;
|
|
11
|
-
api_key?: string;
|
|
12
|
-
}
|
|
13
|
-
export interface MemoryConfig {
|
|
14
|
-
daemon_url: string;
|
|
15
|
-
top_k: number;
|
|
16
|
-
embedding_model: string;
|
|
17
|
-
}
|
|
18
|
-
export interface OllamaConfig {
|
|
19
|
-
base_url: string;
|
|
20
|
-
}
|
|
21
|
-
export interface SesameConfig {
|
|
22
|
-
ws_url: string;
|
|
23
|
-
api_url: string;
|
|
24
|
-
api_key: string;
|
|
25
|
-
}
|
|
26
|
-
export interface WorkerModeConfig {
|
|
27
|
-
enabled: boolean;
|
|
28
|
-
primary_url: string;
|
|
29
|
-
worker_port: number;
|
|
30
|
-
worker_id: string;
|
|
31
|
-
max_contexts: number;
|
|
32
|
-
task_poll_interval_ms: number;
|
|
33
|
-
status_report_interval_ms: number;
|
|
34
|
-
}
|
|
35
|
-
export interface HivemindConfig {
|
|
36
|
-
agent: AgentConfig;
|
|
37
|
-
llm: LLMConfig;
|
|
38
|
-
memory: MemoryConfig;
|
|
39
|
-
ollama: OllamaConfig;
|
|
40
|
-
sesame: SesameConfig;
|
|
41
|
-
worker?: WorkerModeConfig;
|
|
42
|
-
}
|
|
43
|
-
export declare function loadConfig(path: string): HivemindConfig;
|
|
44
|
-
//# sourceMappingURL=config.d.ts.map
|
package/dist/config.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAIA,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,SAAS;IACxB,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,YAAY;IAC3B,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,EAAE,MAAM,CAAC;IACd,eAAe,EAAE,MAAM,CAAC;CACzB;AAED,MAAM,WAAW,YAAY;IAC3B,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,YAAY;IAC3B,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,gBAAgB;IAC/B,OAAO,EAAE,OAAO,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;IAClB,YAAY,EAAE,MAAM,CAAC;IACrB,qBAAqB,EAAE,MAAM,CAAC;IAC9B,yBAAyB,EAAE,MAAM,CAAC;CACnC;AAED,MAAM,WAAW,cAAc;IAC7B,KAAK,EAAE,WAAW,CAAC;IACnB,GAAG,EAAE,SAAS,CAAC;IACf,MAAM,EAAE,YAAY,CAAC;IACrB,MAAM,EAAE,YAAY,CAAC;IACrB,MAAM,EAAE,YAAY,CAAC;IACrB,MAAM,CAAC,EAAE,gBAAgB,CAAC;CAC3B;AA2BD,wBAAgB,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,cAAc,CA4CvD"}
|
package/dist/config.js
DELETED
|
@@ -1,73 +0,0 @@
|
|
|
1
|
-
import { readFileSync, existsSync } from "fs";
|
|
2
|
-
import { resolve, dirname } from "path";
|
|
3
|
-
import { parse } from "@iarna/toml";
|
|
4
|
-
function defaultWorkerConfig() {
|
|
5
|
-
return {
|
|
6
|
-
enabled: false,
|
|
7
|
-
primary_url: "http://localhost:3000",
|
|
8
|
-
worker_port: 3100,
|
|
9
|
-
worker_id: `worker-${process.pid}`,
|
|
10
|
-
max_contexts: 4,
|
|
11
|
-
task_poll_interval_ms: 5_000,
|
|
12
|
-
status_report_interval_ms: 15_000,
|
|
13
|
-
};
|
|
14
|
-
}
|
|
15
|
-
function deepMerge(target, source) {
|
|
16
|
-
const result = { ...target };
|
|
17
|
-
for (const key of Object.keys(source)) {
|
|
18
|
-
if (source[key] && typeof source[key] === "object" && !Array.isArray(source[key])
|
|
19
|
-
&& target[key] && typeof target[key] === "object") {
|
|
20
|
-
result[key] = deepMerge(target[key], source[key]);
|
|
21
|
-
}
|
|
22
|
-
else if (source[key] !== undefined && source[key] !== "") {
|
|
23
|
-
result[key] = source[key];
|
|
24
|
-
}
|
|
25
|
-
}
|
|
26
|
-
return result;
|
|
27
|
-
}
|
|
28
|
-
export function loadConfig(path) {
|
|
29
|
-
const raw = readFileSync(path, "utf-8");
|
|
30
|
-
let parsed = parse(raw);
|
|
31
|
-
// Layer: merge local.toml if it exists alongside the config
|
|
32
|
-
const configDir = dirname(path);
|
|
33
|
-
const localPath = resolve(configDir, "local.toml");
|
|
34
|
-
if (existsSync(localPath)) {
|
|
35
|
-
const localRaw = readFileSync(localPath, "utf-8");
|
|
36
|
-
const localParsed = parse(localRaw);
|
|
37
|
-
parsed = deepMerge(parsed, localParsed);
|
|
38
|
-
console.log(`[config] Merged overrides from ${localPath}`);
|
|
39
|
-
}
|
|
40
|
-
// Allow env overrides
|
|
41
|
-
if (process.env.AGENT_NAME) {
|
|
42
|
-
parsed.agent.name = process.env.AGENT_NAME;
|
|
43
|
-
}
|
|
44
|
-
if (process.env.LLM_API_KEY) {
|
|
45
|
-
parsed.llm.api_key = process.env.LLM_API_KEY;
|
|
46
|
-
}
|
|
47
|
-
if (process.env.LLM_BASE_URL) {
|
|
48
|
-
parsed.llm.base_url = process.env.LLM_BASE_URL;
|
|
49
|
-
}
|
|
50
|
-
if (process.env.SESAME_API_KEY) {
|
|
51
|
-
parsed.sesame.api_key = process.env.SESAME_API_KEY;
|
|
52
|
-
}
|
|
53
|
-
if (process.env.MEMORY_DAEMON_URL) {
|
|
54
|
-
parsed.memory.daemon_url = process.env.MEMORY_DAEMON_URL;
|
|
55
|
-
}
|
|
56
|
-
if (process.env.WORKER_PRIMARY_URL) {
|
|
57
|
-
if (!parsed.worker)
|
|
58
|
-
parsed.worker = defaultWorkerConfig();
|
|
59
|
-
parsed.worker.primary_url = process.env.WORKER_PRIMARY_URL;
|
|
60
|
-
}
|
|
61
|
-
if (process.env.WORKER_PORT) {
|
|
62
|
-
if (!parsed.worker)
|
|
63
|
-
parsed.worker = defaultWorkerConfig();
|
|
64
|
-
parsed.worker.worker_port = parseInt(process.env.WORKER_PORT, 10);
|
|
65
|
-
}
|
|
66
|
-
if (process.env.WORKER_ID) {
|
|
67
|
-
if (!parsed.worker)
|
|
68
|
-
parsed.worker = defaultWorkerConfig();
|
|
69
|
-
parsed.worker.worker_id = process.env.WORKER_ID;
|
|
70
|
-
}
|
|
71
|
-
return parsed;
|
|
72
|
-
}
|
|
73
|
-
//# sourceMappingURL=config.js.map
|
package/dist/config.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"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"}
|
package/dist/context.d.ts
DELETED
|
@@ -1,50 +0,0 @@
|
|
|
1
|
-
import type { MemoryClient } from "./memory-client.js";
|
|
2
|
-
export interface ContextMetadata {
|
|
3
|
-
name: string;
|
|
4
|
-
description: string;
|
|
5
|
-
created_at: string;
|
|
6
|
-
last_active: string;
|
|
7
|
-
}
|
|
8
|
-
export interface ContextSwitchResult {
|
|
9
|
-
previousContext: string | null;
|
|
10
|
-
activeContext: string;
|
|
11
|
-
isNew: boolean;
|
|
12
|
-
}
|
|
13
|
-
export declare class ContextManager {
|
|
14
|
-
private contexts;
|
|
15
|
-
private activeContext;
|
|
16
|
-
private memory;
|
|
17
|
-
constructor(memory: MemoryClient);
|
|
18
|
-
createContext(name: string, description?: string): Promise<ContextMetadata>;
|
|
19
|
-
deleteContext(name: string): Promise<boolean>;
|
|
20
|
-
listContexts(): ContextMetadata[];
|
|
21
|
-
getContext(name: string): ContextMetadata | undefined;
|
|
22
|
-
getActiveContext(): string;
|
|
23
|
-
switchContext(name: string): ContextSwitchResult;
|
|
24
|
-
/**
|
|
25
|
-
* Parse a message and determine if it's a context switch command.
|
|
26
|
-
* Returns the context name if a switch is detected, null otherwise.
|
|
27
|
-
*/
|
|
28
|
-
parseContextSwitch(message: string): string | null;
|
|
29
|
-
/**
|
|
30
|
-
* Infer context from message content by checking known context names.
|
|
31
|
-
* Returns the best matching context or current active context.
|
|
32
|
-
*/
|
|
33
|
-
inferContext(message: string): string;
|
|
34
|
-
/**
|
|
35
|
-
* Route a message: check for explicit switch, then infer context.
|
|
36
|
-
* Returns the resolved context name and whether a switch happened.
|
|
37
|
-
*/
|
|
38
|
-
routeMessage(message: string): {
|
|
39
|
-
context: string;
|
|
40
|
-
switched: boolean;
|
|
41
|
-
switchedTo?: string;
|
|
42
|
-
};
|
|
43
|
-
/**
|
|
44
|
-
* Returns contexts that should be searched: active context + global.
|
|
45
|
-
*/
|
|
46
|
-
getSearchContexts(): string[];
|
|
47
|
-
hasContext(name: string): boolean;
|
|
48
|
-
private touchContext;
|
|
49
|
-
}
|
|
50
|
-
//# sourceMappingURL=context.d.ts.map
|
package/dist/context.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../src/context.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAEvD,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,mBAAmB;IAClC,eAAe,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,aAAa,EAAE,MAAM,CAAC;IACtB,KAAK,EAAE,OAAO,CAAC;CAChB;AASD,qBAAa,cAAc;IACzB,OAAO,CAAC,QAAQ,CAA2C;IAC3D,OAAO,CAAC,aAAa,CAAoB;IACzC,OAAO,CAAC,MAAM,CAAe;gBAEjB,MAAM,EAAE,YAAY;IAW1B,aAAa,CAAC,IAAI,EAAE,MAAM,EAAE,WAAW,SAAK,GAAG,OAAO,CAAC,eAAe,CAAC;IAwBvE,aAAa,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAyBnD,YAAY,IAAI,eAAe,EAAE;IAIjC,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,eAAe,GAAG,SAAS;IAIrD,gBAAgB,IAAI,MAAM;IAI1B,aAAa,CAAC,IAAI,EAAE,MAAM,GAAG,mBAAmB;IAmBhD;;;OAGG;IACH,kBAAkB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI;IAUlD;;;OAGG;IACH,YAAY,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM;IAWrC;;;OAGG;IACH,YAAY,CAAC,OAAO,EAAE,MAAM,GAAG;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,OAAO,CAAC;QAAC,UAAU,CAAC,EAAE,MAAM,CAAA;KAAE;IAmB1F;;OAEG;IACH,iBAAiB,IAAI,MAAM,EAAE;IAQ7B,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO;IAIjC,OAAO,CAAC,YAAY;CAMrB"}
|
package/dist/context.js
DELETED
|
@@ -1,153 +0,0 @@
|
|
|
1
|
-
const SWITCH_PATTERNS = [
|
|
2
|
-
/^switch\s+to\s+(\S+)/i,
|
|
3
|
-
/^context:\s*(\S+)/i,
|
|
4
|
-
/^@(\S+)\s/,
|
|
5
|
-
/^working\s+on\s+(\S+)/i,
|
|
6
|
-
];
|
|
7
|
-
export class ContextManager {
|
|
8
|
-
contexts = new Map();
|
|
9
|
-
activeContext = "global";
|
|
10
|
-
memory;
|
|
11
|
-
constructor(memory) {
|
|
12
|
-
this.memory = memory;
|
|
13
|
-
// Global context always exists
|
|
14
|
-
this.contexts.set("global", {
|
|
15
|
-
name: "global",
|
|
16
|
-
description: "Global context — identity, preferences, cross-cutting knowledge",
|
|
17
|
-
created_at: new Date().toISOString(),
|
|
18
|
-
last_active: new Date().toISOString(),
|
|
19
|
-
});
|
|
20
|
-
}
|
|
21
|
-
async createContext(name, description = "") {
|
|
22
|
-
if (this.contexts.has(name)) {
|
|
23
|
-
return this.contexts.get(name);
|
|
24
|
-
}
|
|
25
|
-
const metadata = {
|
|
26
|
-
name,
|
|
27
|
-
description,
|
|
28
|
-
created_at: new Date().toISOString(),
|
|
29
|
-
last_active: new Date().toISOString(),
|
|
30
|
-
};
|
|
31
|
-
this.contexts.set(name, metadata);
|
|
32
|
-
// Register context with memory daemon
|
|
33
|
-
try {
|
|
34
|
-
await this.memory.createContext(name, description);
|
|
35
|
-
}
|
|
36
|
-
catch (err) {
|
|
37
|
-
console.error(`Failed to register context '${name}' with daemon:`, err.message);
|
|
38
|
-
}
|
|
39
|
-
return metadata;
|
|
40
|
-
}
|
|
41
|
-
async deleteContext(name) {
|
|
42
|
-
if (name === "global") {
|
|
43
|
-
console.error("Cannot delete global context");
|
|
44
|
-
return false;
|
|
45
|
-
}
|
|
46
|
-
if (!this.contexts.has(name)) {
|
|
47
|
-
return false;
|
|
48
|
-
}
|
|
49
|
-
this.contexts.delete(name);
|
|
50
|
-
if (this.activeContext === name) {
|
|
51
|
-
this.activeContext = "global";
|
|
52
|
-
}
|
|
53
|
-
try {
|
|
54
|
-
await this.memory.deleteContext(name);
|
|
55
|
-
}
|
|
56
|
-
catch (err) {
|
|
57
|
-
console.error(`Failed to delete context '${name}' from daemon:`, err.message);
|
|
58
|
-
}
|
|
59
|
-
return true;
|
|
60
|
-
}
|
|
61
|
-
listContexts() {
|
|
62
|
-
return Array.from(this.contexts.values());
|
|
63
|
-
}
|
|
64
|
-
getContext(name) {
|
|
65
|
-
return this.contexts.get(name);
|
|
66
|
-
}
|
|
67
|
-
getActiveContext() {
|
|
68
|
-
return this.activeContext;
|
|
69
|
-
}
|
|
70
|
-
switchContext(name) {
|
|
71
|
-
const previousContext = this.activeContext;
|
|
72
|
-
const isNew = !this.contexts.has(name);
|
|
73
|
-
if (isNew) {
|
|
74
|
-
this.contexts.set(name, {
|
|
75
|
-
name,
|
|
76
|
-
description: "",
|
|
77
|
-
created_at: new Date().toISOString(),
|
|
78
|
-
last_active: new Date().toISOString(),
|
|
79
|
-
});
|
|
80
|
-
}
|
|
81
|
-
this.activeContext = name;
|
|
82
|
-
this.touchContext(name);
|
|
83
|
-
return { previousContext, activeContext: name, isNew };
|
|
84
|
-
}
|
|
85
|
-
/**
|
|
86
|
-
* Parse a message and determine if it's a context switch command.
|
|
87
|
-
* Returns the context name if a switch is detected, null otherwise.
|
|
88
|
-
*/
|
|
89
|
-
parseContextSwitch(message) {
|
|
90
|
-
for (const pattern of SWITCH_PATTERNS) {
|
|
91
|
-
const match = message.match(pattern);
|
|
92
|
-
if (match) {
|
|
93
|
-
return match[1].toLowerCase();
|
|
94
|
-
}
|
|
95
|
-
}
|
|
96
|
-
return null;
|
|
97
|
-
}
|
|
98
|
-
/**
|
|
99
|
-
* Infer context from message content by checking known context names.
|
|
100
|
-
* Returns the best matching context or current active context.
|
|
101
|
-
*/
|
|
102
|
-
inferContext(message) {
|
|
103
|
-
const lower = message.toLowerCase();
|
|
104
|
-
for (const [name] of this.contexts) {
|
|
105
|
-
if (name === "global")
|
|
106
|
-
continue;
|
|
107
|
-
if (lower.includes(name.toLowerCase())) {
|
|
108
|
-
return name;
|
|
109
|
-
}
|
|
110
|
-
}
|
|
111
|
-
return this.activeContext;
|
|
112
|
-
}
|
|
113
|
-
/**
|
|
114
|
-
* Route a message: check for explicit switch, then infer context.
|
|
115
|
-
* Returns the resolved context name and whether a switch happened.
|
|
116
|
-
*/
|
|
117
|
-
routeMessage(message) {
|
|
118
|
-
// Check for explicit switch command
|
|
119
|
-
const switchTarget = this.parseContextSwitch(message);
|
|
120
|
-
if (switchTarget) {
|
|
121
|
-
const result = this.switchContext(switchTarget);
|
|
122
|
-
return { context: switchTarget, switched: true, switchedTo: result.activeContext };
|
|
123
|
-
}
|
|
124
|
-
// Infer from content
|
|
125
|
-
const inferred = this.inferContext(message);
|
|
126
|
-
if (inferred !== this.activeContext) {
|
|
127
|
-
this.touchContext(inferred);
|
|
128
|
-
return { context: inferred, switched: false };
|
|
129
|
-
}
|
|
130
|
-
this.touchContext(this.activeContext);
|
|
131
|
-
return { context: this.activeContext, switched: false };
|
|
132
|
-
}
|
|
133
|
-
/**
|
|
134
|
-
* Returns contexts that should be searched: active context + global.
|
|
135
|
-
*/
|
|
136
|
-
getSearchContexts() {
|
|
137
|
-
const contexts = [this.activeContext];
|
|
138
|
-
if (this.activeContext !== "global") {
|
|
139
|
-
contexts.push("global");
|
|
140
|
-
}
|
|
141
|
-
return contexts;
|
|
142
|
-
}
|
|
143
|
-
hasContext(name) {
|
|
144
|
-
return this.contexts.has(name);
|
|
145
|
-
}
|
|
146
|
-
touchContext(name) {
|
|
147
|
-
const ctx = this.contexts.get(name);
|
|
148
|
-
if (ctx) {
|
|
149
|
-
ctx.last_active = new Date().toISOString();
|
|
150
|
-
}
|
|
151
|
-
}
|
|
152
|
-
}
|
|
153
|
-
//# sourceMappingURL=context.js.map
|
package/dist/context.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"context.js","sourceRoot":"","sources":["../src/context.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,86 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Fleet Manager — high-level orchestration layer on top of PrimaryClient.
|
|
3
|
-
*
|
|
4
|
-
* Provides:
|
|
5
|
-
* - Worker provisioning (register by URL)
|
|
6
|
-
* - Context assignment and migration between workers
|
|
7
|
-
* - Aggregate fleet status / dashboard data
|
|
8
|
-
* - Worker discovery and removal
|
|
9
|
-
*/
|
|
10
|
-
import { PrimaryClient } from "./primary-client.js";
|
|
11
|
-
import type { WorkerInfo, WorkerHealthStatus, WorkerCapabilities, ContextAssignResponse, WorkerStatus, WorkerActivity } from "./worker-protocol.js";
|
|
12
|
-
export interface WorkerSummary {
|
|
13
|
-
id: string;
|
|
14
|
-
url: string;
|
|
15
|
-
health: WorkerHealthStatus;
|
|
16
|
-
contexts: string[];
|
|
17
|
-
current_task: string | null;
|
|
18
|
-
activity: WorkerActivity;
|
|
19
|
-
uptime_seconds: number | null;
|
|
20
|
-
capabilities: WorkerCapabilities;
|
|
21
|
-
last_heartbeat: string;
|
|
22
|
-
}
|
|
23
|
-
export interface FleetDashboard {
|
|
24
|
-
total_workers: number;
|
|
25
|
-
healthy: number;
|
|
26
|
-
degraded: number;
|
|
27
|
-
unreachable: number;
|
|
28
|
-
total_contexts: number;
|
|
29
|
-
workers: WorkerSummary[];
|
|
30
|
-
unassigned_contexts: string[];
|
|
31
|
-
generated_at: string;
|
|
32
|
-
}
|
|
33
|
-
export interface MigrationResult {
|
|
34
|
-
context_name: string;
|
|
35
|
-
from_worker: string;
|
|
36
|
-
to_worker: string;
|
|
37
|
-
success: boolean;
|
|
38
|
-
reason?: string;
|
|
39
|
-
}
|
|
40
|
-
export declare class FleetManager {
|
|
41
|
-
private primary;
|
|
42
|
-
private latestHealth;
|
|
43
|
-
private latestStatus;
|
|
44
|
-
private knownContexts;
|
|
45
|
-
constructor(primary?: PrimaryClient);
|
|
46
|
-
getPrimary(): PrimaryClient;
|
|
47
|
-
/**
|
|
48
|
-
* Register a new worker by URL. Probes the worker's health endpoint
|
|
49
|
-
* to discover capabilities, then registers it with the Primary.
|
|
50
|
-
*/
|
|
51
|
-
addWorker(url: string): Promise<WorkerInfo>;
|
|
52
|
-
/** Remove a worker from the fleet, unassigning its contexts first. */
|
|
53
|
-
removeWorker(workerId: string): Promise<boolean>;
|
|
54
|
-
/** Assign a context to a specific worker. */
|
|
55
|
-
assignContext(workerId: string, contextName: string, description?: string): Promise<ContextAssignResponse>;
|
|
56
|
-
/** Migrate a context from one worker to another. */
|
|
57
|
-
migrateContext(contextName: string, toWorkerId: string): Promise<MigrationResult>;
|
|
58
|
-
/** Refresh health for all workers. */
|
|
59
|
-
refreshHealth(): Promise<void>;
|
|
60
|
-
/** Record a status report (called when worker POSTs status to Primary). */
|
|
61
|
-
recordStatus(workerId: string, status: WorkerStatus): void;
|
|
62
|
-
/** Get the full fleet dashboard. */
|
|
63
|
-
getDashboard(): Promise<FleetDashboard>;
|
|
64
|
-
/** Get a quick status summary without refreshing health. */
|
|
65
|
-
getStatusSnapshot(): FleetDashboard;
|
|
66
|
-
/**
|
|
67
|
-
* Scan a list of candidate URLs for workers. Returns the URLs
|
|
68
|
-
* that responded to a health probe. Useful for auto-detecting
|
|
69
|
-
* workers on a local network.
|
|
70
|
-
*/
|
|
71
|
-
discoverWorkers(candidateUrls: string[]): Promise<string[]>;
|
|
72
|
-
/**
|
|
73
|
-
* Scan a subnet-style range for workers. Generates URLs for
|
|
74
|
-
* a base IP with ports and probes them.
|
|
75
|
-
* Example: scanSubnet("192.168.1", [10, 11, 12], 3100)
|
|
76
|
-
*/
|
|
77
|
-
scanSubnet(baseIp: string, hostIds: number[], port: number): Promise<string[]>;
|
|
78
|
-
/** Track a context name so it appears in unassigned lists. */
|
|
79
|
-
registerContext(contextName: string): void;
|
|
80
|
-
/** Start health polling (delegates to PrimaryClient). */
|
|
81
|
-
startHealthPolling(intervalMs?: number): void;
|
|
82
|
-
/** Stop health polling. */
|
|
83
|
-
stopHealthPolling(): void;
|
|
84
|
-
private probeWorker;
|
|
85
|
-
}
|
|
86
|
-
//# sourceMappingURL=fleet-manager.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"fleet-manager.d.ts","sourceRoot":"","sources":["../../src/fleet/fleet-manager.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAKpD,OAAO,KAAK,EACV,UAAU,EAEV,kBAAkB,EAClB,kBAAkB,EAClB,qBAAqB,EACrB,YAAY,EACZ,cAAc,EACf,MAAM,sBAAsB,CAAC;AAI9B,MAAM,WAAW,aAAa;IAC5B,EAAE,EAAE,MAAM,CAAC;IACX,GAAG,EAAE,MAAM,CAAC;IACZ,MAAM,EAAE,kBAAkB,CAAC;IAC3B,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,QAAQ,EAAE,cAAc,CAAC;IACzB,cAAc,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B,YAAY,EAAE,kBAAkB,CAAC;IACjC,cAAc,EAAE,MAAM,CAAC;CACxB;AAED,MAAM,WAAW,cAAc;IAC7B,aAAa,EAAE,MAAM,CAAC;IACtB,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;IACpB,cAAc,EAAE,MAAM,CAAC;IACvB,OAAO,EAAE,aAAa,EAAE,CAAC;IACzB,mBAAmB,EAAE,MAAM,EAAE,CAAC;IAC9B,YAAY,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,eAAe;IAC9B,YAAY,EAAE,MAAM,CAAC;IACrB,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,OAAO,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,qBAAa,YAAY;IACvB,OAAO,CAAC,OAAO,CAAgB;IAC/B,OAAO,CAAC,YAAY,CAAgD;IACpE,OAAO,CAAC,YAAY,CAAwC;IAC5D,OAAO,CAAC,aAAa,CAA0B;gBAEnC,OAAO,CAAC,EAAE,aAAa;IAInC,UAAU,IAAI,aAAa;IAM3B;;;OAGG;IACG,SAAS,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC;IAiBjD,sEAAsE;IAChE,YAAY,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IActD,6CAA6C;IACvC,aAAa,CACjB,QAAQ,EAAE,MAAM,EAChB,WAAW,EAAE,MAAM,EACnB,WAAW,SAAK,GACf,OAAO,CAAC,qBAAqB,CAAC;IAQjC,oDAAoD;IAC9C,cAAc,CAClB,WAAW,EAAE,MAAM,EACnB,UAAU,EAAE,MAAM,GACjB,OAAO,CAAC,eAAe,CAAC;IAiD3B,sCAAsC;IAChC,aAAa,IAAI,OAAO,CAAC,IAAI,CAAC;IAwBpC,2EAA2E;IAC3E,YAAY,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,YAAY,GAAG,IAAI;IAI1D,oCAAoC;IAC9B,YAAY,IAAI,OAAO,CAAC,cAAc,CAAC;IAiD7C,4DAA4D;IAC5D,iBAAiB,IAAI,cAAc;IAgDnC;;;;OAIG;IACG,eAAe,CAAC,aAAa,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;IA0BjE;;;;OAIG;IACG,UAAU,CACd,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,MAAM,EAAE,EACjB,IAAI,EAAE,MAAM,GACX,OAAO,CAAC,MAAM,EAAE,CAAC;IAKpB,8DAA8D;IAC9D,eAAe,CAAC,WAAW,EAAE,MAAM,GAAG,IAAI;IAI1C,yDAAyD;IACzD,kBAAkB,CAAC,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI;IAI7C,2BAA2B;IAC3B,iBAAiB,IAAI,IAAI;YAMX,WAAW;CA+B1B"}
|