@action-llama/action-llama 0.17.7 → 0.18.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/agent-docs/AGENTS.md +5 -5
- package/dist/agents/bash-prefix.d.ts +9 -0
- package/dist/agents/bash-prefix.d.ts.map +1 -0
- package/dist/agents/bash-prefix.js +15 -0
- package/dist/agents/bash-prefix.js.map +1 -0
- package/dist/agents/chat-entry.d.ts +9 -0
- package/dist/agents/chat-entry.d.ts.map +1 -0
- package/dist/agents/chat-entry.js +165 -0
- package/dist/agents/chat-entry.js.map +1 -0
- package/dist/agents/container-entry.d.ts.map +1 -1
- package/dist/agents/container-entry.js +11 -148
- package/dist/agents/container-entry.js.map +1 -1
- package/dist/agents/container-runner.d.ts +1 -1
- package/dist/agents/container-runner.d.ts.map +1 -1
- package/dist/agents/container-runner.js.map +1 -1
- package/dist/agents/credential-setup.d.ts +21 -0
- package/dist/agents/credential-setup.d.ts.map +1 -0
- package/dist/agents/credential-setup.js +160 -0
- package/dist/agents/credential-setup.js.map +1 -0
- package/dist/agents/prompt.d.ts +2 -1
- package/dist/agents/prompt.d.ts.map +1 -1
- package/dist/agents/prompt.js +8 -2
- package/dist/agents/prompt.js.map +1 -1
- package/dist/agents/runner.d.ts +1 -1
- package/dist/agents/runner.d.ts.map +1 -1
- package/dist/agents/runner.js.map +1 -1
- package/dist/agents/session-factory.d.ts.map +1 -1
- package/dist/agents/session-factory.js +2 -1
- package/dist/agents/session-factory.js.map +1 -1
- package/dist/build-info.json +1 -1
- package/dist/chat/container-launcher.d.ts +33 -0
- package/dist/chat/container-launcher.d.ts.map +1 -0
- package/dist/chat/container-launcher.js +82 -0
- package/dist/chat/container-launcher.js.map +1 -0
- package/dist/chat/event-mapper.d.ts +27 -0
- package/dist/chat/event-mapper.d.ts.map +1 -0
- package/dist/chat/event-mapper.js +56 -0
- package/dist/chat/event-mapper.js.map +1 -0
- package/dist/chat/ink-adapter.d.ts +9 -0
- package/dist/chat/ink-adapter.d.ts.map +1 -0
- package/dist/chat/ink-adapter.js +120 -0
- package/dist/chat/ink-adapter.js.map +1 -0
- package/dist/chat/local-transport.d.ts +28 -0
- package/dist/chat/local-transport.d.ts.map +1 -0
- package/dist/chat/local-transport.js +68 -0
- package/dist/chat/local-transport.js.map +1 -0
- package/dist/chat/remote-transport.d.ts +30 -0
- package/dist/chat/remote-transport.d.ts.map +1 -0
- package/dist/chat/remote-transport.js +110 -0
- package/dist/chat/remote-transport.js.map +1 -0
- package/dist/chat/routes.d.ts +10 -0
- package/dist/chat/routes.d.ts.map +1 -0
- package/dist/chat/routes.js +58 -0
- package/dist/chat/routes.js.map +1 -0
- package/dist/chat/session-manager.d.ts +20 -0
- package/dist/chat/session-manager.d.ts.map +1 -0
- package/dist/chat/session-manager.js +64 -0
- package/dist/chat/session-manager.js.map +1 -0
- package/dist/chat/transport.d.ts +15 -0
- package/dist/chat/transport.d.ts.map +1 -0
- package/dist/chat/transport.js +5 -0
- package/dist/chat/transport.js.map +1 -0
- package/dist/chat/types.d.ts +50 -0
- package/dist/chat/types.d.ts.map +1 -0
- package/dist/chat/types.js +7 -0
- package/dist/chat/types.js.map +1 -0
- package/dist/chat/validation.d.ts +30 -0
- package/dist/chat/validation.d.ts.map +1 -0
- package/dist/chat/validation.js +79 -0
- package/dist/chat/validation.js.map +1 -0
- package/dist/chat/ws-handler.d.ts +31 -0
- package/dist/chat/ws-handler.d.ts.map +1 -0
- package/dist/chat/ws-handler.js +247 -0
- package/dist/chat/ws-handler.js.map +1 -0
- package/dist/cli/commands/add.d.ts +14 -0
- package/dist/cli/commands/add.d.ts.map +1 -0
- package/dist/cli/commands/add.js +188 -0
- package/dist/cli/commands/add.js.map +1 -0
- package/dist/cli/commands/agent.d.ts.map +1 -1
- package/dist/cli/commands/agent.js +93 -41
- package/dist/cli/commands/agent.js.map +1 -1
- package/dist/cli/commands/chat.d.ts.map +1 -1
- package/dist/cli/commands/chat.js +38 -2
- package/dist/cli/commands/chat.js.map +1 -1
- package/dist/cli/commands/doctor.d.ts.map +1 -1
- package/dist/cli/commands/doctor.js +26 -13
- package/dist/cli/commands/doctor.js.map +1 -1
- package/dist/cli/commands/run.d.ts +1 -1
- package/dist/cli/commands/run.d.ts.map +1 -1
- package/dist/cli/commands/run.js +2 -1
- package/dist/cli/commands/run.js.map +1 -1
- package/dist/cli/commands/update.d.ts +14 -0
- package/dist/cli/commands/update.d.ts.map +1 -0
- package/dist/cli/commands/update.js +191 -0
- package/dist/cli/commands/update.js.map +1 -0
- package/dist/cli/commands/webhook.js +9 -10
- package/dist/cli/commands/webhook.js.map +1 -1
- package/dist/cli/main.js +32 -2
- package/dist/cli/main.js.map +1 -1
- package/dist/control/routes/control.d.ts +1 -1
- package/dist/control/routes/control.d.ts.map +1 -1
- package/dist/control/routes/control.js +12 -2
- package/dist/control/routes/control.js.map +1 -1
- package/dist/control/routes/dashboard.d.ts.map +1 -1
- package/dist/control/routes/dashboard.js +11 -1
- package/dist/control/routes/dashboard.js.map +1 -1
- package/dist/execution/execution.d.ts +5 -2
- package/dist/execution/execution.d.ts.map +1 -1
- package/dist/execution/execution.js +22 -7
- package/dist/execution/execution.js.map +1 -1
- package/dist/execution/runner-pool.d.ts +1 -1
- package/dist/execution/runner-pool.d.ts.map +1 -1
- package/dist/execution/runner-setup.d.ts.map +1 -1
- package/dist/execution/runner-setup.js +15 -2
- package/dist/execution/runner-setup.js.map +1 -1
- package/dist/frontend/assets/index-Cb_hkpne.js +13 -0
- package/dist/frontend/assets/index-ClYf0bqf.css +2 -0
- package/dist/frontend/index.html +2 -2
- package/dist/gateway/index.d.ts +11 -0
- package/dist/gateway/index.d.ts.map +1 -1
- package/dist/gateway/index.js +32 -1
- package/dist/gateway/index.js.map +1 -1
- package/dist/remote/push.js +1 -4
- package/dist/remote/push.js.map +1 -1
- package/dist/scheduler/gateway-setup.d.ts +3 -0
- package/dist/scheduler/gateway-setup.d.ts.map +1 -1
- package/dist/scheduler/gateway-setup.js +47 -7
- package/dist/scheduler/gateway-setup.js.map +1 -1
- package/dist/scheduler/index.d.ts.map +1 -1
- package/dist/scheduler/index.js +4 -1
- package/dist/scheduler/index.js.map +1 -1
- package/dist/setup/scaffold.d.ts.map +1 -1
- package/dist/setup/scaffold.js +21 -21
- package/dist/setup/scaffold.js.map +1 -1
- package/dist/shared/config.d.ts +29 -5
- package/dist/shared/config.d.ts.map +1 -1
- package/dist/shared/config.js +50 -37
- package/dist/shared/config.js.map +1 -1
- package/dist/shared/environment.d.ts +0 -7
- package/dist/shared/environment.d.ts.map +1 -1
- package/dist/shared/environment.js +0 -29
- package/dist/shared/environment.js.map +1 -1
- package/dist/shared/validation.d.ts +9 -2
- package/dist/shared/validation.d.ts.map +1 -1
- package/dist/shared/validation.js +39 -20
- package/dist/shared/validation.js.map +1 -1
- package/dist/tui/App.js +2 -2
- package/dist/tui/App.js.map +1 -1
- package/dist/tui/status-tracker.d.ts +8 -0
- package/dist/tui/status-tracker.d.ts.map +1 -1
- package/dist/tui/status-tracker.js +27 -0
- package/dist/tui/status-tracker.js.map +1 -1
- package/dist/webhooks/providers/index.js +4 -4
- package/dist/webhooks/providers/index.js.map +1 -1
- package/package.json +3 -1
- package/dist/frontend/assets/index-heXAA4Ev.js +0 -13
- package/dist/frontend/assets/index-tjVM5-7N.css +0 -2
package/dist/setup/scaffold.js
CHANGED
|
@@ -175,31 +175,31 @@ function lstatSafe(path) {
|
|
|
175
175
|
export function scaffoldAgent(projectPath, agent) {
|
|
176
176
|
const agentPath = resolve(projectPath, "agents", agent.name);
|
|
177
177
|
mkdirSync(agentPath, { recursive: true });
|
|
178
|
-
// Write
|
|
178
|
+
// Write portable SKILL.md if none exists
|
|
179
179
|
const skillPath = resolve(agentPath, "SKILL.md");
|
|
180
180
|
if (!existsSync(skillPath)) {
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
if (
|
|
187
|
-
frontmatter.
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
181
|
+
const frontmatter = { name: agent.name };
|
|
182
|
+
if (agent.config.description)
|
|
183
|
+
frontmatter.description = agent.config.description;
|
|
184
|
+
if (agent.config.license)
|
|
185
|
+
frontmatter.license = agent.config.license;
|
|
186
|
+
if (agent.config.compatibility)
|
|
187
|
+
frontmatter.compatibility = agent.config.compatibility;
|
|
188
|
+
const yamlStr = stringifyYAML(frontmatter).trimEnd();
|
|
189
|
+
writeFileSync(skillPath, `---\n${yamlStr}\n---\n\n# ${agent.name} Agent\n\nCustom agent.\n`);
|
|
190
|
+
}
|
|
191
|
+
// Write per-agent config.toml if none exists
|
|
192
|
+
const configPath = resolve(agentPath, "config.toml");
|
|
193
|
+
if (!existsSync(configPath)) {
|
|
194
|
+
const { name: _, models: _m, description: _d, license: _l, compatibility: _c, ...runtimeFields } = agent.config;
|
|
195
|
+
const runtimeConfig = {};
|
|
196
|
+
for (const [k, v] of Object.entries(runtimeFields)) {
|
|
194
197
|
if (v !== undefined)
|
|
195
|
-
|
|
198
|
+
runtimeConfig[k] = v;
|
|
196
199
|
}
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
? stringifyYAML(frontmatter).trimEnd()
|
|
201
|
-
: "";
|
|
202
|
-
writeFileSync(skillPath, `---\n${yamlStr}\n---\n\n# ${agent.name} Agent\n\nCustom agent.\n`);
|
|
200
|
+
writeFileSync(configPath, Object.keys(runtimeConfig).length > 0
|
|
201
|
+
? stringifyTOML(runtimeConfig) + "\n"
|
|
202
|
+
: "");
|
|
203
203
|
}
|
|
204
204
|
}
|
|
205
205
|
export function scaffoldProject(projectPath, globalConfig, agents = [], projectName) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"scaffold.js","sourceRoot":"","sources":["../../src/setup/scaffold.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,aAAa,EAAE,UAAU,EAAE,YAAY,EAAE,WAAW,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,IAAI,CAAC;AAC9G,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,MAAM,CAAC;AAEzC,8EAA8E;AAC9E,8DAA8D;AAC9D,8EAA8E;AAE9E,MAAM,CAAC,MAAM,eAAe,GAA2B;IACrD,WAAW,EAAE;;;;;;;;;;;;;;;;;;;;;;;;CAwBd;IAEC,KAAK,EAAE;;;;;;;;;;;;;;;;;;;;;CAqBR;IAEC,OAAO,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;CAyBV;IAEC,SAAS,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA4BZ;IAEC,QAAQ,EAAE;;;;;;;;;;;;;;;;;;;;;;;CAuBX;CACA,CAAC;AAEF;;;GAGG;AACH,MAAM,UAAU,sBAAsB,CAAC,WAAmB;IACxD,MAAM,WAAW,GAAG,OAAO,CAAC,WAAW,EAAE,SAAS,EAAE,UAAU,CAAC,CAAC;IAChE,SAAS,CAAC,WAAW,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAC5C,KAAK,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,eAAe,CAAC,EAAE,CAAC;QAC9D,MAAM,QAAQ,GAAG,OAAO,CAAC,WAAW,EAAE,GAAG,IAAI,KAAK,CAAC,CAAC;QACpD,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC1B,aAAa,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;QACnC,CAAC;IACH,CAAC;AACH,CAAC;AACD,OAAO,EAAE,aAAa,EAAE,MAAM,KAAK,CAAC;AACpC,OAAO,EAAE,SAAS,IAAI,aAAa,EAAE,MAAM,WAAW,CAAC;AACvD,OAAO,EAAE,SAAS,IAAI,aAAa,EAAE,MAAM,MAAM,CAAC;AAElD,OAAO,EAAE,oBAAoB,EAAE,qBAAqB,EAAE,MAAM,0BAA0B,CAAC;AACvF,OAAO,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AAEnD,OAAO,EAAE,oBAAoB,EAAE,qBAAqB,EAAE,CAAC;AAEvD;;;;GAIG;AACH,MAAM,UAAU,kBAAkB;IAChC,MAAM,QAAQ,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAChD,OAAO,OAAO,CAAC,QAAQ,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;AAC7C,CAAC;AAED,SAAS,uBAAuB;IAC9B,OAAO,OAAO,CAAC,kBAAkB,EAAE,EAAE,YAAY,EAAE,WAAW,CAAC,CAAC;AAClE,CAAC;AAED,4FAA4F;AAC5F,SAAS,SAAS,CAAC,IAAY;IAC7B,IAAI,CAAC;QAAC,OAAO,SAAS,CAAC,IAAI,CAAC,CAAC,cAAc,EAAE,CAAC;IAAC,CAAC;IAAC,MAAM,CAAC;QAAC,OAAO,KAAK,CAAC;IAAC,CAAC;AAC1E,CAAC;AAOD,MAAM,UAAU,aAAa,CAAC,WAAmB,EAAE,KAAoB;IACrE,MAAM,SAAS,GAAG,OAAO,CAAC,WAAW,EAAE,QAAQ,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;IAC7D,SAAS,CAAC,SAAS,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAE1C,
|
|
1
|
+
{"version":3,"file":"scaffold.js","sourceRoot":"","sources":["../../src/setup/scaffold.ts"],"names":[],"mappings":"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"}
|
package/dist/shared/config.d.ts
CHANGED
|
@@ -30,6 +30,7 @@ export type CloudConfig = VpsConfig;
|
|
|
30
30
|
export interface GatewayConfig {
|
|
31
31
|
port?: number;
|
|
32
32
|
url?: string;
|
|
33
|
+
maxChatSessions?: number;
|
|
33
34
|
}
|
|
34
35
|
export interface WebhookSourceConfig {
|
|
35
36
|
type: string;
|
|
@@ -44,10 +45,6 @@ export interface TelemetryConfig {
|
|
|
44
45
|
headers?: Record<string, string>;
|
|
45
46
|
samplingRate?: number;
|
|
46
47
|
}
|
|
47
|
-
export interface AgentRuntimeOverrides {
|
|
48
|
-
scale?: number;
|
|
49
|
-
timeout?: number;
|
|
50
|
-
}
|
|
51
48
|
export interface GlobalConfig {
|
|
52
49
|
models?: Record<string, ModelConfig>;
|
|
53
50
|
local?: LocalConfig;
|
|
@@ -64,13 +61,32 @@ export interface GlobalConfig {
|
|
|
64
61
|
workQueueSize?: number;
|
|
65
62
|
resourceLockTimeout?: number;
|
|
66
63
|
scale?: number;
|
|
67
|
-
|
|
64
|
+
defaultAgentScale?: number;
|
|
68
65
|
historyRetentionDays?: number;
|
|
69
66
|
}
|
|
70
67
|
export interface AgentHooks {
|
|
71
68
|
pre?: string[];
|
|
72
69
|
post?: string[];
|
|
73
70
|
}
|
|
71
|
+
/**
|
|
72
|
+
* Raw per-agent runtime config from `agents/<name>/config.toml`.
|
|
73
|
+
* Fields here are project-specific bindings — not portable.
|
|
74
|
+
*/
|
|
75
|
+
export interface AgentRuntimeConfig {
|
|
76
|
+
source?: string;
|
|
77
|
+
credentials?: string[];
|
|
78
|
+
models?: string[];
|
|
79
|
+
schedule?: string;
|
|
80
|
+
webhooks?: WebhookTrigger[];
|
|
81
|
+
hooks?: AgentHooks;
|
|
82
|
+
params?: Record<string, unknown>;
|
|
83
|
+
scale?: number;
|
|
84
|
+
timeout?: number;
|
|
85
|
+
}
|
|
86
|
+
/**
|
|
87
|
+
* Resolved agent config — the runtime representation after merging
|
|
88
|
+
* portable SKILL.md fields with per-agent config.toml and global defaults.
|
|
89
|
+
*/
|
|
74
90
|
export interface AgentConfig {
|
|
75
91
|
name: string;
|
|
76
92
|
description?: string;
|
|
@@ -97,6 +113,10 @@ export declare function loadProjectConfig(projectPath: string): GlobalConfig;
|
|
|
97
113
|
* @param envName - explicit environment name (from --env flag); takes precedence over .env.toml and AL_ENV
|
|
98
114
|
*/
|
|
99
115
|
export declare function loadGlobalConfig(projectPath: string, envName?: string): GlobalConfig;
|
|
116
|
+
/**
|
|
117
|
+
* Load the raw per-agent runtime config from `agents/<name>/config.toml`.
|
|
118
|
+
*/
|
|
119
|
+
export declare function loadAgentRuntimeConfig(projectPath: string, agentName: string): AgentRuntimeConfig;
|
|
100
120
|
export declare function loadAgentConfig(projectPath: string, agentName: string): AgentConfig;
|
|
101
121
|
/**
|
|
102
122
|
* Load the SKILL.md body (markdown content after frontmatter).
|
|
@@ -124,4 +144,8 @@ export declare function getProjectScale(projectPath: string): number;
|
|
|
124
144
|
* Get current agent scale from config
|
|
125
145
|
*/
|
|
126
146
|
export declare function getAgentScale(projectPath: string, agentName: string): number;
|
|
147
|
+
/**
|
|
148
|
+
* Update a field in the per-agent config.toml.
|
|
149
|
+
*/
|
|
150
|
+
export declare function updateAgentRuntimeField(projectPath: string, agentName: string, field: string, value: unknown): void;
|
|
127
151
|
//# sourceMappingURL=config.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/shared/config.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAY3D,MAAM,WAAW,WAAW;IAC1B,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,aAAa,CAAC,EAAE,KAAK,GAAG,SAAS,GAAG,KAAK,GAAG,QAAQ,GAAG,MAAM,GAAG,OAAO,CAAC;IACxE,QAAQ,EAAE,SAAS,GAAG,aAAa,GAAG,SAAS,CAAC;CACjD;AAED,MAAM,WAAW,WAAW;IAC1B,OAAO,EAAE,OAAO,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,SAAS;IACxB,QAAQ,EAAE,KAAK,CAAC;IAChB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,eAAe,CAAC,EAAE,MAAM,CAAC;IAEzB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAC/B,kBAAkB,CAAC,EAAE,MAAM,CAAC;CAC7B;AAED,MAAM,MAAM,WAAW,GAAG,SAAS,CAAC;AAGpC,MAAM,WAAW,aAAa;IAC5B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,GAAG,CAAC,EAAE,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/shared/config.ts"],"names":[],"mappings":"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"}
|
package/dist/shared/config.js
CHANGED
|
@@ -58,35 +58,37 @@ export function loadGlobalConfig(projectPath, envName) {
|
|
|
58
58
|
if (projectName) {
|
|
59
59
|
config.projectName = projectName;
|
|
60
60
|
}
|
|
61
|
-
// Validate
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
if (config.agents) {
|
|
66
|
-
for (const [name, overrides] of Object.entries(config.agents)) {
|
|
67
|
-
if (typeof overrides !== "object" || overrides === null || Array.isArray(overrides)) {
|
|
68
|
-
continue; // skip non-table entries
|
|
69
|
-
}
|
|
70
|
-
if (overrides.scale !== undefined) {
|
|
71
|
-
if (!Number.isInteger(overrides.scale) || overrides.scale < 0) {
|
|
72
|
-
throw new ConfigError(`[agents.${name}].scale must be a non-negative integer.`);
|
|
73
|
-
}
|
|
74
|
-
}
|
|
75
|
-
if (overrides.timeout !== undefined) {
|
|
76
|
-
if (!Number.isInteger(overrides.timeout) || overrides.timeout <= 0) {
|
|
77
|
-
throw new ConfigError(`[agents.${name}].timeout must be a positive integer.`);
|
|
78
|
-
}
|
|
79
|
-
}
|
|
61
|
+
// Validate defaultAgentScale
|
|
62
|
+
if (config.defaultAgentScale !== undefined) {
|
|
63
|
+
if (!Number.isInteger(config.defaultAgentScale) || config.defaultAgentScale < 0) {
|
|
64
|
+
throw new ConfigError("defaultAgentScale must be a non-negative integer.");
|
|
80
65
|
}
|
|
81
66
|
}
|
|
82
67
|
return config;
|
|
83
68
|
}
|
|
69
|
+
/**
|
|
70
|
+
* Load the raw per-agent runtime config from `agents/<name>/config.toml`.
|
|
71
|
+
*/
|
|
72
|
+
export function loadAgentRuntimeConfig(projectPath, agentName) {
|
|
73
|
+
const configPath = resolve(projectPath, "agents", agentName, "config.toml");
|
|
74
|
+
if (!existsSync(configPath)) {
|
|
75
|
+
return {};
|
|
76
|
+
}
|
|
77
|
+
const raw = readFileSync(configPath, "utf-8");
|
|
78
|
+
try {
|
|
79
|
+
return parseTOML(raw);
|
|
80
|
+
}
|
|
81
|
+
catch (err) {
|
|
82
|
+
throw new ConfigError(`Error parsing ${configPath}: ${err instanceof Error ? err.message : String(err)}`, { cause: err });
|
|
83
|
+
}
|
|
84
|
+
}
|
|
84
85
|
export function loadAgentConfig(projectPath, agentName) {
|
|
85
86
|
const agentDir = resolve(projectPath, "agents", agentName);
|
|
86
87
|
const skillPath = resolve(agentDir, "SKILL.md");
|
|
87
88
|
if (!existsSync(skillPath)) {
|
|
88
89
|
throw new ConfigError(`Agent config not found at ${skillPath}.`);
|
|
89
90
|
}
|
|
91
|
+
// Read portable fields from SKILL.md frontmatter
|
|
90
92
|
const raw = readFileSync(skillPath, "utf-8");
|
|
91
93
|
let data;
|
|
92
94
|
try {
|
|
@@ -95,23 +97,25 @@ export function loadAgentConfig(projectPath, agentName) {
|
|
|
95
97
|
catch (err) {
|
|
96
98
|
throw new ConfigError(`Error parsing ${skillPath}: ${err instanceof Error ? err.message : String(err)}`, { cause: err });
|
|
97
99
|
}
|
|
98
|
-
|
|
100
|
+
// Read runtime config from per-agent config.toml
|
|
101
|
+
const runtime = loadAgentRuntimeConfig(projectPath, agentName);
|
|
99
102
|
const parsed = {
|
|
100
103
|
name: agentName,
|
|
101
|
-
//
|
|
104
|
+
// Portable fields from SKILL.md frontmatter
|
|
102
105
|
description: data.description,
|
|
103
106
|
license: data.license,
|
|
104
107
|
compatibility: data.compatibility,
|
|
105
|
-
//
|
|
106
|
-
credentials:
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
108
|
+
// Runtime fields from config.toml
|
|
109
|
+
credentials: runtime.credentials,
|
|
110
|
+
schedule: runtime.schedule,
|
|
111
|
+
webhooks: runtime.webhooks,
|
|
112
|
+
hooks: runtime.hooks,
|
|
113
|
+
params: runtime.params,
|
|
114
|
+
scale: runtime.scale,
|
|
115
|
+
timeout: runtime.timeout,
|
|
112
116
|
};
|
|
113
117
|
// Resolve named model references from global config
|
|
114
|
-
const rawModels =
|
|
118
|
+
const rawModels = runtime.models;
|
|
115
119
|
if (!rawModels || !Array.isArray(rawModels) || rawModels.length === 0) {
|
|
116
120
|
throw new ConfigError(`Agent "${agentName}" must have a "models" field listing at least one named model.`);
|
|
117
121
|
}
|
|
@@ -129,13 +133,9 @@ export function loadAgentConfig(projectPath, agentName) {
|
|
|
129
133
|
resolvedModels.push(modelDef);
|
|
130
134
|
}
|
|
131
135
|
parsed.models = resolvedModels;
|
|
132
|
-
// Apply
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
if (overrides.scale !== undefined)
|
|
136
|
-
parsed.scale = overrides.scale;
|
|
137
|
-
if (overrides.timeout !== undefined)
|
|
138
|
-
parsed.timeout = overrides.timeout;
|
|
136
|
+
// Apply defaultAgentScale as fallback when no explicit per-agent scale is set
|
|
137
|
+
if (parsed.scale === undefined && global.defaultAgentScale !== undefined) {
|
|
138
|
+
parsed.scale = global.defaultAgentScale;
|
|
139
139
|
}
|
|
140
140
|
return parsed;
|
|
141
141
|
}
|
|
@@ -251,6 +251,19 @@ export function getProjectScale(projectPath) {
|
|
|
251
251
|
*/
|
|
252
252
|
export function getAgentScale(projectPath, agentName) {
|
|
253
253
|
const config = loadAgentConfig(projectPath, agentName);
|
|
254
|
-
|
|
254
|
+
// defaultAgentScale is already applied in loadAgentConfig, so just fall back to 1
|
|
255
|
+
return config.scale ?? 1;
|
|
256
|
+
}
|
|
257
|
+
/**
|
|
258
|
+
* Update a field in the per-agent config.toml.
|
|
259
|
+
*/
|
|
260
|
+
export function updateAgentRuntimeField(projectPath, agentName, field, value) {
|
|
261
|
+
const configPath = resolve(projectPath, "agents", agentName, "config.toml");
|
|
262
|
+
let existing = {};
|
|
263
|
+
if (existsSync(configPath)) {
|
|
264
|
+
existing = parseTOML(readFileSync(configPath, "utf-8"));
|
|
265
|
+
}
|
|
266
|
+
existing[field] = value;
|
|
267
|
+
writeFileSync(configPath, stringifyTOML(existing));
|
|
255
268
|
}
|
|
256
269
|
//# sourceMappingURL=config.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/shared/config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,UAAU,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,IAAI,CAAC;AACpF,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAC/C,OAAO,EAAE,KAAK,IAAI,SAAS,EAAE,SAAS,IAAI,aAAa,EAAE,MAAM,WAAW,CAAC;AAE3E,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC1C,OAAO,EACL,sBAAsB,EACtB,WAAW,EACX,qBAAqB,EACrB,SAAS,GACV,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;
|
|
1
|
+
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/shared/config.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import type { ServerConfig } from "./server.js";
|
|
2
|
-
import type { AgentRuntimeOverrides } from "./config.js";
|
|
3
2
|
export interface EnvironmentConfig {
|
|
4
3
|
server?: ServerConfig;
|
|
5
4
|
gateway?: {
|
|
@@ -14,7 +13,6 @@ export interface EnvironmentConfig {
|
|
|
14
13
|
headers?: Record<string, string>;
|
|
15
14
|
samplingRate?: number;
|
|
16
15
|
};
|
|
17
|
-
agents?: Record<string, AgentRuntimeOverrides>;
|
|
18
16
|
}
|
|
19
17
|
export interface EnvToml {
|
|
20
18
|
environment?: string;
|
|
@@ -61,11 +59,6 @@ export declare function writeEnvironmentConfig(name: string, config: Environment
|
|
|
61
59
|
* Get the full path to an environment file.
|
|
62
60
|
*/
|
|
63
61
|
export declare function environmentPath(name: string): string;
|
|
64
|
-
/**
|
|
65
|
-
* Update per-agent runtime overrides in .env.toml.
|
|
66
|
-
* Creates or updates the [agents.<agentName>] section, preserving other fields.
|
|
67
|
-
*/
|
|
68
|
-
export declare function updateAgentRuntimeOverride(projectPath: string, agentName: string, overrides: Partial<AgentRuntimeOverrides>): void;
|
|
69
62
|
/**
|
|
70
63
|
* Deep merge two objects. Later values win. Arrays are replaced, not concatenated.
|
|
71
64
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"environment.d.ts","sourceRoot":"","sources":["../../src/shared/environment.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAChD,
|
|
1
|
+
{"version":3,"file":"environment.d.ts","sourceRoot":"","sources":["../../src/shared/environment.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAChD,MAAM,WAAW,iBAAiB;IAChC,MAAM,CAAC,EAAE,YAAY,CAAC;IACtB,OAAO,CAAC,EAAE;QAAE,GAAG,CAAC,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IAC1C,SAAS,CAAC,EAAE;QAAE,OAAO,CAAC,EAAE,OAAO,CAAC;QAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;QAAC,WAAW,CAAC,EAAE,MAAM,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QAAC,YAAY,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;CACxJ;AAED,MAAM,WAAW,OAAO;IACtB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB;AAED;;;GAGG;AACH,wBAAgB,YAAY,CAAC,WAAW,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,CAAC,OAAO,CAAC,GAAG,IAAI,CAqBjF;AAED;;;GAGG;AACH,wBAAgB,WAAW,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,GAAG,SAAS,CAYpE;AAED;;;GAGG;AACH,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,MAAM,GAAG,iBAAiB,CAoBrE;AAED;;;;;;;GAOG;AACH,wBAAgB,sBAAsB,CACpC,MAAM,EAAE,MAAM,GAAG,SAAS,EAC1B,WAAW,EAAE,MAAM,GAClB,MAAM,GAAG,SAAS,CAKpB;AAED;;GAEG;AACH,wBAAgB,gBAAgB,IAAI,MAAM,EAAE,CAM3C;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAEvD;AAED;;GAEG;AACH,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,iBAAiB,GAAG,IAAI,CAIpF;AAED;;GAEG;AACH,wBAAgB,eAAe,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAEpD;AAED;;GAEG;AACH,wBAAgB,SAAS,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,CAAC,CAmBlG"}
|
|
@@ -111,35 +111,6 @@ export function writeEnvironmentConfig(name, config) {
|
|
|
111
111
|
export function environmentPath(name) {
|
|
112
112
|
return resolve(ENVIRONMENTS_DIR, `${name}.toml`);
|
|
113
113
|
}
|
|
114
|
-
/**
|
|
115
|
-
* Update per-agent runtime overrides in .env.toml.
|
|
116
|
-
* Creates or updates the [agents.<agentName>] section, preserving other fields.
|
|
117
|
-
*/
|
|
118
|
-
export function updateAgentRuntimeOverride(projectPath, agentName, overrides) {
|
|
119
|
-
const envPath = resolve(projectPath, ".env.toml");
|
|
120
|
-
let existing = {};
|
|
121
|
-
if (existsSync(envPath)) {
|
|
122
|
-
try {
|
|
123
|
-
existing = parseTOML(readFileSync(envPath, "utf-8"));
|
|
124
|
-
}
|
|
125
|
-
catch (err) {
|
|
126
|
-
throw new ConfigError(`Error parsing ${envPath}: ${err instanceof Error ? err.message : String(err)}`, { cause: err });
|
|
127
|
-
}
|
|
128
|
-
}
|
|
129
|
-
const agents = (existing.agents ?? {});
|
|
130
|
-
const current = agents[agentName] ?? {};
|
|
131
|
-
for (const [key, value] of Object.entries(overrides)) {
|
|
132
|
-
if (value === undefined) {
|
|
133
|
-
delete current[key];
|
|
134
|
-
}
|
|
135
|
-
else {
|
|
136
|
-
current[key] = value;
|
|
137
|
-
}
|
|
138
|
-
}
|
|
139
|
-
agents[agentName] = current;
|
|
140
|
-
existing.agents = agents;
|
|
141
|
-
writeFileSync(envPath, stringifyTOML(existing) + "\n");
|
|
142
|
-
}
|
|
143
114
|
/**
|
|
144
115
|
* Deep merge two objects. Later values win. Arrays are replaced, not concatenated.
|
|
145
116
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"environment.js","sourceRoot":"","sources":["../../src/shared/environment.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,WAAW,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,IAAI,CAAC;AACrF,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,MAAM,CAAC;AACzC,OAAO,EAAE,KAAK,IAAI,SAAS,EAAE,SAAS,IAAI,aAAa,EAAE,MAAM,WAAW,CAAC;AAC3E,OAAO,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAC9C,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"environment.js","sourceRoot":"","sources":["../../src/shared/environment.ts"],"names":[],"mappings":"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"}
|
|
@@ -41,8 +41,11 @@ export declare function detectUnknownFields(config: unknown, schema: ConfigSchem
|
|
|
41
41
|
export declare function validateGlobalConfig(config: GlobalConfig, raw?: unknown): ValidationResult;
|
|
42
42
|
/**
|
|
43
43
|
* Validate agent config with comprehensive checks.
|
|
44
|
+
* @param config - The resolved AgentConfig
|
|
45
|
+
* @param rawFrontmatter - Raw SKILL.md frontmatter for schema validation
|
|
46
|
+
* @param rawRuntimeConfig - Raw per-agent config.toml for schema validation
|
|
44
47
|
*/
|
|
45
|
-
export declare function validateAgentConfig(config: AgentConfig,
|
|
48
|
+
export declare function validateAgentConfig(config: AgentConfig, rawFrontmatter?: unknown, rawRuntimeConfig?: unknown): ValidationResult;
|
|
46
49
|
/**
|
|
47
50
|
* Check for unknown fields in global config.
|
|
48
51
|
* `models` uses named sub-keys (e.g. `models.sonnet`), so we validate
|
|
@@ -51,7 +54,11 @@ export declare function validateAgentConfig(config: AgentConfig, raw?: unknown):
|
|
|
51
54
|
export declare function detectGlobalConfigUnknownFields(raw: unknown): string[];
|
|
52
55
|
/**
|
|
53
56
|
* Check for unknown fields in agent SKILL.md frontmatter.
|
|
54
|
-
* Validates the
|
|
57
|
+
* Validates the portable frontmatter structure (name, description, license, compatibility).
|
|
55
58
|
*/
|
|
56
59
|
export declare function detectAgentFrontmatterUnknownFields(raw: unknown): string[];
|
|
60
|
+
/**
|
|
61
|
+
* Check for unknown fields in per-agent config.toml.
|
|
62
|
+
*/
|
|
63
|
+
export declare function detectAgentRuntimeConfigUnknownFields(raw: unknown): string[];
|
|
57
64
|
//# sourceMappingURL=validation.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"validation.d.ts","sourceRoot":"","sources":["../../src/shared/validation.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,KAAK,EAAE,WAAW,
|
|
1
|
+
{"version":3,"file":"validation.d.ts","sourceRoot":"","sources":["../../src/shared/validation.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,KAAK,EAAE,WAAW,EAAsB,YAAY,EAAe,MAAM,aAAa,CAAC;AAE9F,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,OAAO,GAAG,SAAS,CAAC;IAC1B,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,gBAAgB;IAC/B,KAAK,EAAE,OAAO,CAAC;IACf,MAAM,EAAE,eAAe,EAAE,CAAC;IAC1B,QAAQ,EAAE,eAAe,EAAE,CAAC;CAC7B;AAED,MAAM,WAAW,YAAY;IAC3B,QAAQ,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IACtB,QAAQ,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IACtB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;CACtC;AAiFD;;GAEG;AACH,wBAAgB,sBAAsB,CAAC,QAAQ,EAAE,MAAM,GAAG;IAAE,KAAK,EAAE,OAAO,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,CAY3F;AAGD;;GAEG;AACH,wBAAgB,oBAAoB,CAClC,MAAM,EAAE,OAAO,EACf,MAAM,EAAE,YAAY,EACpB,IAAI,SAAK,GACR,gBAAgB,CA2ClB;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CACjC,MAAM,EAAE,OAAO,EACf,MAAM,EAAE,YAAY,EACpB,IAAI,SAAK,GACR,MAAM,EAAE,CAwBV;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,YAAY,EAAE,GAAG,CAAC,EAAE,OAAO,GAAG,gBAAgB,CAsB1F;AAED;;;;;GAKG;AACH,wBAAgB,mBAAmB,CACjC,MAAM,EAAE,WAAW,EACnB,cAAc,CAAC,EAAE,OAAO,EACxB,gBAAgB,CAAC,EAAE,OAAO,GACzB,gBAAgB,CA8ClB;AAED;;;;GAIG;AACH,wBAAgB,+BAA+B,CAAC,GAAG,EAAE,OAAO,GAAG,MAAM,EAAE,CAgBtE;AAED;;;GAGG;AACH,wBAAgB,mCAAmC,CAAC,GAAG,EAAE,OAAO,GAAG,MAAM,EAAE,CAE1E;AAED;;GAEG;AACH,wBAAgB,qCAAqC,CAAC,GAAG,EAAE,OAAO,GAAG,MAAM,EAAE,CAE5E"}
|
|
@@ -17,7 +17,7 @@ const GLOBAL_CONFIG_SCHEMA = {
|
|
|
17
17
|
"models", "local", "gateway", "webhooks", "telemetry",
|
|
18
18
|
"projectName", "maxReruns", "maxCallDepth", "maxTriggerDepth",
|
|
19
19
|
"webhookQueueSize", "workQueueSize", "resourceLockTimeout", "scale",
|
|
20
|
-
"
|
|
20
|
+
"defaultAgentScale", "historyRetentionDays"
|
|
21
21
|
]),
|
|
22
22
|
nested: {
|
|
23
23
|
local: {
|
|
@@ -52,24 +52,28 @@ const AGENT_CONFIG_SCHEMA = {
|
|
|
52
52
|
}
|
|
53
53
|
};
|
|
54
54
|
/**
|
|
55
|
-
* Schema for
|
|
56
|
-
*
|
|
57
|
-
* like `credentials` and `models` live under `metadata`.
|
|
55
|
+
* Schema for portable SKILL.md YAML frontmatter.
|
|
56
|
+
* Runtime config (credentials, models, schedule, etc.) lives in per-agent config.toml.
|
|
58
57
|
*/
|
|
59
58
|
const AGENT_FRONTMATTER_SCHEMA = {
|
|
60
59
|
required: new Set(),
|
|
61
|
-
optional: new Set(["
|
|
60
|
+
optional: new Set(["name", "description", "license", "compatibility"]),
|
|
61
|
+
nested: {}
|
|
62
|
+
};
|
|
63
|
+
/**
|
|
64
|
+
* Schema for per-agent runtime config (`agents/<name>/config.toml`).
|
|
65
|
+
*/
|
|
66
|
+
const AGENT_RUNTIME_CONFIG_SCHEMA = {
|
|
67
|
+
required: new Set(),
|
|
68
|
+
optional: new Set([
|
|
69
|
+
"source", "credentials", "models", "schedule", "webhooks",
|
|
70
|
+
"hooks", "params", "scale", "timeout"
|
|
71
|
+
]),
|
|
62
72
|
nested: {
|
|
63
|
-
|
|
64
|
-
required: new Set(
|
|
65
|
-
optional: new Set(["
|
|
66
|
-
nested: {
|
|
67
|
-
hooks: {
|
|
68
|
-
required: new Set(),
|
|
69
|
-
optional: new Set(["pre", "post"]),
|
|
70
|
-
nested: {}
|
|
71
|
-
},
|
|
72
|
-
}
|
|
73
|
+
hooks: {
|
|
74
|
+
required: new Set(),
|
|
75
|
+
optional: new Set(["pre", "post"]),
|
|
76
|
+
nested: {}
|
|
73
77
|
},
|
|
74
78
|
}
|
|
75
79
|
};
|
|
@@ -181,13 +185,22 @@ export function validateGlobalConfig(config, raw) {
|
|
|
181
185
|
}
|
|
182
186
|
/**
|
|
183
187
|
* Validate agent config with comprehensive checks.
|
|
188
|
+
* @param config - The resolved AgentConfig
|
|
189
|
+
* @param rawFrontmatter - Raw SKILL.md frontmatter for schema validation
|
|
190
|
+
* @param rawRuntimeConfig - Raw per-agent config.toml for schema validation
|
|
184
191
|
*/
|
|
185
|
-
export function validateAgentConfig(config,
|
|
192
|
+
export function validateAgentConfig(config, rawFrontmatter, rawRuntimeConfig) {
|
|
186
193
|
const errors = [];
|
|
187
194
|
const warnings = [];
|
|
188
|
-
// Schema validation
|
|
189
|
-
if (
|
|
190
|
-
const schemaResult = validateConfigSchema(
|
|
195
|
+
// Schema validation for SKILL.md frontmatter
|
|
196
|
+
if (rawFrontmatter) {
|
|
197
|
+
const schemaResult = validateConfigSchema(rawFrontmatter, AGENT_FRONTMATTER_SCHEMA);
|
|
198
|
+
errors.push(...schemaResult.errors);
|
|
199
|
+
warnings.push(...schemaResult.warnings);
|
|
200
|
+
}
|
|
201
|
+
// Schema validation for per-agent config.toml
|
|
202
|
+
if (rawRuntimeConfig) {
|
|
203
|
+
const schemaResult = validateConfigSchema(rawRuntimeConfig, AGENT_RUNTIME_CONFIG_SCHEMA, "config.toml");
|
|
191
204
|
errors.push(...schemaResult.errors);
|
|
192
205
|
warnings.push(...schemaResult.warnings);
|
|
193
206
|
}
|
|
@@ -240,9 +253,15 @@ export function detectGlobalConfigUnknownFields(raw) {
|
|
|
240
253
|
}
|
|
241
254
|
/**
|
|
242
255
|
* Check for unknown fields in agent SKILL.md frontmatter.
|
|
243
|
-
* Validates the
|
|
256
|
+
* Validates the portable frontmatter structure (name, description, license, compatibility).
|
|
244
257
|
*/
|
|
245
258
|
export function detectAgentFrontmatterUnknownFields(raw) {
|
|
246
259
|
return detectUnknownFields(raw, AGENT_FRONTMATTER_SCHEMA);
|
|
247
260
|
}
|
|
261
|
+
/**
|
|
262
|
+
* Check for unknown fields in per-agent config.toml.
|
|
263
|
+
*/
|
|
264
|
+
export function detectAgentRuntimeConfigUnknownFields(raw) {
|
|
265
|
+
return detectUnknownFields(raw, AGENT_RUNTIME_CONFIG_SCHEMA);
|
|
266
|
+
}
|
|
248
267
|
//# sourceMappingURL=validation.js.map
|