mosse-agent-bridge 0.1.7 → 0.1.9
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/drivers/hermes.d.ts +17 -25
- package/dist/drivers/hermes.js +46 -58
- package/dist/drivers/hermes.js.map +1 -1
- package/dist/drivers/types.d.ts +3 -2
- package/dist/index.js +20 -5
- package/dist/index.js.map +1 -1
- package/dist/memory.d.ts +0 -9
- package/dist/memory.js +0 -11
- package/dist/memory.js.map +1 -1
- package/package.json +1 -1
package/dist/drivers/hermes.d.ts
CHANGED
|
@@ -13,34 +13,27 @@ export type SpawnHermes = (bin: string, args: string[], opts: {
|
|
|
13
13
|
cwd: string;
|
|
14
14
|
env: NodeJS.ProcessEnv;
|
|
15
15
|
}) => HermesChild;
|
|
16
|
-
/**
|
|
17
|
-
export interface
|
|
16
|
+
/** 写 per-agent 目录所需的 fs 操作(可注入,便于单测不碰真盘)。 */
|
|
17
|
+
export interface AgentDirFs {
|
|
18
18
|
mkdirSync(p: string, opts: {
|
|
19
19
|
recursive: boolean;
|
|
20
20
|
}): void;
|
|
21
|
-
existsSync(p: string): boolean;
|
|
22
|
-
symlinkSync(target: string, path: string): void;
|
|
23
|
-
copyFileSync(src: string, dst: string): void;
|
|
24
21
|
writeFileSync(p: string, data: string, opts?: {
|
|
25
22
|
mode?: number;
|
|
26
23
|
}): void;
|
|
27
|
-
rmSync(p: string, opts?: {
|
|
28
|
-
force?: boolean;
|
|
29
|
-
}): void;
|
|
30
24
|
}
|
|
31
25
|
/**
|
|
32
|
-
* 准备 per-agent
|
|
33
|
-
* 1.
|
|
34
|
-
* 2.
|
|
35
|
-
*
|
|
36
|
-
*
|
|
37
|
-
*
|
|
26
|
+
* 准备 per-agent 目录(人格 + 工作目录起点,**非** hermes home):
|
|
27
|
+
* 1. mkdir -p(确保存在)。
|
|
28
|
+
* 2. 写 `AGENTS.md` = 人格(systemPromptAppend)。Hermes 把 cwd(我们用 TERMINAL_CWD 指到这里)当前层的
|
|
29
|
+
* AGENTS.md 当 rules 加载。幂等覆盖;无人格写空字符串(清掉上一轮残留,避免串味)。
|
|
30
|
+
*
|
|
31
|
+
* **绝不写 SOUL.md、绝不 symlink/copy ~/.hermes 的 config.yaml/.env、绝不碰用户真实 home。**
|
|
38
32
|
*/
|
|
39
|
-
export declare function
|
|
40
|
-
|
|
41
|
-
userHermesDir: string;
|
|
33
|
+
export declare function prepareAgentDir(opts: {
|
|
34
|
+
agentDir: string;
|
|
42
35
|
systemPromptAppend?: string;
|
|
43
|
-
fs?:
|
|
36
|
+
fs?: AgentDirFs;
|
|
44
37
|
}): void;
|
|
45
38
|
export interface HermesDeps {
|
|
46
39
|
spawn: SpawnHermes;
|
|
@@ -48,15 +41,14 @@ export interface HermesDeps {
|
|
|
48
41
|
resolveBin(): string | null;
|
|
49
42
|
/** 构造子进程 env(剥 daemon 机密 + 合并 inject 白名单 + 补 PATH)。 */
|
|
50
43
|
buildEnv(inject?: Record<string, string>): NodeJS.ProcessEnv;
|
|
51
|
-
/**
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
userHermesDir: string;
|
|
44
|
+
/** 准备 per-agent 目录 + 写 AGENTS.md(人格)。 */
|
|
45
|
+
prepareAgentDir(opts: {
|
|
46
|
+
agentDir: string;
|
|
55
47
|
systemPromptAppend?: string;
|
|
56
48
|
}): void;
|
|
57
|
-
/** 解析该 turn
|
|
58
|
-
|
|
59
|
-
/** 用户真实 hermes
|
|
49
|
+
/** 解析该 turn 的 per-agent 目录(人格 + TERMINAL_CWD)。 */
|
|
50
|
+
resolveAgentDir(turn: AgentTurn): string;
|
|
51
|
+
/** 用户真实 hermes home(`~/.hermes`,完整环境);设为子进程 HERMES_HOME。 */
|
|
60
52
|
userHermesDir: string;
|
|
61
53
|
/** 无事件多久判 idle 取消(F2.8)。 */
|
|
62
54
|
idleTimeoutMs: number;
|
package/dist/drivers/hermes.js
CHANGED
|
@@ -1,13 +1,26 @@
|
|
|
1
1
|
// Hermes CLI driver:通过 ACP(`hermes acp` = `python -m acp_adapter`)驱动 Hermes 跑一轮 agent 回合。
|
|
2
2
|
// 实现 CliDriver(F2.2 + F2.2a + F2.3 + F2.4 + F2.8)。设计见 docs/hermes-engine-adaptation.md §5.3/§9。
|
|
3
3
|
//
|
|
4
|
+
// 运行模型(2026 重构:真实 home + cwd 人格,**不再隔离 HERMES_HOME + symlink 配置**):
|
|
5
|
+
// - HERMES_HOME = 用户真实 `~/.hermes`(完整环境:auxiliary 辅助模型 / Nous 登录 auth.json / skills /
|
|
6
|
+
// memory / config 全活)。旧的"建空隔离目录 + symlink config.yaml/.env"会缺 auth.json 等 → auxiliary 崩
|
|
7
|
+
// (-32603),故废弃。我们**绝不写 SOUL.md、绝不碰 ~/.hermes**。
|
|
8
|
+
// - per-agent 人格:写 `<agentDir>/AGENTS.md`(= turn.systemPromptAppend)。Hermes 的 context-file 从 cwd 读
|
|
9
|
+
// AGENTS.md(只看当前层、不递归),而该 cwd 由进程级 `TERMINAL_CWD` 驱动 → 我们把 TERMINAL_CWD 指向 agentDir,
|
|
10
|
+
// 人格就按 agent 隔离(ACP 共享进程模式下 session/new 的 cwd 不进 context 加载,所以靠 TERMINAL_CWD)。
|
|
11
|
+
// - 文件工具的工作目录:由 session/new 的 cwd 驱动(独立于 TERMINAL_CWD)。= 用户为 agent 设的工作目录
|
|
12
|
+
// (turn.cwd)或回退 agentDir。
|
|
13
|
+
// - 对话隔离:每 ACP session 独立 session_id + 真实 ~/.hermes/state.db(WAL 并发)行级隔离 → 多 agent 共用真实
|
|
14
|
+
// home 不串味,也不干扰用户自己的 telegram/whatsapp gateway。
|
|
15
|
+
// - model:set_session_model(turn.model)per-agent 覆盖;否则用 ~/.hermes/config.yaml 默认。
|
|
16
|
+
//
|
|
4
17
|
// 与 claude driver 的异同:
|
|
5
18
|
// - 同:per-turn spawn 子进程、stdin/stdout 协议、stderr 仅日志、流式 onEvent、返回 {text,sessionId}。
|
|
6
|
-
// - 异:协议是 ACP JSON-RPC(非 stream-json);system prompt 无协议字段 →
|
|
7
|
-
//
|
|
19
|
+
// - 异:协议是 ACP JSON-RPC(非 stream-json);system prompt 无协议字段 → 写 agentDir 的 AGENTS.md(F2.3);
|
|
20
|
+
// 支持 abort/idle 取消(F2.8)。
|
|
8
21
|
import { spawn as spawnNode } from "node:child_process";
|
|
9
22
|
import { createHash } from "node:crypto";
|
|
10
|
-
import {
|
|
23
|
+
import { mkdirSync, writeFileSync } from "node:fs";
|
|
11
24
|
import { homedir } from "node:os";
|
|
12
25
|
import { dirname, join } from "node:path";
|
|
13
26
|
import { AcpClient } from "../acp/client.js";
|
|
@@ -17,52 +30,28 @@ import { defaultResolveDeps, resolveBin } from "./resolve.js";
|
|
|
17
30
|
const HERMES_BIN = process.env.MOSSE_HERMES_BIN ?? "hermes";
|
|
18
31
|
const NODE_DIR = dirname(process.execPath);
|
|
19
32
|
const DEFAULT_IDLE_MS = Number(process.env.MOSSE_HERMES_IDLE_MS) || 120_000;
|
|
20
|
-
const realFs = {
|
|
21
|
-
mkdirSync,
|
|
22
|
-
existsSync,
|
|
23
|
-
symlinkSync,
|
|
24
|
-
copyFileSync,
|
|
25
|
-
writeFileSync,
|
|
26
|
-
rmSync,
|
|
27
|
-
};
|
|
33
|
+
const realFs = { mkdirSync, writeFileSync };
|
|
28
34
|
/**
|
|
29
|
-
* 准备 per-agent
|
|
30
|
-
* 1.
|
|
31
|
-
* 2.
|
|
32
|
-
*
|
|
33
|
-
*
|
|
34
|
-
*
|
|
35
|
+
* 准备 per-agent 目录(人格 + 工作目录起点,**非** hermes home):
|
|
36
|
+
* 1. mkdir -p(确保存在)。
|
|
37
|
+
* 2. 写 `AGENTS.md` = 人格(systemPromptAppend)。Hermes 把 cwd(我们用 TERMINAL_CWD 指到这里)当前层的
|
|
38
|
+
* AGENTS.md 当 rules 加载。幂等覆盖;无人格写空字符串(清掉上一轮残留,避免串味)。
|
|
39
|
+
*
|
|
40
|
+
* **绝不写 SOUL.md、绝不 symlink/copy ~/.hermes 的 config.yaml/.env、绝不碰用户真实 home。**
|
|
35
41
|
*/
|
|
36
|
-
export function
|
|
42
|
+
export function prepareAgentDir(opts) {
|
|
37
43
|
const fs = opts.fs ?? realFs;
|
|
38
|
-
fs.mkdirSync(opts.
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
if (!fs.existsSync(src))
|
|
43
|
-
continue;
|
|
44
|
-
try {
|
|
45
|
-
fs.rmSync(dst, { force: true }); // 刷新:删旧链接/拷贝,保证指向当前用户配置。
|
|
46
|
-
}
|
|
47
|
-
catch {
|
|
48
|
-
// 不存在即可忽略。
|
|
49
|
-
}
|
|
50
|
-
try {
|
|
51
|
-
fs.symlinkSync(src, dst);
|
|
52
|
-
}
|
|
53
|
-
catch {
|
|
54
|
-
fs.copyFileSync(src, dst); // symlink 失败兜底拷贝。
|
|
55
|
-
}
|
|
56
|
-
}
|
|
57
|
-
// 隔离目录的 AGENTS.md 完全由我们托管:有则写、无则清空(避免上一轮 system prompt 残留串味)。
|
|
58
|
-
fs.writeFileSync(join(opts.homeDir, "AGENTS.md"), opts.systemPromptAppend ?? "", { mode: 0o600 });
|
|
44
|
+
fs.mkdirSync(opts.agentDir, { recursive: true });
|
|
45
|
+
fs.writeFileSync(join(opts.agentDir, "AGENTS.md"), opts.systemPromptAppend ?? "", {
|
|
46
|
+
mode: 0o600,
|
|
47
|
+
});
|
|
59
48
|
}
|
|
60
|
-
/** per-agent
|
|
61
|
-
function
|
|
49
|
+
/** per-agent 目录默认路径:优先 turn.agentHome(理想来源=daemon 传 ~/.mosse/agents/<agentId>/);否则由 cwd 稳定派生。 */
|
|
50
|
+
function defaultResolveAgentDir(turn) {
|
|
62
51
|
const explicit = turn.agentHome?.trim();
|
|
63
52
|
if (explicit)
|
|
64
53
|
return explicit;
|
|
65
|
-
const base =
|
|
54
|
+
const base = join(homedir(), ".mosse", "agents");
|
|
66
55
|
const key = createHash("sha256").update(turn.cwd).digest("hex").slice(0, 16);
|
|
67
56
|
return join(base, key);
|
|
68
57
|
}
|
|
@@ -71,9 +60,9 @@ function defaultDeps() {
|
|
|
71
60
|
spawn: (bin, args, opts) => spawnNode(bin, args, { cwd: opts.cwd, env: opts.env, stdio: ["pipe", "pipe", "pipe"] }),
|
|
72
61
|
resolveBin: () => resolveBin(HERMES_BIN, defaultResolveDeps(buildSpawnEnv({ base: process.env, nodeDir: NODE_DIR }))),
|
|
73
62
|
buildEnv: (inject) => buildSpawnEnv({ base: process.env, inject, nodeDir: NODE_DIR }),
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
//
|
|
63
|
+
prepareAgentDir: (o) => prepareAgentDir(o),
|
|
64
|
+
resolveAgentDir: defaultResolveAgentDir,
|
|
65
|
+
// 用户真实 home:完整环境(auxiliary/Nous/skills/memory/config)。尊重既有 HERMES_HOME,否则 ~/.hermes。
|
|
77
66
|
userHermesDir: process.env.HERMES_HOME?.trim() || join(homedir(), ".hermes"),
|
|
78
67
|
idleTimeoutMs: DEFAULT_IDLE_MS,
|
|
79
68
|
};
|
|
@@ -118,17 +107,16 @@ export function createHermesDriver(deps) {
|
|
|
118
107
|
return bin ? { id: "hermes", bin } : null;
|
|
119
108
|
},
|
|
120
109
|
async run(turn, onEvent, signal) {
|
|
121
|
-
// F2.3
|
|
122
|
-
const
|
|
123
|
-
deps.
|
|
124
|
-
homeDir,
|
|
125
|
-
userHermesDir: deps.userHermesDir,
|
|
126
|
-
systemPromptAppend: turn.systemPromptAppend,
|
|
127
|
-
});
|
|
110
|
+
// F2.3:先把人格写到 per-agent 目录的 AGENTS.md(Hermes 从 TERMINAL_CWD 的当前层读它当 rules)。
|
|
111
|
+
const agentDir = deps.resolveAgentDir(turn);
|
|
112
|
+
deps.prepareAgentDir({ agentDir, systemPromptAppend: turn.systemPromptAppend });
|
|
128
113
|
const bin = deps.resolveBin() ?? HERMES_BIN;
|
|
129
114
|
const env = deps.buildEnv(turn.env);
|
|
130
|
-
env.HERMES_HOME =
|
|
131
|
-
|
|
115
|
+
env.HERMES_HOME = deps.userHermesDir; // 真实 home:auxiliary/Nous/skills/memory/config/state.db 全活。
|
|
116
|
+
env.TERMINAL_CWD = agentDir; // context-file 的 cwd → 加载 agentDir/AGENTS.md(人格,按 agent 隔离)。
|
|
117
|
+
// 文件工具的工作目录(独立于 TERMINAL_CWD 人格):用户设的工作目录(turn.cwd)或回退 agentDir。
|
|
118
|
+
const sessionCwd = turn.cwd?.trim() || agentDir;
|
|
119
|
+
const child = deps.spawn(bin, ["acp"], { cwd: sessionCwd, env });
|
|
132
120
|
if (!child.stdin || !child.stdout) {
|
|
133
121
|
throw new Error("hermes acp: missing stdio pipes");
|
|
134
122
|
}
|
|
@@ -190,21 +178,21 @@ export function createHermesDriver(deps) {
|
|
|
190
178
|
if (turn.sessionId) {
|
|
191
179
|
// F2.4 会话恢复:有 sessionId 走 resume,延续历史;失败则丢旧会话新开一个(对齐 claude driver)。
|
|
192
180
|
try {
|
|
193
|
-
await client.resumeSession({ sessionId: turn.sessionId, cwd:
|
|
181
|
+
await client.resumeSession({ sessionId: turn.sessionId, cwd: sessionCwd, mcpServers });
|
|
194
182
|
currentSessionId = turn.sessionId;
|
|
195
183
|
}
|
|
196
184
|
catch {
|
|
197
|
-
const r = await client.newSession({ cwd:
|
|
185
|
+
const r = await client.newSession({ cwd: sessionCwd, mcpServers });
|
|
198
186
|
currentSessionId = r.sessionId;
|
|
199
187
|
}
|
|
200
188
|
}
|
|
201
189
|
else {
|
|
202
|
-
const r = await client.newSession({ cwd:
|
|
190
|
+
const r = await client.newSession({ cwd: sessionCwd, mcpServers });
|
|
203
191
|
currentSessionId = r.sessionId;
|
|
204
192
|
}
|
|
205
193
|
if (!currentSessionId)
|
|
206
194
|
throw new Error("hermes acp: no session id");
|
|
207
|
-
// D6:Mosse 指定 model 则覆盖会话模型;否则用 Hermes
|
|
195
|
+
// D6:Mosse 指定 model 则覆盖会话模型;否则用 Hermes 本地配置默认(~/.hermes/config.yaml)。
|
|
208
196
|
if (turn.model)
|
|
209
197
|
await client.setSessionModel(currentSessionId, turn.model);
|
|
210
198
|
await client.prompt({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"hermes.js","sourceRoot":"","sources":["../../src/drivers/hermes.ts"],"names":[],"mappings":"AAAA,0FAA0F;AAC1F,gGAAgG;AAChG,EAAE;AACF,uBAAuB;AACvB,qFAAqF;AACrF,
|
|
1
|
+
{"version":3,"file":"hermes.js","sourceRoot":"","sources":["../../src/drivers/hermes.ts"],"names":[],"mappings":"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"}
|
package/dist/drivers/types.d.ts
CHANGED
|
@@ -13,9 +13,10 @@ export interface AgentTurn {
|
|
|
13
13
|
/** MCP 配置 JSON 字符串(如知识服务);传则加 `--mcp-config <json>`。 */
|
|
14
14
|
mcpConfig?: string;
|
|
15
15
|
/**
|
|
16
|
-
* per-agent
|
|
17
|
-
* **理想来源**:daemon 传 `<DATA_DIR>/agents/<agentId
|
|
16
|
+
* per-agent 目录(Hermes driver 用作人格 `AGENTS.md` + `TERMINAL_CWD` 起点,见 hermes.ts)。
|
|
17
|
+
* **理想来源**:daemon 传 `<DATA_DIR>/agents/<agentId>/`(= agent 私有目录,跨重启稳定);
|
|
18
18
|
* 不传时 driver 用 cwd 派生稳定默认(不强依赖上游改动)。对 claude driver 无意义(忽略)。
|
|
19
|
+
* 注:Hermes 的 `HERMES_HOME` 用用户真实 `~/.hermes`(完整环境),**不**用此目录。
|
|
19
20
|
*/
|
|
20
21
|
agentHome?: string;
|
|
21
22
|
}
|
package/dist/index.js
CHANGED
|
@@ -19,7 +19,7 @@ import { writeHermesConfigToDisk } from "./hermes-config.js";
|
|
|
19
19
|
import { hermesAuthReady } from "./hermes-detect.js";
|
|
20
20
|
import { readHermesConfigFields } from "./hermes-read.js";
|
|
21
21
|
import { defaultHermesTestDeps, runHermesConfigTest } from "./hermes-test.js";
|
|
22
|
-
import {
|
|
22
|
+
import { agentSystemPrompt, ensureAgentDir } from "./memory.js";
|
|
23
23
|
const execFileAsync = promisify(execFile);
|
|
24
24
|
const DAEMON_VERSION = "0.1.0";
|
|
25
25
|
// 数据目录:这台机器上**所有 agent** 的私有目录(= cwd = 记忆区)+ 会话映射。固定不配置(参考 slock)。
|
|
@@ -38,6 +38,17 @@ function log(msg) {
|
|
|
38
38
|
function logErr(msg) {
|
|
39
39
|
console.error(`${ts()} [Daemon] ${msg}`);
|
|
40
40
|
}
|
|
41
|
+
/** 安全 stringify(对象 → JSON,失败/原始值回退 String);用于打印 ACP 错误的 .data 详情。 */
|
|
42
|
+
function safeStringify(v) {
|
|
43
|
+
if (typeof v === "string")
|
|
44
|
+
return v;
|
|
45
|
+
try {
|
|
46
|
+
return JSON.stringify(v);
|
|
47
|
+
}
|
|
48
|
+
catch {
|
|
49
|
+
return String(v);
|
|
50
|
+
}
|
|
51
|
+
}
|
|
41
52
|
/** WS 心跳:每 30s ping 一次,连续两次没 pong 视为掉线、主动断开触发重连(参考 Slock)。 */
|
|
42
53
|
const PING_INTERVAL_MS = 30_000;
|
|
43
54
|
// 每个 agent 的常驻 Claude Code 会话 id(agentId → sessionId)。
|
|
@@ -308,9 +319,9 @@ function connect(st) {
|
|
|
308
319
|
model: t.model ?? null,
|
|
309
320
|
systemPromptAppend: t.systemAppend ? `${baseAppend}\n\n${t.systemAppend}` : baseAppend,
|
|
310
321
|
mcpConfig,
|
|
311
|
-
//
|
|
312
|
-
//
|
|
313
|
-
agentHome:
|
|
322
|
+
// per-agent 目录(~/.mosse/agents/<agentId>/):hermes driver 用作人格(AGENTS.md)+ TERMINAL_CWD
|
|
323
|
+
// 起点(claude driver 忽略)。按 agentId 传保证稳定唯一(否则 hermes driver 回退 cwd-hash)。
|
|
324
|
+
agentHome: memoryDir,
|
|
314
325
|
},
|
|
315
326
|
// P2 流式:边跑边把文本增量 / 工具活动推回 server。
|
|
316
327
|
(ev) => {
|
|
@@ -335,8 +346,12 @@ function connect(st) {
|
|
|
335
346
|
}
|
|
336
347
|
catch (e) {
|
|
337
348
|
const error = e instanceof Error ? e.message : String(e);
|
|
349
|
+
// ACP RPC 错误把真实异常详情塞在 .data(见 acp/jsonrpc.ts rpcError);只打 message 会丢掉
|
|
350
|
+
// 真正的崩因(如 -32603 Internal error 背后的 Hermes 堆栈)→ 一并 stringify 出来。
|
|
351
|
+
const data = e?.data;
|
|
352
|
+
const detail = data !== undefined ? ` | data=${safeStringify(data)}` : "";
|
|
338
353
|
ws.send(JSON.stringify({ type: "error", taskId: t.taskId, error }));
|
|
339
|
-
logErr(`✗ cc_turn ${t.taskId} failed: ${error}`);
|
|
354
|
+
logErr(`✗ cc_turn ${t.taskId} failed: ${error}${detail}`);
|
|
340
355
|
}
|
|
341
356
|
return;
|
|
342
357
|
}
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/memory.d.ts
CHANGED
|
@@ -1,14 +1,5 @@
|
|
|
1
1
|
/** agent 的私有目录(= cwd = 记忆区):<dataDir>/agents/<agentId>/ */
|
|
2
2
|
export declare function agentDir(dataDir: string, agentId: string): string;
|
|
3
|
-
/**
|
|
4
|
-
* 该 agent 的 Hermes 隔离 HERMES_HOME(per-agent state.db / session / AGENTS.md 落这里):
|
|
5
|
-
* `<dataDir>/agents/<agentId>/.hermes-home`。
|
|
6
|
-
* - **per-agent 唯一**:路径含 agentId → 同 cwd 的两个 Hermes agent 也各有独立 home(不串味)。
|
|
7
|
-
* - **跨重启稳定**:dataDir 固定 + agentId 稳定 → daemon 重启后仍是同一目录(state.db / session resume 存活)。
|
|
8
|
-
* - **不污染项目 cwd**:落在 agent 私有目录下,而非用户为 agent 指定的工作目录。
|
|
9
|
-
* 与 types.ts AgentTurn.agentHome 文档约定一致。
|
|
10
|
-
*/
|
|
11
|
-
export declare function agentHermesHome(dataDir: string, agentId: string): string;
|
|
12
3
|
/** 首次建好私有目录骨架(目录 + notes/ + 空 MEMORY.md 索引)。返回该目录(用作 cwd)。 */
|
|
13
4
|
export declare function ensureAgentDir(dataDir: string, agentId: string): string;
|
|
14
5
|
export interface RuntimeContext {
|
package/dist/memory.js
CHANGED
|
@@ -8,17 +8,6 @@ const INDEX = "MEMORY.md";
|
|
|
8
8
|
export function agentDir(dataDir, agentId) {
|
|
9
9
|
return join(dataDir, "agents", agentId);
|
|
10
10
|
}
|
|
11
|
-
/**
|
|
12
|
-
* 该 agent 的 Hermes 隔离 HERMES_HOME(per-agent state.db / session / AGENTS.md 落这里):
|
|
13
|
-
* `<dataDir>/agents/<agentId>/.hermes-home`。
|
|
14
|
-
* - **per-agent 唯一**:路径含 agentId → 同 cwd 的两个 Hermes agent 也各有独立 home(不串味)。
|
|
15
|
-
* - **跨重启稳定**:dataDir 固定 + agentId 稳定 → daemon 重启后仍是同一目录(state.db / session resume 存活)。
|
|
16
|
-
* - **不污染项目 cwd**:落在 agent 私有目录下,而非用户为 agent 指定的工作目录。
|
|
17
|
-
* 与 types.ts AgentTurn.agentHome 文档约定一致。
|
|
18
|
-
*/
|
|
19
|
-
export function agentHermesHome(dataDir, agentId) {
|
|
20
|
-
return join(agentDir(dataDir, agentId), ".hermes-home");
|
|
21
|
-
}
|
|
22
11
|
/** 首次建好私有目录骨架(目录 + notes/ + 空 MEMORY.md 索引)。返回该目录(用作 cwd)。 */
|
|
23
12
|
export function ensureAgentDir(dataDir, agentId) {
|
|
24
13
|
const dir = agentDir(dataDir, agentId);
|
package/dist/memory.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"memory.js","sourceRoot":"","sources":["../src/memory.ts"],"names":[],"mappings":"AAAA,mEAAmE;AACnE,2FAA2F;AAC3F,kDAAkD;AAClD,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAC/D,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAEjC,MAAM,KAAK,GAAG,WAAW,CAAC;AAE1B,2DAA2D;AAC3D,MAAM,UAAU,QAAQ,CAAC,OAAe,EAAE,OAAe;IACvD,OAAO,IAAI,CAAC,OAAO,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC;AAC1C,CAAC;AAED
|
|
1
|
+
{"version":3,"file":"memory.js","sourceRoot":"","sources":["../src/memory.ts"],"names":[],"mappings":"AAAA,mEAAmE;AACnE,2FAA2F;AAC3F,kDAAkD;AAClD,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAC/D,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAEjC,MAAM,KAAK,GAAG,WAAW,CAAC;AAE1B,2DAA2D;AAC3D,MAAM,UAAU,QAAQ,CAAC,OAAe,EAAE,OAAe;IACvD,OAAO,IAAI,CAAC,OAAO,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC;AAC1C,CAAC;AAED,8DAA8D;AAC9D,MAAM,UAAU,cAAc,CAAC,OAAe,EAAE,OAAe;IAC7D,MAAM,GAAG,GAAG,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;IACvC,SAAS,CAAC,IAAI,CAAC,GAAG,EAAE,OAAO,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IACnD,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;IAC/B,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,EAAE,CAAC;QACvB,aAAa,CACX,KAAK,EACL,8EAA8E,CAC/E,CAAC;IACJ,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AAaD,8DAA8D;AAC9D,MAAM,UAAU,iBAAiB,CAAC,GAAmB;IACnD,MAAM,GAAG,GAAG,GAAG,CAAC,GAAG,KAAK,GAAG,CAAC,SAAS,CAAC,CAAC,eAAe;IACtD,MAAM,SAAS,GAAG,GAAG,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,SAAS,IAAI,KAAK,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC;IAC5D,OAAO;cACK,GAAG,CAAC,OAAO;cACX,GAAG,CAAC,QAAQ;QAClB,GAAG,CAAC,EAAE;aACD,GAAG,CAAC,aAAa;eACf,GAAG,CAAC,GAAG;YACV,GAAG,CAAC,SAAS;;;EAIvB,GAAG;QACD,CAAC,CAAC,+BAA+B,GAAG,CAAC,GAAG;qBACvB,GAAG,CAAC,SAAS,+CAA+C;QAC7E,CAAC,CAAC,2CAA2C,GAAG,CAAC,GAAG,GACxD;;;;iBAIiB,SAAS;;;;gDAIsB,CAAC;AACjD,CAAC"}
|
package/package.json
CHANGED