@ai-outfitter/outfitter 1.11.0 → 1.13.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.
Files changed (65) hide show
  1. package/.outfitter/skills/outfitter/SKILL.md +4 -0
  2. package/README.md +5 -1
  3. package/dist/cli/OutfitterCli.js +2 -0
  4. package/dist/cli/OutfitterCli.js.map +1 -1
  5. package/dist/cli/commands/DumpCommand.d.ts +1 -0
  6. package/dist/cli/commands/DumpCommand.js +12 -5
  7. package/dist/cli/commands/DumpCommand.js.map +1 -1
  8. package/dist/cli/commands/ListCommand.d.ts +9 -0
  9. package/dist/cli/commands/ListCommand.js +25 -9
  10. package/dist/cli/commands/ListCommand.js.map +1 -1
  11. package/dist/cli/commands/RunAgentCommand.d.ts +5 -0
  12. package/dist/cli/commands/RunAgentCommand.js +16 -1
  13. package/dist/cli/commands/RunAgentCommand.js.map +1 -1
  14. package/dist/cli/commands/SetupCommand.d.ts +2 -1
  15. package/dist/cli/commands/SetupCommand.js +1 -0
  16. package/dist/cli/commands/SetupCommand.js.map +1 -1
  17. package/dist/cli/commands/SourcesCommand.d.ts +19 -0
  18. package/dist/cli/commands/SourcesCommand.js +85 -0
  19. package/dist/cli/commands/SourcesCommand.js.map +1 -0
  20. package/dist/cli/commands/SyncCommand.js +8 -0
  21. package/dist/cli/commands/SyncCommand.js.map +1 -1
  22. package/dist/dump/WorkflowDump.d.ts +4 -0
  23. package/dist/dump/WorkflowDump.js +148 -0
  24. package/dist/dump/WorkflowDump.js.map +1 -0
  25. package/dist/resolver/Resolver.js +2 -0
  26. package/dist/resolver/Resolver.js.map +1 -1
  27. package/dist/resolver/ResolverValidation.js +156 -1
  28. package/dist/resolver/ResolverValidation.js.map +1 -1
  29. package/dist/resolver/Resource.d.ts +1 -1
  30. package/dist/resolver/Resource.js +1 -1
  31. package/dist/resolver/Resource.js.map +1 -1
  32. package/dist/resolver/WorkflowDefinition.d.ts +56 -0
  33. package/dist/resolver/WorkflowDefinition.js +23 -0
  34. package/dist/resolver/WorkflowDefinition.js.map +1 -0
  35. package/dist/schemas/settings.schema.json +5 -0
  36. package/dist/schemas/workflow.schema.json +81 -0
  37. package/dist/settings/Settings.d.ts +6 -0
  38. package/dist/settings/Settings.js +1 -0
  39. package/dist/settings/Settings.js.map +1 -1
  40. package/dist/settings/SettingsLoader.js +1 -0
  41. package/dist/settings/SettingsLoader.js.map +1 -1
  42. package/dist/settings/SettingsMerger.js +3 -0
  43. package/dist/settings/SettingsMerger.js.map +1 -1
  44. package/dist/setup/DefaultCatalog.js +19 -3
  45. package/dist/setup/DefaultCatalog.js.map +1 -1
  46. package/dist/sources/SourceCachePolicy.d.ts +11 -0
  47. package/dist/sources/SourceCachePolicy.js +48 -0
  48. package/dist/sources/SourceCachePolicy.js.map +1 -0
  49. package/dist/sources/SourceState.d.ts +32 -0
  50. package/dist/sources/SourceState.js +90 -0
  51. package/dist/sources/SourceState.js.map +1 -0
  52. package/dist/validation/SchemaValidator.d.ts +1 -1
  53. package/dist/validation/SchemaValidator.js +2 -0
  54. package/dist/validation/SchemaValidator.js.map +1 -1
  55. package/docs/documentation/README.md +5 -3
  56. package/docs/documentation/ai-outfitter.md +259 -0
  57. package/docs/documentation/assets/feature-to-pr.svg +70 -0
  58. package/docs/documentation/catalogs.md +9 -1
  59. package/docs/documentation/cli.md +21 -8
  60. package/docs/documentation/containers.md +3 -80
  61. package/docs/documentation/dump-and-bake.md +2 -0
  62. package/docs/documentation/settings.md +5 -0
  63. package/package.json +1 -1
  64. package/src/schemas/settings.schema.json +5 -0
  65. package/src/schemas/workflow.schema.json +81 -0
@@ -10,6 +10,7 @@ import { createSettingsLoadPlan, discoverSettingsLoadPlan, formatSettingsIssue,
10
10
  import { syncRemoteRepositoryAtomically, tryReadCleanHead } from '../../sources/GitRepository.js';
11
11
  import { createEnterprisePrivateCatalogGate, } from '../../sources/PrivateCatalogGate.js';
12
12
  import { createRemoteRepositoryCachePath, encodeRemoteSourceSelection, formatRemoteSourceDisplay, isRemoteSource, redactEmbeddedSourceCredentials, resolveSourcePayloadRoot, } from '../../sources/SourceCache.js';
13
+ import { writeSourceState } from '../../sources/SourceState.js';
13
14
  import { readDeclaredRemoteSources } from '../../sources/TransitiveSources.js';
14
15
  import { resolveHomeDirectory, resolveProjectDirectory } from './ProcessDefaults.js';
15
16
  const formatSettingsIssues = (heading, issues) => [
@@ -63,6 +64,13 @@ const syncPhase = (input) => {
63
64
  source,
64
65
  validate: (repositoryPath) => input.validate(repositoryPath, source),
65
66
  });
67
+ writeSourceState({
68
+ homeDirectory: input.homeDirectory,
69
+ cacheDirectory: input.cacheDirectory,
70
+ cachePath,
71
+ source,
72
+ commit: result.commit,
73
+ });
66
74
  return {
67
75
  source,
68
76
  result: {
@@ -1 +1 @@
1
- {"version":3,"file":"SyncCommand.js","sourceRoot":"","sources":["../../../src/cli/commands/SyncCommand.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"SyncCommand.js","sourceRoot":"","sources":["../../../src/cli/commands/SyncCommand.ts"],"names":[],"mappings":"AAAA,yEAAyE;AACzE,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAErC,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAEpC,OAAO,EAAE,6BAA6B,EAAE,MAAM,qCAAqC,CAAC;AACpF,OAAO,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAC5D,OAAO,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AAC9D,OAAO,EAAE,mBAAmB,EAAE,MAAM,mCAAmC,CAAC;AACxE,OAAO,EAAE,oBAAoB,EAAE,MAAM,sCAAsC,CAAC;AAC5E,OAAO,EACL,sBAAsB,EACtB,wBAAwB,EACxB,mBAAmB,EACnB,YAAY,EACZ,iBAAiB,EACjB,oCAAoC,EACpC,yBAAyB,GAC1B,MAAM,kCAAkC,CAAC;AAG1C,OAAO,EAAE,8BAA8B,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAC;AAClG,OAAO,EACL,kCAAkC,GAInC,MAAM,qCAAqC,CAAC;AAC7C,OAAO,EACL,+BAA+B,EAC/B,2BAA2B,EAC3B,yBAAyB,EACzB,cAAc,EACd,+BAA+B,EAC/B,wBAAwB,GACzB,MAAM,8BAA8B,CAAC;AAEtC,OAAO,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AAChE,OAAO,EAAE,yBAAyB,EAAE,MAAM,oCAAoC,CAAC;AAE/E,OAAO,EAAE,oBAAoB,EAAE,uBAAuB,EAAE,MAAM,sBAAsB,CAAC;AA8CrF,MAAM,oBAAoB,GAAG,CAAC,OAAe,EAAE,MAAoC,EAAqB,EAAE,CAAC;IACzG,OAAO;IACP,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,WAAW,mBAAmB,CAAC,KAAK,CAAC,EAAE,CAAC;CAClE,CAAC;AAEF,MAAM,YAAY,GAAG,CAAC,MAAwB,EAAU,EAAE,CACxD,GAAG,MAAM,CAAC,MAAM,KAAK,MAAM,CAAC,IAAI,IAAI,MAAM,CAAC,GAAG,OAAO,MAAM,CAAC,SAAS,GACnE,MAAM,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,MAAM,CAAC,OAAO,GACzD,EAAE,CAAC;AAEL,MAAM,iBAAiB,GAAG,CAAC,KAAc,EAAU,EAAE;IACnD,0EAA0E;IAC1E,IAAI,KAAK,YAAY,KAAK;QAAE,OAAO,KAAK,CAAC,OAAO,CAAC;IACjD,OAAO,MAAM,CAAC,KAAK,CAAC,CAAC;AACvB,CAAC,CAAC;AAEF,MAAM,8BAA8B,GAAG,CAAC,cAAsB,EAAE,MAA+B,EAAU,EAAE;IACzG,MAAM,YAAY,GAAG,yBAAyB,CAAC,cAAc,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC;IAC5E,IAAI,CAAC,UAAU,CAAC,YAAY,CAAC,EAAE,CAAC;QAC9B,MAAM,IAAI,KAAK,CAAC,yBAAyB,MAAM,CAAC,IAAI,4CAA4C,CAAC,CAAC;IACpG,CAAC;IACD,MAAM,MAAM,GAAG,iBAAiB,CAAC,sBAAsB,CAAC,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,IAAI,EAAE,YAAY,EAAE,CAAC,CAAC,CAAC,CAAC;IACpG,IAAI,MAAM,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC7B,MAAM,IAAI,KAAK,CAAC,wCAAwC,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,mBAAmB,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAC/G,CAAC;IACD,OAAO,CAAC,CAAC;AACX,CAAC,CAAC;AAEF,MAAM,sBAAsB,GAAG,CAAC,cAAsB,EAAE,MAA6B,EAAU,EAAE;IAC/F,MAAM,KAAK,GAAG,iBAAiB,CAAC,cAAc,EAAE,MAAM,CAAC,CAAC;IACxD,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC;QAC5B,MAAM,IAAI,KAAK,CAAC,2BAA2B,MAAM,CAAC,IAAI,4CAA4C,CAAC,CAAC;IACtG,CAAC;IAED,iGAAiG;IACjG,oGAAoG;IACpG,qGAAqG;IACrG,MAAM,QAAQ,GAAG,oBAAoB,CAAC,gBAAgB,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,SAAS,EAAE,EAAE,sBAAsB,EAAE,IAAI,EAAE,CAAC,CAAC;IAC9G,MAAM,MAAM,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,QAAQ,KAAK,OAAO,CAAC,CAAC;IAC1E,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACtB,MAAM,IAAI,KAAK,CACb,8BAA8B,MAAM,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,GAAG,OAAO,CAAC,QAAQ,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAC7G,CAAC;IACJ,CAAC;IACD,OAAO,QAAQ,CAAC,MAAM,CAAC;AACzB,CAAC,CAAC;AAYF,kGAAkG;AAClG,MAAM,SAAS,GAAG,CAAkC,KAAwB,EAAsB,EAAE;IAClG,MAAM,KAAK,GAAG,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,cAAc,CAAC,CAAC;IACrE,kGAAkG;IAClG,oFAAoF;IACpF,MAAM,MAAM,GAAG,KAAK,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC,MAAM,EAA6D,EAAE;QAC5G,MAAM,SAAS,GAAG,+BAA+B,CAAC,KAAK,CAAC,aAAa,EAAE,MAAM,EAAE,KAAK,CAAC,cAAc,CAAC,CAAC;QACrG,MAAM,GAAG,GAAG,yBAAyB,CAAC,MAAM,CAAC,CAAC;QAE9C,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,KAAK,CAAC,cAAc,CAAC;gBAClC,SAAS;gBACT,MAAM;gBACN,QAAQ,EAAE,CAAC,cAAc,EAAE,EAAE,CAAC,KAAK,CAAC,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;aACrE,CAAC,CAAC;YACH,gBAAgB,CAAC;gBACf,aAAa,EAAE,KAAK,CAAC,aAAa;gBAClC,cAAc,EAAE,KAAK,CAAC,cAAc;gBACpC,SAAS;gBACT,MAAM;gBACN,MAAM,EAAE,MAAM,CAAC,MAAM;aACtB,CAAC,CAAC;YACH,OAAO;gBACL,MAAM;gBACN,MAAM,EAAE;oBACN,IAAI,EAAE,KAAK,CAAC,IAAI;oBAChB,GAAG;oBACH,SAAS;oBACT,MAAM,EAAE,MAAM,CAAC,MAAM;oBACrB,OAAO,EAAE,MAAM,CAAC,QAAQ,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,kBAAkB,MAAM,CAAC,QAAQ,aAAa;iBAC5F;aACF,CAAC;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO;gBACL,MAAM;gBACN,MAAM,EAAE;oBACN,IAAI,EAAE,KAAK,CAAC,IAAI;oBAChB,GAAG;oBACH,SAAS;oBACT,MAAM,EAAE,QAAQ;oBAChB,OAAO,EAAE,+BAA+B,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC;iBACnE;aACF,CAAC;QACJ,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,OAAO;QACL,cAAc,EAAE,KAAK,CAAC,cAAc;QACpC,QAAQ,EAAE,KAAK,CAAC,QAAQ;QACxB,OAAO,EAAE;YACP,GAAG,KAAK,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,MAAM,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC;YAC1E,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC;SAC/B;QACD,+FAA+F;QAC/F,yFAAyF;QACzF,6FAA6F;QAC7F,+DAA+D;QAC/D,eAAe,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,gBAAgB,CAAC,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,KAAK,SAAS,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC;KAC/G,CAAC;AACJ,CAAC,CAAC;AAiBF,8FAA8F;AAC9F,MAAM,qBAAqB,GAAG,CAAC,KAA6B,EAA2B,EAAE;IACvF,MAAM,QAAQ,GAAa,EAAE,CAAC;IAC9B,MAAM,OAAO,GAAuB,EAAE,CAAC;IACvC,MAAM,OAAO,GAAG,IAAI,GAAG,CAAC,KAAK,CAAC,mBAAmB,CAAC,GAAG,CAAC,2BAA2B,CAAC,CAAC,CAAC;IAEpF,IAAI,QAAQ,GAAG,KAAK,CAAC,WAAW,CAAC,eAAe,CAAC;IACjD,OAAO,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC3B,MAAM,UAAU,GAA4B,EAAE,CAAC;QAE/C,KAAK,MAAM,MAAM,IAAI,QAAQ,EAAE,CAAC;YAC9B,MAAM,YAAY,GAAG,+BAA+B,CAAC,KAAK,CAAC,aAAa,EAAE,MAAM,EAAE,KAAK,CAAC,cAAc,CAAC,CAAC;YACxG,8FAA8F;YAC9F,2EAA2E;YAC3E,IAAI,WAAmB,CAAC;YACxB,IAAI,CAAC;gBACH,WAAW,GAAG,wBAAwB,CAAC,YAAY,EAAE,MAAM,CAAC,CAAC;YAC/D,CAAC;YAAC,MAAM,CAAC;gBACP,SAAS;YACX,CAAC;YACD,MAAM,QAAQ,GAAG,yBAAyB,CAAC,WAAW,EAAE,YAAY,EAAE,yBAAyB,CAAC,MAAM,CAAC,CAAC,CAAC;YACzG,QAAQ,CAAC,IAAI,CAAC,GAAG,QAAQ,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,YAAY,OAAO,EAAE,CAAC,CAAC,CAAC;YAE5E,KAAK,MAAM,KAAK,IAAI,QAAQ,CAAC,OAAO,EAAE,CAAC;gBACrC,MAAM,GAAG,GAAG,2BAA2B,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;gBACtD,IAAI,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC;oBAAE,SAAS;gBAC/B,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;gBACjB,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;YAChC,CAAC;QACH,CAAC;QAED,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC;YAAE,MAAM;QAEnC,MAAM,KAAK,GAAG,SAAS,CAAC;YACtB,IAAI,EAAE,YAAY;YAClB,OAAO,EAAE,UAAU;YACnB,aAAa,EAAE,KAAK,CAAC,aAAa;YAClC,cAAc,EAAE,KAAK,CAAC,cAAc;YACpC,IAAI,EAAE,KAAK,CAAC,IAAI;YAChB,cAAc,EAAE,KAAK,CAAC,cAAc;YACpC,QAAQ,EAAE,sBAAsB;SACjC,CAAC,CAAC;QACH,QAAQ,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC,QAAQ,EAAE,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC,CAAC;QACrE,OAAO,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC,OAAO,CAAC,CAAC;QAC/B,QAAQ,GAAG,KAAK,CAAC,eAAe,CAAC;IACnC,CAAC;IAED,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAC;AAC/B,CAAC,CAAC;AAEF,MAAM,UAAU,GAAG,CACjB,YAA0C,EAC1C,mBAA6D,EAC7D,WAAmD,EACnD,iBAA0C,EACvB,EAAE;IACrB,MAAM,OAAO,GAAG,CAAC,GAAG,mBAAmB,CAAC,OAAO,EAAE,GAAG,WAAW,CAAC,OAAO,EAAE,GAAG,iBAAiB,CAAC,OAAO,CAAC,CAAC;IACvG,MAAM,gBAAgB,GACpB,YAAY,CAAC,MAAM,KAAK,CAAC;QACvB,CAAC,CAAC,EAAE;QACJ,CAAC,CAAC,oBAAoB,CAAC,uEAAuE,EAAE,YAAY,CAAC,CAAC;IAClH,MAAM,QAAQ,GAAG;QACf,GAAG,mBAAmB,CAAC,QAAQ;QAC/B,GAAG,mBAAmB,CAAC,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC;QAChD,GAAG,gBAAgB;QACnB,GAAG,WAAW,CAAC,QAAQ;QACvB,GAAG,WAAW,CAAC,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC;QACxC,GAAG,iBAAiB,CAAC,QAAQ;KAC9B,CAAC;IAEF,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,IAAI,YAAY,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACtD,QAAQ,CAAC,IAAI,CAAC,mCAAmC,CAAC,CAAC;IACrD,CAAC;IAED,OAAO;QACL,QAAQ,EAAE,YAAY,CAAC,MAAM,GAAG,CAAC,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACjG,QAAQ;QACR,OAAO;KACR,CAAC;AACJ,CAAC,CAAC;AAEF,oGAAoG;AACpG,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAChC,KAAuB,EACvB,eAAiH,EAAE,EAChG,EAAE;IACrB,MAAM,KAAK,GAAG,YAAY,CAAC,wBAAwB,CAAC,KAAK,CAAC,CAAC,CAAC;IAC5D,IAAI,KAAK,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC5B,OAAO;YACL,QAAQ,EAAE,CAAC;YACX,QAAQ,EAAE,oBAAoB,CAAC,2DAA2D,EAAE,KAAK,CAAC,MAAM,CAAC;YACzG,OAAO,EAAE,EAAE;SACZ,CAAC;IACJ,CAAC;IAED,MAAM,IAAI,GACR,YAAY,CAAC,kBAAkB;QAC/B,kCAAkC,CAAC;YACjC,aAAa,EAAE,KAAK,CAAC,aAAa;YAClC,UAAU,EAAE,YAAY,CAAC,UAAU;YACnC,MAAM,EAAE,YAAY,CAAC,MAAM;SAC5B,CAAC,CAAC;IACL,MAAM,cAAc,GAAG,YAAY,CAAC,cAAc,IAAI,8BAA8B,CAAC;IACrF,MAAM,mBAAmB,GAAG,SAAS,CAAC;QACpC,IAAI,EAAE,iBAAiB;QACvB,8FAA8F;QAC9F,OAAO,EAAE,KAAK,CAAC,QAAQ,CAAC,cAAe;QACvC,aAAa,EAAE,KAAK,CAAC,aAAa;QAClC,cAAc,EAAE,KAAK,CAAC,QAAQ,CAAC,cAAc;QAC7C,IAAI;QACJ,cAAc;QACd,QAAQ,EAAE,8BAA8B;KACzC,CAAC,CAAC;IACH,MAAM,MAAM,GAAG,oCAAoC,CAAC,KAAK,EAAE;QACzD,wBAAwB,EAAE,mBAAmB,CAAC,cAAc;QAC5D,aAAa,EAAE,KAAK;KACrB,CAAC,CAAC;IACH,mGAAmG;IACnG,mGAAmG;IACnG,oFAAoF;IACpF,MAAM,WAAW,GAAG,IAAI,GAAG,EAAU,CAAC;IACtC,MAAM,mBAAmB,GAAG,MAAM,CAAC,QAAQ,CAAC,OAAQ,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,MAAM,CAAC,CAAC,MAAM,EAAE,EAAE;QAC5F,MAAM,GAAG,GAAG,2BAA2B,CAAC,MAAM,CAAC,CAAC;QAChD,IAAI,WAAW,CAAC,GAAG,CAAC,GAAG,CAAC;YAAE,OAAO,KAAK,CAAC;QACvC,WAAW,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QACrB,OAAO,IAAI,CAAC;IACd,CAAC,CAAC,CAAC;IACH,MAAM,WAAW,GAAG,SAAS,CAAC;QAC5B,IAAI,EAAE,QAAQ;QACd,OAAO,EAAE,mBAAmB;QAC5B,aAAa,EAAE,KAAK,CAAC,aAAa;QAClC,cAAc,EAAE,MAAM,CAAC,QAAQ,CAAC,cAAc;QAC9C,IAAI;QACJ,cAAc;QACd,QAAQ,EAAE,sBAAsB;KACjC,CAAC,CAAC;IACH,MAAM,iBAAiB,GAAG,qBAAqB,CAAC;QAC9C,aAAa,EAAE,KAAK,CAAC,aAAa;QAClC,cAAc,EAAE,MAAM,CAAC,QAAQ,CAAC,cAAc;QAC9C,IAAI;QACJ,cAAc;QACd,mBAAmB;QACnB,WAAW;KACZ,CAAC,CAAC;IACH,MAAM,MAAM,GAAG,UAAU,CAAC,MAAM,CAAC,MAAM,EAAE,mBAAmB,EAAE,WAAW,EAAE,iBAAiB,CAAC,CAAC;IAC9F,MAAM,iBAAiB,GAAG,mBAAmB,CAAC,KAAK,CAAC,CAAC,iBAAiB,CAAC;IACvE,MAAM,aAAa,GAAG,KAAK,CAAC,MAAM,KAAK,IAAI,IAAI,iBAAiB,CAAC,MAAM,GAAG,CAAC,CAAC;IAC5E,OAAO;QACL,GAAG,MAAM;QACT,QAAQ,EAAE,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,QAAQ;QAC7C,QAAQ,EAAE;YACR,GAAG,MAAM,CAAC,QAAQ;YAClB,GAAG,iBAAiB,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,YAAY,OAAO,EAAE,CAAC;YAC5D,GAAG,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,WAAW,6BAA6B,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;SACvE;KACF,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,eAAwC,EAAE,EAAiB,EAAE,CAAC,CAAC;IAC/F,IAAI,EAAE,MAAM;IACZ,WAAW,EAAE,0EAA0E;IACvF,QAAQ,CAAC,OAAgB;QACvB,OAAO,CAAC,UAAU,CAChB,IAAI,OAAO,CAAC,MAAM,CAAC;aAChB,WAAW,CAAC,0EAA0E,CAAC;aACvF,MAAM,CAAC,UAAU,EAAE,6CAA6C,CAAC;aACjE,MAAM,CAAC,CAAC,OAA6B,EAAE,EAAE;YACxC,MAAM,MAAM,GAAG,kBAAkB,CAC/B;gBACE,aAAa,EAAE,oBAAoB,CAAC,YAAY,CAAC,aAAa,CAAC;gBAC/D,gBAAgB,EAAE,uBAAuB,CAAC,YAAY,CAAC,gBAAgB,CAAC;gBACxE,MAAM,EAAE,OAAO,CAAC,MAAM;aACvB,EACD,YAAY,CACb,CAAC;YACF,KAAK,MAAM,OAAO,IAAI,MAAM,CAAC,QAAQ,EAAE,CAAC;gBACtC,uFAAuF;gBACvF,CAAC,YAAY,CAAC,SAAS,IAAI,OAAO,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC;YACnD,CAAC;YACD,6EAA6E;YAC7E,IAAI,MAAM,CAAC,QAAQ,KAAK,CAAC;gBAAE,OAAO,CAAC,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC;QAChE,CAAC,CAAC,CACL,CAAC;IACJ,CAAC;CACF,CAAC,CAAC"}
@@ -0,0 +1,4 @@
1
+ import type { EffectiveResourceSet } from '../resolver/Resource.js';
2
+ import type { DumpResult } from './Dump.js';
3
+ /** Export a workflow and every nested workflow/agent closure. Workflows remain configuration only. */
4
+ export declare const dumpWorkflow: (set: EffectiveResourceSet, workflowSlug: string, outDirectory: string, projectDirectory?: string) => DumpResult;
@@ -0,0 +1,148 @@
1
+ import { createHash } from 'node:crypto';
2
+ import { copyFileSync, existsSync, lstatSync, mkdirSync, mkdtempSync, readdirSync, readFileSync, rmSync, writeFileSync, } from 'node:fs';
3
+ import { tmpdir } from 'node:os';
4
+ import { dirname, join, relative } from 'node:path';
5
+ import { findResource } from '../resolver/Resource.js';
6
+ import { compareSlugs } from '../resolver/Resource.js';
7
+ import { isWorkflowDefinitionIssue, readWorkflowDefinition } from '../resolver/WorkflowDefinition.js';
8
+ import { dumpAgent } from './Dump.js';
9
+ import { escapesRoots } from './Containment.js';
10
+ const collectWorkflowClosure = (set, root) => {
11
+ const workflows = [];
12
+ const agents = new Set();
13
+ const errors = [];
14
+ const seen = new Set();
15
+ const queue = [root];
16
+ while (queue.length > 0) {
17
+ const slug = queue.shift();
18
+ if (seen.has(slug))
19
+ continue;
20
+ seen.add(slug);
21
+ const resource = findResource(set, 'workflow', slug);
22
+ if (resource === undefined) {
23
+ errors.push(`workflow '${root}' references unknown workflow '${slug}'.`);
24
+ continue;
25
+ }
26
+ const definition = readWorkflowDefinition(resource.winner.path);
27
+ if (isWorkflowDefinitionIssue(definition)) {
28
+ errors.push(`workflow '${slug}': ${definition.message}`);
29
+ continue;
30
+ }
31
+ if (definition.id !== slug) {
32
+ errors.push(`workflow id '${definition.id}' must match its directory '${slug}'.`);
33
+ continue;
34
+ }
35
+ workflows.push(definition);
36
+ for (const actor of Object.values(definition.actors))
37
+ if (actor.kind === 'agent')
38
+ agents.add(actor.profile);
39
+ for (const node of definition.nodes)
40
+ if (node.workflow !== undefined)
41
+ queue.push(node.workflow);
42
+ }
43
+ return { workflows, agents: [...agents].sort(), errors };
44
+ };
45
+ const mergeTree = (source, target, written, errors) => {
46
+ /* v8 ignore next -- dumpAgent always creates its .agents output root. */
47
+ if (!existsSync(source))
48
+ return;
49
+ for (const entry of readdirSync(source, { withFileTypes: true })) {
50
+ const sourcePath = join(source, entry.name);
51
+ const targetPath = join(target, entry.name);
52
+ /* v8 ignore next -- dumpAgent copies resources and never emits symbolic links. */
53
+ if (lstatSync(sourcePath).isSymbolicLink())
54
+ continue;
55
+ if (entry.isDirectory()) {
56
+ mkdirSync(targetPath, { recursive: true });
57
+ mergeTree(sourcePath, targetPath, written, errors);
58
+ }
59
+ else if (entry.isFile()) {
60
+ if (existsSync(targetPath)) {
61
+ /* v8 ignore next 2 -- resolved closures can repeat only the same winning resource; this remains defensive. */
62
+ if (!lstatSync(targetPath).isFile() || !readFileSync(targetPath).equals(readFileSync(sourcePath)))
63
+ errors.push(`workflow closure contains conflicting file '${targetPath}'.`);
64
+ continue;
65
+ }
66
+ mkdirSync(dirname(targetPath), { recursive: true });
67
+ copyFileSync(sourcePath, targetPath);
68
+ written.push(targetPath);
69
+ }
70
+ }
71
+ };
72
+ /** Export a workflow and every nested workflow/agent closure. Workflows remain configuration only. */
73
+ export const dumpWorkflow = (set, workflowSlug, outDirectory, projectDirectory) => {
74
+ const closure = collectWorkflowClosure(set, workflowSlug);
75
+ if (closure.errors.length > 0)
76
+ return { writtenPaths: [], warnings: [], errors: closure.errors };
77
+ const outRoot = join(outDirectory, '.agents');
78
+ if (existsSync(outRoot))
79
+ return { writtenPaths: [], warnings: [], errors: [`workflow dump refuses existing destination '${outRoot}'.`] };
80
+ const temporary = mkdtempSync(join(tmpdir(), 'outfitter-workflow-'));
81
+ mkdirSync(outRoot, { recursive: true });
82
+ const written = [];
83
+ const warnings = [];
84
+ const errors = [];
85
+ const compositions = [];
86
+ try {
87
+ for (const agent of closure.agents) {
88
+ const agentDump = join(temporary, agent);
89
+ const result = dumpAgent(set, agent, agentDump, projectDirectory);
90
+ warnings.push(...result.warnings);
91
+ errors.push(...result.errors);
92
+ const composition = join(agentDump, '.agents', '.outfitter', 'composition.json');
93
+ /* v8 ignore next -- a successful dumpAgent always writes its composition manifest. */
94
+ if (existsSync(composition)) {
95
+ const parsed = JSON.parse(readFileSync(composition, 'utf8'));
96
+ compositions.push(...parsed.compositions);
97
+ rmSync(composition);
98
+ }
99
+ mergeTree(join(agentDump, '.agents'), outRoot, written, errors);
100
+ }
101
+ for (const workflow of closure.workflows) {
102
+ const resource = findResource(set, 'workflow', workflow.id);
103
+ if (escapesRoots(resource.winner.path, set.layers.map((layer) => layer.root))) {
104
+ errors.push(`workflow '${workflow.id}' resolves outside the tree and cannot be safely dumped.`);
105
+ continue;
106
+ }
107
+ const target = join(outRoot, 'workflows', workflow.id, 'workflow.yaml');
108
+ mkdirSync(dirname(target), { recursive: true });
109
+ copyFileSync(resource.winner.path, target);
110
+ written.push(target);
111
+ }
112
+ if (errors.length > 0) {
113
+ rmSync(outRoot, { recursive: true, force: true });
114
+ return { writtenPaths: [], warnings, errors };
115
+ }
116
+ const fileEntries = written
117
+ .map((path) => ({
118
+ path: path.slice(outRoot.length + 1),
119
+ sha256: createHash('sha256').update(readFileSync(path)).digest('hex'),
120
+ }))
121
+ .sort((a, b) => compareSlugs(a.path, b.path));
122
+ const manifestTarget = join(outRoot, '.outfitter', 'workflow-composition.json');
123
+ mkdirSync(dirname(manifestTarget), { recursive: true });
124
+ writeFileSync(manifestTarget, `${JSON.stringify({
125
+ version: 1,
126
+ root: workflowSlug,
127
+ workflows: closure.workflows.map((workflow) => {
128
+ const resource = findResource(set, 'workflow', workflow.id);
129
+ return {
130
+ id: workflow.id,
131
+ source: {
132
+ layer: resource.winner.layer.label,
133
+ path: relative(resource.winner.layer.root, resource.winner.path),
134
+ },
135
+ };
136
+ }),
137
+ agents: closure.agents,
138
+ compositions,
139
+ files: fileEntries,
140
+ }, null, 2)}\n`);
141
+ written.push(manifestTarget);
142
+ return { writtenPaths: written.sort(), warnings: [...new Set(warnings)], errors: [] };
143
+ }
144
+ finally {
145
+ rmSync(temporary, { recursive: true, force: true });
146
+ }
147
+ };
148
+ //# sourceMappingURL=WorkflowDump.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"WorkflowDump.js","sourceRoot":"","sources":["../../src/dump/WorkflowDump.ts"],"names":[],"mappings":"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"}
@@ -23,10 +23,12 @@ const resolvesToFile = (path) => {
23
23
  const directoryResourceKinds = new Map([
24
24
  ['agent', 'agents'],
25
25
  ['skill', 'skills'],
26
+ ['workflow', 'workflows'],
26
27
  ]);
27
28
  const entryFileByKind = new Map([
28
29
  ['agent', 'agent.md'],
29
30
  ['skill', 'SKILL.md'],
31
+ ['workflow', 'workflow.yaml'],
30
32
  ]);
31
33
  const fileTreeResourceKinds = new Map([
32
34
  ['knowledge', 'knowledge'],
@@ -1 +1 @@
1
- {"version":3,"file":"Resolver.js","sourceRoot":"","sources":["../../src/resolver/Resolver.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Resolver.js","sourceRoot":"","sources":["../../src/resolver/Resolver.ts"],"names":[],"mappings":"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"}
@@ -3,6 +3,7 @@ import { compose } from '../composer/Composer.js';
3
3
  import { isSkillDocumentIssue, readSkillDocument } from '../skills/SkillDocument.js';
4
4
  import { isAgentDefinitionIssue, readAgentDefinition } from './AgentDefinition.js';
5
5
  import { agentLocalKinds, findResource, listAgentResources, listResources } from './Resource.js';
6
+ import { isWorkflowDefinitionIssue, readWorkflowDefinition } from './WorkflowDefinition.js';
6
7
  // Matches the composer's top-level unresolved-loadout warning wording (see `compose` in Composer.ts).
7
8
  // It is deliberately coupled to that message; `resolver-validation.test.ts` drives the real composer,
8
9
  // so a wording drift fails that test rather than silently disabling deferral.
@@ -100,6 +101,154 @@ const validateAgentLocalResources = (set, agentSlug) => {
100
101
  }
101
102
  return findings;
102
103
  };
104
+ const workflowError = (slug, message) => ({
105
+ severity: 'error',
106
+ resource: `workflow:${slug}`,
107
+ message,
108
+ });
109
+ const workflowDefinitions = (set) => {
110
+ const definitions = new Map();
111
+ const findings = [];
112
+ for (const resource of listResources(set, 'workflow')) {
113
+ const definition = readWorkflowDefinition(resource.winner.path);
114
+ if (isWorkflowDefinitionIssue(definition)) {
115
+ findings.push(workflowError(resource.slug, definition.message));
116
+ }
117
+ else if (definition.id !== resource.slug) {
118
+ findings.push(workflowError(resource.slug, `workflow id '${definition.id}' must match its directory '${resource.slug}'.`));
119
+ }
120
+ else {
121
+ definitions.set(resource.slug, definition);
122
+ }
123
+ }
124
+ return { definitions, findings };
125
+ };
126
+ const nodeSkills = (node) => [
127
+ ...(node.skill === undefined ? [] : [node.skill]),
128
+ ...(node.skills ?? []),
129
+ ];
130
+ const nodePrompts = (node) => [
131
+ ...(node.prompt_fragment === undefined ? [] : [node.prompt_fragment]),
132
+ ...(node.prompt_fragments ?? []),
133
+ ];
134
+ const missingClosureFindings = (workflowId, nodeId, profile, kind, requested, available) => requested
135
+ .filter((slug) => !available.has(slug))
136
+ .map((slug) => workflowError(workflowId, `node '${nodeId}' references ${kind} '${slug}' outside agent '${profile}' composed closure.`));
137
+ const selectedMcpFindings = (workflow, node, profile, selected) => (node.uses ?? []).flatMap((integrationId) => {
138
+ const integration = workflow.integrations?.[integrationId];
139
+ return integration?.kind === 'mcp' && integration.server !== undefined && !selected.includes(integration.server)
140
+ ? [
141
+ workflowError(workflow.id, `node '${node.id}' references MCP server '${integration.server}' outside agent '${profile}' composed closure.`),
142
+ ]
143
+ : [];
144
+ });
145
+ const hasAgentClosureAssertions = (workflow, node) => nodeSkills(node).length > 0 ||
146
+ nodePrompts(node).length > 0 ||
147
+ (node.uses ?? []).some((integrationId) => workflow.integrations?.[integrationId]?.kind === 'mcp');
148
+ const validateWorkflowAgentNode = (set, workflow, node, projectDirectory) => {
149
+ const actor = node.actor === undefined ? undefined : workflow.actors[node.actor];
150
+ if (actor?.kind !== 'agent') {
151
+ return hasAgentClosureAssertions(workflow, node)
152
+ ? [workflowError(workflow.id, `node '${node.id}' has agent-closure assertions but no agent actor.`)]
153
+ : [];
154
+ }
155
+ const composed = compose(set, actor.profile, { projectDirectory });
156
+ if (composed.plan === undefined) {
157
+ return composed.errors.map((message) => workflowError(workflow.id, `node '${node.id}' agent '${actor.profile}': ${message}`));
158
+ }
159
+ const availableSkills = new Set(composed.plan.loadout.skills.map((skill) => skill.slug));
160
+ const availablePrompts = new Set([
161
+ composed.plan.identity.systemPromptFragment,
162
+ composed.plan.identity.sharedContextFragment,
163
+ ... /* v8 ignore next -- compose normalizes this optional source field to an array. */(composed.plan.identity.appendSystemPrompts ?? []),
164
+ composed.plan.identity.promptTemplate,
165
+ ]
166
+ .filter((fragment) => fragment?.reference !== undefined)
167
+ .map((fragment) => fragment.reference));
168
+ return [
169
+ ...missingClosureFindings(workflow.id, node.id, actor.profile, 'skill', [...(actor.skills ?? []), ...nodeSkills(node)], availableSkills),
170
+ ...missingClosureFindings(workflow.id, node.id, actor.profile, 'prompt fragment', nodePrompts(node), availablePrompts),
171
+ ...selectedMcpFindings(workflow, node, actor.profile, composed.plan.loadout.mcp),
172
+ ];
173
+ };
174
+ const validateWorkflowActors = (set, workflow) => Object.entries(workflow.actors).flatMap(([actorId, actor]) => actor.kind === 'agent' && findResource(set, 'agent', actor.profile) === undefined
175
+ ? [workflowError(workflow.id, `actor '${actorId}' references unknown agent '${actor.profile}'.`)]
176
+ : []);
177
+ const optionalReferenceFinding = (workflowId, nodeId, kind, reference, known) => reference !== undefined && !known(reference)
178
+ ? [workflowError(workflowId, `node '${nodeId}' references unknown ${kind} '${reference}'.`)]
179
+ : [];
180
+ const unknownListFindings = (workflowId, nodeId, kind, references, known) => references
181
+ .filter((reference) => !known(reference))
182
+ .map((reference) => workflowError(workflowId, `node '${nodeId}' references unknown ${kind} '${reference}'.`));
183
+ const validateWorkflowNodeReferences = (workflow, node, nodeIds, definitions) => {
184
+ const needs = (node.needs ?? [])
185
+ .filter((dependency) => !nodeIds.has(dependency))
186
+ .map((dependency) => workflowError(workflow.id, `node '${node.id}' needs unknown node '${dependency}'.`));
187
+ return [
188
+ ...optionalReferenceFinding(workflow.id, node.id, 'actor', node.actor, (actor) => workflow.actors[actor] !== undefined),
189
+ ...optionalReferenceFinding(workflow.id, node.id, 'environment', node.environment, (environment) => workflow.environments?.[environment] !== undefined),
190
+ ...needs,
191
+ ...unknownListFindings(workflow.id, node.id, 'integration', node.uses ?? [], (integration) => workflow.integrations?.[integration] !== undefined),
192
+ ...optionalReferenceFinding(workflow.id, node.id, 'workflow', node.workflow, (nested) => definitions.has(nested)),
193
+ ];
194
+ };
195
+ const validateWorkflowArtifacts = (workflow) => Object.entries(workflow.integrations ?? {}).flatMap(([id, artifact]) => {
196
+ if (artifact.kind !== 'artifact')
197
+ return [];
198
+ const findings = [];
199
+ if (!/^[0-9a-f]{40}$/.test(artifact.ref ?? ''))
200
+ findings.push(workflowError(workflow.id, `artifact integration '${id}' must pin a full immutable Git commit.`));
201
+ if (!/^[0-9a-f]{64}$/.test(artifact.sha256 ?? ''))
202
+ findings.push(workflowError(workflow.id, `artifact integration '${id}' must declare a SHA-256 digest.`));
203
+ if (artifact.repository === undefined || artifact.path === undefined)
204
+ findings.push(workflowError(workflow.id, `artifact integration '${id}' must declare repository and path.`));
205
+ return findings;
206
+ });
207
+ const validateWorkflow = (set, workflow, definitions, projectDirectory) => {
208
+ const findings = [];
209
+ const nodeIds = new Set();
210
+ findings.push(...validateWorkflowActors(set, workflow));
211
+ for (const node of workflow.nodes) {
212
+ if (nodeIds.has(node.id))
213
+ findings.push(workflowError(workflow.id, `duplicate node id '${node.id}'.`));
214
+ nodeIds.add(node.id);
215
+ }
216
+ for (const node of workflow.nodes) {
217
+ findings.push(...validateWorkflowNodeReferences(workflow, node, nodeIds, definitions));
218
+ findings.push(...validateWorkflowAgentNode(set, workflow, node, projectDirectory));
219
+ }
220
+ for (const edge of workflow.feedback ?? []) {
221
+ if (!nodeIds.has(edge.from))
222
+ findings.push(workflowError(workflow.id, `feedback references unknown source node '${edge.from}'.`));
223
+ if (!nodeIds.has(edge.to))
224
+ findings.push(workflowError(workflow.id, `feedback references unknown target node '${edge.to}'.`));
225
+ }
226
+ findings.push(...validateWorkflowArtifacts(workflow));
227
+ return findings;
228
+ };
229
+ const workflowCycleFindings = (definitions) => {
230
+ const findings = [];
231
+ const visiting = new Set();
232
+ const visited = new Set();
233
+ const visit = (slug, path) => {
234
+ if (visiting.has(slug)) {
235
+ findings.push(workflowError(slug, `nested workflow cycle: ${[...path, slug].join(' -> ')}.`));
236
+ return;
237
+ }
238
+ if (visited.has(slug))
239
+ return;
240
+ visiting.add(slug);
241
+ const nested = definitions.get(slug).nodes.flatMap((node) => (node.workflow === undefined ? [] : [node.workflow]));
242
+ for (const child of nested)
243
+ if (definitions.has(child))
244
+ visit(child, [...path, slug]);
245
+ visiting.delete(slug);
246
+ visited.add(slug);
247
+ };
248
+ for (const slug of definitions.keys())
249
+ visit(slug, []);
250
+ return findings;
251
+ };
103
252
  /**
104
253
  * Collects validation findings across the effective set. `error` findings always fail validation;
105
254
  * `warning` findings (such as shadowed definitions) fail only under `--strict`.
@@ -112,10 +261,16 @@ export const validateEffectiveSet = (set, projectDirectory, options = {}) => {
112
261
  for (const skill of listResources(set, 'skill')) {
113
262
  findings.push(...validateSkill(skill));
114
263
  }
264
+ const workflows = workflowDefinitions(set);
265
+ findings.push(...workflows.findings);
266
+ for (const workflow of workflows.definitions.values()) {
267
+ findings.push(...validateWorkflow(set, workflow, workflows.definitions, projectDirectory));
268
+ }
269
+ findings.push(...workflowCycleFindings(workflows.definitions));
115
270
  for (const [agentSlug] of set.agentResources) {
116
271
  findings.push(...validateAgentLocalResources(set, agentSlug));
117
272
  }
118
- for (const kind of ['agent', 'skill', 'knowledge', 'command']) {
273
+ for (const kind of ['agent', 'skill', 'knowledge', 'command', 'workflow']) {
119
274
  for (const resource of listResources(set, kind)) {
120
275
  findings.push(...shadowFindings(resource));
121
276
  }
@@ -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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"}
@@ -1,5 +1,5 @@
1
1
  /** Kinds of protocol resources Outfitter resolves by slug across `.agents` layers. */
2
- export type ResourceKind = 'agent' | 'skill' | 'knowledge' | 'command';
2
+ export type ResourceKind = 'agent' | 'skill' | 'knowledge' | 'command' | 'workflow';
3
3
  export declare const resourceKinds: readonly ResourceKind[];
4
4
  /**
5
5
  * Kinds that also resolve **agent-local** — discovered under `agents/<agent>/<container>/` and
@@ -1,5 +1,5 @@
1
1
  // Core resource-model types shared across the resolver, list, validate, run, and dump paths.
2
- export const resourceKinds = ['agent', 'skill', 'knowledge', 'command'];
2
+ export const resourceKinds = ['agent', 'skill', 'knowledge', 'command', 'workflow'];
3
3
  /**
4
4
  * Kinds that also resolve **agent-local** — discovered under `agents/<agent>/<container>/` and
5
5
  * resolved local-first before catalog fallback. Excludes `agent` (no nested subagents; a delegate is
@@ -1 +1 @@
1
- {"version":3,"file":"Resource.js","sourceRoot":"","sources":["../../src/resolver/Resource.ts"],"names":[],"mappings":"AAAA,6FAA6F;AAK7F,MAAM,CAAC,MAAM,aAAa,GAA4B,CAAC,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,SAAS,CAAC,CAAC;AAEjG;;;;;GAKG;AACH,MAAM,CAAC,MAAM,eAAe,GAA4B,CAAC,OAAO,EAAE,WAAW,EAAE,SAAS,CAAC,CAAC;AAyB1F,MAAM,CAAC,MAAM,YAAY,GAAG,GAAY,EAAE,CAAC,CAAC;IAC1C,MAAM,EAAE,EAAE;IACV,SAAS,EAAE,EAAE;IACb,GAAG,EAAE,EAAE;IACP,UAAU,EAAE,EAAE;IACd,OAAO,EAAE,EAAE;CACZ,CAAC,CAAC;AAgDH,8EAA8E;AAC9E,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,IAAY,EAAE,KAAa,EAAU,EAAE,CAAC,CAAC,IAAI,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AAUhH,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,GAAyB,EAAE,IAAkB,EAA+B,EAAE;IAC1G,MAAM,MAAM,GAAG,GAAG,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IAEvC,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;QACzB,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,OAAO,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC;AACzF,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,YAAY,GAAG,CAC1B,GAAyB,EACzB,IAAkB,EAClB,IAAY,EACkB,EAAE,CAAC,GAAG,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,GAAG,CAAC,IAAI,CAAC,CAAC;AAEtE,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAChC,GAAyB,EACzB,SAAiB,EACjB,IAAkB,EACW,EAAE;IAC/B,MAAM,MAAM,GAAG,GAAG,CAAC,cAAc,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,GAAG,CAAC,IAAI,CAAC,CAAC;IAE5D,OAAO,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC;AACrH,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAC/B,GAAyB,EACzB,SAAiB,EACjB,IAAkB,EAClB,IAAY,EACkB,EAAE,CAAC,GAAG,CAAC,cAAc,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,GAAG,CAAC,IAAI,CAAC,EAAE,GAAG,CAAC,IAAI,CAAC,CAAC;AAE3F,qGAAqG;AACrG,MAAM,CAAC,MAAM,mBAAmB,GAAG,CACjC,GAAyB,EACzB,SAAiB,EACjB,IAAkB,EAClB,IAAY,EACkB,EAAE,CAAC,iBAAiB,CAAC,GAAG,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,YAAY,CAAC,GAAG,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC"}
1
+ {"version":3,"file":"Resource.js","sourceRoot":"","sources":["../../src/resolver/Resource.ts"],"names":[],"mappings":"AAAA,6FAA6F;AAK7F,MAAM,CAAC,MAAM,aAAa,GAA4B,CAAC,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,UAAU,CAAC,CAAC;AAE7G;;;;;GAKG;AACH,MAAM,CAAC,MAAM,eAAe,GAA4B,CAAC,OAAO,EAAE,WAAW,EAAE,SAAS,CAAC,CAAC;AAyB1F,MAAM,CAAC,MAAM,YAAY,GAAG,GAAY,EAAE,CAAC,CAAC;IAC1C,MAAM,EAAE,EAAE;IACV,SAAS,EAAE,EAAE;IACb,GAAG,EAAE,EAAE;IACP,UAAU,EAAE,EAAE;IACd,OAAO,EAAE,EAAE;CACZ,CAAC,CAAC;AAgDH,8EAA8E;AAC9E,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,IAAY,EAAE,KAAa,EAAU,EAAE,CAAC,CAAC,IAAI,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AAUhH,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,GAAyB,EAAE,IAAkB,EAA+B,EAAE;IAC1G,MAAM,MAAM,GAAG,GAAG,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IAEvC,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;QACzB,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,OAAO,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC;AACzF,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,YAAY,GAAG,CAC1B,GAAyB,EACzB,IAAkB,EAClB,IAAY,EACkB,EAAE,CAAC,GAAG,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,GAAG,CAAC,IAAI,CAAC,CAAC;AAEtE,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAChC,GAAyB,EACzB,SAAiB,EACjB,IAAkB,EACW,EAAE;IAC/B,MAAM,MAAM,GAAG,GAAG,CAAC,cAAc,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,GAAG,CAAC,IAAI,CAAC,CAAC;IAE5D,OAAO,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC;AACrH,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAC/B,GAAyB,EACzB,SAAiB,EACjB,IAAkB,EAClB,IAAY,EACkB,EAAE,CAAC,GAAG,CAAC,cAAc,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,GAAG,CAAC,IAAI,CAAC,EAAE,GAAG,CAAC,IAAI,CAAC,CAAC;AAE3F,qGAAqG;AACrG,MAAM,CAAC,MAAM,mBAAmB,GAAG,CACjC,GAAyB,EACzB,SAAiB,EACjB,IAAkB,EAClB,IAAY,EACkB,EAAE,CAAC,iBAAiB,CAAC,GAAG,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,YAAY,CAAC,GAAG,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC"}
@@ -0,0 +1,56 @@
1
+ export type WorkflowActor = {
2
+ readonly kind: 'agent';
3
+ readonly profile: string;
4
+ readonly skills?: readonly string[];
5
+ } | {
6
+ readonly kind: 'human' | 'tool' | 'system';
7
+ readonly profile?: never;
8
+ readonly skills?: readonly string[];
9
+ };
10
+ export interface WorkflowIntegration {
11
+ readonly kind?: string;
12
+ readonly server?: string;
13
+ readonly tools?: readonly string[];
14
+ readonly repository?: string;
15
+ readonly ref?: string;
16
+ readonly path?: string;
17
+ readonly sha256?: string;
18
+ }
19
+ export interface WorkflowNode {
20
+ readonly id: string;
21
+ readonly description: string;
22
+ readonly action?: string;
23
+ readonly workflow?: string;
24
+ readonly actor?: string;
25
+ readonly environment?: string;
26
+ readonly needs?: readonly string[];
27
+ readonly skill?: string;
28
+ readonly skills?: readonly string[];
29
+ readonly prompt_fragment?: string;
30
+ readonly prompt_fragments?: readonly string[];
31
+ readonly uses?: readonly string[];
32
+ readonly if?: string;
33
+ }
34
+ export interface WorkflowDefinition {
35
+ readonly version: 1;
36
+ readonly id: string;
37
+ readonly title: string;
38
+ readonly description: string;
39
+ readonly status?: string;
40
+ readonly actors: Readonly<Record<string, WorkflowActor>>;
41
+ readonly environments?: Readonly<Record<string, unknown>>;
42
+ readonly integrations?: Readonly<Record<string, WorkflowIntegration>>;
43
+ readonly checks?: Readonly<Record<string, unknown>>;
44
+ readonly triggers?: readonly Readonly<Record<string, unknown>>[];
45
+ readonly nodes: readonly WorkflowNode[];
46
+ readonly feedback?: readonly {
47
+ readonly from: string;
48
+ readonly to: string;
49
+ }[];
50
+ }
51
+ export interface WorkflowDefinitionIssue {
52
+ readonly path: string;
53
+ readonly message: string;
54
+ }
55
+ export declare const isWorkflowDefinitionIssue: (value: WorkflowDefinition | WorkflowDefinitionIssue) => value is WorkflowDefinitionIssue;
56
+ export declare const readWorkflowDefinition: (path: string) => WorkflowDefinition | WorkflowDefinitionIssue;
@@ -0,0 +1,23 @@
1
+ import { readFileSync } from 'node:fs';
2
+ import { validateSchema } from '../validation/SchemaValidator.js';
3
+ import { parseYamlDocument } from '../validation/YamlDocument.js';
4
+ export const isWorkflowDefinitionIssue = (value) => 'message' in value;
5
+ export const readWorkflowDefinition = (path) => {
6
+ let content;
7
+ try {
8
+ content = readFileSync(path, 'utf8');
9
+ }
10
+ catch (error) {
11
+ return { path, message: `workflow.yaml is not readable: ${String(error)}` };
12
+ }
13
+ const parsed = parseYamlDocument(content, path);
14
+ if (!parsed.ok)
15
+ return { path, message: `workflow.yaml is not valid YAML: ${parsed.issue.message}` };
16
+ const validation = validateSchema('workflow', parsed.document);
17
+ if (!validation.valid) {
18
+ const issue = validation.issues[0];
19
+ return { path, message: `workflow.yaml is invalid at ${issue.path}: ${issue.message}.` };
20
+ }
21
+ return parsed.document;
22
+ };
23
+ //# sourceMappingURL=WorkflowDefinition.js.map