@0xmaxma/claude-gateway 1.6.8 → 1.7.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 +149 -20
- package/config.template.json +59 -1
- package/dist/agent/dreaming/accept.d.ts +43 -0
- package/dist/agent/dreaming/accept.d.ts.map +1 -0
- package/dist/agent/dreaming/accept.js +230 -0
- package/dist/agent/dreaming/accept.js.map +1 -0
- package/dist/agent/dreaming/applier.d.ts +77 -0
- package/dist/agent/dreaming/applier.d.ts.map +1 -0
- package/dist/agent/dreaming/applier.js +406 -0
- package/dist/agent/dreaming/applier.js.map +1 -0
- package/dist/agent/dreaming/audit.d.ts +27 -0
- package/dist/agent/dreaming/audit.d.ts.map +1 -0
- package/dist/agent/dreaming/audit.js +100 -0
- package/dist/agent/dreaming/audit.js.map +1 -0
- package/dist/agent/dreaming/compactor.d.ts +66 -0
- package/dist/agent/dreaming/compactor.d.ts.map +1 -0
- package/dist/agent/dreaming/compactor.js +306 -0
- package/dist/agent/dreaming/compactor.js.map +1 -0
- package/dist/agent/dreaming/config.d.ts +19 -0
- package/dist/agent/dreaming/config.d.ts.map +1 -0
- package/dist/agent/dreaming/config.js +107 -0
- package/dist/agent/dreaming/config.js.map +1 -0
- package/dist/agent/dreaming/episodic.d.ts +42 -0
- package/dist/agent/dreaming/episodic.d.ts.map +1 -0
- package/dist/agent/dreaming/episodic.js +116 -0
- package/dist/agent/dreaming/episodic.js.map +1 -0
- package/dist/agent/dreaming/gather.d.ts +31 -0
- package/dist/agent/dreaming/gather.d.ts.map +1 -0
- package/dist/agent/dreaming/gather.js +55 -0
- package/dist/agent/dreaming/gather.js.map +1 -0
- package/dist/agent/dreaming/index.d.ts +87 -0
- package/dist/agent/dreaming/index.d.ts.map +1 -0
- package/dist/agent/dreaming/index.js +377 -0
- package/dist/agent/dreaming/index.js.map +1 -0
- package/dist/agent/dreaming/migrate-cli.d.ts +17 -0
- package/dist/agent/dreaming/migrate-cli.d.ts.map +1 -0
- package/dist/agent/dreaming/migrate-cli.js +42 -0
- package/dist/agent/dreaming/migrate-cli.js.map +1 -0
- package/dist/agent/dreaming/migrate.d.ts +72 -0
- package/dist/agent/dreaming/migrate.d.ts.map +1 -0
- package/dist/agent/dreaming/migrate.js +374 -0
- package/dist/agent/dreaming/migrate.js.map +1 -0
- package/dist/agent/dreaming/report.d.ts +39 -0
- package/dist/agent/dreaming/report.d.ts.map +1 -0
- package/dist/agent/dreaming/report.js +121 -0
- package/dist/agent/dreaming/report.js.map +1 -0
- package/dist/agent/dreaming/reviewer.d.ts +43 -0
- package/dist/agent/dreaming/reviewer.d.ts.map +1 -0
- package/dist/agent/dreaming/reviewer.js +249 -0
- package/dist/agent/dreaming/reviewer.js.map +1 -0
- package/dist/agent/dreaming/staleness.d.ts +68 -0
- package/dist/agent/dreaming/staleness.d.ts.map +1 -0
- package/dist/agent/dreaming/staleness.js +281 -0
- package/dist/agent/dreaming/staleness.js.map +1 -0
- package/dist/agent/dreaming/types.d.ts +130 -0
- package/dist/agent/dreaming/types.d.ts.map +1 -0
- package/dist/agent/dreaming/types.js +10 -0
- package/dist/agent/dreaming/types.js.map +1 -0
- package/dist/agent/knowledge/archive-db.d.ts +114 -0
- package/dist/agent/knowledge/archive-db.d.ts.map +1 -0
- package/dist/agent/knowledge/archive-db.js +474 -0
- package/dist/agent/knowledge/archive-db.js.map +1 -0
- package/dist/agent/knowledge/chunk.d.ts +21 -0
- package/dist/agent/knowledge/chunk.d.ts.map +1 -0
- package/dist/agent/knowledge/chunk.js +67 -0
- package/dist/agent/knowledge/chunk.js.map +1 -0
- package/dist/agent/knowledge/config.d.ts +20 -0
- package/dist/agent/knowledge/config.d.ts.map +1 -0
- package/dist/agent/knowledge/config.js +143 -0
- package/dist/agent/knowledge/config.js.map +1 -0
- package/dist/agent/knowledge/graph-demo.d.ts +25 -0
- package/dist/agent/knowledge/graph-demo.d.ts.map +1 -0
- package/dist/agent/knowledge/graph-demo.js +132 -0
- package/dist/agent/knowledge/graph-demo.js.map +1 -0
- package/dist/agent/knowledge/index.d.ts +24 -0
- package/dist/agent/knowledge/index.d.ts.map +1 -0
- package/dist/agent/knowledge/index.js +50 -0
- package/dist/agent/knowledge/index.js.map +1 -0
- package/dist/agent/knowledge/indexer.d.ts +34 -0
- package/dist/agent/knowledge/indexer.d.ts.map +1 -0
- package/dist/agent/knowledge/indexer.js +271 -0
- package/dist/agent/knowledge/indexer.js.map +1 -0
- package/dist/agent/knowledge/lifecycle.d.ts +91 -0
- package/dist/agent/knowledge/lifecycle.d.ts.map +1 -0
- package/dist/agent/knowledge/lifecycle.js +205 -0
- package/dist/agent/knowledge/lifecycle.js.map +1 -0
- package/dist/agent/knowledge/provenance.d.ts +15 -0
- package/dist/agent/knowledge/provenance.d.ts.map +1 -0
- package/dist/agent/knowledge/provenance.js +37 -0
- package/dist/agent/knowledge/provenance.js.map +1 -0
- package/dist/agent/knowledge/reindex-cli.d.ts +13 -0
- package/dist/agent/knowledge/reindex-cli.d.ts.map +1 -0
- package/dist/agent/knowledge/reindex-cli.js +53 -0
- package/dist/agent/knowledge/reindex-cli.js.map +1 -0
- package/dist/agent/knowledge/reindex-spawn.d.ts +30 -0
- package/dist/agent/knowledge/reindex-spawn.d.ts.map +1 -0
- package/dist/agent/knowledge/reindex-spawn.js +97 -0
- package/dist/agent/knowledge/reindex-spawn.js.map +1 -0
- package/dist/agent/knowledge/shared-promote.d.ts +18 -0
- package/dist/agent/knowledge/shared-promote.d.ts.map +1 -0
- package/dist/agent/knowledge/shared-promote.js +29 -0
- package/dist/agent/knowledge/shared-promote.js.map +1 -0
- package/dist/agent/knowledge/shared-writer.d.ts +24 -0
- package/dist/agent/knowledge/shared-writer.d.ts.map +1 -0
- package/dist/agent/knowledge/shared-writer.js +97 -0
- package/dist/agent/knowledge/shared-writer.js.map +1 -0
- package/dist/agent/knowledge/types.d.ts +83 -0
- package/dist/agent/knowledge/types.d.ts.map +1 -0
- package/dist/agent/knowledge/types.js +12 -0
- package/dist/agent/knowledge/types.js.map +1 -0
- package/dist/agent/knowledge/wiki.d.ts +107 -0
- package/dist/agent/knowledge/wiki.d.ts.map +1 -0
- package/dist/agent/knowledge/wiki.js +415 -0
- package/dist/agent/knowledge/wiki.js.map +1 -0
- package/dist/agent/memory-metrics.d.ts +48 -0
- package/dist/agent/memory-metrics.d.ts.map +1 -0
- package/dist/agent/memory-metrics.js +156 -0
- package/dist/agent/memory-metrics.js.map +1 -0
- package/dist/agent/runner.d.ts +24 -1
- package/dist/agent/runner.d.ts.map +1 -1
- package/dist/agent/runner.js +82 -6
- package/dist/agent/runner.js.map +1 -1
- package/dist/agent/skill-learning/config.d.ts +18 -0
- package/dist/agent/skill-learning/config.d.ts.map +1 -0
- package/dist/agent/skill-learning/config.js +71 -0
- package/dist/agent/skill-learning/config.js.map +1 -0
- package/dist/agent/skill-learning/curator.d.ts +45 -0
- package/dist/agent/skill-learning/curator.d.ts.map +1 -0
- package/dist/agent/skill-learning/curator.js +171 -0
- package/dist/agent/skill-learning/curator.js.map +1 -0
- package/dist/agent/skill-learning/index.d.ts +79 -0
- package/dist/agent/skill-learning/index.d.ts.map +1 -0
- package/dist/agent/skill-learning/index.js +308 -0
- package/dist/agent/skill-learning/index.js.map +1 -0
- package/dist/agent/skill-learning/metrics.d.ts +13 -0
- package/dist/agent/skill-learning/metrics.d.ts.map +1 -0
- package/dist/agent/skill-learning/metrics.js +109 -0
- package/dist/agent/skill-learning/metrics.js.map +1 -0
- package/dist/agent/skill-learning/notifier.d.ts +111 -0
- package/dist/agent/skill-learning/notifier.d.ts.map +1 -0
- package/dist/agent/skill-learning/notifier.js +398 -0
- package/dist/agent/skill-learning/notifier.js.map +1 -0
- package/dist/agent/skill-learning/reviewer.d.ts +61 -0
- package/dist/agent/skill-learning/reviewer.d.ts.map +1 -0
- package/dist/agent/skill-learning/reviewer.js +271 -0
- package/dist/agent/skill-learning/reviewer.js.map +1 -0
- package/dist/agent/skill-learning/telemetry.d.ts +22 -0
- package/dist/agent/skill-learning/telemetry.d.ts.map +1 -0
- package/dist/agent/skill-learning/telemetry.js +90 -0
- package/dist/agent/skill-learning/telemetry.js.map +1 -0
- package/dist/agent/skill-learning/trigger.d.ts +23 -0
- package/dist/agent/skill-learning/trigger.d.ts.map +1 -0
- package/dist/agent/skill-learning/trigger.js +44 -0
- package/dist/agent/skill-learning/trigger.js.map +1 -0
- package/dist/agent/skill-learning/types.d.ts +165 -0
- package/dist/agent/skill-learning/types.d.ts.map +1 -0
- package/dist/agent/skill-learning/types.js +11 -0
- package/dist/agent/skill-learning/types.js.map +1 -0
- package/dist/agent/skill-learning/writer.d.ts +37 -0
- package/dist/agent/skill-learning/writer.d.ts.map +1 -0
- package/dist/agent/skill-learning/writer.js +223 -0
- package/dist/agent/skill-learning/writer.js.map +1 -0
- package/dist/agent/workspace-loader.d.ts +83 -6
- package/dist/agent/workspace-loader.d.ts.map +1 -1
- package/dist/agent/workspace-loader.js +207 -14
- package/dist/agent/workspace-loader.js.map +1 -1
- package/dist/api/gateway-router.d.ts +2 -0
- package/dist/api/gateway-router.d.ts.map +1 -1
- package/dist/api/gateway-router.js +293 -6
- package/dist/api/gateway-router.js.map +1 -1
- package/dist/api/share-router.d.ts.map +1 -1
- package/dist/api/share-router.js +27 -1
- package/dist/api/share-router.js.map +1 -1
- package/dist/api/skills-router.d.ts +2 -2
- package/dist/api/skills-router.d.ts.map +1 -1
- package/dist/api/skills-router.js +61 -1
- package/dist/api/skills-router.js.map +1 -1
- package/dist/apps/agent-manager.d.ts +7 -0
- package/dist/apps/agent-manager.d.ts.map +1 -1
- package/dist/apps/agent-manager.js +13 -1
- package/dist/apps/agent-manager.js.map +1 -1
- package/dist/config/migrator.d.ts +2 -0
- package/dist/config/migrator.d.ts.map +1 -1
- package/dist/config/migrator.js +72 -1
- package/dist/config/migrator.js.map +1 -1
- package/dist/history/cleanup.d.ts +7 -0
- package/dist/history/cleanup.d.ts.map +1 -1
- package/dist/history/cleanup.js +27 -0
- package/dist/history/cleanup.js.map +1 -1
- package/dist/history/db.d.ts +65 -0
- package/dist/history/db.d.ts.map +1 -1
- package/dist/history/db.js +261 -0
- package/dist/history/db.js.map +1 -1
- package/dist/index.js +122 -20
- package/dist/index.js.map +1 -1
- package/dist/session/process.d.ts +10 -0
- package/dist/session/process.d.ts.map +1 -1
- package/dist/session/process.js +86 -1
- package/dist/session/process.js.map +1 -1
- package/dist/share/share-store.d.ts +11 -0
- package/dist/share/share-store.d.ts.map +1 -1
- package/dist/share/share-store.js +3 -1
- package/dist/share/share-store.js.map +1 -1
- package/dist/skills/loader.d.ts +8 -0
- package/dist/skills/loader.d.ts.map +1 -1
- package/dist/skills/loader.js +29 -1
- package/dist/skills/loader.js.map +1 -1
- package/dist/types.d.ts +116 -0
- package/dist/types.d.ts.map +1 -1
- package/dist/ui/web-ui.d.ts.map +1 -1
- package/dist/ui/web-ui.js +1126 -3
- package/dist/ui/web-ui.js.map +1 -1
- package/mcp/package.json +2 -1
- package/mcp/server.ts +2 -0
- package/mcp/tools/image/module.ts +114 -9
- package/mcp/tools/memory/archive-reader.test.ts +212 -0
- package/mcp/tools/memory/archive-reader.ts +253 -0
- package/mcp/tools/memory/module.ts +152 -0
- package/mcp/tools/memory/retrieval-recorder.ts +66 -0
- package/mcp/tools/shared/share-client.ts +20 -1
- package/mcp/tools/skills/module.ts +28 -0
- package/package.json +1 -1
- package/resource/claude_gateway.svg +1038 -112
package/dist/index.js
CHANGED
|
@@ -61,10 +61,16 @@ const os = __importStar(require("os"));
|
|
|
61
61
|
const loader_1 = require("./config/loader");
|
|
62
62
|
const migrator_1 = require("./config/migrator");
|
|
63
63
|
const workspace_loader_1 = require("./agent/workspace-loader");
|
|
64
|
+
const knowledge_1 = require("./agent/knowledge");
|
|
64
65
|
const skills_1 = require("./skills");
|
|
65
66
|
const sync_1 = require("./skills/sync");
|
|
66
67
|
const factory_1 = require("./watch/factory");
|
|
67
68
|
const runner_1 = require("./agent/runner");
|
|
69
|
+
const skill_learning_1 = require("./agent/skill-learning");
|
|
70
|
+
const dreaming_1 = require("./agent/dreaming");
|
|
71
|
+
const migrate_1 = require("./agent/dreaming/migrate");
|
|
72
|
+
const config_1 = require("./agent/dreaming/config");
|
|
73
|
+
const reviewer_1 = require("./agent/skill-learning/reviewer");
|
|
68
74
|
const scheduler_1 = require("./cron/scheduler");
|
|
69
75
|
const manager_1 = require("./cron/manager");
|
|
70
76
|
const gateway_router_1 = require("./api/gateway-router");
|
|
@@ -176,6 +182,14 @@ async function startAgent(agentConfig, gatewayConfig, ctx) {
|
|
|
176
182
|
const { agentRunners, agentConfigs, schedulers, startupResults, mcpToolsDir, sharedSkillsDir, logDir } = ctx;
|
|
177
183
|
const logger = (0, logger_1.createLogger)(agentConfig.id, logDir);
|
|
178
184
|
logger.info('Initialising agent', { id: agentConfig.id });
|
|
185
|
+
// Soft memory budgets for MEMORY.md/USER.md compose banners (issue #323).
|
|
186
|
+
// Per-agent config wins field-by-field over the global gateway default
|
|
187
|
+
// (mirrors the skillLearning override). loadWorkspace defaults any unset
|
|
188
|
+
// field, so a fully-absent config is safe.
|
|
189
|
+
const memoryBudget = { ...gatewayConfig.gateway.memory, ...agentConfig.memory };
|
|
190
|
+
// K2 core-shrink is enabled only when the searchable archive is on — otherwise
|
|
191
|
+
// the injected index would point at a memory_search tool with nothing behind it.
|
|
192
|
+
const coreShrink = (0, knowledge_1.resolveArchiveConfig)(agentConfig.knowledge?.archive, gatewayConfig.gateway.knowledge?.archive).enabled;
|
|
179
193
|
// Ensure workspace directory exists (may be absent for newly created agents)
|
|
180
194
|
try {
|
|
181
195
|
fs.mkdirSync(agentConfig.workspace, { recursive: true });
|
|
@@ -226,9 +240,11 @@ async function startAgent(agentConfig, gatewayConfig, ctx) {
|
|
|
226
240
|
let workspace;
|
|
227
241
|
try {
|
|
228
242
|
workspace = await (0, workspace_loader_1.loadWorkspace)(agentConfig.workspace, {
|
|
243
|
+
coreShrink,
|
|
229
244
|
mcpToolsDir,
|
|
230
245
|
sharedSkillsDir,
|
|
231
246
|
logger,
|
|
247
|
+
memoryBudget,
|
|
232
248
|
});
|
|
233
249
|
}
|
|
234
250
|
catch (err) {
|
|
@@ -272,6 +288,65 @@ async function startAgent(agentConfig, gatewayConfig, ctx) {
|
|
|
272
288
|
}
|
|
273
289
|
agentRunners.set(agentConfig.id, runner);
|
|
274
290
|
agentConfigs.set(agentConfig.id, agentConfig);
|
|
291
|
+
// Skill self-improvement (planning-62): wire the manager (telemetry capture +
|
|
292
|
+
// idle-review trigger + reviewer + writer) and start the daily curator. Shares
|
|
293
|
+
// the runner's history DB so telemetry and the reviewer read the same tables.
|
|
294
|
+
// Telemetry capture is always-on; the reviewer/writer/curator honor `enabled`.
|
|
295
|
+
try {
|
|
296
|
+
const skillLearning = new skill_learning_1.SkillLearningManager({
|
|
297
|
+
db: runner.getHistoryDb(),
|
|
298
|
+
agentId: agentConfig.id,
|
|
299
|
+
workspaceDir: agentConfig.workspace,
|
|
300
|
+
mcpToolsDir,
|
|
301
|
+
sharedSkillsDir,
|
|
302
|
+
globalCfg: gatewayConfig.gateway.skillLearning,
|
|
303
|
+
agentCfg: agentConfig.skillLearning,
|
|
304
|
+
logger,
|
|
305
|
+
channels: {
|
|
306
|
+
telegramBotToken: agentConfig.telegram?.botToken,
|
|
307
|
+
discordBotToken: agentConfig.discord?.botToken,
|
|
308
|
+
lineAccessToken: agentConfig.line?.channelAccessToken,
|
|
309
|
+
},
|
|
310
|
+
});
|
|
311
|
+
runner.setSkillLearning(skillLearning);
|
|
312
|
+
skillLearning.startCurator(); // unref'd self-rescheduling timer
|
|
313
|
+
}
|
|
314
|
+
catch (err) {
|
|
315
|
+
logger.warn('Failed to wire skill-learning (continuing without it)', { error: err.message });
|
|
316
|
+
}
|
|
317
|
+
// ── Nightly memory dreaming (issue #325) — propose (dry-run) slice ──
|
|
318
|
+
try {
|
|
319
|
+
const dreaming = new dreaming_1.DreamingManager({
|
|
320
|
+
db: runner.getHistoryDb(),
|
|
321
|
+
agentId: agentConfig.id,
|
|
322
|
+
workspaceDir: agentConfig.workspace,
|
|
323
|
+
globalCfg: gatewayConfig.gateway.dreaming,
|
|
324
|
+
agentCfg: agentConfig.dreaming,
|
|
325
|
+
logger,
|
|
326
|
+
// K4 auto-applier net-negative gate uses the same soft budgets as compose.
|
|
327
|
+
memoryBudgetChars: memoryBudget.memoryBudgetChars,
|
|
328
|
+
userBudgetChars: memoryBudget.userBudgetChars,
|
|
329
|
+
// planning-65: route episodic task-log to memory/<topic>.md when enabled.
|
|
330
|
+
// Opt-in (=== true) to match compose; the template ships true so the migrator
|
|
331
|
+
// turns it on for existing configs, and it stays off for anything pre-1.0.25
|
|
332
|
+
// that hasn't merged the key yet (exact prior behavior).
|
|
333
|
+
writeRouting: memoryBudget.writeRouting === true,
|
|
334
|
+
episodicArchiveDir: memoryBudget.episodicArchiveDir,
|
|
335
|
+
// planning-67: back the embedded auto-migrate route-out with a print-only
|
|
336
|
+
// reviewer spawn (same model as the dreaming reviewer). Only when routing is
|
|
337
|
+
// on; the manager gates it further on auto mode + over-budget + autoRouteOut.
|
|
338
|
+
routeOutFn: memoryBudget.writeRouting === true
|
|
339
|
+
? (0, migrate_1.makeRouteOut)((0, reviewer_1.makeClaudeSpawn)((0, config_1.resolveDreamingConfig)(agentConfig.dreaming, gatewayConfig.gateway.dreaming)
|
|
340
|
+
.reviewModel))
|
|
341
|
+
: undefined,
|
|
342
|
+
// K3↔K4 promotion: only when the shared KB is enabled AND set to auto.
|
|
343
|
+
sharedPromote: (0, knowledge_1.makeSharedPromoter)(agentConfig.id, agentConfig.knowledge?.shared, gatewayConfig.gateway.knowledge?.shared),
|
|
344
|
+
});
|
|
345
|
+
dreaming.startDreaming(); // unref'd nightly self-rescheduling timer
|
|
346
|
+
}
|
|
347
|
+
catch (err) {
|
|
348
|
+
logger.warn('Failed to wire dreaming (continuing without it)', { error: err.message });
|
|
349
|
+
}
|
|
275
350
|
// Log startup status
|
|
276
351
|
console.log(JSON.stringify({ id: agentConfig.id, status: 'started' }));
|
|
277
352
|
logger.info('Agent started');
|
|
@@ -289,24 +364,44 @@ async function startAgent(agentConfig, gatewayConfig, ctx) {
|
|
|
289
364
|
mcpToolsDir,
|
|
290
365
|
sharedSkillsDir,
|
|
291
366
|
logger,
|
|
367
|
+
memoryBudget,
|
|
368
|
+
coreShrink,
|
|
292
369
|
});
|
|
293
370
|
// Always rewrite CLAUDE.md so the next spawn picks up the new content.
|
|
294
371
|
await fs.promises.writeFile(path.join(agentConfig.workspace, 'CLAUDE.md'), updated.systemPrompt, 'utf8');
|
|
295
372
|
if (updated.skillRegistry) {
|
|
296
373
|
runner.setSkillRegistry(updated.skillRegistry);
|
|
297
374
|
}
|
|
298
|
-
//
|
|
299
|
-
//
|
|
300
|
-
//
|
|
301
|
-
//
|
|
302
|
-
|
|
303
|
-
|
|
304
|
-
|
|
305
|
-
|
|
306
|
-
|
|
307
|
-
|
|
308
|
-
|
|
309
|
-
|
|
375
|
+
// CLAUDE.md is always recomposed on disk (above) and is frozen-at-spawn —
|
|
376
|
+
// a live process never re-reads it; every future spawn picks up the new
|
|
377
|
+
// content regardless. So the restart decision is purely about how urgently
|
|
378
|
+
// the change must reach *already-running* sessions, tiered by change class.
|
|
379
|
+
const restartAction = (0, workspace_loader_1.classifyWorkspaceRestart)(changedFiles);
|
|
380
|
+
if (restartAction === 'none') {
|
|
381
|
+
// Self-authored memory (MEMORY.md/USER.md): the running session already
|
|
382
|
+
// holds what it just wrote, and every future spawn reads the recomposed
|
|
383
|
+
// CLAUDE.md. Restarting anything is pure downside (dropped in-context
|
|
384
|
+
// state + SQLite replay). Restart NOTHING — this is the whole bug fix:
|
|
385
|
+
// a memory write can never drop a live session again.
|
|
386
|
+
logger.info('Updated CLAUDE.md (memory-only change), no session restart', {
|
|
387
|
+
files: changedFiles,
|
|
388
|
+
});
|
|
389
|
+
}
|
|
390
|
+
else if (restartAction === 'defer-idle') {
|
|
391
|
+
// Operator identity (SOUL.md/AGENTS.md): reach sessions soon-ish, but
|
|
392
|
+
// never SIGKILL an idle bystander. Skip busy (self-restart footgun) and
|
|
393
|
+
// defer idle (lossless respawn on next message).
|
|
394
|
+
logger.info('Updated CLAUDE.md (identity change), deferring restarts', {
|
|
395
|
+
files: changedFiles,
|
|
396
|
+
});
|
|
397
|
+
await runner.restartOrDefer({ skipBusy: true, deferIdle: true });
|
|
398
|
+
}
|
|
399
|
+
else {
|
|
400
|
+
// Non-writable change (HEARTBEAT.md, operator config, anything else):
|
|
401
|
+
// keep the normal restart-or-defer behavior.
|
|
402
|
+
logger.info('Updated CLAUDE.md, restarting sessions', { files: changedFiles });
|
|
403
|
+
await runner.restartOrDefer({ skipBusy: false });
|
|
404
|
+
}
|
|
310
405
|
scheduler.load(updated.files.heartbeatMd);
|
|
311
406
|
}
|
|
312
407
|
catch (err) {
|
|
@@ -324,20 +419,25 @@ async function startAgent(agentConfig, gatewayConfig, ctx) {
|
|
|
324
419
|
mcpToolsDir,
|
|
325
420
|
sharedSkillsDir,
|
|
326
421
|
logger,
|
|
422
|
+
memoryBudget,
|
|
423
|
+
coreShrink,
|
|
327
424
|
});
|
|
328
425
|
if (updated.skillRegistry) {
|
|
329
426
|
runner.setSkillRegistry(updated.skillRegistry);
|
|
330
427
|
}
|
|
331
428
|
// Rewrite CLAUDE.md with updated skills section
|
|
332
429
|
await fs.promises.writeFile(path.join(agentConfig.workspace, 'CLAUDE.md'), updated.systemPrompt, 'utf8');
|
|
333
|
-
//
|
|
334
|
-
//
|
|
335
|
-
//
|
|
336
|
-
//
|
|
337
|
-
//
|
|
338
|
-
//
|
|
339
|
-
//
|
|
340
|
-
|
|
430
|
+
// Refresh the skills registry for future spawns without dropping any
|
|
431
|
+
// live session. Busy sessions are left running (skipBusy) — a session
|
|
432
|
+
// that triggers a SKILL.md change mid-turn would otherwise stop itself
|
|
433
|
+
// the instant its turn completes (the self-restart footgun). Idle
|
|
434
|
+
// sessions are DEFERRED (deferIdle) rather than SIGKILLed: the skills
|
|
435
|
+
// section of CLAUDE.md is frozen-at-spawn and the registry applies on
|
|
436
|
+
// next spawn, so killing an idle bystander now buys nothing and only
|
|
437
|
+
// drops its in-context state. Auto skill-learning writes skills mid-work,
|
|
438
|
+
// so this keeps unrelated idle sessions alive. Both pick up the change
|
|
439
|
+
// on their next spawn (busy: next natural spawn; idle: next message).
|
|
440
|
+
await runner.restartOrDefer({ skipBusy: true, deferIdle: true });
|
|
341
441
|
logger.info('Skills registry updated', {
|
|
342
442
|
count: updated.skillRegistry?.skills.size ?? 0,
|
|
343
443
|
});
|
|
@@ -527,6 +627,8 @@ async function main() {
|
|
|
527
627
|
mcpToolsDir: ctx.mcpToolsDir,
|
|
528
628
|
sharedSkillsDir: ctx.sharedSkillsDir,
|
|
529
629
|
logger,
|
|
630
|
+
memoryBudget: { ...config.gateway.memory, ...agentConfig.memory },
|
|
631
|
+
coreShrink: (0, knowledge_1.resolveArchiveConfig)(agentConfig.knowledge?.archive, config.gateway.knowledge?.archive).enabled,
|
|
530
632
|
});
|
|
531
633
|
const claudeMdPath = path.join(agentConfig.workspace, 'CLAUDE.md');
|
|
532
634
|
await fs.promises.writeFile(claudeMdPath, updated.systemPrompt, 'utf8');
|
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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"}
|
|
@@ -44,6 +44,7 @@ export declare class SessionProcess extends EventEmitter {
|
|
|
44
44
|
private lastTotalTokens;
|
|
45
45
|
_lastModel: string;
|
|
46
46
|
private thinkingRecoveryCount;
|
|
47
|
+
private persistedReplyToolIds;
|
|
47
48
|
private lastClaudeBin;
|
|
48
49
|
private lastStderrLine;
|
|
49
50
|
private stderrBuffer;
|
|
@@ -89,6 +90,15 @@ export declare class SessionProcess extends EventEmitter {
|
|
|
89
90
|
private writeMcpConfig;
|
|
90
91
|
/** Find the first API key that has access to this agent (agents: '*' or includes agentId). */
|
|
91
92
|
private findApiKeyForAgent;
|
|
93
|
+
/** Resolved shared-KB vault dir for this agent, or '' when shared KB is disabled. */
|
|
94
|
+
private resolveSharedKbDir;
|
|
95
|
+
/**
|
|
96
|
+
* "1" when the read-path retrieval recorder should log memory_search hits into
|
|
97
|
+
* kb_retrieval_log (planning-66) — the LRU/feedback signal the nightly staleness
|
|
98
|
+
* GC folds into per-entry recency. Off unless staleness AND recordRetrievals are
|
|
99
|
+
* both enabled. Mirrors resolveSharedKbDir's env-gate pattern.
|
|
100
|
+
*/
|
|
101
|
+
private resolveRecordRetrievals;
|
|
92
102
|
private buildArgs;
|
|
93
103
|
private static toStreamJsonTurn;
|
|
94
104
|
private spawnProcess;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"process.d.ts","sourceRoot":"","sources":["../../src/session/process.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAC;AAKtC,OAAO,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;
|
|
1
|
+
{"version":3,"file":"process.d.ts","sourceRoot":"","sources":["../../src/session/process.ts"],"names":[],"mappings":"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"}
|
package/dist/session/process.js
CHANGED
|
@@ -44,12 +44,23 @@ const fs = __importStar(require("fs"));
|
|
|
44
44
|
const os = __importStar(require("os"));
|
|
45
45
|
const path = __importStar(require("path"));
|
|
46
46
|
const chokidar_1 = __importDefault(require("chokidar"));
|
|
47
|
+
const knowledge_1 = require("../agent/knowledge");
|
|
48
|
+
const config_1 = require("../agent/dreaming/config");
|
|
47
49
|
const logger_1 = require("../logger");
|
|
48
50
|
const pty_stream_registry_1 = require("../shell/pty-stream-registry");
|
|
49
51
|
const screen_1 = require("../shell/screen");
|
|
50
52
|
const claude_bin_1 = require("./claude-bin");
|
|
51
53
|
const tool_labels_1 = require("../utils/tool-labels");
|
|
52
54
|
exports.MAX_HISTORY_MESSAGES = 50;
|
|
55
|
+
// The MCP reply tools that deliver an agent's user-facing message to a channel.
|
|
56
|
+
// Their text lives in the tool_use `input.text`, not in an assistant text block,
|
|
57
|
+
// so it is never captured by `assistantBuffer` — the reply is delivered to the
|
|
58
|
+
// user but was previously never mirrored into the resumable session store.
|
|
59
|
+
const CHANNEL_REPLY_TOOLS = new Set([
|
|
60
|
+
'mcp__gateway__telegram_reply',
|
|
61
|
+
'mcp__gateway__discord_reply',
|
|
62
|
+
'mcp__gateway__line_reply',
|
|
63
|
+
]);
|
|
53
64
|
/**
|
|
54
65
|
* Resolve the per-spawn history re-injection cap with precedence
|
|
55
66
|
* per-agent → global → MAX_HISTORY_MESSAGES. Non-finite or negative values are
|
|
@@ -118,6 +129,11 @@ class SessionProcess extends events_1.EventEmitter {
|
|
|
118
129
|
// Real model from Claude stream, updated per turn. Persisted to SessionMeta.
|
|
119
130
|
this._lastModel = '';
|
|
120
131
|
this.thinkingRecoveryCount = 0;
|
|
132
|
+
// tool_use ids of channel replies already mirrored to sessionStore, so a reply
|
|
133
|
+
// is persisted exactly once even though its tool_use block can recur across the
|
|
134
|
+
// partial + final stream events of the same turn. Reset at every turn boundary
|
|
135
|
+
// (the 'result' handler), so it never grows without bound across a long session.
|
|
136
|
+
this.persistedReplyToolIds = new Set();
|
|
121
137
|
// Binary path last spawned and the last non-empty stderr line, retained so a
|
|
122
138
|
// fatal `Session max restarts reached` names what actually failed (e.g. an
|
|
123
139
|
// unresolvable `claude` binary) instead of ending in silence. `stderrBuffer`
|
|
@@ -370,6 +386,13 @@ class SessionProcess extends events_1.EventEmitter {
|
|
|
370
386
|
GATEWAY_ORIGIN_CHANNEL: this.source,
|
|
371
387
|
GATEWAY_WORKSPACE_DIR: this.agentConfig.workspace,
|
|
372
388
|
GATEWAY_SHARED_SKILLS_DIR: path.join(os.homedir(), '.claude-gateway', 'shared-skills'),
|
|
389
|
+
// Shared KB vault dir (planning-64 K3), so memory_search corpus:"shared"
|
|
390
|
+
// can reach the cross-agent vault. Empty when shared KB is disabled.
|
|
391
|
+
GATEWAY_SHARED_KB_DIR: this.resolveSharedKbDir(),
|
|
392
|
+
// planning-66: gate the read-path retrieval recorder (memory_search →
|
|
393
|
+
// kb_retrieval_log) so the staleness GC's LRU/feedback signal is only
|
|
394
|
+
// collected when the agent actually runs the GC.
|
|
395
|
+
GATEWAY_RECORD_RETRIEVALS: this.resolveRecordRetrievals(),
|
|
373
396
|
GATEWAY_SESSION_ID: this.sessionId,
|
|
374
397
|
// For API sessions: absolute path to session media dir so browser screenshots land there
|
|
375
398
|
GATEWAY_SESSION_MEDIA_DIR: this.source === 'api'
|
|
@@ -415,6 +438,21 @@ class SessionProcess extends events_1.EventEmitter {
|
|
|
415
438
|
k.admin);
|
|
416
439
|
return match?.key ?? '';
|
|
417
440
|
}
|
|
441
|
+
/** Resolved shared-KB vault dir for this agent, or '' when shared KB is disabled. */
|
|
442
|
+
resolveSharedKbDir() {
|
|
443
|
+
const cfg = (0, knowledge_1.resolveSharedConfig)(this.agentConfig.knowledge?.shared, this.gatewayConfig.gateway.knowledge?.shared);
|
|
444
|
+
return cfg.enabled ? (0, knowledge_1.sharedVaultDir)(cfg) : '';
|
|
445
|
+
}
|
|
446
|
+
/**
|
|
447
|
+
* "1" when the read-path retrieval recorder should log memory_search hits into
|
|
448
|
+
* kb_retrieval_log (planning-66) — the LRU/feedback signal the nightly staleness
|
|
449
|
+
* GC folds into per-entry recency. Off unless staleness AND recordRetrievals are
|
|
450
|
+
* both enabled. Mirrors resolveSharedKbDir's env-gate pattern.
|
|
451
|
+
*/
|
|
452
|
+
resolveRecordRetrievals() {
|
|
453
|
+
const s = (0, config_1.resolveDreamingConfig)(this.agentConfig.dreaming, this.gatewayConfig.gateway.dreaming).staleness;
|
|
454
|
+
return s.enabled && s.recordRetrievals ? '1' : '';
|
|
455
|
+
}
|
|
418
456
|
buildArgs(mcpConfigPath, model) {
|
|
419
457
|
const args = [
|
|
420
458
|
'--model', model,
|
|
@@ -640,6 +678,10 @@ class SessionProcess extends events_1.EventEmitter {
|
|
|
640
678
|
};
|
|
641
679
|
// CODING_TOOLS and TOOL_LABELS imported from shared utility above
|
|
642
680
|
let assistantBuffer = '';
|
|
681
|
+
// Reply-tool texts already mirrored to the store during the CURRENT turn, so
|
|
682
|
+
// the end-of-turn assistantBuffer persist can skip an identical narration
|
|
683
|
+
// text block and avoid writing the same message twice. Cleared each turn.
|
|
684
|
+
const replyTextsThisTurn = new Set();
|
|
643
685
|
// Track partial message text to avoid double-counting when --include-partial-messages is active.
|
|
644
686
|
// Each partial `type: 'assistant'` event contains the FULL text so far, not a delta.
|
|
645
687
|
let lastPartialText = '';
|
|
@@ -710,6 +752,37 @@ class SessionProcess extends events_1.EventEmitter {
|
|
|
710
752
|
}
|
|
711
753
|
lastPartialText = '';
|
|
712
754
|
}
|
|
755
|
+
// Mirror channel replies (telegram_reply/discord_reply/line_reply) into
|
|
756
|
+
// the resumable session store at delivery time. The user-facing text is
|
|
757
|
+
// carried in the tool_use input, not a text block, so assistantBuffer
|
|
758
|
+
// never sees it — without this, a turn whose entire output is a reply
|
|
759
|
+
// tool call (e.g. a long synthesized report, or any background-event or
|
|
760
|
+
// reply-tool-only turn) is delivered to the user yet lost from the store
|
|
761
|
+
// and vanishes on resume. Persisting here — keyed off the tool_use event,
|
|
762
|
+
// not the end-of-turn 'result' — also survives a subprocess that exits
|
|
763
|
+
// before the turn completes. Only act on the final (non-partial) message,
|
|
764
|
+
// where the tool_use input is fully materialised.
|
|
765
|
+
if (!isPartial && !this.queryMode && this.source !== 'api') {
|
|
766
|
+
for (const block of obj.message.content) {
|
|
767
|
+
if (block.type === 'tool_use' &&
|
|
768
|
+
typeof block.name === 'string' &&
|
|
769
|
+
CHANNEL_REPLY_TOOLS.has(block.name) &&
|
|
770
|
+
typeof block.id === 'string' &&
|
|
771
|
+
!this.persistedReplyToolIds.has(block.id)) {
|
|
772
|
+
const input = block.input;
|
|
773
|
+
const replyText = typeof input?.text === 'string' ? input.text.trim() : '';
|
|
774
|
+
// Skip an empty reply, and skip a reply whose exact text was
|
|
775
|
+
// already mirrored earlier in THIS turn — e.g. a channel delivery
|
|
776
|
+
// that failed and the model retried with a fresh tool_use id — so
|
|
777
|
+
// the resume window shows the message once, not once per retry.
|
|
778
|
+
if (replyText && !replyTextsThisTurn.has(replyText)) {
|
|
779
|
+
this.persistedReplyToolIds.add(block.id);
|
|
780
|
+
replyTextsThisTurn.add(replyText);
|
|
781
|
+
this.appendToStore({ role: 'assistant', content: replyText, ts: Date.now() }).catch(() => { });
|
|
782
|
+
}
|
|
783
|
+
}
|
|
784
|
+
}
|
|
785
|
+
}
|
|
713
786
|
if (!this.queryMode) {
|
|
714
787
|
// Detect tool use to write status (same as before)
|
|
715
788
|
const toolBlock = obj.message.content.find((b) => b.type === 'tool_use');
|
|
@@ -796,7 +869,10 @@ class SessionProcess extends events_1.EventEmitter {
|
|
|
796
869
|
if (assistantBuffer.trim()) {
|
|
797
870
|
// For non-API sessions (Telegram/Discord), persist here via appendTelegramMessage.
|
|
798
871
|
// For API sessions, runner.ts already persists via appendMessage — skip to avoid double-write.
|
|
799
|
-
|
|
872
|
+
// Skip when this exact text was already mirrored as a channel reply
|
|
873
|
+
// in this turn, so a narration text block that duplicates the reply
|
|
874
|
+
// is not stored twice.
|
|
875
|
+
if (this.source !== 'api' && !replyTextsThisTurn.has(assistantBuffer.trim())) {
|
|
800
876
|
const assistantMsg = { role: 'assistant', content: assistantBuffer.trim(), ts: Date.now() };
|
|
801
877
|
this.appendToStore(assistantMsg).catch(() => { });
|
|
802
878
|
}
|
|
@@ -813,6 +889,15 @@ class SessionProcess extends events_1.EventEmitter {
|
|
|
813
889
|
}
|
|
814
890
|
lastMessageStartContext = 0;
|
|
815
891
|
}
|
|
892
|
+
// Both reply-dedup structures are per-turn and must reset at EVERY turn
|
|
893
|
+
// boundary — including the queryMode and corrupted-thinking result
|
|
894
|
+
// branches above, which previously left them populated. persistedReplyToolIds
|
|
895
|
+
// (an instance field surviving respawn) would otherwise grow without bound,
|
|
896
|
+
// and a reply text left in replyTextsThisTurn could suppress an identical
|
|
897
|
+
// narration in a later turn. The partial→final and narration-vs-reply
|
|
898
|
+
// dedups both only ever span a single turn, so turn-scoped reset is correct.
|
|
899
|
+
this.persistedReplyToolIds.clear();
|
|
900
|
+
replyTextsThisTurn.clear();
|
|
816
901
|
}
|
|
817
902
|
}
|
|
818
903
|
catch {
|