@chozzz/vargos 3.1.4 → 3.2.1
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/CONTRIBUTING.md +2 -3
- package/README.md +25 -34
- package/dist/.templates/agent/skills/skill-creator/SKILL.md +204 -32
- package/dist/.templates/workspace/AGENTS.md +32 -0
- package/dist/boot.d.ts +5 -0
- package/dist/boot.d.ts.map +1 -1
- package/dist/boot.js +62 -87
- package/dist/boot.js.map +1 -1
- package/dist/cli/channels.d.ts +11 -17
- package/dist/cli/channels.d.ts.map +1 -1
- package/dist/cli/channels.js +25 -76
- package/dist/cli/channels.js.map +1 -1
- package/dist/cli/chat.d.ts +6 -0
- package/dist/cli/chat.d.ts.map +1 -0
- package/dist/cli/chat.js +49 -0
- package/dist/cli/chat.js.map +1 -0
- package/dist/cli/onboard.d.ts.map +1 -1
- package/dist/cli/onboard.js +2 -8
- package/dist/cli/onboard.js.map +1 -1
- package/dist/cli.d.ts +9 -7
- package/dist/cli.d.ts.map +1 -1
- package/dist/cli.js +206 -264
- package/dist/cli.js.map +1 -1
- package/dist/core/bus.d.ts +32 -0
- package/dist/core/bus.d.ts.map +1 -0
- package/dist/core/bus.js +133 -0
- package/dist/core/bus.js.map +1 -0
- package/dist/core/cli.d.ts +38 -0
- package/dist/core/cli.d.ts.map +1 -0
- package/dist/core/cli.js +199 -0
- package/dist/core/cli.js.map +1 -0
- package/dist/core/errors.d.ts +21 -0
- package/dist/core/errors.d.ts.map +1 -0
- package/dist/core/errors.js +30 -0
- package/dist/core/errors.js.map +1 -0
- package/dist/core/loader.d.ts +31 -0
- package/dist/core/loader.d.ts.map +1 -0
- package/dist/core/loader.js +73 -0
- package/dist/core/loader.js.map +1 -0
- package/dist/core/local.d.ts +12 -0
- package/dist/core/local.d.ts.map +1 -0
- package/dist/core/local.js +23 -0
- package/dist/core/local.js.map +1 -0
- package/dist/core/rpc-server.d.ts +11 -0
- package/dist/core/rpc-server.d.ts.map +1 -0
- package/dist/core/rpc-server.js +69 -0
- package/dist/core/rpc-server.js.map +1 -0
- package/dist/core/services.d.ts +8 -0
- package/dist/core/services.d.ts.map +1 -0
- package/dist/core/services.js +33 -0
- package/dist/core/services.js.map +1 -0
- package/dist/core/types.d.ts +63 -0
- package/dist/core/types.d.ts.map +1 -0
- package/dist/core/types.js +2 -0
- package/dist/core/types.js.map +1 -0
- package/dist/edge/mcp/index.d.ts +11 -11
- package/dist/edge/mcp/index.d.ts.map +1 -1
- package/dist/edge/mcp/index.js +24 -28
- package/dist/edge/mcp/index.js.map +1 -1
- package/dist/edge/webhooks/index.d.ts +8 -14
- package/dist/edge/webhooks/index.d.ts.map +1 -1
- package/dist/edge/webhooks/index.js +140 -194
- package/dist/edge/webhooks/index.js.map +1 -1
- package/dist/lib/logger.d.ts +2 -3
- package/dist/lib/logger.d.ts.map +1 -1
- package/dist/lib/logger.js +1 -1
- package/dist/lib/logger.js.map +1 -1
- package/dist/lib/paginate.d.ts +5 -1
- package/dist/lib/paginate.d.ts.map +1 -1
- package/dist/lib/retry.js +1 -1
- package/dist/lib/retry.js.map +1 -1
- package/dist/lib/util.d.ts +16 -0
- package/dist/lib/util.d.ts.map +1 -0
- package/dist/lib/util.js +63 -0
- package/dist/lib/util.js.map +1 -0
- package/dist/scripts/verify-core.d.ts +8 -0
- package/dist/scripts/verify-core.d.ts.map +1 -0
- package/dist/scripts/verify-core.js +191 -0
- package/dist/scripts/verify-core.js.map +1 -0
- package/dist/services/agent/directives.d.ts +2 -0
- package/dist/services/agent/directives.d.ts.map +1 -1
- package/dist/services/agent/directives.js +16 -1
- package/dist/services/agent/directives.js.map +1 -1
- package/dist/services/agent/index.d.ts +34 -21
- package/dist/services/agent/index.d.ts.map +1 -1
- package/dist/services/agent/index.js +470 -468
- package/dist/services/agent/index.js.map +1 -1
- package/dist/services/agent/tools.d.ts +3 -3
- package/dist/services/agent/tools.d.ts.map +1 -1
- package/dist/services/agent/tools.js +11 -19
- package/dist/services/agent/tools.js.map +1 -1
- package/dist/services/agent/types.d.ts +1 -1
- package/dist/services/agent/types.d.ts.map +1 -1
- package/dist/services/{channels → channel}/base-adapter.d.ts +5 -6
- package/dist/services/channel/base-adapter.d.ts.map +1 -0
- package/dist/services/channel/base-adapter.js.map +1 -0
- package/dist/services/channel/debounce.d.ts.map +1 -0
- package/dist/services/channel/debounce.js.map +1 -0
- package/dist/services/channel/dedupe.d.ts.map +1 -0
- package/dist/services/channel/dedupe.js.map +1 -0
- package/dist/services/channel/delivery.d.ts.map +1 -0
- package/dist/services/{channels → channel}/delivery.js +1 -1
- package/dist/services/channel/delivery.js.map +1 -0
- package/dist/services/{channels → channel}/index.d.ts +14 -17
- package/dist/services/channel/index.d.ts.map +1 -0
- package/dist/services/channel/index.js +354 -0
- package/dist/services/channel/index.js.map +1 -0
- package/dist/services/channel/link-expand.d.ts.map +1 -0
- package/dist/services/channel/link-expand.js.map +1 -0
- package/dist/services/channel/media-paths.d.ts.map +1 -0
- package/dist/services/channel/media-paths.js.map +1 -0
- package/dist/services/{channels → channel}/pipeline.d.ts +1 -1
- package/dist/services/channel/pipeline.d.ts.map +1 -0
- package/dist/services/channel/pipeline.js.map +1 -0
- package/dist/services/channel/provider-loader.d.ts.map +1 -0
- package/dist/services/channel/provider-loader.js.map +1 -0
- package/dist/services/channel/providers/telegram/adapter.d.ts.map +1 -0
- package/dist/services/{channels → channel}/providers/telegram/adapter.js +1 -1
- package/dist/services/channel/providers/telegram/adapter.js.map +1 -0
- package/dist/services/channel/providers/telegram/index.d.ts.map +1 -0
- package/dist/services/channel/providers/telegram/index.js.map +1 -0
- package/dist/services/channel/providers/telegram/normalizer.d.ts.map +1 -0
- package/dist/services/channel/providers/telegram/normalizer.js.map +1 -0
- package/dist/services/channel/providers/telegram/types.d.ts.map +1 -0
- package/dist/services/channel/providers/telegram/types.js.map +1 -0
- package/dist/services/channel/providers/whatsapp/adapter.d.ts.map +1 -0
- package/dist/services/channel/providers/whatsapp/adapter.js.map +1 -0
- package/dist/services/channel/providers/whatsapp/index.d.ts.map +1 -0
- package/dist/services/channel/providers/whatsapp/index.js.map +1 -0
- package/dist/services/channel/providers/whatsapp/normalizer.d.ts.map +1 -0
- package/dist/services/channel/providers/whatsapp/normalizer.js.map +1 -0
- package/dist/services/channel/providers/whatsapp/session.d.ts.map +1 -0
- package/dist/services/channel/providers/whatsapp/session.js.map +1 -0
- package/dist/services/channel/providers/whatsapp/types.d.ts.map +1 -0
- package/dist/services/channel/providers/whatsapp/types.js.map +1 -0
- package/dist/services/channel/reconnect.d.ts.map +1 -0
- package/dist/services/channel/reconnect.js.map +1 -0
- package/dist/services/channel/status-reactions.d.ts.map +1 -0
- package/dist/services/channel/status-reactions.js.map +1 -0
- package/dist/services/{channels → channel}/types.d.ts +1 -1
- package/dist/services/channel/types.d.ts.map +1 -0
- package/dist/services/channel/types.js.map +1 -0
- package/dist/services/channel/typing-state.d.ts.map +1 -0
- package/dist/services/channel/typing-state.js.map +1 -0
- package/dist/services/config/index.d.ts +45 -46
- package/dist/services/config/index.d.ts.map +1 -1
- package/dist/services/config/index.js +89 -182
- package/dist/services/config/index.js.map +1 -1
- package/dist/services/config/schemas/cron.d.ts +3 -3
- package/dist/services/config/schemas/providers.d.ts +12 -12
- package/dist/services/config/schemas/webhooks.d.ts +2 -2
- package/dist/services/cron/index.d.ts +16 -19
- package/dist/services/cron/index.d.ts.map +1 -1
- package/dist/services/cron/index.js +340 -396
- package/dist/services/cron/index.js.map +1 -1
- package/dist/services/log/index.d.ts +9 -8
- package/dist/services/log/index.d.ts.map +1 -1
- package/dist/services/log/index.js +71 -123
- package/dist/services/log/index.js.map +1 -1
- package/dist/services/{mcp-client → mcp}/index.d.ts +9 -11
- package/dist/services/mcp/index.d.ts.map +1 -0
- package/dist/services/{mcp-client → mcp}/index.js +19 -35
- package/dist/services/mcp/index.js.map +1 -0
- package/dist/services/media/index.d.ts +9 -13
- package/dist/services/media/index.d.ts.map +1 -1
- package/dist/services/media/index.js +53 -105
- package/dist/services/media/index.js.map +1 -1
- package/dist/services/memory/index.d.ts +12 -18
- package/dist/services/memory/index.d.ts.map +1 -1
- package/dist/services/memory/index.js +70 -132
- package/dist/services/memory/index.js.map +1 -1
- package/dist/services/web/index.d.ts +7 -7
- package/dist/services/web/index.d.ts.map +1 -1
- package/dist/services/web/index.js +41 -86
- package/dist/services/web/index.js.map +1 -1
- package/package.json +3 -2
- package/dist/gateway/bus.d.ts +0 -50
- package/dist/gateway/bus.d.ts.map +0 -1
- package/dist/gateway/bus.js +0 -2
- package/dist/gateway/bus.js.map +0 -1
- package/dist/gateway/decorators.d.ts +0 -40
- package/dist/gateway/decorators.d.ts.map +0 -1
- package/dist/gateway/decorators.js +0 -43
- package/dist/gateway/decorators.js.map +0 -1
- package/dist/gateway/emitter.d.ts +0 -52
- package/dist/gateway/emitter.d.ts.map +0 -1
- package/dist/gateway/emitter.js +0 -304
- package/dist/gateway/emitter.js.map +0 -1
- package/dist/gateway/events.d.ts +0 -314
- package/dist/gateway/events.d.ts.map +0 -1
- package/dist/gateway/events.js +0 -7
- package/dist/gateway/events.js.map +0 -1
- package/dist/gateway/tcp-server.d.ts +0 -7
- package/dist/gateway/tcp-server.d.ts.map +0 -1
- package/dist/gateway/tcp-server.js +0 -118
- package/dist/gateway/tcp-server.js.map +0 -1
- package/dist/lib/id.d.ts +0 -3
- package/dist/lib/id.d.ts.map +0 -1
- package/dist/lib/id.js +0 -5
- package/dist/lib/id.js.map +0 -1
- package/dist/lib/sleep.d.ts +0 -6
- package/dist/lib/sleep.d.ts.map +0 -1
- package/dist/lib/sleep.js +0 -22
- package/dist/lib/sleep.js.map +0 -1
- package/dist/lib/strip-markdown.d.ts +0 -7
- package/dist/lib/strip-markdown.d.ts.map +0 -1
- package/dist/lib/strip-markdown.js +0 -32
- package/dist/lib/strip-markdown.js.map +0 -1
- package/dist/lib/timeout.d.ts +0 -6
- package/dist/lib/timeout.d.ts.map +0 -1
- package/dist/lib/timeout.js +0 -11
- package/dist/lib/timeout.js.map +0 -1
- package/dist/lib/truncate.d.ts +0 -11
- package/dist/lib/truncate.d.ts.map +0 -1
- package/dist/lib/truncate.js +0 -17
- package/dist/lib/truncate.js.map +0 -1
- package/dist/services/channels/base-adapter.d.ts.map +0 -1
- package/dist/services/channels/base-adapter.js.map +0 -1
- package/dist/services/channels/debounce.d.ts.map +0 -1
- package/dist/services/channels/debounce.js.map +0 -1
- package/dist/services/channels/dedupe.d.ts.map +0 -1
- package/dist/services/channels/dedupe.js.map +0 -1
- package/dist/services/channels/delivery.d.ts.map +0 -1
- package/dist/services/channels/delivery.js.map +0 -1
- package/dist/services/channels/index.d.ts.map +0 -1
- package/dist/services/channels/index.js +0 -413
- package/dist/services/channels/index.js.map +0 -1
- package/dist/services/channels/link-expand.d.ts.map +0 -1
- package/dist/services/channels/link-expand.js.map +0 -1
- package/dist/services/channels/media-paths.d.ts.map +0 -1
- package/dist/services/channels/media-paths.js.map +0 -1
- package/dist/services/channels/pipeline.d.ts.map +0 -1
- package/dist/services/channels/pipeline.js.map +0 -1
- package/dist/services/channels/provider-loader.d.ts.map +0 -1
- package/dist/services/channels/provider-loader.js.map +0 -1
- package/dist/services/channels/providers/telegram/adapter.d.ts.map +0 -1
- package/dist/services/channels/providers/telegram/adapter.js.map +0 -1
- package/dist/services/channels/providers/telegram/index.d.ts.map +0 -1
- package/dist/services/channels/providers/telegram/index.js.map +0 -1
- package/dist/services/channels/providers/telegram/normalizer.d.ts.map +0 -1
- package/dist/services/channels/providers/telegram/normalizer.js.map +0 -1
- package/dist/services/channels/providers/telegram/types.d.ts.map +0 -1
- package/dist/services/channels/providers/telegram/types.js.map +0 -1
- package/dist/services/channels/providers/whatsapp/adapter.d.ts.map +0 -1
- package/dist/services/channels/providers/whatsapp/adapter.js.map +0 -1
- package/dist/services/channels/providers/whatsapp/index.d.ts.map +0 -1
- package/dist/services/channels/providers/whatsapp/index.js.map +0 -1
- package/dist/services/channels/providers/whatsapp/normalizer.d.ts.map +0 -1
- package/dist/services/channels/providers/whatsapp/normalizer.js.map +0 -1
- package/dist/services/channels/providers/whatsapp/session.d.ts.map +0 -1
- package/dist/services/channels/providers/whatsapp/session.js.map +0 -1
- package/dist/services/channels/providers/whatsapp/types.d.ts.map +0 -1
- package/dist/services/channels/providers/whatsapp/types.js.map +0 -1
- package/dist/services/channels/reconnect.d.ts.map +0 -1
- package/dist/services/channels/reconnect.js.map +0 -1
- package/dist/services/channels/status-reactions.d.ts.map +0 -1
- package/dist/services/channels/status-reactions.js.map +0 -1
- package/dist/services/channels/types.d.ts.map +0 -1
- package/dist/services/channels/types.js.map +0 -1
- package/dist/services/channels/typing-state.d.ts.map +0 -1
- package/dist/services/channels/typing-state.js.map +0 -1
- package/dist/services/mcp-client/index.d.ts.map +0 -1
- package/dist/services/mcp-client/index.js.map +0 -1
- /package/dist/services/{channels → channel}/base-adapter.js +0 -0
- /package/dist/services/{channels → channel}/debounce.d.ts +0 -0
- /package/dist/services/{channels → channel}/debounce.js +0 -0
- /package/dist/services/{channels → channel}/dedupe.d.ts +0 -0
- /package/dist/services/{channels → channel}/dedupe.js +0 -0
- /package/dist/services/{channels → channel}/delivery.d.ts +0 -0
- /package/dist/services/{channels → channel}/link-expand.d.ts +0 -0
- /package/dist/services/{channels → channel}/link-expand.js +0 -0
- /package/dist/services/{channels → channel}/media-paths.d.ts +0 -0
- /package/dist/services/{channels → channel}/media-paths.js +0 -0
- /package/dist/services/{channels → channel}/pipeline.js +0 -0
- /package/dist/services/{channels → channel}/provider-loader.d.ts +0 -0
- /package/dist/services/{channels → channel}/provider-loader.js +0 -0
- /package/dist/services/{channels → channel}/providers/telegram/adapter.d.ts +0 -0
- /package/dist/services/{channels → channel}/providers/telegram/index.d.ts +0 -0
- /package/dist/services/{channels → channel}/providers/telegram/index.js +0 -0
- /package/dist/services/{channels → channel}/providers/telegram/normalizer.d.ts +0 -0
- /package/dist/services/{channels → channel}/providers/telegram/normalizer.js +0 -0
- /package/dist/services/{channels → channel}/providers/telegram/types.d.ts +0 -0
- /package/dist/services/{channels → channel}/providers/telegram/types.js +0 -0
- /package/dist/services/{channels → channel}/providers/whatsapp/adapter.d.ts +0 -0
- /package/dist/services/{channels → channel}/providers/whatsapp/adapter.js +0 -0
- /package/dist/services/{channels → channel}/providers/whatsapp/index.d.ts +0 -0
- /package/dist/services/{channels → channel}/providers/whatsapp/index.js +0 -0
- /package/dist/services/{channels → channel}/providers/whatsapp/normalizer.d.ts +0 -0
- /package/dist/services/{channels → channel}/providers/whatsapp/normalizer.js +0 -0
- /package/dist/services/{channels → channel}/providers/whatsapp/session.d.ts +0 -0
- /package/dist/services/{channels → channel}/providers/whatsapp/session.js +0 -0
- /package/dist/services/{channels → channel}/providers/whatsapp/types.d.ts +0 -0
- /package/dist/services/{channels → channel}/providers/whatsapp/types.js +0 -0
- /package/dist/services/{channels → channel}/reconnect.d.ts +0 -0
- /package/dist/services/{channels → channel}/reconnect.js +0 -0
- /package/dist/services/{channels → channel}/status-reactions.d.ts +0 -0
- /package/dist/services/{channels → channel}/status-reactions.js +0 -0
- /package/dist/services/{channels → channel}/types.js +0 -0
- /package/dist/services/{channels → channel}/typing-state.d.ts +0 -0
- /package/dist/services/{channels → channel}/typing-state.js +0 -0
|
@@ -1,44 +1,11 @@
|
|
|
1
|
-
var __runInitializers = (this && this.__runInitializers) || function (thisArg, initializers, value) {
|
|
2
|
-
var useValue = arguments.length > 2;
|
|
3
|
-
for (var i = 0; i < initializers.length; i++) {
|
|
4
|
-
value = useValue ? initializers[i].call(thisArg, value) : initializers[i].call(thisArg);
|
|
5
|
-
}
|
|
6
|
-
return useValue ? value : void 0;
|
|
7
|
-
};
|
|
8
|
-
var __esDecorate = (this && this.__esDecorate) || function (ctor, descriptorIn, decorators, contextIn, initializers, extraInitializers) {
|
|
9
|
-
function accept(f) { if (f !== void 0 && typeof f !== "function") throw new TypeError("Function expected"); return f; }
|
|
10
|
-
var kind = contextIn.kind, key = kind === "getter" ? "get" : kind === "setter" ? "set" : "value";
|
|
11
|
-
var target = !descriptorIn && ctor ? contextIn["static"] ? ctor : ctor.prototype : null;
|
|
12
|
-
var descriptor = descriptorIn || (target ? Object.getOwnPropertyDescriptor(target, contextIn.name) : {});
|
|
13
|
-
var _, done = false;
|
|
14
|
-
for (var i = decorators.length - 1; i >= 0; i--) {
|
|
15
|
-
var context = {};
|
|
16
|
-
for (var p in contextIn) context[p] = p === "access" ? {} : contextIn[p];
|
|
17
|
-
for (var p in contextIn.access) context.access[p] = contextIn.access[p];
|
|
18
|
-
context.addInitializer = function (f) { if (done) throw new TypeError("Cannot add initializers after decoration has completed"); extraInitializers.push(accept(f || null)); };
|
|
19
|
-
var result = (0, decorators[i])(kind === "accessor" ? { get: descriptor.get, set: descriptor.set } : descriptor[key], context);
|
|
20
|
-
if (kind === "accessor") {
|
|
21
|
-
if (result === void 0) continue;
|
|
22
|
-
if (result === null || typeof result !== "object") throw new TypeError("Object expected");
|
|
23
|
-
if (_ = accept(result.get)) descriptor.get = _;
|
|
24
|
-
if (_ = accept(result.set)) descriptor.set = _;
|
|
25
|
-
if (_ = accept(result.init)) initializers.unshift(_);
|
|
26
|
-
}
|
|
27
|
-
else if (_ = accept(result)) {
|
|
28
|
-
if (kind === "field") initializers.unshift(_);
|
|
29
|
-
else descriptor[key] = _;
|
|
30
|
-
}
|
|
31
|
-
}
|
|
32
|
-
if (target) Object.defineProperty(target, contextIn.name, descriptor);
|
|
33
|
-
done = true;
|
|
34
|
-
};
|
|
35
1
|
import { z } from 'zod';
|
|
36
|
-
import { readFileSync
|
|
2
|
+
import { readFileSync } from 'node:fs';
|
|
37
3
|
import path from 'node:path';
|
|
38
|
-
import {
|
|
4
|
+
import { formatZodIssues } from '../../core/errors.js';
|
|
39
5
|
import { AgentConfigSchema, AuthSchema, ChannelEntrySchema, CronTaskSchema, WebhookEntrySchema, HeartbeatConfigSchema, LinkExpandConfigSchema, ProvidersSchema, McpClientConfigSchema, McpServerConfigSchema, StorageConfigSchema, } from './schemas/index.js';
|
|
40
6
|
import { getDataPaths } from '../../lib/paths.js';
|
|
41
7
|
import { createLogger } from '../../lib/logger.js';
|
|
8
|
+
import { readJson, writeJson } from '../../lib/util.js';
|
|
42
9
|
// ─── App config ───────────────────────────────────────────────────────────────
|
|
43
10
|
export const AppConfigSchema = z
|
|
44
11
|
.object({
|
|
@@ -73,159 +40,99 @@ export const AppConfigSchema = z
|
|
|
73
40
|
.passthrough();
|
|
74
41
|
// ─── Load / save ──────────────────────────────────────────────────────────────
|
|
75
42
|
export function saveConfig(path, config) {
|
|
76
|
-
|
|
43
|
+
writeJson(path, config);
|
|
77
44
|
}
|
|
78
45
|
// ─── ConfigService ───────────────────────────────────────────────────────────
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
46
|
+
export class ConfigService {
|
|
47
|
+
name = 'config';
|
|
48
|
+
log = createLogger('config');
|
|
49
|
+
configFile;
|
|
50
|
+
agentDir;
|
|
51
|
+
agentModelsFile;
|
|
52
|
+
agentSettingsFile;
|
|
53
|
+
agentAuthFile;
|
|
54
|
+
constructor() {
|
|
55
|
+
const { configFile, dataDir } = getDataPaths();
|
|
56
|
+
this.configFile = configFile;
|
|
57
|
+
this.agentDir = path.join(dataDir, 'agent');
|
|
58
|
+
this.agentModelsFile = path.join(this.agentDir, 'models.json');
|
|
59
|
+
this.agentSettingsFile = path.join(this.agentDir, 'settings.json');
|
|
60
|
+
this.agentAuthFile = path.join(this.agentDir, 'auth.json');
|
|
61
|
+
}
|
|
62
|
+
init(bus) {
|
|
63
|
+
bus.register('config.get', {
|
|
64
|
+
description: 'Get the current application configuration (merged from config.json, agent/models.json, agent/settings.json).',
|
|
65
|
+
schema: z.object({}),
|
|
66
|
+
}, () => this.get());
|
|
67
|
+
bus.register('config.set', {
|
|
68
|
+
description: 'Update the application config. Routes to the correct file (config.json, agent/models.json, or agent/settings.json).',
|
|
69
|
+
schema: z.object({}).passthrough(),
|
|
70
|
+
}, (p) => this.set(p));
|
|
71
|
+
}
|
|
72
|
+
dispose() { }
|
|
73
|
+
loadConfig() {
|
|
74
|
+
const raw = JSON.parse(readFileSync(this.configFile, 'utf8'));
|
|
75
|
+
// Agent settings, providers, and auth live in separate files (settings take precedence).
|
|
76
|
+
const settings = readJson(this.agentSettingsFile);
|
|
77
|
+
if (settings && typeof settings === 'object') {
|
|
78
|
+
raw.agent = { ...raw.agent, ...settings };
|
|
97
79
|
}
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
this.configFile = configFile;
|
|
109
|
-
this.agentDir = path.join(dataDir, 'agent');
|
|
110
|
-
this.agentModelsFile = path.join(this.agentDir, 'models.json');
|
|
111
|
-
this.agentSettingsFile = path.join(this.agentDir, 'settings.json');
|
|
112
|
-
this.agentAuthFile = path.join(this.agentDir, 'auth.json');
|
|
80
|
+
const models = readJson(this.agentModelsFile);
|
|
81
|
+
if (models?.providers)
|
|
82
|
+
raw.providers = models.providers;
|
|
83
|
+
const auth = readJson(this.agentAuthFile);
|
|
84
|
+
if (auth !== undefined)
|
|
85
|
+
raw.auth = auth;
|
|
86
|
+
// Validate merged config
|
|
87
|
+
const result = AppConfigSchema.safeParse(raw);
|
|
88
|
+
if (!result.success) {
|
|
89
|
+
throw new Error(`Invalid config at ${this.configFile}: ${formatZodIssues(result.error)}`);
|
|
113
90
|
}
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
catch {
|
|
136
|
-
// File may not exist yet, that's okay
|
|
137
|
-
}
|
|
138
|
-
// Load auth.json
|
|
139
|
-
try {
|
|
140
|
-
const authContent = readFileSync(this.agentAuthFile, 'utf8');
|
|
141
|
-
const auth = JSON.parse(authContent ?? '{}');
|
|
142
|
-
raw.auth = auth;
|
|
143
|
-
}
|
|
144
|
-
catch {
|
|
145
|
-
// File may not exist yet, that's okay
|
|
146
|
-
}
|
|
147
|
-
// Validate merged config
|
|
148
|
-
const result = AppConfigSchema.safeParse(raw);
|
|
149
|
-
if (!result.success) {
|
|
150
|
-
const issues = result.error.issues
|
|
151
|
-
.map(i => ` ${i.path.join('.')}: ${i.message}`)
|
|
152
|
-
.join('\n');
|
|
153
|
-
throw new Error(`Invalid config at ${this.configFile}:\n${issues}`);
|
|
154
|
-
}
|
|
155
|
-
return result.data;
|
|
91
|
+
return result.data;
|
|
92
|
+
}
|
|
93
|
+
async get() {
|
|
94
|
+
return this.loadConfig();
|
|
95
|
+
}
|
|
96
|
+
async set(params) {
|
|
97
|
+
const parsed = AppConfigSchema.parse(params);
|
|
98
|
+
// Split config into components by ownership
|
|
99
|
+
const configForFile = { ...parsed };
|
|
100
|
+
const agentModels = {};
|
|
101
|
+
let agentSettings = {};
|
|
102
|
+
let authData = {};
|
|
103
|
+
// Extract agent config to agent/settings.json (preserving existing fields).
|
|
104
|
+
if (configForFile.agent) {
|
|
105
|
+
agentSettings = { ...readJson(this.agentSettingsFile), ...configForFile.agent };
|
|
106
|
+
delete configForFile.agent;
|
|
107
|
+
}
|
|
108
|
+
// Extract auth credentials to agent/auth.json (preserving existing credentials).
|
|
109
|
+
if (configForFile.auth) {
|
|
110
|
+
authData = { ...readJson(this.agentAuthFile), ...configForFile.auth };
|
|
111
|
+
delete configForFile.auth;
|
|
156
112
|
}
|
|
157
|
-
|
|
158
|
-
|
|
113
|
+
// Extract providers to agent/models.json (preserving other fields).
|
|
114
|
+
if (configForFile.providers) {
|
|
115
|
+
agentModels.providers = configForFile.providers;
|
|
116
|
+
delete configForFile.providers;
|
|
159
117
|
}
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
// Split config into components by ownership
|
|
163
|
-
const configForFile = { ...parsed };
|
|
164
|
-
const agentModels = {};
|
|
165
|
-
let agentSettings = {};
|
|
166
|
-
let authData = {};
|
|
167
|
-
// Load existing agent/settings.json to preserve other fields
|
|
168
|
-
try {
|
|
169
|
-
agentSettings = JSON.parse(readFileSync(this.agentSettingsFile, 'utf8'));
|
|
170
|
-
}
|
|
171
|
-
catch {
|
|
172
|
-
// File doesn't exist yet
|
|
173
|
-
}
|
|
174
|
-
// Extract agent config to agent/settings.json
|
|
175
|
-
if (configForFile.agent) {
|
|
176
|
-
agentSettings = { ...agentSettings, ...configForFile.agent };
|
|
177
|
-
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
178
|
-
delete configForFile.agent;
|
|
179
|
-
}
|
|
180
|
-
// Load existing auth.json to preserve other credentials
|
|
181
|
-
try {
|
|
182
|
-
authData = JSON.parse(readFileSync(this.agentAuthFile, 'utf8'));
|
|
183
|
-
}
|
|
184
|
-
catch {
|
|
185
|
-
// File doesn't exist yet
|
|
186
|
-
}
|
|
187
|
-
// Extract auth credentials to agent/auth.json
|
|
188
|
-
if (configForFile.auth) {
|
|
189
|
-
authData = { ...authData, ...configForFile.auth };
|
|
190
|
-
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
191
|
-
delete configForFile.auth;
|
|
192
|
-
}
|
|
193
|
-
// Extract providers to agent/models.json
|
|
194
|
-
if (configForFile.providers) {
|
|
195
|
-
agentModels.providers = configForFile.providers;
|
|
196
|
-
delete configForFile.providers;
|
|
197
|
-
}
|
|
198
|
-
// Load existing agent/models.json to preserve other fields
|
|
199
|
-
try {
|
|
200
|
-
const existing = JSON.parse(readFileSync(this.agentModelsFile, 'utf8'));
|
|
201
|
-
Object.assign(agentModels, existing, agentModels); // Preserve existing, override with new
|
|
202
|
-
}
|
|
203
|
-
catch {
|
|
204
|
-
// File doesn't exist yet
|
|
205
|
-
}
|
|
206
|
-
// Persist to appropriate files
|
|
207
|
-
saveConfig(this.configFile, configForFile);
|
|
208
|
-
const writeAgentFile = (file, data) => {
|
|
209
|
-
if (Object.keys(data).length === 0)
|
|
210
|
-
return;
|
|
211
|
-
if (!existsSync(this.agentDir))
|
|
212
|
-
mkdirSync(this.agentDir, { recursive: true });
|
|
213
|
-
writeFileSync(file, JSON.stringify(data, null, 2), { mode: 0o600 });
|
|
214
|
-
};
|
|
215
|
-
writeAgentFile(this.agentModelsFile, agentModels);
|
|
216
|
-
writeAgentFile(this.agentSettingsFile, agentSettings);
|
|
217
|
-
writeAgentFile(this.agentAuthFile, authData);
|
|
218
|
-
this.log.info('config updated and persisted');
|
|
219
|
-
return this.loadConfig();
|
|
118
|
+
if (Object.keys(agentModels).length > 0) {
|
|
119
|
+
Object.assign(agentModels, readJson(this.agentModelsFile), agentModels);
|
|
220
120
|
}
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
|
|
121
|
+
// Persist to appropriate files
|
|
122
|
+
saveConfig(this.configFile, configForFile);
|
|
123
|
+
const writeAgentFile = (file, data) => {
|
|
124
|
+
if (Object.keys(data).length > 0)
|
|
125
|
+
writeJson(file, data);
|
|
126
|
+
};
|
|
127
|
+
writeAgentFile(this.agentModelsFile, agentModels);
|
|
128
|
+
writeAgentFile(this.agentSettingsFile, agentSettings);
|
|
129
|
+
writeAgentFile(this.agentAuthFile, authData);
|
|
130
|
+
this.log.info('config updated and persisted');
|
|
131
|
+
return this.loadConfig();
|
|
132
|
+
}
|
|
133
|
+
}
|
|
134
|
+
export function createService() {
|
|
135
|
+
return new ConfigService();
|
|
229
136
|
}
|
|
230
137
|
// ── Re-exports ────────────────────────────────────────────────────────────────
|
|
231
138
|
export * from './schemas/index.js';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../services/config/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../services/config/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -13,8 +13,8 @@ export declare const CronTaskSchema: z.ZodObject<{
|
|
|
13
13
|
activeHours: z.ZodOptional<z.ZodArray<z.ZodNumber, "many">>;
|
|
14
14
|
activeHoursTimezone: z.ZodOptional<z.ZodString>;
|
|
15
15
|
}, "strip", z.ZodTypeAny, {
|
|
16
|
-
id: string;
|
|
17
16
|
name: string;
|
|
17
|
+
id: string;
|
|
18
18
|
enabled: boolean;
|
|
19
19
|
schedule: string;
|
|
20
20
|
task: string;
|
|
@@ -23,8 +23,8 @@ export declare const CronTaskSchema: z.ZodObject<{
|
|
|
23
23
|
activeHours?: number[] | undefined;
|
|
24
24
|
activeHoursTimezone?: string | undefined;
|
|
25
25
|
}, {
|
|
26
|
-
id: string;
|
|
27
26
|
name: string;
|
|
27
|
+
id: string;
|
|
28
28
|
schedule: string;
|
|
29
29
|
task: string;
|
|
30
30
|
enabled?: boolean | undefined;
|
|
@@ -61,8 +61,8 @@ export declare const CronAddSchema: z.ZodObject<Omit<{
|
|
|
61
61
|
activeHoursTimezone?: string | undefined;
|
|
62
62
|
}>;
|
|
63
63
|
export declare const CronUpdateSchema: z.ZodObject<{
|
|
64
|
-
id: z.ZodString;
|
|
65
64
|
name: z.ZodOptional<z.ZodString>;
|
|
65
|
+
id: z.ZodString;
|
|
66
66
|
enabled: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
|
|
67
67
|
model: z.ZodOptional<z.ZodOptional<z.ZodString>>;
|
|
68
68
|
schedule: z.ZodOptional<z.ZodString>;
|
|
@@ -32,8 +32,8 @@ export declare const ProviderConfigSchema: z.ZodObject<{
|
|
|
32
32
|
contextWindow: z.ZodOptional<z.ZodNumber>;
|
|
33
33
|
maxTokens: z.ZodOptional<z.ZodNumber>;
|
|
34
34
|
}, "strip", z.ZodTypeAny, {
|
|
35
|
-
id: string;
|
|
36
35
|
name: string;
|
|
36
|
+
id: string;
|
|
37
37
|
reasoning?: boolean | undefined;
|
|
38
38
|
input?: string[] | undefined;
|
|
39
39
|
cost?: {
|
|
@@ -45,8 +45,8 @@ export declare const ProviderConfigSchema: z.ZodObject<{
|
|
|
45
45
|
contextWindow?: number | undefined;
|
|
46
46
|
maxTokens?: number | undefined;
|
|
47
47
|
}, {
|
|
48
|
-
id: string;
|
|
49
48
|
name: string;
|
|
49
|
+
id: string;
|
|
50
50
|
reasoning?: boolean | undefined;
|
|
51
51
|
input?: string[] | undefined;
|
|
52
52
|
cost?: {
|
|
@@ -86,8 +86,8 @@ export declare const ProviderConfigSchema: z.ZodObject<{
|
|
|
86
86
|
contextWindow: z.ZodOptional<z.ZodNumber>;
|
|
87
87
|
maxTokens: z.ZodOptional<z.ZodNumber>;
|
|
88
88
|
}, "strip", z.ZodTypeAny, {
|
|
89
|
-
id: string;
|
|
90
89
|
name: string;
|
|
90
|
+
id: string;
|
|
91
91
|
reasoning?: boolean | undefined;
|
|
92
92
|
input?: string[] | undefined;
|
|
93
93
|
cost?: {
|
|
@@ -99,8 +99,8 @@ export declare const ProviderConfigSchema: z.ZodObject<{
|
|
|
99
99
|
contextWindow?: number | undefined;
|
|
100
100
|
maxTokens?: number | undefined;
|
|
101
101
|
}, {
|
|
102
|
-
id: string;
|
|
103
102
|
name: string;
|
|
103
|
+
id: string;
|
|
104
104
|
reasoning?: boolean | undefined;
|
|
105
105
|
input?: string[] | undefined;
|
|
106
106
|
cost?: {
|
|
@@ -140,8 +140,8 @@ export declare const ProviderConfigSchema: z.ZodObject<{
|
|
|
140
140
|
contextWindow: z.ZodOptional<z.ZodNumber>;
|
|
141
141
|
maxTokens: z.ZodOptional<z.ZodNumber>;
|
|
142
142
|
}, "strip", z.ZodTypeAny, {
|
|
143
|
-
id: string;
|
|
144
143
|
name: string;
|
|
144
|
+
id: string;
|
|
145
145
|
reasoning?: boolean | undefined;
|
|
146
146
|
input?: string[] | undefined;
|
|
147
147
|
cost?: {
|
|
@@ -153,8 +153,8 @@ export declare const ProviderConfigSchema: z.ZodObject<{
|
|
|
153
153
|
contextWindow?: number | undefined;
|
|
154
154
|
maxTokens?: number | undefined;
|
|
155
155
|
}, {
|
|
156
|
-
id: string;
|
|
157
156
|
name: string;
|
|
157
|
+
id: string;
|
|
158
158
|
reasoning?: boolean | undefined;
|
|
159
159
|
input?: string[] | undefined;
|
|
160
160
|
cost?: {
|
|
@@ -195,8 +195,8 @@ export declare const ProvidersSchema: z.ZodRecord<z.ZodString, z.ZodObject<{
|
|
|
195
195
|
contextWindow: z.ZodOptional<z.ZodNumber>;
|
|
196
196
|
maxTokens: z.ZodOptional<z.ZodNumber>;
|
|
197
197
|
}, "strip", z.ZodTypeAny, {
|
|
198
|
-
id: string;
|
|
199
198
|
name: string;
|
|
199
|
+
id: string;
|
|
200
200
|
reasoning?: boolean | undefined;
|
|
201
201
|
input?: string[] | undefined;
|
|
202
202
|
cost?: {
|
|
@@ -208,8 +208,8 @@ export declare const ProvidersSchema: z.ZodRecord<z.ZodString, z.ZodObject<{
|
|
|
208
208
|
contextWindow?: number | undefined;
|
|
209
209
|
maxTokens?: number | undefined;
|
|
210
210
|
}, {
|
|
211
|
-
id: string;
|
|
212
211
|
name: string;
|
|
212
|
+
id: string;
|
|
213
213
|
reasoning?: boolean | undefined;
|
|
214
214
|
input?: string[] | undefined;
|
|
215
215
|
cost?: {
|
|
@@ -249,8 +249,8 @@ export declare const ProvidersSchema: z.ZodRecord<z.ZodString, z.ZodObject<{
|
|
|
249
249
|
contextWindow: z.ZodOptional<z.ZodNumber>;
|
|
250
250
|
maxTokens: z.ZodOptional<z.ZodNumber>;
|
|
251
251
|
}, "strip", z.ZodTypeAny, {
|
|
252
|
-
id: string;
|
|
253
252
|
name: string;
|
|
253
|
+
id: string;
|
|
254
254
|
reasoning?: boolean | undefined;
|
|
255
255
|
input?: string[] | undefined;
|
|
256
256
|
cost?: {
|
|
@@ -262,8 +262,8 @@ export declare const ProvidersSchema: z.ZodRecord<z.ZodString, z.ZodObject<{
|
|
|
262
262
|
contextWindow?: number | undefined;
|
|
263
263
|
maxTokens?: number | undefined;
|
|
264
264
|
}, {
|
|
265
|
-
id: string;
|
|
266
265
|
name: string;
|
|
266
|
+
id: string;
|
|
267
267
|
reasoning?: boolean | undefined;
|
|
268
268
|
input?: string[] | undefined;
|
|
269
269
|
cost?: {
|
|
@@ -303,8 +303,8 @@ export declare const ProvidersSchema: z.ZodRecord<z.ZodString, z.ZodObject<{
|
|
|
303
303
|
contextWindow: z.ZodOptional<z.ZodNumber>;
|
|
304
304
|
maxTokens: z.ZodOptional<z.ZodNumber>;
|
|
305
305
|
}, "strip", z.ZodTypeAny, {
|
|
306
|
-
id: string;
|
|
307
306
|
name: string;
|
|
307
|
+
id: string;
|
|
308
308
|
reasoning?: boolean | undefined;
|
|
309
309
|
input?: string[] | undefined;
|
|
310
310
|
cost?: {
|
|
@@ -316,8 +316,8 @@ export declare const ProvidersSchema: z.ZodRecord<z.ZodString, z.ZodObject<{
|
|
|
316
316
|
contextWindow?: number | undefined;
|
|
317
317
|
maxTokens?: number | undefined;
|
|
318
318
|
}, {
|
|
319
|
-
id: string;
|
|
320
319
|
name: string;
|
|
320
|
+
id: string;
|
|
321
321
|
reasoning?: boolean | undefined;
|
|
322
322
|
input?: string[] | undefined;
|
|
323
323
|
cost?: {
|
|
@@ -9,14 +9,14 @@ export declare const WebhookEntrySchema: z.ZodObject<{
|
|
|
9
9
|
transform: z.ZodOptional<z.ZodString>;
|
|
10
10
|
notify: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
|
|
11
11
|
}, "strip", z.ZodTypeAny, {
|
|
12
|
-
id: string;
|
|
13
12
|
name: string;
|
|
13
|
+
id: string;
|
|
14
14
|
token: string;
|
|
15
15
|
notify?: string[] | undefined;
|
|
16
16
|
transform?: string | undefined;
|
|
17
17
|
}, {
|
|
18
|
-
id: string;
|
|
19
18
|
name: string;
|
|
19
|
+
id: string;
|
|
20
20
|
token: string;
|
|
21
21
|
notify?: string[] | undefined;
|
|
22
22
|
transform?: string | undefined;
|
|
@@ -11,26 +11,25 @@
|
|
|
11
11
|
* Subagent deferral: if subagents are still running, the agent runtime may
|
|
12
12
|
* defer delivery until the parent run completes.
|
|
13
13
|
*/
|
|
14
|
-
import type { Bus } from '../../
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
export declare class CronService {
|
|
18
|
-
private readonly bus;
|
|
19
|
-
private readonly config;
|
|
14
|
+
import type { Bus, Service } from '../../core/types.js';
|
|
15
|
+
export declare class CronService implements Service {
|
|
16
|
+
readonly name = "cron";
|
|
20
17
|
private jobs;
|
|
21
18
|
private ephemeralIds;
|
|
22
19
|
private activeTasks;
|
|
23
20
|
private beforeFireHooks;
|
|
24
|
-
private
|
|
25
|
-
private
|
|
26
|
-
constructor(
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
21
|
+
private bus;
|
|
22
|
+
private cronDir;
|
|
23
|
+
constructor(cronDir?: string);
|
|
24
|
+
init(bus: Bus): Promise<void>;
|
|
25
|
+
/** Stop every CronJob timer — without this, a reload would leave timers firing (D2). */
|
|
26
|
+
dispose(): void;
|
|
27
|
+
private registerMethods;
|
|
28
|
+
private search;
|
|
29
|
+
private add;
|
|
30
|
+
private remove;
|
|
31
|
+
private update;
|
|
32
|
+
private run;
|
|
34
33
|
private addJob;
|
|
35
34
|
private startAll;
|
|
36
35
|
private stopAll;
|
|
@@ -44,7 +43,5 @@ export declare class CronService {
|
|
|
44
43
|
private deleteTaskFromDisk;
|
|
45
44
|
private registerHeartbeat;
|
|
46
45
|
}
|
|
47
|
-
export declare function
|
|
48
|
-
stop(): void;
|
|
49
|
-
}>;
|
|
46
|
+
export declare function createService(): Service;
|
|
50
47
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../services/cron/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../services/cron/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAMH,OAAO,KAAK,EAAE,GAAG,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AAuBxD,qBAAa,WAAY,YAAW,OAAO;IACzC,QAAQ,CAAC,IAAI,UAAU;IACvB,OAAO,CAAC,IAAI,CAAuD;IACnE,OAAO,CAAC,YAAY,CAAqB;IACzC,OAAO,CAAC,WAAW,CAAqB;IACxC,OAAO,CAAC,eAAe,CAA6C;IACpE,OAAO,CAAC,GAAG,CAAO;IAClB,OAAO,CAAC,OAAO,CAAS;gBAEZ,OAAO,CAAC,EAAE,MAAM;IAItB,IAAI,CAAC,GAAG,EAAE,GAAG,GAAG,OAAO,CAAC,IAAI,CAAC;IAcnC,wFAAwF;IACxF,OAAO,IAAI,IAAI;IAIf,OAAO,CAAC,eAAe;YA8CT,MAAM;YAYN,GAAG;YAiBH,MAAM;YAmBN,MAAM;YAkCN,GAAG;IAWjB,OAAO,CAAC,MAAM;IAMd,OAAO,CAAC,QAAQ;IAchB,OAAO,CAAC,OAAO;IAIf,OAAO,CAAC,IAAI;IAuCZ,OAAO,CAAC,gBAAgB;YAYV,WAAW;IAkCzB,OAAO,CAAC,iBAAiB;IAMzB,OAAO,CAAC,qBAAqB;YAKf,iBAAiB;YAgEjB,eAAe;YAiCf,kBAAkB;IAchC,OAAO,CAAC,iBAAiB;CA6B1B;AAED,wBAAgB,aAAa,IAAI,OAAO,CAEvC"}
|