@0xmaxma/claude-gateway 1.7.9 → 1.8.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 +178 -44
- package/dist/agent/builtin-commands.js +2 -2
- package/dist/agent/builtin-commands.js.map +1 -1
- package/dist/agent/dreaming/accept.d.ts.map +1 -1
- package/dist/agent/dreaming/accept.js +4 -1
- package/dist/agent/dreaming/accept.js.map +1 -1
- package/dist/agent/dreaming/config.d.ts.map +1 -1
- package/dist/agent/dreaming/config.js +2 -0
- package/dist/agent/dreaming/config.js.map +1 -1
- package/dist/agent/dreaming/reviewer.d.ts.map +1 -1
- package/dist/agent/dreaming/reviewer.js +9 -2
- package/dist/agent/dreaming/reviewer.js.map +1 -1
- package/dist/agent/dreaming/staleness.d.ts +7 -1
- package/dist/agent/dreaming/staleness.d.ts.map +1 -1
- package/dist/agent/dreaming/staleness.js +17 -2
- package/dist/agent/dreaming/staleness.js.map +1 -1
- package/dist/agent/dreaming/types.d.ts +17 -1
- package/dist/agent/dreaming/types.d.ts.map +1 -1
- package/dist/agent/knowledge/archive-db.d.ts +43 -0
- package/dist/agent/knowledge/archive-db.d.ts.map +1 -1
- package/dist/agent/knowledge/archive-db.js +130 -0
- package/dist/agent/knowledge/archive-db.js.map +1 -1
- package/dist/agent/knowledge/config.d.ts +3 -1
- package/dist/agent/knowledge/config.d.ts.map +1 -1
- package/dist/agent/knowledge/config.js +32 -10
- package/dist/agent/knowledge/config.js.map +1 -1
- package/dist/agent/knowledge/index.d.ts +11 -4
- package/dist/agent/knowledge/index.d.ts.map +1 -1
- package/dist/agent/knowledge/index.js +22 -1
- package/dist/agent/knowledge/index.js.map +1 -1
- package/dist/agent/knowledge/indexer.d.ts +0 -7
- package/dist/agent/knowledge/indexer.d.ts.map +1 -1
- package/dist/agent/knowledge/indexer.js +34 -7
- package/dist/agent/knowledge/indexer.js.map +1 -1
- package/dist/agent/knowledge/lifecycle.d.ts +20 -4
- package/dist/agent/knowledge/lifecycle.d.ts.map +1 -1
- package/dist/agent/knowledge/lifecycle.js +33 -4
- package/dist/agent/knowledge/lifecycle.js.map +1 -1
- package/dist/agent/knowledge/reflection.d.ts +114 -0
- package/dist/agent/knowledge/reflection.d.ts.map +1 -0
- package/dist/agent/knowledge/reflection.js +447 -0
- package/dist/agent/knowledge/reflection.js.map +1 -0
- package/dist/agent/knowledge/shared-dedup.d.ts +85 -0
- package/dist/agent/knowledge/shared-dedup.d.ts.map +1 -0
- package/dist/agent/knowledge/shared-dedup.js +187 -0
- package/dist/agent/knowledge/shared-dedup.js.map +1 -0
- package/dist/agent/knowledge/shared-promote.d.ts +82 -7
- package/dist/agent/knowledge/shared-promote.d.ts.map +1 -1
- package/dist/agent/knowledge/shared-promote.js +244 -11
- package/dist/agent/knowledge/shared-promote.js.map +1 -1
- package/dist/agent/knowledge/shared-staleness.d.ts +51 -0
- package/dist/agent/knowledge/shared-staleness.d.ts.map +1 -0
- package/dist/agent/knowledge/shared-staleness.js +149 -0
- package/dist/agent/knowledge/shared-staleness.js.map +1 -0
- package/dist/agent/knowledge/shared-writer.d.ts +19 -0
- package/dist/agent/knowledge/shared-writer.d.ts.map +1 -1
- package/dist/agent/knowledge/shared-writer.js +42 -0
- package/dist/agent/knowledge/shared-writer.js.map +1 -1
- package/dist/agent/knowledge/types.d.ts +24 -0
- package/dist/agent/knowledge/types.d.ts.map +1 -1
- package/dist/agent/model-catalog.d.ts +62 -0
- package/dist/agent/model-catalog.d.ts.map +1 -0
- package/dist/agent/model-catalog.js +264 -0
- package/dist/agent/model-catalog.js.map +1 -0
- package/dist/agent/runner.d.ts +83 -0
- package/dist/agent/runner.d.ts.map +1 -1
- package/dist/agent/runner.js +281 -51
- package/dist/agent/runner.js.map +1 -1
- package/dist/agent/workspace-loader.d.ts +17 -2
- package/dist/agent/workspace-loader.d.ts.map +1 -1
- package/dist/agent/workspace-loader.js +17 -1
- package/dist/agent/workspace-loader.js.map +1 -1
- package/dist/api/cron-router.d.ts +12 -8
- package/dist/api/cron-router.d.ts.map +1 -1
- package/dist/api/cron-router.js +82 -16
- package/dist/api/cron-router.js.map +1 -1
- package/dist/api/gateway-router.d.ts +4 -0
- package/dist/api/gateway-router.d.ts.map +1 -1
- package/dist/api/gateway-router.js +16 -1
- package/dist/api/gateway-router.js.map +1 -1
- package/dist/api/manifest-sources.d.ts +15 -0
- package/dist/api/manifest-sources.d.ts.map +1 -0
- package/dist/api/manifest-sources.js +27 -0
- package/dist/api/manifest-sources.js.map +1 -0
- package/dist/api/meta-router.d.ts +13 -0
- package/dist/api/meta-router.d.ts.map +1 -0
- package/dist/api/meta-router.js +26 -0
- package/dist/api/meta-router.js.map +1 -0
- package/dist/api/packages.d.ts.map +1 -1
- package/dist/api/packages.js +18 -198
- package/dist/api/packages.js.map +1 -1
- package/dist/api/route-registry.d.ts +81 -0
- package/dist/api/route-registry.d.ts.map +1 -0
- package/dist/api/route-registry.js +44 -0
- package/dist/api/route-registry.js.map +1 -0
- package/dist/api/router.d.ts.map +1 -1
- package/dist/api/router.js +21 -3
- package/dist/api/router.js.map +1 -1
- package/dist/apps/compose-generator.js +7 -4
- package/dist/apps/compose-generator.js.map +1 -1
- package/dist/apps/installer.d.ts +154 -0
- package/dist/apps/installer.d.ts.map +1 -1
- package/dist/apps/installer.js +657 -54
- package/dist/apps/installer.js.map +1 -1
- package/dist/cli/args.d.ts +25 -0
- package/dist/cli/args.d.ts.map +1 -0
- package/dist/cli/args.js +55 -0
- package/dist/cli/args.js.map +1 -0
- package/dist/cli/colors.d.ts +37 -0
- package/dist/cli/colors.d.ts.map +1 -0
- package/dist/cli/colors.js +63 -0
- package/dist/cli/colors.js.map +1 -0
- package/dist/cli/command-names.d.ts +98 -0
- package/dist/cli/command-names.d.ts.map +1 -0
- package/dist/cli/command-names.js +109 -0
- package/dist/cli/command-names.js.map +1 -0
- package/dist/cli/commands/agents.d.ts +28 -0
- package/dist/cli/commands/agents.d.ts.map +1 -0
- package/dist/cli/commands/agents.js +321 -0
- package/dist/cli/commands/agents.js.map +1 -0
- package/dist/cli/commands/channels.d.ts +17 -0
- package/dist/cli/commands/channels.d.ts.map +1 -0
- package/dist/cli/commands/channels.js +101 -0
- package/dist/cli/commands/channels.js.map +1 -0
- package/dist/cli/commands/debug-bundle.d.ts +6 -0
- package/dist/cli/commands/debug-bundle.d.ts.map +1 -0
- package/dist/cli/commands/debug-bundle.js +220 -0
- package/dist/cli/commands/debug-bundle.js.map +1 -0
- package/dist/cli/commands/doctor.d.ts +3 -0
- package/dist/cli/commands/doctor.d.ts.map +1 -0
- package/dist/cli/commands/doctor.js +104 -0
- package/dist/cli/commands/doctor.js.map +1 -0
- package/dist/cli/commands/gateway.d.ts +12 -0
- package/dist/cli/commands/gateway.d.ts.map +1 -0
- package/dist/cli/commands/gateway.js +145 -0
- package/dist/cli/commands/gateway.js.map +1 -0
- package/dist/cli/commands/service.d.ts +33 -0
- package/dist/cli/commands/service.d.ts.map +1 -0
- package/dist/cli/commands/service.js +513 -0
- package/dist/cli/commands/service.js.map +1 -0
- package/dist/cli/commands/update.d.ts +16 -0
- package/dist/cli/commands/update.d.ts.map +1 -0
- package/dist/cli/commands/update.js +149 -0
- package/dist/cli/commands/update.js.map +1 -0
- package/dist/cli/commands.generated.d.ts +4 -0
- package/dist/cli/commands.generated.d.ts.map +1 -0
- package/dist/cli/commands.generated.js +220 -0
- package/dist/cli/commands.generated.js.map +1 -0
- package/dist/cli/health.d.ts +31 -0
- package/dist/cli/health.d.ts.map +1 -0
- package/dist/cli/health.js +49 -0
- package/dist/cli/health.js.map +1 -0
- package/dist/cli/http-client.d.ts +140 -0
- package/dist/cli/http-client.d.ts.map +1 -0
- package/dist/cli/http-client.js +332 -0
- package/dist/cli/http-client.js.map +1 -0
- package/dist/cli/index.d.ts +27 -0
- package/dist/cli/index.d.ts.map +1 -0
- package/dist/cli/index.js +372 -0
- package/dist/cli/index.js.map +1 -0
- package/dist/cli/manager.d.ts +64 -0
- package/dist/cli/manager.d.ts.map +1 -0
- package/dist/cli/manager.js +181 -0
- package/dist/cli/manager.js.map +1 -0
- package/dist/cli/output.d.ts +49 -0
- package/dist/cli/output.d.ts.map +1 -0
- package/dist/cli/output.js +101 -0
- package/dist/cli/output.js.map +1 -0
- package/dist/cli/prompt.d.ts +29 -0
- package/dist/cli/prompt.d.ts.map +1 -0
- package/dist/cli/prompt.js +154 -0
- package/dist/cli/prompt.js.map +1 -0
- package/dist/cli/redact.d.ts +3 -0
- package/dist/cli/redact.d.ts.map +1 -0
- package/dist/cli/redact.js +33 -0
- package/dist/cli/redact.js.map +1 -0
- package/dist/cli/types.d.ts +22 -0
- package/dist/cli/types.d.ts.map +1 -0
- package/dist/cli/types.js +4 -0
- package/dist/cli/types.js.map +1 -0
- package/dist/config/bootstrap.d.ts +33 -0
- package/dist/config/bootstrap.d.ts.map +1 -0
- package/dist/config/bootstrap.js +117 -0
- package/dist/config/bootstrap.js.map +1 -0
- package/dist/config/loader.d.ts.map +1 -1
- package/dist/config/loader.js +5 -1
- package/dist/config/loader.js.map +1 -1
- package/dist/config/watcher.d.ts.map +1 -1
- package/dist/config/watcher.js +2 -35
- package/dist/config/watcher.js.map +1 -1
- package/dist/discord/receiver.d.ts +6 -1
- package/dist/discord/receiver.d.ts.map +1 -1
- package/dist/discord/receiver.js +9 -1
- package/dist/discord/receiver.js.map +1 -1
- package/dist/entry.d.ts +3 -0
- package/dist/entry.d.ts.map +1 -0
- package/dist/entry.js +83 -0
- package/dist/entry.js.map +1 -0
- package/dist/index.js +197 -47
- package/dist/index.js.map +1 -1
- package/dist/load-dotenv.d.ts +2 -0
- package/dist/load-dotenv.d.ts.map +1 -0
- package/dist/load-dotenv.js +68 -0
- package/dist/load-dotenv.js.map +1 -0
- package/dist/packages/registry.d.ts +50 -0
- package/dist/packages/registry.d.ts.map +1 -0
- package/dist/packages/registry.js +209 -0
- package/dist/packages/registry.js.map +1 -0
- package/dist/session/process.d.ts +20 -3
- package/dist/session/process.d.ts.map +1 -1
- package/dist/session/process.js +120 -5
- package/dist/session/process.js.map +1 -1
- package/dist/shell/claude-pty-shell.js +146 -27
- package/dist/shell/claude-pty-shell.js.map +1 -1
- package/dist/shell/draft-phantom.d.ts +49 -0
- package/dist/shell/draft-phantom.d.ts.map +1 -0
- package/dist/shell/draft-phantom.js +59 -0
- package/dist/shell/draft-phantom.js.map +1 -0
- package/dist/shell/submit-diag.d.ts +67 -0
- package/dist/shell/submit-diag.d.ts.map +1 -0
- package/dist/shell/submit-diag.js +69 -0
- package/dist/shell/submit-diag.js.map +1 -0
- package/dist/shutdown-signals.d.ts +47 -0
- package/dist/shutdown-signals.d.ts.map +1 -0
- package/dist/shutdown-signals.js +62 -0
- package/dist/shutdown-signals.js.map +1 -0
- package/dist/telegram/receiver.d.ts +6 -1
- package/dist/telegram/receiver.d.ts.map +1 -1
- package/dist/telegram/receiver.js +9 -1
- package/dist/telegram/receiver.js.map +1 -1
- package/dist/types.d.ts +25 -0
- package/dist/types.d.ts.map +1 -1
- package/dist/utils/orphan-receivers.d.ts +90 -0
- package/dist/utils/orphan-receivers.d.ts.map +1 -0
- package/dist/utils/orphan-receivers.js +218 -0
- package/dist/utils/orphan-receivers.js.map +1 -0
- package/dist/utils/paths.d.ts +16 -0
- package/dist/utils/paths.d.ts.map +1 -0
- package/dist/utils/paths.js +60 -0
- package/dist/utils/paths.js.map +1 -0
- package/dist/utils/stop-child.d.ts +21 -0
- package/dist/utils/stop-child.d.ts.map +1 -0
- package/dist/utils/stop-child.js +64 -0
- package/dist/utils/stop-child.js.map +1 -0
- package/lib/pairing.ts +1 -1
- package/mcp/tools/agent/handlers.ts +1 -1
- package/mcp/tools/discord/module.ts +23 -15
- package/mcp/tools/discord/receiver-server.ts +4 -0
- package/mcp/tools/memory/archive-reader.test.ts +25 -1
- package/mcp/tools/memory/archive-reader.ts +70 -12
- package/mcp/tools/memory/archive-writer.test.ts +168 -0
- package/mcp/tools/memory/archive-writer.ts +137 -0
- package/mcp/tools/memory/module.test.ts +187 -0
- package/mcp/tools/memory/module.ts +192 -6
- package/mcp/tools/telegram/module.ts +10 -2
- package/mcp/tools/telegram/receiver-server.ts +15 -6
- package/mcp/tools/telegram/typing.ts +178 -34
- package/package.json +6 -4
package/dist/index.js
CHANGED
|
@@ -39,27 +39,14 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
39
39
|
const path = __importStar(require("path"));
|
|
40
40
|
const fs = __importStar(require("fs"));
|
|
41
41
|
const os = __importStar(require("os"));
|
|
42
|
+
const load_dotenv_1 = require("./load-dotenv");
|
|
42
43
|
// Load ~/.claude-gateway/.env so global installs pick up env vars without
|
|
43
|
-
// needing shell exports or running via npm start.
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
if (!fs.existsSync(envFile))
|
|
47
|
-
return;
|
|
48
|
-
for (const line of fs.readFileSync(envFile, 'utf8').split('\n')) {
|
|
49
|
-
const trimmed = line.trim();
|
|
50
|
-
if (!trimmed || trimmed.startsWith('#'))
|
|
51
|
-
continue;
|
|
52
|
-
const eq = trimmed.indexOf('=');
|
|
53
|
-
if (eq === -1)
|
|
54
|
-
continue;
|
|
55
|
-
const key = trimmed.slice(0, eq).trim();
|
|
56
|
-
const val = trimmed.slice(eq + 1).trim().replace(/^["']|["']$/g, '');
|
|
57
|
-
if (!(key in process.env))
|
|
58
|
-
process.env[key] = val;
|
|
59
|
-
}
|
|
60
|
-
})();
|
|
44
|
+
// needing shell exports or running via npm start. Shared with src/entry.ts,
|
|
45
|
+
// which does the same before dispatching to the CLI.
|
|
46
|
+
(0, load_dotenv_1.loadGatewayDotenv)();
|
|
61
47
|
const loader_1 = require("./config/loader");
|
|
62
48
|
const migrator_1 = require("./config/migrator");
|
|
49
|
+
const bootstrap_1 = require("./config/bootstrap");
|
|
63
50
|
const workspace_loader_1 = require("./agent/workspace-loader");
|
|
64
51
|
const knowledge_1 = require("./agent/knowledge");
|
|
65
52
|
const skills_1 = require("./skills");
|
|
@@ -78,17 +65,16 @@ const context_isolation_1 = require("./agent/context-isolation");
|
|
|
78
65
|
const logger_1 = require("./logger");
|
|
79
66
|
const watcher_1 = require("./config/watcher");
|
|
80
67
|
const registry_1 = require("./apps/registry");
|
|
68
|
+
const orphan_receivers_1 = require("./utils/orphan-receivers");
|
|
69
|
+
const shutdown_signals_1 = require("./shutdown-signals");
|
|
81
70
|
const registry_client_1 = require("./apps/registry-client");
|
|
82
71
|
const installer_1 = require("./apps/installer");
|
|
83
72
|
const agent_manager_1 = require("./apps/agent-manager");
|
|
84
73
|
const socket_server_1 = require("./apps/socket-server");
|
|
85
74
|
const compose_generator_1 = require("./apps/compose-generator");
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
}
|
|
90
|
-
return p;
|
|
91
|
-
}
|
|
75
|
+
const command_names_1 = require("./cli/command-names");
|
|
76
|
+
const manager_2 = require("./cli/manager");
|
|
77
|
+
const paths_1 = require("./utils/paths");
|
|
92
78
|
// ─── Simple argument parsing (no heavy deps) ──────────────────────────────────
|
|
93
79
|
function parseArgs(argv) {
|
|
94
80
|
const result = {};
|
|
@@ -109,10 +95,12 @@ function parseArgs(argv) {
|
|
|
109
95
|
return result;
|
|
110
96
|
}
|
|
111
97
|
const args = parseArgs(process.argv);
|
|
112
|
-
const CONFIG_PATH =
|
|
98
|
+
const CONFIG_PATH = (0, paths_1.expandHome)(args['config'] ??
|
|
113
99
|
process.env.GATEWAY_CONFIG ??
|
|
114
100
|
path.join(os.homedir(), '.claude-gateway', 'config.json'));
|
|
115
101
|
const PORT = parseInt((process.env.PORT ?? '10850'), 10);
|
|
102
|
+
// Pidfile lets the CLI detect a foreground gateway (see src/cli/manager.ts).
|
|
103
|
+
const PIDFILE_PATH = (0, manager_2.defaultPidfilePath)();
|
|
116
104
|
function printStartupTable(results) {
|
|
117
105
|
const COL_ID = Math.max(13, ...results.map((r) => r.id.length)) + 2;
|
|
118
106
|
const COL_STATUS = 12;
|
|
@@ -340,13 +328,37 @@ async function startAgent(agentConfig, gatewayConfig, ctx) {
|
|
|
340
328
|
.reviewModel))
|
|
341
329
|
: undefined,
|
|
342
330
|
// 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),
|
|
331
|
+
sharedPromote: (0, knowledge_1.makeSharedPromoter)(agentConfig.id, agentConfig.knowledge?.shared, gatewayConfig.gateway.knowledge?.shared, logger),
|
|
344
332
|
});
|
|
345
333
|
dreaming.startDreaming(); // unref'd nightly self-rescheduling timer
|
|
346
334
|
}
|
|
347
335
|
catch (err) {
|
|
348
336
|
logger.warn('Failed to wire dreaming (continuing without it)', { error: err.message });
|
|
349
337
|
}
|
|
338
|
+
// ── Weekly shared-KB reflection pass (issue #392 part C) ──
|
|
339
|
+
// KB-level, not per-agent: only the FIRST agent to resolve a given shared-
|
|
340
|
+
// vault root starts a manager for it, so N agents sharing one vault still run
|
|
341
|
+
// exactly one weekly reflection job, not N nightly ones.
|
|
342
|
+
try {
|
|
343
|
+
const sharedCfg = (0, knowledge_1.resolveSharedConfig)(agentConfig.knowledge?.shared, gatewayConfig.gateway.knowledge?.shared);
|
|
344
|
+
if (sharedCfg.enabled && sharedCfg.mode === 'auto') {
|
|
345
|
+
const vaultKey = (0, knowledge_1.sharedVaultDir)(sharedCfg);
|
|
346
|
+
if (!ctx.reflectionVaultsStarted.has(vaultKey)) {
|
|
347
|
+
ctx.reflectionVaultsStarted.add(vaultKey);
|
|
348
|
+
const reflectionCfg = (0, knowledge_1.resolveReflectionConfig)(agentConfig.knowledge?.reflection, gatewayConfig.gateway.knowledge?.reflection);
|
|
349
|
+
const reflection = new knowledge_1.SharedReflectionManager({
|
|
350
|
+
sharedCfg,
|
|
351
|
+
reflectionCfg,
|
|
352
|
+
logger,
|
|
353
|
+
spawnFn: (0, reviewer_1.makeClaudeSpawn)(reflectionCfg.reviewModel),
|
|
354
|
+
});
|
|
355
|
+
reflection.startReflecting(); // unref'd weekly self-rescheduling timer
|
|
356
|
+
}
|
|
357
|
+
}
|
|
358
|
+
}
|
|
359
|
+
catch (err) {
|
|
360
|
+
logger.warn('Failed to wire shared-KB reflection (continuing without it)', { error: err.message });
|
|
361
|
+
}
|
|
350
362
|
// Log startup status
|
|
351
363
|
console.log(JSON.stringify({ id: agentConfig.id, status: 'started' }));
|
|
352
364
|
logger.info('Agent started');
|
|
@@ -519,8 +531,15 @@ async function main() {
|
|
|
519
531
|
// Load agent .env files before config interpolation so ${TOKEN} vars resolve
|
|
520
532
|
const gatewayAgentsDir = path.join(path.dirname(CONFIG_PATH), 'agents');
|
|
521
533
|
loadAgentEnvFiles(gatewayAgentsDir);
|
|
522
|
-
// ──
|
|
534
|
+
// ── First run: create config.json with a fresh admin key if none exists ───
|
|
523
535
|
const templatePath = path.join(__dirname, '..', 'config.template.json');
|
|
536
|
+
const bootstrap = (0, bootstrap_1.ensureConfigExists)(CONFIG_PATH, templatePath);
|
|
537
|
+
if (bootstrap.created) {
|
|
538
|
+
// The key itself is never printed — see firstRunNotice().
|
|
539
|
+
for (const line of (0, bootstrap_1.firstRunNotice)(CONFIG_PATH, bootstrap.adminKey ?? ''))
|
|
540
|
+
console.log(line);
|
|
541
|
+
}
|
|
542
|
+
// ── Auto-migrate config (add missing fields from template) ────────────────
|
|
524
543
|
const templateJson = JSON.parse(fs.readFileSync(templatePath, 'utf-8'));
|
|
525
544
|
const templateVersion = templateJson.configVersion ?? '0.0.0';
|
|
526
545
|
try {
|
|
@@ -545,7 +564,7 @@ async function main() {
|
|
|
545
564
|
}
|
|
546
565
|
console.log(`[gateway] Loading config from ${CONFIG_PATH}`);
|
|
547
566
|
const config = (0, loader_1.loadConfig)(CONFIG_PATH);
|
|
548
|
-
config.gateway.logDir =
|
|
567
|
+
config.gateway.logDir = (0, paths_1.expandHome)(config.gateway.logDir);
|
|
549
568
|
// ── Context isolation check ──────────────────────────────────────────────
|
|
550
569
|
const guard = new context_isolation_1.ContextIsolationGuard();
|
|
551
570
|
guard.validate(config.agents);
|
|
@@ -555,9 +574,32 @@ async function main() {
|
|
|
555
574
|
const startupResults = [];
|
|
556
575
|
const sharedSkillsDir = path.join(os.homedir(), '.claude-gateway', 'shared-skills');
|
|
557
576
|
const personalSkillsDir = path.join(os.homedir(), '.claude', 'skills');
|
|
558
|
-
const globalLogger = (0, logger_1.createLogger)('gateway',
|
|
577
|
+
const globalLogger = (0, logger_1.createLogger)('gateway', (0, paths_1.expandHome)(config.gateway.logDir));
|
|
559
578
|
const mcpToolsDir = path.resolve(__dirname, '..', 'mcp', 'tools');
|
|
560
|
-
const logDir =
|
|
579
|
+
const logDir = (0, paths_1.expandHome)(config.gateway.logDir);
|
|
580
|
+
// Signals are wired HERE, not after startup finishes. Boot spawns receivers
|
|
581
|
+
// one agent at a time and can take a while (the orphan sweep alone waits out a
|
|
582
|
+
// grace period), and until a handler exists a SIGHUP during that window kills
|
|
583
|
+
// the gateway by default disposition and orphans every receiver started so
|
|
584
|
+
// far — the same failure this file fixes (issue #405).
|
|
585
|
+
//
|
|
586
|
+
// The full teardown closes over components that do not exist yet, so the
|
|
587
|
+
// handler delegates to it once available and otherwise does the subset that
|
|
588
|
+
// matters this early: stopping the runners, which are what own receivers.
|
|
589
|
+
let fullShutdown = null;
|
|
590
|
+
const bootShutdown = async (signal) => {
|
|
591
|
+
if (fullShutdown)
|
|
592
|
+
return fullShutdown(signal);
|
|
593
|
+
console.log(`[gateway] Received ${signal} during startup, shutting down...`);
|
|
594
|
+
for (const scheduler of schedulers)
|
|
595
|
+
scheduler.stop();
|
|
596
|
+
await Promise.allSettled([...agentRunners.values()].map((runner) => runner.stop()));
|
|
597
|
+
console.log('[gateway] Startup shutdown complete.');
|
|
598
|
+
};
|
|
599
|
+
registeredShutdown = (0, shutdown_signals_1.registerShutdownSignals)({
|
|
600
|
+
run: bootShutdown,
|
|
601
|
+
onBegin: () => { isShuttingDown = true; },
|
|
602
|
+
});
|
|
561
603
|
// Initial sync: copy shared and module skills to ~/.claude/skills/ so the Skill tool sees them
|
|
562
604
|
(0, sync_1.syncSharedSkills)(sharedSkillsDir, personalSkillsDir, globalLogger);
|
|
563
605
|
(0, sync_1.syncModuleSkills)(mcpToolsDir, personalSkillsDir, globalLogger);
|
|
@@ -583,7 +625,7 @@ async function main() {
|
|
|
583
625
|
const cronManager = new manager_1.CronManager({
|
|
584
626
|
storePath: path.join(path.dirname(CONFIG_PATH), 'crons.json'),
|
|
585
627
|
runsDir: path.join(path.dirname(CONFIG_PATH), 'cron-runs'),
|
|
586
|
-
}, agentRunners, agentConfigs, (0, logger_1.createLogger)('cron-manager',
|
|
628
|
+
}, agentRunners, agentConfigs, (0, logger_1.createLogger)('cron-manager', (0, paths_1.expandHome)(config.gateway.logDir)));
|
|
587
629
|
await cronManager.start();
|
|
588
630
|
const ctx = {
|
|
589
631
|
agentRunners,
|
|
@@ -594,10 +636,43 @@ async function main() {
|
|
|
594
636
|
sharedSkillsDir,
|
|
595
637
|
logDir,
|
|
596
638
|
cronManager,
|
|
639
|
+
reflectionVaultsStarted: new Set(),
|
|
597
640
|
};
|
|
641
|
+
// Reclaim receivers a previous gateway generation left behind before spawning
|
|
642
|
+
// this one's. An exit that bypasses shutdown() — SIGKILL, the OOM killer, or a
|
|
643
|
+
// SIGHUP on a pre-#405 build — reparents them to init, where they keep polling
|
|
644
|
+
// their channel forever. Signal handling alone cannot cover SIGKILL/OOM, so
|
|
645
|
+
// this sweep is the only path that recovers from them. See issue #405.
|
|
646
|
+
//
|
|
647
|
+
// Deliberately awaited before any agent starts: an orphan and a fresh receiver
|
|
648
|
+
// polling the same bot token at once would race for every update, so the old
|
|
649
|
+
// one must be gone before the new one exists.
|
|
650
|
+
try {
|
|
651
|
+
const sweep = await (0, orphan_receivers_1.sweepOrphanedReceivers)(mcpToolsDir);
|
|
652
|
+
if (sweep.reclaimed.length > 0) {
|
|
653
|
+
const forced = sweep.forced.length > 0 ? ` (${sweep.forced.length} needed SIGKILL)` : '';
|
|
654
|
+
console.log(`[gateway] Reclaimed ${sweep.reclaimed.length} orphaned receiver process${sweep.reclaimed.length === 1 ? '' : 'es'}${forced}`);
|
|
655
|
+
for (const orphan of sweep.reclaimed) {
|
|
656
|
+
globalLogger.info('Reclaimed orphaned receiver', { pid: orphan.pid, command: orphan.command });
|
|
657
|
+
}
|
|
658
|
+
}
|
|
659
|
+
// Never fold these into the reclaimed count: they are still alive and still
|
|
660
|
+
// polling their bot tokens, which is exactly what an operator needs to know.
|
|
661
|
+
if (sweep.failed.length > 0) {
|
|
662
|
+
console.warn(`[gateway] Could NOT reclaim ${sweep.failed.length} orphaned receiver process${sweep.failed.length === 1 ? '' : 'es'} — still running: ` +
|
|
663
|
+
sweep.failed.map((f) => `${f.pid} (${f.reason})`).join(', '));
|
|
664
|
+
globalLogger.warn('Orphaned receivers could not be reclaimed', { failed: sweep.failed });
|
|
665
|
+
}
|
|
666
|
+
}
|
|
667
|
+
catch (err) {
|
|
668
|
+
// A host whose process list cannot be read must still boot — but never
|
|
669
|
+
// silently: an unreadable `ps` means orphans are accumulating unseen.
|
|
670
|
+
console.warn(`[gateway] Failed to sweep orphaned receivers: ${err.message}`);
|
|
671
|
+
globalLogger.warn('Failed to sweep orphaned receivers', { error: err.message });
|
|
672
|
+
}
|
|
598
673
|
for (const agentConfig of config.agents) {
|
|
599
674
|
// Expand ~ in workspace path so all downstream code uses absolute paths
|
|
600
|
-
agentConfig.workspace =
|
|
675
|
+
agentConfig.workspace = (0, paths_1.expandHome)(agentConfig.workspace);
|
|
601
676
|
await startAgent(agentConfig, config, ctx);
|
|
602
677
|
}
|
|
603
678
|
// Print startup summary table
|
|
@@ -643,6 +718,17 @@ async function main() {
|
|
|
643
718
|
},
|
|
644
719
|
};
|
|
645
720
|
const appInstaller = new installer_1.AppInstaller(appsRegistry, registryClient, installerCallbacks, undefined, undefined, agentManager, undefined, config.gateway.appHousekeeping, config.gateway?.appBackup);
|
|
721
|
+
// Reclaim update scratch dirs a previous crash left beside an install path.
|
|
722
|
+
// Must run at boot, before any update can claim one of those names.
|
|
723
|
+
try {
|
|
724
|
+
const swept = await appInstaller.sweepStaleUpdateDirs();
|
|
725
|
+
if (swept.length > 0) {
|
|
726
|
+
console.log(`[gateway] Swept ${swept.length} stale app update director${swept.length === 1 ? 'y' : 'ies'}`);
|
|
727
|
+
}
|
|
728
|
+
}
|
|
729
|
+
catch (err) {
|
|
730
|
+
console.warn(`[gateway] Failed to sweep stale app update directories: ${err.message}`);
|
|
731
|
+
}
|
|
646
732
|
// Daily backup-cleanup scheduler (issue #310): prunes every app's backups by
|
|
647
733
|
// the retention-count + max-age union policy. Timer is unref'd, so it never
|
|
648
734
|
// keeps the process alive.
|
|
@@ -651,6 +737,19 @@ async function main() {
|
|
|
651
737
|
const router = new gateway_router_1.GatewayRouter(agentRunners, agentConfigs, undefined, config, cronManager, CONFIG_PATH, appsRegistry, appInstaller, registryClient);
|
|
652
738
|
await router.start(PORT);
|
|
653
739
|
console.log(`[gateway] Listening on port ${PORT}`);
|
|
740
|
+
// Write the pidfile so the CLI can detect a foreground gateway (and SIGTERM it
|
|
741
|
+
// for `gateway stop/restart`). The listening port goes on the second line:
|
|
742
|
+
// $PORT lives in the shell that launched the server, so a CLI run from
|
|
743
|
+
// anywhere else cannot otherwise learn where to reach it. The real bound port
|
|
744
|
+
// is used rather than the requested one, which is 0 when the OS picks.
|
|
745
|
+
// Best-effort — never fail boot over it.
|
|
746
|
+
try {
|
|
747
|
+
fs.mkdirSync(path.dirname(PIDFILE_PATH), { recursive: true });
|
|
748
|
+
fs.writeFileSync(PIDFILE_PATH, `${process.pid}\n${router.listeningPort() ?? PORT}\n`);
|
|
749
|
+
}
|
|
750
|
+
catch (e) {
|
|
751
|
+
globalLogger.warn?.('Could not write pidfile', { path: PIDFILE_PATH, error: e.message });
|
|
752
|
+
}
|
|
654
753
|
// Wire installer callbacks now that the router is available
|
|
655
754
|
installerCallbacks.registerRoutes = (appName, ports) => {
|
|
656
755
|
for (const port of ports) {
|
|
@@ -760,7 +859,7 @@ async function main() {
|
|
|
760
859
|
if (fs.existsSync(agentEnvFile)) {
|
|
761
860
|
loadAgentEnvFile(agentEnvFile);
|
|
762
861
|
}
|
|
763
|
-
newAgentConfig.workspace =
|
|
862
|
+
newAgentConfig.workspace = (0, paths_1.expandHome)(newAgentConfig.workspace);
|
|
764
863
|
await startAgent(newAgentConfig, configWatcher.getConfig(), ctx);
|
|
765
864
|
globalLogger.info('Agent hot-added successfully', { id: newAgentConfig.id });
|
|
766
865
|
});
|
|
@@ -780,7 +879,7 @@ async function main() {
|
|
|
780
879
|
return;
|
|
781
880
|
// Update runner's agentConfig so it has the new bot token
|
|
782
881
|
// Expand ~ so downstream path.join calls produce absolute paths
|
|
783
|
-
freshAgent.workspace =
|
|
882
|
+
freshAgent.workspace = (0, paths_1.expandHome)(freshAgent.workspace);
|
|
784
883
|
const agentRunner = runner;
|
|
785
884
|
agentRunner.updateAgentConfig(freshAgent);
|
|
786
885
|
if (channel === 'telegram') {
|
|
@@ -808,10 +907,7 @@ async function main() {
|
|
|
808
907
|
});
|
|
809
908
|
configWatcher.start();
|
|
810
909
|
// Graceful shutdown — idempotent: safe to call from multiple signal/error sources.
|
|
811
|
-
const
|
|
812
|
-
if (isShuttingDown)
|
|
813
|
-
return;
|
|
814
|
-
isShuttingDown = true;
|
|
910
|
+
const runShutdown = async (signal) => {
|
|
815
911
|
console.log(`[gateway] Received ${signal}, shutting down...`);
|
|
816
912
|
for (const scheduler of schedulers) {
|
|
817
913
|
scheduler.stop();
|
|
@@ -819,16 +915,38 @@ async function main() {
|
|
|
819
915
|
cronManager.stop();
|
|
820
916
|
configWatcher.stop();
|
|
821
917
|
socketServer.stopAll();
|
|
822
|
-
|
|
823
|
-
|
|
824
|
-
|
|
918
|
+
// Every teardown below must run even if an earlier one throws. Previously a
|
|
919
|
+
// rejection here propagated and the process hung with its children still
|
|
920
|
+
// parented — recoverable. Now that a failed shutdown exits the process, an
|
|
921
|
+
// unguarded throw would *guarantee* the remaining receivers reparent to
|
|
922
|
+
// init: precisely the bug this file is fixing (issue #405).
|
|
923
|
+
const settled = await Promise.allSettled([
|
|
924
|
+
router.stop(),
|
|
925
|
+
// Runners stop concurrently, not serially. Teardown is now awaited, and
|
|
926
|
+
// the Discord receiver always takes ~2s to exit (its receiver-server
|
|
927
|
+
// force-exits on an unconditional timer), so serial stops would multiply
|
|
928
|
+
// that by the agent count and risk a supervisor's stop timeout (docker
|
|
929
|
+
// stop's 10s default, TimeoutStopSec) SIGKILLing the gateway mid-teardown
|
|
930
|
+
// — re-orphaning the very receivers this protects.
|
|
931
|
+
...[...agentRunners.values()].map((runner) => runner.stop()),
|
|
932
|
+
]);
|
|
933
|
+
for (const result of settled) {
|
|
934
|
+
if (result.status === 'rejected') {
|
|
935
|
+
console.error('[gateway] Shutdown step failed:', result.reason);
|
|
936
|
+
}
|
|
937
|
+
}
|
|
938
|
+
// Remove the pidfile so the CLI does not treat a stale pid as a live gateway.
|
|
939
|
+
try {
|
|
940
|
+
fs.unlinkSync(PIDFILE_PATH);
|
|
941
|
+
}
|
|
942
|
+
catch {
|
|
943
|
+
/* already gone — fine */
|
|
825
944
|
}
|
|
826
945
|
console.log('[gateway] Shutdown complete.');
|
|
827
946
|
};
|
|
828
|
-
//
|
|
829
|
-
|
|
830
|
-
|
|
831
|
-
process.on('SIGINT', () => shutdown('SIGINT').then(() => process.exit(0)));
|
|
947
|
+
// Hand the fully-wired teardown to the handlers registered at the top of
|
|
948
|
+
// main(). From here a signal tears down everything; before it, the boot subset.
|
|
949
|
+
fullShutdown = runShutdown;
|
|
832
950
|
}
|
|
833
951
|
async function emergencyShutdown(label, detail) {
|
|
834
952
|
console.error(`[gateway] ${label}:`, detail);
|
|
@@ -856,7 +974,39 @@ process.on('uncaughtException', (err) => {
|
|
|
856
974
|
return;
|
|
857
975
|
emergencyShutdown('uncaughtException', err).finally(() => process.exit(1));
|
|
858
976
|
});
|
|
859
|
-
|
|
860
|
-
|
|
977
|
+
// Starting the gateway is intentionally explicit: only `gateway start` enters
|
|
978
|
+
// the server boot path. Every other invocation (including no args, --help, and
|
|
979
|
+
// typos) runs through the CLI so it cannot accidentally create a live server.
|
|
980
|
+
// The one exception is a supervised no-command launch from a pre-1.8 unit file,
|
|
981
|
+
// which still boots (with a warning) so existing installs don't restart-loop.
|
|
982
|
+
// The CLI runner remains lazy-loaded and is never imported on the server path.
|
|
983
|
+
const invocation = (0, command_names_1.classifyInvocation)(process.argv.slice(2), process.env, {
|
|
984
|
+
hasTty: process.stdin.isTTY === true,
|
|
861
985
|
});
|
|
986
|
+
if (invocation === 'legacy-boot') {
|
|
987
|
+
process.stderr.write('DEPRECATED: starting the gateway with no command. Update this service to run ' +
|
|
988
|
+
'`claude-gateway gateway start` (or reinstall with `claude-gateway service install`); ' +
|
|
989
|
+
'a future release will print help and exit instead of starting.\n');
|
|
990
|
+
}
|
|
991
|
+
if (invocation === 'boot' || invocation === 'legacy-boot') {
|
|
992
|
+
// Before anything can spawn a child: the supervisor markers we were launched
|
|
993
|
+
// with are inherited, and a descendant that still sees them would classify a
|
|
994
|
+
// bare invocation as a service launch and boot a second server.
|
|
995
|
+
(0, command_names_1.claimSupervisorEnv)(process.env);
|
|
996
|
+
main().catch((err) => {
|
|
997
|
+
emergencyShutdown('Fatal error in main()', err).finally(() => process.exit(1));
|
|
998
|
+
});
|
|
999
|
+
}
|
|
1000
|
+
else {
|
|
1001
|
+
Promise.resolve().then(() => __importStar(require('./cli'))).then(({ runCli }) => runCli(process.argv.slice(2)))
|
|
1002
|
+
.then(async (code) => {
|
|
1003
|
+
const { exitAfterFlush } = await Promise.resolve().then(() => __importStar(require('./cli/output')));
|
|
1004
|
+
await exitAfterFlush(code);
|
|
1005
|
+
})
|
|
1006
|
+
.catch(async (err) => {
|
|
1007
|
+
process.stderr.write(`Error: ${err?.message ?? err}\n`);
|
|
1008
|
+
const { exitAfterFlush } = await Promise.resolve().then(() => __importStar(require('./cli/output')));
|
|
1009
|
+
await exitAfterFlush(1);
|
|
1010
|
+
});
|
|
1011
|
+
}
|
|
862
1012
|
//# sourceMappingURL=index.js.map
|
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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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"load-dotenv.d.ts","sourceRoot":"","sources":["../src/load-dotenv.ts"],"names":[],"mappings":"AAeA,wBAAgB,iBAAiB,IAAI,IAAI,CAYxC"}
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
+
var ownKeys = function(o) {
|
|
20
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
+
var ar = [];
|
|
22
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
+
return ar;
|
|
24
|
+
};
|
|
25
|
+
return ownKeys(o);
|
|
26
|
+
};
|
|
27
|
+
return function (mod) {
|
|
28
|
+
if (mod && mod.__esModule) return mod;
|
|
29
|
+
var result = {};
|
|
30
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
+
__setModuleDefault(result, mod);
|
|
32
|
+
return result;
|
|
33
|
+
};
|
|
34
|
+
})();
|
|
35
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
36
|
+
exports.loadGatewayDotenv = loadGatewayDotenv;
|
|
37
|
+
/**
|
|
38
|
+
* Load `~/.claude-gateway/.env` into `process.env`.
|
|
39
|
+
*
|
|
40
|
+
* Both entry points need this before anything else runs: the server reads these
|
|
41
|
+
* variables while booting, and the CLI resolves the gateway's address from the
|
|
42
|
+
* same `$GATEWAY_BIND` the server booted with. Existing variables win, so a
|
|
43
|
+
* value exported in the shell still overrides the file.
|
|
44
|
+
*
|
|
45
|
+
* Kept dependency-free and side-effect-only-on-call so the CLI path can run it
|
|
46
|
+
* without pulling in anything else.
|
|
47
|
+
*/
|
|
48
|
+
const fs = __importStar(require("fs"));
|
|
49
|
+
const os = __importStar(require("os"));
|
|
50
|
+
const path = __importStar(require("path"));
|
|
51
|
+
function loadGatewayDotenv() {
|
|
52
|
+
const envFile = path.join(os.homedir(), '.claude-gateway', '.env');
|
|
53
|
+
if (!fs.existsSync(envFile))
|
|
54
|
+
return;
|
|
55
|
+
for (const line of fs.readFileSync(envFile, 'utf8').split('\n')) {
|
|
56
|
+
const trimmed = line.trim();
|
|
57
|
+
if (!trimmed || trimmed.startsWith('#'))
|
|
58
|
+
continue;
|
|
59
|
+
const eq = trimmed.indexOf('=');
|
|
60
|
+
if (eq === -1)
|
|
61
|
+
continue;
|
|
62
|
+
const key = trimmed.slice(0, eq).trim();
|
|
63
|
+
const val = trimmed.slice(eq + 1).trim().replace(/^["']|["']$/g, '');
|
|
64
|
+
if (key && !(key in process.env))
|
|
65
|
+
process.env[key] = val;
|
|
66
|
+
}
|
|
67
|
+
}
|
|
68
|
+
//# sourceMappingURL=load-dotenv.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"load-dotenv.js","sourceRoot":"","sources":["../src/load-dotenv.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAeA,8CAYC;AA3BD;;;;;;;;;;GAUG;AACH,uCAAyB;AACzB,uCAAyB;AACzB,2CAA6B;AAE7B,SAAgB,iBAAiB;IAC/B,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,EAAE,iBAAiB,EAAE,MAAM,CAAC,CAAC;IACnE,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC;QAAE,OAAO;IACpC,KAAK,MAAM,IAAI,IAAI,EAAE,CAAC,YAAY,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC;QAChE,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC;QAC5B,IAAI,CAAC,OAAO,IAAI,OAAO,CAAC,UAAU,CAAC,GAAG,CAAC;YAAE,SAAS;QAClD,MAAM,EAAE,GAAG,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;QAChC,IAAI,EAAE,KAAK,CAAC,CAAC;YAAE,SAAS;QACxB,MAAM,GAAG,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;QACxC,MAAM,GAAG,GAAG,OAAO,CAAC,KAAK,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,OAAO,CAAC,cAAc,EAAE,EAAE,CAAC,CAAC;QACrE,IAAI,GAAG,IAAI,CAAC,CAAC,GAAG,IAAI,OAAO,CAAC,GAAG,CAAC;YAAE,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,GAAG,CAAC;IAC3D,CAAC;AACH,CAAC"}
|