@ai-outfitter/outfitter 1.13.0 → 1.15.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 +4 -1
- package/code/pi-extension/src/outfitter-extension.js +2 -2
- package/dist/cli/OutfitterCli.js +2 -0
- package/dist/cli/OutfitterCli.js.map +1 -1
- package/dist/cli/commands/DumpCommand.js +17 -4
- package/dist/cli/commands/DumpCommand.js.map +1 -1
- package/dist/cli/commands/LinkCommand.d.ts +27 -0
- package/dist/cli/commands/LinkCommand.js +137 -0
- package/dist/cli/commands/LinkCommand.js.map +1 -0
- package/dist/cli/commands/ListCommand.js +8 -2
- package/dist/cli/commands/ListCommand.js.map +1 -1
- package/dist/cli/commands/RunAgentCommand.js +6 -1
- package/dist/cli/commands/RunAgentCommand.js.map +1 -1
- package/dist/cli/commands/ValidateCommand.js +5 -2
- package/dist/cli/commands/ValidateCommand.js.map +1 -1
- package/dist/cli.js +14 -6
- package/dist/cli.js.map +1 -1
- package/dist/composer/Chain.d.ts +10 -0
- package/dist/composer/Chain.js +47 -0
- package/dist/composer/Chain.js.map +1 -0
- package/dist/composer/Composer.d.ts +6 -0
- package/dist/composer/Composer.js +42 -141
- package/dist/composer/Composer.js.map +1 -1
- package/dist/composer/Composition.d.ts +16 -0
- package/dist/composer/Defaults.d.ts +33 -0
- package/dist/composer/Defaults.js +103 -0
- package/dist/composer/Defaults.js.map +1 -0
- package/dist/composer/Mcp.d.ts +3 -0
- package/dist/composer/Mcp.js +68 -0
- package/dist/composer/Mcp.js.map +1 -0
- package/dist/dump/Dump.d.ts +2 -1
- package/dist/dump/Dump.js +67 -4
- package/dist/dump/Dump.js.map +1 -1
- package/dist/dump/WorkflowDump.d.ts +9 -1
- package/dist/dump/WorkflowDump.js +4 -3
- package/dist/dump/WorkflowDump.js.map +1 -1
- package/dist/links/HarnessHome.d.ts +15 -0
- package/dist/links/HarnessHome.js +23 -0
- package/dist/links/HarnessHome.js.map +1 -0
- package/dist/links/HarnessLinkApply.d.ts +26 -0
- package/dist/links/HarnessLinkApply.js +356 -0
- package/dist/links/HarnessLinkApply.js.map +1 -0
- package/dist/links/HarnessLinkPlan.d.ts +70 -0
- package/dist/links/HarnessLinkPlan.js +224 -0
- package/dist/links/HarnessLinkPlan.js.map +1 -0
- package/dist/links/HarnessMcp.d.ts +9 -0
- package/dist/links/HarnessMcp.js +67 -0
- package/dist/links/HarnessMcp.js.map +1 -0
- package/dist/projection/CodexSettings.d.ts +3 -0
- package/dist/projection/CodexSettings.js +17 -0
- package/dist/projection/CodexSettings.js.map +1 -0
- package/dist/projection/Materialize.d.ts +20 -2
- package/dist/projection/Materialize.js +66 -33
- package/dist/projection/Materialize.js.map +1 -1
- package/dist/projection/ProjectHarness.js +58 -14
- package/dist/projection/ProjectHarness.js.map +1 -1
- package/dist/projection/Projection.d.ts +3 -1
- package/dist/resolver/ResolverValidation.d.ts +7 -0
- package/dist/resolver/ResolverValidation.js +46 -14
- package/dist/resolver/ResolverValidation.js.map +1 -1
- package/dist/schemas/settings.schema.json +54 -1
- package/dist/settings/Settings.d.ts +24 -0
- package/dist/settings/Settings.js +15 -0
- package/dist/settings/Settings.js.map +1 -1
- package/dist/settings/SettingsLoader.js +18 -0
- package/dist/settings/SettingsLoader.js.map +1 -1
- package/dist/settings/SettingsMerger.js +43 -0
- package/dist/settings/SettingsMerger.js.map +1 -1
- package/dist/setup/DefaultCatalog.d.ts +4 -2
- package/dist/setup/DefaultCatalog.js +5 -3
- package/dist/setup/DefaultCatalog.js.map +1 -1
- package/dist/setup/Setup.js +34 -12
- package/dist/setup/Setup.js.map +1 -1
- package/dist/version/NodeVersionGuard.d.ts +13 -0
- package/dist/version/NodeVersionGuard.js +50 -0
- package/dist/version/NodeVersionGuard.js.map +1 -0
- package/docs/architecture/state_writeback_strategy.md +1 -1
- package/docs/documentation/README.md +1 -1
- package/docs/documentation/cli.md +35 -1
- package/docs/documentation/conventions.md +1 -1
- package/docs/documentation/getting-started.md +4 -2
- package/docs/documentation/linking-harnesses.md +88 -0
- package/docs/documentation/local-development.md +5 -7
- package/docs/documentation/migration.md +1 -1
- package/docs/documentation/settings.md +75 -4
- package/docs/documentation/state.md +1 -1
- package/docs/documentation/support-matrix.md +3 -1
- package/docs/documentation/switching-to-outfitter.md +1 -1
- package/docs/documentation/usecases/shared-conventions.md +1 -1
- package/package.json +2 -1
- package/src/schemas/settings.schema.json +54 -1
- package/docs/documentation/porting-claude.md +0 -58
|
@@ -3,8 +3,9 @@ import { readFileSync, writeFileSync } from 'node:fs';
|
|
|
3
3
|
import { join } from 'node:path';
|
|
4
4
|
import { PI_SESSION_DIRECTORY_ENV } from '../agents/PiSessionDirectory.js';
|
|
5
5
|
import { projectCodexMcpServers } from './CodexMcp.js';
|
|
6
|
+
import { codexSettingKey, codexSettingValue } from './CodexSettings.js';
|
|
6
7
|
import { projectModel } from './ModelProjection.js';
|
|
7
|
-
import { applyPiRuntimeDefaults, materializeComposition, materializeConfigurationOverlays, writeClaudePluginManifest, } from './Materialize.js';
|
|
8
|
+
import { applyPiRuntimeDefaults, applyJsonSettingsDefaults, materializeComposition, materializeConfigurationOverlays, writeClaudePluginManifest, } from './Materialize.js';
|
|
8
9
|
import { toolArgs } from './Tools.js';
|
|
9
10
|
/**
|
|
10
11
|
* Inheriting is the default: a profile is a costume over the user's own harness, not a replacement
|
|
@@ -104,12 +105,32 @@ const promptArgs = (composition, input, systemPromptPath, appendPromptPaths) =>
|
|
|
104
105
|
const thinkingArg = (composition, harness) => composition.loadout.thinking === undefined
|
|
105
106
|
? []
|
|
106
107
|
: [harness === 'pi' ? '--thinking' : '--effort', composition.loadout.thinking];
|
|
108
|
+
const projectCodexDefaults = (defaults) => {
|
|
109
|
+
const args = [];
|
|
110
|
+
const warnings = [];
|
|
111
|
+
const visit = (value, path) => {
|
|
112
|
+
if (value !== null && typeof value === 'object' && !Array.isArray(value)) {
|
|
113
|
+
for (const [key, child] of Object.entries(value))
|
|
114
|
+
visit(child, [...path, key]);
|
|
115
|
+
return;
|
|
116
|
+
}
|
|
117
|
+
const encoded = codexSettingValue(value);
|
|
118
|
+
const key = codexSettingKey(path);
|
|
119
|
+
if (encoded === undefined)
|
|
120
|
+
warnings.push(`codex harness default '${key}' cannot be represented as TOML.`);
|
|
121
|
+
else
|
|
122
|
+
args.push('--config', `${key}=${encoded}`);
|
|
123
|
+
};
|
|
124
|
+
for (const [key, value] of Object.entries(defaults ?? {}))
|
|
125
|
+
visit(value, [key]);
|
|
126
|
+
return { args, warnings };
|
|
127
|
+
};
|
|
107
128
|
// MCP overrides lead and pass-through args trail so a pass-through positional (`exec "<prompt>"`)
|
|
108
129
|
// stays last, where codex expects its subcommand and prompt.
|
|
109
|
-
const buildCodexLaunchPlan = (input, codexMcpArgs, model) => ({
|
|
130
|
+
const buildCodexLaunchPlan = (input, defaultArgs, codexMcpArgs, model) => ({
|
|
110
131
|
command: 'codex',
|
|
111
132
|
// Root `-m` propagation through `exec` was verified empirically on codex-cli 0.145.0.
|
|
112
|
-
args: [...codexMcpArgs, ...model.args, ...(input.passThroughArgs ?? [])],
|
|
133
|
+
args: [...defaultArgs, ...codexMcpArgs, ...model.args, ...(input.passThroughArgs ?? [])],
|
|
113
134
|
env: model.env,
|
|
114
135
|
});
|
|
115
136
|
/**
|
|
@@ -132,9 +153,12 @@ const claudeMcpArgs = (mcpConfigPath, isolation) => [
|
|
|
132
153
|
* seeding and nothing needs copying back. Verified against Claude Code 2.1.226: a plugin directory
|
|
133
154
|
* loads skills unnamespaced, and commands and subagents under the plugin's name.
|
|
134
155
|
*/
|
|
135
|
-
const claudeConfigArgs = (rootDirectory, isolation) =>
|
|
136
|
-
|
|
137
|
-
...
|
|
156
|
+
const claudeConfigArgs = (rootDirectory, isolation, settingsPath) => [
|
|
157
|
+
...(isolation === 'isolated' ? [] : ['--plugin-dir', rootDirectory]),
|
|
158
|
+
...(settingsPath === undefined ? [] : ['--settings', settingsPath]),
|
|
159
|
+
];
|
|
160
|
+
const claudeArgs = (rootDirectory, isolation, settingsPath) => [
|
|
161
|
+
...claudeConfigArgs(rootDirectory, isolation, settingsPath),
|
|
138
162
|
...claudeMcpArgs(join(rootDirectory, 'mcp.json'), isolation),
|
|
139
163
|
];
|
|
140
164
|
const claudeEnv = (rootDirectory, isolation) => isolation === 'isolated' ? { CLAUDE_CONFIG_DIR: rootDirectory } : {};
|
|
@@ -148,10 +172,10 @@ const declareClaudePlugin = (composition, input) => {
|
|
|
148
172
|
return;
|
|
149
173
|
writeClaudePluginManifest(input.rootDirectory, input.profileSlug ?? 'outfitter', composition.identity.label);
|
|
150
174
|
};
|
|
151
|
-
const buildPiOrClaudeLaunchPlan = (composition, input, materialized, appendPromptPaths, model) => {
|
|
175
|
+
const buildPiOrClaudeLaunchPlan = (composition, input, materialized, appendPromptPaths, model, settingsPath) => {
|
|
152
176
|
const isPi = input.harness === 'pi';
|
|
153
177
|
const isolation = resolveProjectionIsolation(input);
|
|
154
|
-
const skillArgs = isPi ?
|
|
178
|
+
const skillArgs = isPi ? materialized.skillDirectories.flatMap((dir) => ['--skill', dir]) : [];
|
|
155
179
|
const extensionArgs = isPi ? (input.extensionLoadDirs ?? []).flatMap((dir) => ['--extension', dir]) : [];
|
|
156
180
|
return {
|
|
157
181
|
command: isPi ? 'pi' : 'claude',
|
|
@@ -165,7 +189,7 @@ const buildPiOrClaudeLaunchPlan = (composition, input, materialized, appendPromp
|
|
|
165
189
|
...extensionArgs,
|
|
166
190
|
...model.args,
|
|
167
191
|
...thinkingArg(composition, input.harness),
|
|
168
|
-
...(isPi ? [] : claudeArgs(input.rootDirectory, isolation)),
|
|
192
|
+
...(isPi ? [] : claudeArgs(input.rootDirectory, isolation, settingsPath)),
|
|
169
193
|
...(input.passThroughArgs ?? []),
|
|
170
194
|
],
|
|
171
195
|
// The projection root is deleted after the run, so pi's default session store (a subdirectory
|
|
@@ -180,12 +204,26 @@ const buildPiOrClaudeLaunchPlan = (composition, input, materialized, appendPromp
|
|
|
180
204
|
: { ...claudeEnv(input.rootDirectory, isolation), ...model.env },
|
|
181
205
|
};
|
|
182
206
|
};
|
|
183
|
-
|
|
184
|
-
|
|
207
|
+
const prepareHarnessDefaults = (input) => {
|
|
208
|
+
const defaultWarnings = [];
|
|
185
209
|
if (input.harness === 'pi') {
|
|
186
210
|
materializeConfigurationOverlays(input.configurationOverlayDirectories ?? [], input.rootDirectory);
|
|
211
|
+
const settingsPath = applyJsonSettingsDefaults(input.rootDirectory, input.harnessDefaults);
|
|
212
|
+
if (input.harnessDefaults !== undefined &&
|
|
213
|
+
Object.keys(input.harnessDefaults).length > 0 &&
|
|
214
|
+
settingsPath === undefined)
|
|
215
|
+
defaultWarnings.push('pi harness defaults could not be merged because settings.json is not a JSON object.');
|
|
187
216
|
applyPiRuntimeDefaults(input.rootDirectory);
|
|
188
217
|
}
|
|
218
|
+
const claudeSettingsPath = input.harness === 'claude' ? applyJsonSettingsDefaults(input.rootDirectory, input.harnessDefaults) : undefined;
|
|
219
|
+
const codex = input.harness === 'codex' ? projectCodexDefaults(input.harnessDefaults) : undefined;
|
|
220
|
+
if (codex !== undefined)
|
|
221
|
+
defaultWarnings.push(...codex.warnings);
|
|
222
|
+
return { warnings: defaultWarnings, claudeSettingsPath, codexArgs: codex === undefined ? [] : codex.args };
|
|
223
|
+
};
|
|
224
|
+
/** Materializes the composition into the runtime root and builds the harness launch plan. */
|
|
225
|
+
export const projectComposition = (composition, input) => {
|
|
226
|
+
const defaults = prepareHarnessDefaults(input);
|
|
189
227
|
// Materialization runs for every harness so containment and definition diagnostics are reported
|
|
190
228
|
// uniformly. Codex reads none of the generated files — it takes its MCP config in argv and has no
|
|
191
229
|
// config-directory projection yet — but the root is temporary, so the unused writes do not persist.
|
|
@@ -199,18 +237,24 @@ export const projectComposition = (composition, input) => {
|
|
|
199
237
|
];
|
|
200
238
|
if (input.harness === 'codex') {
|
|
201
239
|
const codexMcp = projectCodexMcpServers(composition.loadout.mcp, composition.loadout.mcpServers);
|
|
202
|
-
const launch = buildCodexLaunchPlan(input, codexMcp.args, projectedModel);
|
|
240
|
+
const launch = buildCodexLaunchPlan(input, defaults.codexArgs, codexMcp.args, projectedModel);
|
|
203
241
|
const warnings = [
|
|
204
242
|
...(input.appendPromptPaths?.length
|
|
205
243
|
? ['codex adapter does not project supplied append-prompt documents; they will be dropped.']
|
|
206
244
|
: []),
|
|
207
245
|
...codexMcp.warnings,
|
|
246
|
+
...defaults.warnings,
|
|
208
247
|
...projectedModel.warnings,
|
|
209
248
|
];
|
|
210
249
|
return { rootDirectory: input.rootDirectory, launch, unsupported, warnings };
|
|
211
250
|
}
|
|
212
251
|
// Caller documents follow the composition's own, so a persona is read against the agent it adopts.
|
|
213
|
-
const launch = buildPiOrClaudeLaunchPlan(composition, input, materialized, [...materialized.appendPromptPaths, ...(input.appendPromptPaths ?? [])], projectedModel);
|
|
214
|
-
return {
|
|
252
|
+
const launch = buildPiOrClaudeLaunchPlan(composition, input, materialized, [...materialized.appendPromptPaths, ...(input.appendPromptPaths ?? [])], projectedModel, defaults.claudeSettingsPath);
|
|
253
|
+
return {
|
|
254
|
+
rootDirectory: input.rootDirectory,
|
|
255
|
+
launch,
|
|
256
|
+
unsupported,
|
|
257
|
+
warnings: [...defaults.warnings, ...projectedModel.warnings],
|
|
258
|
+
};
|
|
215
259
|
};
|
|
216
260
|
//# sourceMappingURL=ProjectHarness.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ProjectHarness.js","sourceRoot":"","sources":["../../src/projection/ProjectHarness.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ProjectHarness.js","sourceRoot":"","sources":["../../src/projection/ProjectHarness.ts"],"names":[],"mappings":"AAAA,+FAA+F;AAC/F,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AACtD,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,wBAAwB,EAAE,MAAM,iCAAiC,CAAC;AAG3E,OAAO,EAAE,sBAAsB,EAAE,MAAM,eAAe,CAAC;AACvD,OAAO,EAAE,eAAe,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAGxE,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACpD,OAAO,EACL,sBAAsB,EACtB,yBAAyB,EACzB,sBAAsB,EACtB,gCAAgC,EAChC,yBAAyB,GAC1B,MAAM,kBAAkB,CAAC;AAE1B,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAEtC;;;;GAIG;AACH,MAAM,0BAA0B,GAAG,CAAC,KAAsB,EAAa,EAAE,CACvE,KAAK,CAAC,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,SAAS,IAAI,SAAS,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC;AAE3E,0FAA0F;AAC1F,+FAA+F;AAC/F,mGAAmG;AACnG,oGAAoG;AACpG,mGAAmG;AACnG,gGAAgG;AAChG,2FAA2F;AAC3F,iGAAiG;AACjG,gEAAgE;AAChE,gGAAgG;AAChG,oGAAoG;AACpG,MAAM,iBAAiB,GAAG,CAAC,KAAsB,EAAqB,EAAE;IACtE,MAAM,QAAQ,GAAG,CAAC,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,UAAU,EAAE,OAAO,CAAC,CAAC;IACtE,QAAQ,KAAK,CAAC,OAAO,EAAE,CAAC;QACtB,KAAK,QAAQ;YACX,OAAO,CAAC,GAAG,QAAQ,EAAE,WAAW,EAAE,KAAK,CAAC,CAAC;QAC3C,KAAK,OAAO;YACV,OAAO,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;QAC1B,KAAK,IAAI;YACP,OAAO,CAAC,GAAG,QAAQ,EAAE,WAAW,EAAE,KAAK,EAAE,iBAAiB,CAAC,CAAC;IAChE,CAAC;AACH,CAAC,CAAC;AAEF,MAAM,oBAAoB,GAAG,CAAC,WAA4B,EAAqB,EAAE;IAC/E,MAAM,EAAE,OAAO,EAAE,GAAG,WAAW,CAAC;IAChC,MAAM,OAAO,GAAa,CAAC,UAAU,CAAC,CAAC;IAEvC,IAAI,OAAO,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC;QAAE,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IACtD,IAAI,OAAO,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC;QAAE,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IAC5D,gGAAgG;IAChG,iGAAiG;IACjG,gGAAgG;IAChG,6FAA6F;IAC7F,gGAAgG;IAChG,4DAA4D;IAC5D,IAAI,OAAO,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC;QAAE,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IACxD,IAAI,OAAO,CAAC,GAAG,CAAC,MAAM,GAAG,CAAC;QAAE,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAChD,IAAI,OAAO,CAAC,KAAK,KAAK,SAAS;QAAE,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IACvD,IAAI,OAAO,CAAC,QAAQ,KAAK,SAAS;QAAE,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IAC7D,IAAI,OAAO,CAAC,KAAK,KAAK,SAAS;QAAE,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IACvD,IAAI,WAAW,CAAC,QAAQ,CAAC,cAAc,KAAK,SAAS;QAAE,OAAO,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;IAEvF,OAAO,OAAO,CAAC;AACjB,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,WAA4B,EAAE,KAAsB,EAAqB,EAAE,CAC7G,oBAAoB,CAAC,WAAW,CAAC,CAAC,MAAM,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC;AAErG;;;;;;;;;;;;;;;GAeG;AACH,MAAM,aAAa,GAAG,CAAC,OAAgB,EAAE,IAA8C,EAAU,EAAE,CACjG,OAAO,KAAK,IAAI,CAAC,CAAC,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,CAAC,KAAK,IAAI,OAAO,CAAC;AAEpD,MAAM,gBAAgB,GAAG,CAAC,OAAgB,EAAE,aAAqB,EAAE,KAAwB,EAAqB,EAAE;IAChH;oGACgG;IAChG,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,EAAE,CAAC;IAClC,IAAI,OAAO,KAAK,IAAI;QAAE,OAAO,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,wBAAwB,EAAE,IAAI,CAAC,CAAC,CAAC;IAEvF,MAAM,YAAY,GAAG,IAAI,CAAC,aAAa,EAAE,yBAAyB,CAAC,CAAC;IACpE,gGAAgG;IAChG,2EAA2E;IAC3E,MAAM,SAAS,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,YAAY,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC,CAAC;IACxF,aAAa,CAAC,YAAY,EAAE,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;IAClD,OAAO,CAAC,aAAa,CAAC,OAAO,EAAE,sBAAsB,CAAC,EAAE,YAAY,CAAC,CAAC;AACxE,CAAC,CAAC;AAEF,MAAM,UAAU,GAAG,CACjB,WAA4B,EAC5B,KAAsB,EACtB,gBAAwB,EACxB,iBAAoC,EACjB,EAAE,CAAC;IACtB,aAAa,CAAC,KAAK,CAAC,OAAO,EAAE,eAAe,CAAC;IAC7C,gBAAgB;IAChB,GAAG,gBAAgB,CAAC,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,aAAa,EAAE,iBAAiB,CAAC;IAC1E,GAAG,CAAC,KAAK,CAAC,OAAO,KAAK,IAAI,IAAI,WAAW,CAAC,QAAQ,CAAC,cAAc,KAAK,SAAS;QAC7E,CAAC,CAAC,CAAC,mBAAmB,EAAE,GAAG,KAAK,CAAC,aAAa,qBAAqB,CAAC;QACpE,CAAC,CAAC,EAAE,CAAC;CACR,CAAC;AAEF,MAAM,WAAW,GAAG,CAAC,WAA4B,EAAE,OAAgB,EAAqB,EAAE,CACxF,WAAW,CAAC,OAAO,CAAC,QAAQ,KAAK,SAAS;IACxC,CAAC,CAAC,EAAE;IACJ,CAAC,CAAC,CAAC,OAAO,KAAK,IAAI,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,UAAU,EAAE,WAAW,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;AAEnF,MAAM,oBAAoB,GAAG,CAC3B,QAA6D,EACe,EAAE;IAC9E,MAAM,IAAI,GAAa,EAAE,CAAC;IAC1B,MAAM,QAAQ,GAAa,EAAE,CAAC;IAC9B,MAAM,KAAK,GAAG,CAAC,KAAoB,EAAE,IAAuB,EAAQ,EAAE;QACpE,IAAI,KAAK,KAAK,IAAI,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;YACzE,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC;gBAAE,KAAK,CAAC,KAAK,EAAE,CAAC,GAAG,IAAI,EAAE,GAAG,CAAC,CAAC,CAAC;YAC/E,OAAO;QACT,CAAC;QACD,MAAM,OAAO,GAAG,iBAAiB,CAAC,KAAK,CAAC,CAAC;QACzC,MAAM,GAAG,GAAG,eAAe,CAAC,IAAI,CAAC,CAAC;QAClC,IAAI,OAAO,KAAK,SAAS;YAAE,QAAQ,CAAC,IAAI,CAAC,0BAA0B,GAAG,kCAAkC,CAAC,CAAC;;YACrG,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,GAAG,GAAG,IAAI,OAAO,EAAE,CAAC,CAAC;IAClD,CAAC,CAAC;IACF,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,QAAQ,IAAI,EAAE,CAAC;QAAE,KAAK,CAAC,KAAK,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IAC/E,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC;AAC5B,CAAC,CAAC;AAEF,kGAAkG;AAClG,6DAA6D;AAC7D,MAAM,oBAAoB,GAAG,CAC3B,KAAsB,EACtB,WAA8B,EAC9B,YAA+B,EAC/B,KAAqB,EACJ,EAAE,CAAC,CAAC;IACrB,OAAO,EAAE,OAAO;IAChB,sFAAsF;IACtF,IAAI,EAAE,CAAC,GAAG,WAAW,EAAE,GAAG,YAAY,EAAE,GAAG,KAAK,CAAC,IAAI,EAAE,GAAG,CAAC,KAAK,CAAC,eAAe,IAAI,EAAE,CAAC,CAAC;IACxF,GAAG,EAAE,KAAK,CAAC,GAAG;CACf,CAAC,CAAC;AAEH;;;;;GAKG;AACH,MAAM,aAAa,GAAG,CAAC,aAAqB,EAAE,SAAoB,EAAqB,EAAE,CAAC;IACxF,cAAc;IACd,aAAa;IACb,GAAG,CAAC,SAAS,KAAK,UAAU,CAAC,CAAC,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;CAC7D,CAAC;AAEF;;;;;;;;GAQG;AACH,MAAM,gBAAgB,GAAG,CACvB,aAAqB,EACrB,SAAoB,EACpB,YAAgC,EACb,EAAE,CAAC;IACtB,GAAG,CAAC,SAAS,KAAK,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,cAAc,EAAE,aAAa,CAAC,CAAC;IACpE,GAAG,CAAC,YAAY,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,YAAY,EAAE,YAAY,CAAC,CAAC;CACpE,CAAC;AAEF,MAAM,UAAU,GAAG,CAAC,aAAqB,EAAE,SAAoB,EAAE,YAAqB,EAAqB,EAAE,CAAC;IAC5G,GAAG,gBAAgB,CAAC,aAAa,EAAE,SAAS,EAAE,YAAY,CAAC;IAC3D,GAAG,aAAa,CAAC,IAAI,CAAC,aAAa,EAAE,UAAU,CAAC,EAAE,SAAS,CAAC;CAC7D,CAAC;AAEF,MAAM,SAAS,GAAG,CAAC,aAAqB,EAAE,SAAoB,EAAoC,EAAE,CAClG,SAAS,KAAK,UAAU,CAAC,CAAC,CAAC,EAAE,iBAAiB,EAAE,aAAa,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AAEvE;;;;GAIG;AACH,MAAM,mBAAmB,GAAG,CAAC,WAA4B,EAAE,KAAsB,EAAQ,EAAE;IACzF,IAAI,0BAA0B,CAAC,KAAK,CAAC,KAAK,SAAS;QAAE,OAAO;IAC5D,yBAAyB,CAAC,KAAK,CAAC,aAAa,EAAE,KAAK,CAAC,WAAW,IAAI,WAAW,EAAE,WAAW,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;AAC/G,CAAC,CAAC;AAEF,MAAM,yBAAyB,GAAG,CAChC,WAA4B,EAC5B,KAAsB,EACtB,YAAqC,EACrC,iBAAoC,EACpC,KAAqB,EACrB,YAAqB,EACJ,EAAE;IACnB,MAAM,IAAI,GAAG,KAAK,CAAC,OAAO,KAAK,IAAI,CAAC;IACpC,MAAM,SAAS,GAAG,0BAA0B,CAAC,KAAK,CAAC,CAAC;IACpD,MAAM,SAAS,GAAG,IAAI,CAAC,CAAC,CAAC,YAAY,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IAC/F,MAAM,aAAa,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,iBAAiB,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,aAAa,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IAEzG,OAAO;QACL,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,QAAQ;QAC/B,IAAI,EAAE;YACJ,wFAAwF;YACxF,4FAA4F;YAC5F,qFAAqF;YACrF,GAAG,CAAC,WAAW,CAAC,OAAO,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,OAAO,EAAE,WAAW,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;YACtG,GAAG,UAAU,CAAC,WAAW,EAAE,KAAK,EAAE,YAAY,CAAC,gBAAgB,EAAE,iBAAiB,CAAC;YACnF,GAAG,SAAS;YACZ,GAAG,aAAa;YAChB,GAAG,KAAK,CAAC,IAAI;YACb,GAAG,WAAW,CAAC,WAAW,EAAE,KAAK,CAAC,OAAO,CAAC;YAC1C,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,KAAK,CAAC,aAAa,EAAE,SAAS,EAAE,YAAY,CAAC,CAAC;YACzE,GAAG,CAAC,KAAK,CAAC,eAAe,IAAI,EAAE,CAAC;SACjC;QACD,8FAA8F;QAC9F,4FAA4F;QAC5F,iGAAiG;QACjG,GAAG,EAAE,IAAI;YACP,CAAC,CAAC;gBACE,mBAAmB,EAAE,KAAK,CAAC,aAAa;gBACxC,GAAG,CAAC,KAAK,CAAC,gBAAgB,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,wBAAwB,CAAC,EAAE,KAAK,CAAC,gBAAgB,EAAE,CAAC;gBACvG,GAAG,KAAK,CAAC,GAAG;aACb;YACH,CAAC,CAAC,EAAE,GAAG,SAAS,CAAC,KAAK,CAAC,aAAa,EAAE,SAAS,CAAC,EAAE,GAAG,KAAK,CAAC,GAAG,EAAE;KACnE,CAAC;AACJ,CAAC,CAAC;AAQF,MAAM,sBAAsB,GAAG,CAAC,KAAsB,EAA2B,EAAE;IACjF,MAAM,eAAe,GAAa,EAAE,CAAC;IACrC,IAAI,KAAK,CAAC,OAAO,KAAK,IAAI,EAAE,CAAC;QAC3B,gCAAgC,CAAC,KAAK,CAAC,+BAA+B,IAAI,EAAE,EAAE,KAAK,CAAC,aAAa,CAAC,CAAC;QACnG,MAAM,YAAY,GAAG,yBAAyB,CAAC,KAAK,CAAC,aAAa,EAAE,KAAK,CAAC,eAAe,CAAC,CAAC;QAC3F,IACE,KAAK,CAAC,eAAe,KAAK,SAAS;YACnC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,eAAe,CAAC,CAAC,MAAM,GAAG,CAAC;YAC7C,YAAY,KAAK,SAAS;YAE1B,eAAe,CAAC,IAAI,CAAC,qFAAqF,CAAC,CAAC;QAC9G,sBAAsB,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC;IAC9C,CAAC;IACD,MAAM,kBAAkB,GACtB,KAAK,CAAC,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,yBAAyB,CAAC,KAAK,CAAC,aAAa,EAAE,KAAK,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IACjH,MAAM,KAAK,GAAG,KAAK,CAAC,OAAO,KAAK,OAAO,CAAC,CAAC,CAAC,oBAAoB,CAAC,KAAK,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IAClG,IAAI,KAAK,KAAK,SAAS;QAAE,eAAe,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAC,CAAC;IACjE,OAAO,EAAE,QAAQ,EAAE,eAAe,EAAE,kBAAkB,EAAE,SAAS,EAAE,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;AAC7G,CAAC,CAAC;AAEF,6FAA6F;AAC7F,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,WAA4B,EAAE,KAAsB,EAAuB,EAAE;IAC9G,MAAM,QAAQ,GAAG,sBAAsB,CAAC,KAAK,CAAC,CAAC;IAC/C,gGAAgG;IAChG,kGAAkG;IAClG,oGAAoG;IACpG,MAAM,YAAY,GAAG,sBAAsB,CAAC,WAAW,EAAE,KAAK,CAAC,aAAa,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC;IAE7F,mBAAmB,CAAC,WAAW,EAAE,KAAK,CAAC,CAAC;IACxC,MAAM,cAAc,GAAG,YAAY,CAAC,WAAW,EAAE,KAAK,CAAC,CAAC;IAExD,MAAM,WAAW,GAAG;QAClB,GAAG,mBAAmB,CAAC,WAAW,EAAE,KAAK,CAAC;QAC1C,GAAG,YAAY,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,SAAS,IAAI,qBAAqB,CAAC;QAC/E,GAAG,YAAY,CAAC,gBAAgB,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,YAAY,IAAI,uBAAuB,CAAC;KACxF,CAAC;IAEF,IAAI,KAAK,CAAC,OAAO,KAAK,OAAO,EAAE,CAAC;QAC9B,MAAM,QAAQ,GAAG,sBAAsB,CAAC,WAAW,CAAC,OAAO,CAAC,GAAG,EAAE,WAAW,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;QACjG,MAAM,MAAM,GAAG,oBAAoB,CAAC,KAAK,EAAE,QAAQ,CAAC,SAAS,EAAE,QAAQ,CAAC,IAAI,EAAE,cAAc,CAAC,CAAC;QAC9F,MAAM,QAAQ,GAAG;YACf,GAAG,CAAC,KAAK,CAAC,iBAAiB,EAAE,MAAM;gBACjC,CAAC,CAAC,CAAC,wFAAwF,CAAC;gBAC5F,CAAC,CAAC,EAAE,CAAC;YACP,GAAG,QAAQ,CAAC,QAAQ;YACpB,GAAG,QAAQ,CAAC,QAAQ;YACpB,GAAG,cAAc,CAAC,QAAQ;SAC3B,CAAC;QACF,OAAO,EAAE,aAAa,EAAE,KAAK,CAAC,aAAa,EAAE,MAAM,EAAE,WAAW,EAAE,QAAQ,EAAE,CAAC;IAC/E,CAAC;IAED,mGAAmG;IACnG,MAAM,MAAM,GAAG,yBAAyB,CACtC,WAAW,EACX,KAAK,EACL,YAAY,EACZ,CAAC,GAAG,YAAY,CAAC,iBAAiB,EAAE,GAAG,CAAC,KAAK,CAAC,iBAAiB,IAAI,EAAE,CAAC,CAAC,EACvE,cAAc,EACd,QAAQ,CAAC,kBAAkB,CAC5B,CAAC;IAEF,OAAO;QACL,aAAa,EAAE,KAAK,CAAC,aAAa;QAClC,MAAM;QACN,WAAW;QACX,QAAQ,EAAE,CAAC,GAAG,QAAQ,CAAC,QAAQ,EAAE,GAAG,cAAc,CAAC,QAAQ,CAAC;KAC7D,CAAC;AACJ,CAAC,CAAC"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { Harness, Isolation } from '../settings/Settings.js';
|
|
1
|
+
import type { Harness, HarnessDefaultSettings, Isolation } from '../settings/Settings.js';
|
|
2
2
|
export interface AgentLaunchPlan {
|
|
3
3
|
readonly command: string;
|
|
4
4
|
readonly args: readonly string[];
|
|
@@ -40,4 +40,6 @@ export interface ProjectionInput {
|
|
|
40
40
|
readonly extensionLoadDirs?: readonly string[];
|
|
41
41
|
/** Harness-native configuration directories, highest precedence first, overlaid into the root. */
|
|
42
42
|
readonly configurationOverlayDirectories?: readonly string[];
|
|
43
|
+
/** Harness-native defaults from the merged Outfitter settings stack. */
|
|
44
|
+
readonly harnessDefaults?: HarnessDefaultSettings;
|
|
43
45
|
}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import type { AgentDefaults } from '../settings/Settings.js';
|
|
1
2
|
import type { EffectiveResourceSet } from './Resource.js';
|
|
2
3
|
export interface ValidationFinding {
|
|
3
4
|
readonly severity: 'error' | 'warning';
|
|
@@ -14,6 +15,12 @@ export interface ValidationFinding {
|
|
|
14
15
|
*/
|
|
15
16
|
export interface ValidationOptions {
|
|
16
17
|
readonly deferLoadoutResolution?: boolean;
|
|
18
|
+
/** Validate only these enabled workflow roots and their nested workflow closure. */
|
|
19
|
+
readonly workflowRoots?: readonly string[];
|
|
20
|
+
/** Settings-layer defaults composed into every agent during validation. */
|
|
21
|
+
readonly agentDefaults?: AgentDefaults;
|
|
22
|
+
/** Active repository root for `repo_file` prompt references during composition. */
|
|
23
|
+
readonly projectDirectory?: string;
|
|
17
24
|
}
|
|
18
25
|
/**
|
|
19
26
|
* Collects validation findings across the effective set. `error` findings always fail validation;
|
|
@@ -6,10 +6,11 @@ import { agentLocalKinds, findResource, listAgentResources, listResources } from
|
|
|
6
6
|
import { isWorkflowDefinitionIssue, readWorkflowDefinition } from './WorkflowDefinition.js';
|
|
7
7
|
// Matches the composer's top-level unresolved-loadout warning wording (see `compose` in Composer.ts).
|
|
8
8
|
// It is deliberately coupled to that message; `resolver-validation.test.ts` drives the real composer,
|
|
9
|
-
// so a wording drift fails that test rather than silently disabling deferral.
|
|
10
|
-
|
|
9
|
+
// so a wording drift fails that test rather than silently disabling deferral. Settings-layer
|
|
10
|
+
// defaults use the same wording with an `agent_defaults` prefix instead of `loadout`.
|
|
11
|
+
const isUnresolvedLoadoutReference = (message) => /^(?:loadout|agent_defaults) (?:skills|subagents) references unknown (?:skill|agent) '/.test(message);
|
|
11
12
|
const compositionWarningSeverity = (message, options) => isUnresolvedLoadoutReference(message) && !options.deferLoadoutResolution ? 'error' : 'warning';
|
|
12
|
-
const validateAgent = (set, agent, options
|
|
13
|
+
const validateAgent = (set, agent, options) => {
|
|
13
14
|
const definition = readAgentDefinition(agent.winner.path, agent.configPaths);
|
|
14
15
|
if (isAgentDefinitionIssue(definition)) {
|
|
15
16
|
return [{ severity: 'error', resource: `agent:${agent.slug}`, message: definition.message }];
|
|
@@ -23,7 +24,10 @@ const validateAgent = (set, agent, options, projectDirectory) => {
|
|
|
23
24
|
},
|
|
24
25
|
];
|
|
25
26
|
}
|
|
26
|
-
const composed = compose(set, agent.slug, {
|
|
27
|
+
const composed = compose(set, agent.slug, {
|
|
28
|
+
projectDirectory: options.projectDirectory,
|
|
29
|
+
agentDefaults: options.agentDefaults,
|
|
30
|
+
});
|
|
27
31
|
const compositionFindings = [
|
|
28
32
|
...composed.errors.map((message) => ({ severity: 'error', resource: `agent:${agent.slug}`, message })),
|
|
29
33
|
...composed.warnings.map((message) => ({
|
|
@@ -106,10 +110,25 @@ const workflowError = (slug, message) => ({
|
|
|
106
110
|
resource: `workflow:${slug}`,
|
|
107
111
|
message,
|
|
108
112
|
});
|
|
109
|
-
const
|
|
113
|
+
const findRequestedWorkflow = (set, slug, roots, findings) => {
|
|
114
|
+
const resource = findResource(set, 'workflow', slug);
|
|
115
|
+
if (resource === undefined && roots?.includes(slug) === true)
|
|
116
|
+
findings.push(workflowError(slug, 'enabled workflow is not resolvable.'));
|
|
117
|
+
return resource;
|
|
118
|
+
};
|
|
119
|
+
const workflowDefinitions = (set, roots) => {
|
|
110
120
|
const definitions = new Map();
|
|
111
121
|
const findings = [];
|
|
112
|
-
|
|
122
|
+
const pending = roots === undefined ? listResources(set, 'workflow').map((resource) => resource.slug) : [...roots];
|
|
123
|
+
const visited = new Set();
|
|
124
|
+
while (pending.length > 0) {
|
|
125
|
+
const slug = pending.shift();
|
|
126
|
+
if (visited.has(slug))
|
|
127
|
+
continue;
|
|
128
|
+
visited.add(slug);
|
|
129
|
+
const resource = findRequestedWorkflow(set, slug, roots, findings);
|
|
130
|
+
if (resource === undefined)
|
|
131
|
+
continue;
|
|
113
132
|
const definition = readWorkflowDefinition(resource.winner.path);
|
|
114
133
|
if (isWorkflowDefinitionIssue(definition)) {
|
|
115
134
|
findings.push(workflowError(resource.slug, definition.message));
|
|
@@ -119,6 +138,9 @@ const workflowDefinitions = (set) => {
|
|
|
119
138
|
}
|
|
120
139
|
else {
|
|
121
140
|
definitions.set(resource.slug, definition);
|
|
141
|
+
for (const node of definition.nodes)
|
|
142
|
+
if (node.workflow !== undefined)
|
|
143
|
+
pending.push(node.workflow);
|
|
122
144
|
}
|
|
123
145
|
}
|
|
124
146
|
return { definitions, findings };
|
|
@@ -145,14 +167,17 @@ const selectedMcpFindings = (workflow, node, profile, selected) => (node.uses ??
|
|
|
145
167
|
const hasAgentClosureAssertions = (workflow, node) => nodeSkills(node).length > 0 ||
|
|
146
168
|
nodePrompts(node).length > 0 ||
|
|
147
169
|
(node.uses ?? []).some((integrationId) => workflow.integrations?.[integrationId]?.kind === 'mcp');
|
|
148
|
-
const validateWorkflowAgentNode = (set, workflow, node,
|
|
170
|
+
const validateWorkflowAgentNode = (set, workflow, node, options) => {
|
|
149
171
|
const actor = node.actor === undefined ? undefined : workflow.actors[node.actor];
|
|
150
172
|
if (actor?.kind !== 'agent') {
|
|
151
173
|
return hasAgentClosureAssertions(workflow, node)
|
|
152
174
|
? [workflowError(workflow.id, `node '${node.id}' has agent-closure assertions but no agent actor.`)]
|
|
153
175
|
: [];
|
|
154
176
|
}
|
|
155
|
-
const composed = compose(set, actor.profile, {
|
|
177
|
+
const composed = compose(set, actor.profile, {
|
|
178
|
+
projectDirectory: options.projectDirectory,
|
|
179
|
+
agentDefaults: options.agentDefaults,
|
|
180
|
+
});
|
|
156
181
|
if (composed.plan === undefined) {
|
|
157
182
|
return composed.errors.map((message) => workflowError(workflow.id, `node '${node.id}' agent '${actor.profile}': ${message}`));
|
|
158
183
|
}
|
|
@@ -204,7 +229,7 @@ const validateWorkflowArtifacts = (workflow) => Object.entries(workflow.integrat
|
|
|
204
229
|
findings.push(workflowError(workflow.id, `artifact integration '${id}' must declare repository and path.`));
|
|
205
230
|
return findings;
|
|
206
231
|
});
|
|
207
|
-
const validateWorkflow = (set, workflow, definitions,
|
|
232
|
+
const validateWorkflow = (set, workflow, definitions, options) => {
|
|
208
233
|
const findings = [];
|
|
209
234
|
const nodeIds = new Set();
|
|
210
235
|
findings.push(...validateWorkflowActors(set, workflow));
|
|
@@ -215,7 +240,7 @@ const validateWorkflow = (set, workflow, definitions, projectDirectory) => {
|
|
|
215
240
|
}
|
|
216
241
|
for (const node of workflow.nodes) {
|
|
217
242
|
findings.push(...validateWorkflowNodeReferences(workflow, node, nodeIds, definitions));
|
|
218
|
-
findings.push(...validateWorkflowAgentNode(set, workflow, node,
|
|
243
|
+
findings.push(...validateWorkflowAgentNode(set, workflow, node, options));
|
|
219
244
|
}
|
|
220
245
|
for (const edge of workflow.feedback ?? []) {
|
|
221
246
|
if (!nodeIds.has(edge.from))
|
|
@@ -255,23 +280,30 @@ const workflowCycleFindings = (definitions) => {
|
|
|
255
280
|
*/
|
|
256
281
|
export const validateEffectiveSet = (set, projectDirectory, options = {}) => {
|
|
257
282
|
const findings = [];
|
|
283
|
+
const effectiveOptions = { ...options, projectDirectory };
|
|
258
284
|
for (const agent of listResources(set, 'agent')) {
|
|
259
|
-
findings.push(...validateAgent(set, agent,
|
|
285
|
+
findings.push(...validateAgent(set, agent, effectiveOptions), ...reservedNamespaceFindings(agent));
|
|
260
286
|
}
|
|
261
287
|
for (const skill of listResources(set, 'skill')) {
|
|
262
288
|
findings.push(...validateSkill(skill));
|
|
263
289
|
}
|
|
264
|
-
const workflows = workflowDefinitions(set);
|
|
290
|
+
const workflows = workflowDefinitions(set, options.workflowRoots);
|
|
265
291
|
findings.push(...workflows.findings);
|
|
266
292
|
for (const workflow of workflows.definitions.values()) {
|
|
267
|
-
findings.push(...validateWorkflow(set, workflow, workflows.definitions,
|
|
293
|
+
findings.push(...validateWorkflow(set, workflow, workflows.definitions, effectiveOptions));
|
|
268
294
|
}
|
|
269
295
|
findings.push(...workflowCycleFindings(workflows.definitions));
|
|
270
296
|
for (const [agentSlug] of set.agentResources) {
|
|
271
297
|
findings.push(...validateAgentLocalResources(set, agentSlug));
|
|
272
298
|
}
|
|
273
299
|
for (const kind of ['agent', 'skill', 'knowledge', 'command', 'workflow']) {
|
|
274
|
-
|
|
300
|
+
const resources = kind === 'workflow'
|
|
301
|
+
? [...workflows.definitions.keys()].flatMap((slug) => {
|
|
302
|
+
const resource = findResource(set, 'workflow', slug);
|
|
303
|
+
return resource === undefined ? [] : [resource];
|
|
304
|
+
})
|
|
305
|
+
: listResources(set, kind);
|
|
306
|
+
for (const resource of resources) {
|
|
275
307
|
findings.push(...shadowFindings(resource));
|
|
276
308
|
}
|
|
277
309
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ResolverValidation.js","sourceRoot":"","sources":["../../src/resolver/ResolverValidation.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ResolverValidation.js","sourceRoot":"","sources":["../../src/resolver/ResolverValidation.ts"],"names":[],"mappings":"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"}
|
|
@@ -77,6 +77,12 @@
|
|
|
77
77
|
"additionalProperties": false
|
|
78
78
|
}
|
|
79
79
|
},
|
|
80
|
+
"workflows": {
|
|
81
|
+
"type": "array",
|
|
82
|
+
"description": "Workflow root slugs explicitly enabled by this settings scope.",
|
|
83
|
+
"items": { "type": "string", "minLength": 1 },
|
|
84
|
+
"uniqueItems": true
|
|
85
|
+
},
|
|
80
86
|
"remote_settings": {
|
|
81
87
|
"type": "array",
|
|
82
88
|
"items": {
|
|
@@ -97,7 +103,54 @@
|
|
|
97
103
|
"custom_settings": {
|
|
98
104
|
"type": "object",
|
|
99
105
|
"description": "Arbitrary YAML-compatible values exposed to Outfitter composition templates as outfitter.custom_settings."
|
|
106
|
+
},
|
|
107
|
+
"agent_defaults": {
|
|
108
|
+
"type": "object",
|
|
109
|
+
"description": "Additive loadout entries composed into every agent before its own loadout, using the same deterministic ordering and stable de-duplication as inherited agent loadouts.",
|
|
110
|
+
"properties": {
|
|
111
|
+
"extensions": { "$ref": "#/$defs/slugList" },
|
|
112
|
+
"skills": { "$ref": "#/$defs/slugList" },
|
|
113
|
+
"mcp": { "$ref": "#/$defs/slugList" },
|
|
114
|
+
"plugins": { "$ref": "#/$defs/slugList" },
|
|
115
|
+
"subagents": { "$ref": "#/$defs/slugList" },
|
|
116
|
+
"append_system_prompt": {
|
|
117
|
+
"oneOf": [
|
|
118
|
+
{ "$ref": "#/$defs/promptSource" },
|
|
119
|
+
{ "type": "array", "items": { "$ref": "#/$defs/promptSource" } }
|
|
120
|
+
]
|
|
121
|
+
}
|
|
122
|
+
},
|
|
123
|
+
"additionalProperties": false
|
|
124
|
+
},
|
|
125
|
+
"harness_defaults": {
|
|
126
|
+
"type": "object",
|
|
127
|
+
"description": "Harness-native settings applied to every composed agent and persistently reconciled by outfitter link.",
|
|
128
|
+
"properties": {
|
|
129
|
+
"pi": { "$ref": "#/$defs/nativeSettings" },
|
|
130
|
+
"claude": { "$ref": "#/$defs/nativeSettings" },
|
|
131
|
+
"codex": { "$ref": "#/$defs/nativeSettings" }
|
|
132
|
+
},
|
|
133
|
+
"additionalProperties": false
|
|
100
134
|
}
|
|
101
135
|
},
|
|
102
|
-
"additionalProperties": true
|
|
136
|
+
"additionalProperties": true,
|
|
137
|
+
"$defs": {
|
|
138
|
+
"slugList": {
|
|
139
|
+
"type": "array",
|
|
140
|
+
"items": { "type": "string", "minLength": 1 }
|
|
141
|
+
},
|
|
142
|
+
"promptSource": {
|
|
143
|
+
"type": "object",
|
|
144
|
+
"oneOf": [{ "required": ["file"] }, { "required": ["repo_file"] }],
|
|
145
|
+
"properties": {
|
|
146
|
+
"file": { "type": "string", "minLength": 1 },
|
|
147
|
+
"repo_file": { "type": "string", "minLength": 1 }
|
|
148
|
+
},
|
|
149
|
+
"additionalProperties": false
|
|
150
|
+
},
|
|
151
|
+
"nativeSettings": {
|
|
152
|
+
"type": "object",
|
|
153
|
+
"description": "A harness-native settings document. Native keys are validated by the selected harness release."
|
|
154
|
+
}
|
|
155
|
+
}
|
|
103
156
|
}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import type { PromptSourceReference } from '../composer/PromptSource.js';
|
|
1
2
|
import type { RemoteSourceReference } from '../sources/SourceCache.js';
|
|
2
3
|
export type RemoteSettingsReference = RemoteSourceReference & {
|
|
3
4
|
readonly path: string;
|
|
@@ -6,9 +7,11 @@ export type SettingsValue = string | number | boolean | null | readonly Settings
|
|
|
6
7
|
readonly [key: string]: SettingsValue;
|
|
7
8
|
};
|
|
8
9
|
export type CustomSettings = Readonly<Record<string, SettingsValue>>;
|
|
10
|
+
export type HarnessDefaultSettings = Readonly<Record<string, SettingsValue>>;
|
|
9
11
|
/** Harnesses Outfitter can launch a composed agent in. */
|
|
10
12
|
export declare const HARNESSES: readonly ["pi", "claude", "codex"];
|
|
11
13
|
export type Harness = (typeof HARNESSES)[number];
|
|
14
|
+
export type HarnessDefaults = Readonly<Partial<Record<Harness, HarnessDefaultSettings>>>;
|
|
12
15
|
/**
|
|
13
16
|
* How much of the user's own harness configuration a run stands on. `inherit` layers the
|
|
14
17
|
* composition over the machine's native configuration — trust, permissions, credentials, and the
|
|
@@ -52,6 +55,21 @@ export interface EnterpriseSettings {
|
|
|
52
55
|
export interface TelemetrySettings {
|
|
53
56
|
readonly enabled?: boolean;
|
|
54
57
|
}
|
|
58
|
+
/**
|
|
59
|
+
* Additive loadout entries composed into every agent before its own loadout. Only the loadout
|
|
60
|
+
* fields with additive union semantics are supported; per-agent overrides like `model`, `thinking`,
|
|
61
|
+
* and `tools` stay agent-owned so an organization default can never silently pin a scalar.
|
|
62
|
+
*/
|
|
63
|
+
export interface AgentDefaults {
|
|
64
|
+
readonly extensions?: readonly string[];
|
|
65
|
+
readonly skills?: readonly string[];
|
|
66
|
+
readonly mcp?: readonly string[];
|
|
67
|
+
readonly plugins?: readonly string[];
|
|
68
|
+
readonly subagents?: readonly string[];
|
|
69
|
+
readonly appendSystemPrompt?: readonly PromptSourceReference[];
|
|
70
|
+
}
|
|
71
|
+
/** True when no defaults field carries an entry, so the settings layer contributes nothing. */
|
|
72
|
+
export declare const isEmptyAgentDefaults: (defaults: AgentDefaults | undefined) => boolean;
|
|
55
73
|
export interface SourceCacheSettings {
|
|
56
74
|
readonly policy?: SourceCachePolicy;
|
|
57
75
|
}
|
|
@@ -67,6 +85,8 @@ export interface Settings {
|
|
|
67
85
|
*/
|
|
68
86
|
readonly isolation?: Isolation;
|
|
69
87
|
readonly sources?: readonly SourceReference[];
|
|
88
|
+
/** Workflow root slugs this settings stack explicitly enables. */
|
|
89
|
+
readonly workflows?: readonly string[];
|
|
70
90
|
readonly remoteSettings?: readonly RemoteSettingsReference[];
|
|
71
91
|
readonly cacheDirectory?: string;
|
|
72
92
|
readonly sourceCache?: SourceCacheSettings;
|
|
@@ -75,5 +95,9 @@ export interface Settings {
|
|
|
75
95
|
readonly startup?: StartupSettings;
|
|
76
96
|
readonly enterprise?: EnterpriseSettings;
|
|
77
97
|
readonly telemetry?: TelemetrySettings;
|
|
98
|
+
/** Additive loadout entries composed into every agent before its own loadout. */
|
|
99
|
+
readonly agentDefaults?: AgentDefaults;
|
|
100
|
+
/** Native settings applied to every run of each harness and by `outfitter link`. */
|
|
101
|
+
readonly harnessDefaults?: HarnessDefaults;
|
|
78
102
|
}
|
|
79
103
|
export declare const emptySettings: () => Settings;
|
|
@@ -8,8 +8,23 @@ export const HARNESSES = ['pi', 'claude', 'codex'];
|
|
|
8
8
|
*/
|
|
9
9
|
export const ISOLATIONS = ['inherit', 'isolated'];
|
|
10
10
|
export const SOURCE_CACHE_POLICIES = ['repair', 'locked', 'offline'];
|
|
11
|
+
/** True when no defaults field carries an entry, so the settings layer contributes nothing. */
|
|
12
|
+
export const isEmptyAgentDefaults = (defaults) => {
|
|
13
|
+
if (defaults === undefined)
|
|
14
|
+
return true;
|
|
15
|
+
const fields = [
|
|
16
|
+
defaults.extensions,
|
|
17
|
+
defaults.skills,
|
|
18
|
+
defaults.mcp,
|
|
19
|
+
defaults.plugins,
|
|
20
|
+
defaults.subagents,
|
|
21
|
+
defaults.appendSystemPrompt,
|
|
22
|
+
];
|
|
23
|
+
return fields.every((values) => values === undefined || values.length === 0);
|
|
24
|
+
};
|
|
11
25
|
export const emptySettings = () => ({
|
|
12
26
|
sources: [],
|
|
27
|
+
workflows: [],
|
|
13
28
|
remoteSettings: [],
|
|
14
29
|
});
|
|
15
30
|
//# sourceMappingURL=Settings.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Settings.js","sourceRoot":"","sources":["../../src/settings/Settings.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"Settings.js","sourceRoot":"","sources":["../../src/settings/Settings.ts"],"names":[],"mappings":"AAUA,0DAA0D;AAC1D,MAAM,CAAC,MAAM,SAAS,GAAG,CAAC,IAAI,EAAE,QAAQ,EAAE,OAAO,CAAU,CAAC;AAI5D;;;;;GAKG;AACH,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,SAAS,EAAE,UAAU,CAAU,CAAC;AAM3D,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,QAAQ,EAAE,QAAQ,EAAE,SAAS,CAAU,CAAC;AAuC9E,+FAA+F;AAC/F,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,QAAmC,EAAW,EAAE;IACnF,IAAI,QAAQ,KAAK,SAAS;QAAE,OAAO,IAAI,CAAC;IACxC,MAAM,MAAM,GAAG;QACb,QAAQ,CAAC,UAAU;QACnB,QAAQ,CAAC,MAAM;QACf,QAAQ,CAAC,GAAG;QACZ,QAAQ,CAAC,OAAO;QAChB,QAAQ,CAAC,SAAS;QAClB,QAAQ,CAAC,kBAAkB;KAC5B,CAAC;IACF,OAAO,MAAM,CAAC,KAAK,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,KAAK,SAAS,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC;AAC/E,CAAC,CAAC;AAkCF,MAAM,CAAC,MAAM,aAAa,GAAG,GAAa,EAAE,CAAC,CAAC;IAC5C,OAAO,EAAE,EAAE;IACX,SAAS,EAAE,EAAE;IACb,cAAc,EAAE,EAAE;CACnB,CAAC,CAAC"}
|
|
@@ -126,6 +126,7 @@ const convertSettingsDocument = (document, settingsDirectory, scope) => ({
|
|
|
126
126
|
defaultHarness: document.default_harness,
|
|
127
127
|
isolation: isHomeScope(scope) ? document.isolation : undefined,
|
|
128
128
|
sources: document.sources?.map((source) => convertSource(source, settingsDirectory)),
|
|
129
|
+
workflows: document.workflows,
|
|
129
130
|
remoteSettings: document.remote_settings?.map(convertRemoteSettingsSource),
|
|
130
131
|
cacheDirectory: document.cache_directory === undefined
|
|
131
132
|
? undefined
|
|
@@ -136,10 +137,27 @@ const convertSettingsDocument = (document, settingsDirectory, scope) => ({
|
|
|
136
137
|
startup: convertStartupSettings(document.startup),
|
|
137
138
|
enterprise: isHomeScope(scope) ? convertEnterpriseSettings(document.enterprise) : undefined,
|
|
138
139
|
telemetry: convertTelemetrySettings(document.telemetry),
|
|
140
|
+
agentDefaults: convertAgentDefaults(document.agent_defaults),
|
|
141
|
+
harnessDefaults: document.harness_defaults,
|
|
139
142
|
});
|
|
140
143
|
const convertStartupSettings = (startup) => startup === undefined ? undefined : { asciiArt: startup.ascii_art };
|
|
141
144
|
const convertEnterpriseSettings = (enterprise) => enterprise === undefined ? undefined : { privateCatalogs: enterprise.private_catalogs };
|
|
142
145
|
const convertTelemetrySettings = (telemetry) => telemetry === undefined ? undefined : { enabled: telemetry.enabled };
|
|
146
|
+
const convertAgentDefaults = (defaults) => defaults === undefined
|
|
147
|
+
? undefined
|
|
148
|
+
: {
|
|
149
|
+
extensions: defaults.extensions,
|
|
150
|
+
skills: defaults.skills,
|
|
151
|
+
mcp: defaults.mcp,
|
|
152
|
+
plugins: defaults.plugins,
|
|
153
|
+
subagents: defaults.subagents,
|
|
154
|
+
// The settings schema guarantees each entry is a `{file}` or `{repo_file}` source.
|
|
155
|
+
appendSystemPrompt: Array.isArray(defaults.append_system_prompt)
|
|
156
|
+
? defaults.append_system_prompt
|
|
157
|
+
: defaults.append_system_prompt === undefined
|
|
158
|
+
? undefined
|
|
159
|
+
: [defaults.append_system_prompt],
|
|
160
|
+
};
|
|
143
161
|
const convertRemoteSettingsSource = (source) => {
|
|
144
162
|
if (source.uri !== undefined) {
|
|
145
163
|
return { uri: source.uri, ref: source.ref, path: source.path };
|