teamcast 0.6.0 → 0.9.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 (288) hide show
  1. package/dist/application/build-generated-files.d.ts +1 -1
  2. package/dist/application/build-generated-files.d.ts.map +1 -1
  3. package/dist/application/build-generated-files.js +4 -3
  4. package/dist/application/build-generated-files.js.map +1 -1
  5. package/dist/application/team.d.ts +19 -14
  6. package/dist/application/team.d.ts.map +1 -1
  7. package/dist/application/team.js +125 -51
  8. package/dist/application/team.js.map +1 -1
  9. package/dist/application/validate-team.d.ts +2 -19
  10. package/dist/application/validate-team.d.ts.map +1 -1
  11. package/dist/application/validate-team.js +38 -48
  12. package/dist/application/validate-team.js.map +1 -1
  13. package/dist/cli/explain.d.ts +1 -0
  14. package/dist/cli/explain.d.ts.map +1 -1
  15. package/dist/cli/explain.js +20 -1
  16. package/dist/cli/explain.js.map +1 -1
  17. package/dist/cli/generate.js +1 -1
  18. package/dist/cli/generate.js.map +1 -1
  19. package/dist/cli/import.d.ts.map +1 -1
  20. package/dist/cli/import.js +75 -33
  21. package/dist/cli/import.js.map +1 -1
  22. package/dist/cli/init.d.ts.map +1 -1
  23. package/dist/cli/init.js +35 -16
  24. package/dist/cli/init.js.map +1 -1
  25. package/dist/cli/manage.d.ts.map +1 -1
  26. package/dist/cli/manage.js +199 -80
  27. package/dist/cli/manage.js.map +1 -1
  28. package/dist/cli/reset.d.ts.map +1 -1
  29. package/dist/cli/reset.js +36 -12
  30. package/dist/cli/reset.js.map +1 -1
  31. package/dist/cli/validate.d.ts.map +1 -1
  32. package/dist/cli/validate.js +6 -8
  33. package/dist/cli/validate.js.map +1 -1
  34. package/dist/components/policy-fragments.d.ts +1 -1
  35. package/dist/components/policy-fragments.d.ts.map +1 -1
  36. package/dist/components/policy-fragments.js +12 -49
  37. package/dist/components/policy-fragments.js.map +1 -1
  38. package/dist/core/index.d.ts +0 -1
  39. package/dist/core/index.d.ts.map +1 -1
  40. package/dist/core/index.js +0 -1
  41. package/dist/core/index.js.map +1 -1
  42. package/dist/core/types.d.ts +9 -12
  43. package/dist/core/types.d.ts.map +1 -1
  44. package/dist/detector/index.d.ts +0 -2
  45. package/dist/detector/index.d.ts.map +1 -1
  46. package/dist/detector/index.js +4 -10
  47. package/dist/detector/index.js.map +1 -1
  48. package/dist/diff/index.d.ts +2 -2
  49. package/dist/diff/index.d.ts.map +1 -1
  50. package/dist/diff/index.js +2 -2
  51. package/dist/diff/index.js.map +1 -1
  52. package/dist/explainer/index.d.ts +2 -1
  53. package/dist/explainer/index.d.ts.map +1 -1
  54. package/dist/explainer/index.js +29 -21
  55. package/dist/explainer/index.js.map +1 -1
  56. package/dist/generator/index.d.ts +2 -2
  57. package/dist/generator/index.d.ts.map +1 -1
  58. package/dist/generator/index.js +18 -5
  59. package/dist/generator/index.js.map +1 -1
  60. package/dist/importer/index.d.ts +3 -2
  61. package/dist/importer/index.d.ts.map +1 -1
  62. package/dist/importer/index.js +255 -39
  63. package/dist/importer/index.js.map +1 -1
  64. package/dist/index.d.ts +1 -1
  65. package/dist/index.d.ts.map +1 -1
  66. package/dist/index.js +2 -1
  67. package/dist/index.js.map +1 -1
  68. package/dist/manifest/defaults.d.ts +1 -2
  69. package/dist/manifest/defaults.d.ts.map +1 -1
  70. package/dist/manifest/defaults.js +12 -12
  71. package/dist/manifest/defaults.js.map +1 -1
  72. package/dist/manifest/normalize.d.ts +8 -4
  73. package/dist/manifest/normalize.d.ts.map +1 -1
  74. package/dist/manifest/normalize.js +97 -161
  75. package/dist/manifest/normalize.js.map +1 -1
  76. package/dist/manifest/reader.d.ts +2 -2
  77. package/dist/manifest/reader.d.ts.map +1 -1
  78. package/dist/manifest/reader.js +5 -4
  79. package/dist/manifest/reader.js.map +1 -1
  80. package/dist/manifest/schema-validator.d.ts.map +1 -1
  81. package/dist/manifest/schema-validator.js +4 -2
  82. package/dist/manifest/schema-validator.js.map +1 -1
  83. package/dist/manifest/types.d.ts +23 -68
  84. package/dist/manifest/types.d.ts.map +1 -1
  85. package/dist/manifest/types.js.map +1 -1
  86. package/dist/manifest/writer.d.ts +2 -2
  87. package/dist/manifest/writer.d.ts.map +1 -1
  88. package/dist/manifest/writer.js +2 -3
  89. package/dist/manifest/writer.js.map +1 -1
  90. package/dist/plugins/core/models-plugin.d.ts +3 -0
  91. package/dist/plugins/core/models-plugin.d.ts.map +1 -0
  92. package/dist/plugins/core/models-plugin.js +28 -0
  93. package/dist/plugins/core/models-plugin.js.map +1 -0
  94. package/dist/plugins/core/tools-plugin.d.ts +3 -0
  95. package/dist/plugins/core/tools-plugin.d.ts.map +1 -0
  96. package/dist/plugins/core/tools-plugin.js +44 -0
  97. package/dist/plugins/core/tools-plugin.js.map +1 -0
  98. package/dist/plugins/environments/node-env-plugin.d.ts +3 -0
  99. package/dist/plugins/environments/node-env-plugin.d.ts.map +1 -0
  100. package/dist/plugins/environments/node-env-plugin.js +31 -0
  101. package/dist/plugins/environments/node-env-plugin.js.map +1 -0
  102. package/dist/plugins/environments/python-env-plugin.d.ts +3 -0
  103. package/dist/plugins/environments/python-env-plugin.d.ts.map +1 -0
  104. package/dist/plugins/environments/python-env-plugin.js +33 -0
  105. package/dist/plugins/environments/python-env-plugin.js.map +1 -0
  106. package/dist/plugins/index.d.ts +3 -0
  107. package/dist/plugins/index.d.ts.map +1 -0
  108. package/dist/plugins/index.js +13 -0
  109. package/dist/plugins/index.js.map +1 -0
  110. package/dist/plugins/inject.d.ts +3 -0
  111. package/dist/plugins/inject.d.ts.map +1 -0
  112. package/dist/plugins/inject.js +16 -0
  113. package/dist/plugins/inject.js.map +1 -0
  114. package/dist/plugins/merge-policies.d.ts +8 -0
  115. package/dist/plugins/merge-policies.d.ts.map +1 -0
  116. package/dist/plugins/merge-policies.js +56 -0
  117. package/dist/plugins/merge-policies.js.map +1 -0
  118. package/dist/plugins/registry.d.ts +21 -0
  119. package/dist/plugins/registry.d.ts.map +1 -0
  120. package/dist/plugins/registry.js +63 -0
  121. package/dist/plugins/registry.js.map +1 -0
  122. package/dist/plugins/types.d.ts +71 -0
  123. package/dist/plugins/types.d.ts.map +1 -0
  124. package/dist/{generator/targets → plugins}/types.js.map +1 -1
  125. package/dist/presets/index.d.ts +2 -2
  126. package/dist/presets/index.d.ts.map +1 -1
  127. package/dist/presets/index.js +7 -2
  128. package/dist/presets/index.js.map +1 -1
  129. package/dist/presets/types.d.ts +2 -2
  130. package/dist/presets/types.d.ts.map +1 -1
  131. package/dist/renderers/claude/agent-md.js +1 -1
  132. package/dist/renderers/claude/agent-md.js.map +1 -1
  133. package/dist/renderers/claude/docs.js +1 -1
  134. package/dist/renderers/claude/docs.js.map +1 -1
  135. package/dist/renderers/claude/index.d.ts +2 -0
  136. package/dist/renderers/claude/index.d.ts.map +1 -1
  137. package/dist/renderers/claude/index.js +11 -0
  138. package/dist/renderers/claude/index.js.map +1 -1
  139. package/dist/renderers/claude/policy-mapper.d.ts.map +1 -1
  140. package/dist/renderers/claude/policy-mapper.js +3 -22
  141. package/dist/renderers/claude/policy-mapper.js.map +1 -1
  142. package/dist/renderers/claude/tools.d.ts +0 -1
  143. package/dist/renderers/claude/tools.d.ts.map +1 -1
  144. package/dist/renderers/claude/tools.js +0 -2
  145. package/dist/renderers/claude/tools.js.map +1 -1
  146. package/dist/renderers/codex/index.d.ts +7 -0
  147. package/dist/renderers/codex/index.d.ts.map +1 -0
  148. package/dist/renderers/codex/index.js +97 -0
  149. package/dist/renderers/codex/index.js.map +1 -0
  150. package/dist/renderers/codex/skill-map.d.ts +8 -0
  151. package/dist/renderers/codex/skill-map.d.ts.map +1 -0
  152. package/dist/renderers/codex/skill-map.js +29 -0
  153. package/dist/renderers/codex/skill-map.js.map +1 -0
  154. package/dist/renderers/codex/tools.d.ts +3 -0
  155. package/dist/renderers/codex/tools.d.ts.map +1 -0
  156. package/dist/renderers/codex/tools.js +8 -0
  157. package/dist/renderers/codex/tools.js.map +1 -0
  158. package/dist/renderers/index.d.ts +3 -0
  159. package/dist/renderers/index.d.ts.map +1 -1
  160. package/dist/renderers/index.js +7 -0
  161. package/dist/renderers/index.js.map +1 -1
  162. package/dist/renderers/registry.d.ts +8 -0
  163. package/dist/renderers/registry.d.ts.map +1 -0
  164. package/dist/renderers/registry.js +22 -0
  165. package/dist/renderers/registry.js.map +1 -0
  166. package/dist/renderers/target-context.d.ts +14 -0
  167. package/dist/renderers/target-context.d.ts.map +1 -0
  168. package/dist/renderers/target-context.js +2 -0
  169. package/dist/renderers/target-context.js.map +1 -0
  170. package/dist/team-templates/policies.d.ts.map +1 -1
  171. package/dist/team-templates/policies.js +0 -12
  172. package/dist/team-templates/policies.js.map +1 -1
  173. package/dist/team-templates/presets.d.ts +1 -1
  174. package/dist/team-templates/presets.d.ts.map +1 -1
  175. package/dist/team-templates/roles.d.ts +6 -6
  176. package/dist/team-templates/roles.d.ts.map +1 -1
  177. package/dist/team-templates/roles.js +3 -4
  178. package/dist/team-templates/roles.js.map +1 -1
  179. package/dist/tools/types.d.ts +5 -0
  180. package/dist/tools/types.d.ts.map +1 -0
  181. package/dist/tools/types.js +2 -0
  182. package/dist/tools/types.js.map +1 -0
  183. package/dist/types/manifest.d.ts +8 -5
  184. package/dist/types/manifest.d.ts.map +1 -1
  185. package/dist/types/manifest.js +7 -9
  186. package/dist/types/manifest.js.map +1 -1
  187. package/dist/validator/checks/handoff-graph.d.ts.map +1 -1
  188. package/dist/validator/checks/handoff-graph.js +3 -2
  189. package/dist/validator/checks/handoff-graph.js.map +1 -1
  190. package/dist/validator/checks/instruction-blocks.d.ts.map +1 -1
  191. package/dist/validator/checks/instruction-blocks.js +3 -1
  192. package/dist/validator/checks/instruction-blocks.js.map +1 -1
  193. package/dist/validator/checks/security-baseline.d.ts.map +1 -1
  194. package/dist/validator/checks/security-baseline.js +4 -19
  195. package/dist/validator/checks/security-baseline.js.map +1 -1
  196. package/dist/validator/index.d.ts +2 -2
  197. package/dist/validator/index.d.ts.map +1 -1
  198. package/dist/validator/index.js +4 -8
  199. package/dist/validator/index.js.map +1 -1
  200. package/dist/wizard/index.d.ts +2 -0
  201. package/dist/wizard/index.d.ts.map +1 -1
  202. package/dist/wizard/index.js +30 -10
  203. package/dist/wizard/index.js.map +1 -1
  204. package/dist/wizard/steps/agent-customization.d.ts +2 -1
  205. package/dist/wizard/steps/agent-customization.d.ts.map +1 -1
  206. package/dist/wizard/steps/agent-customization.js +66 -30
  207. package/dist/wizard/steps/agent-customization.js.map +1 -1
  208. package/dist/wizard/steps/confirm-generate.d.ts +2 -2
  209. package/dist/wizard/steps/confirm-generate.d.ts.map +1 -1
  210. package/dist/wizard/steps/confirm-generate.js +2 -2
  211. package/dist/wizard/steps/confirm-generate.js.map +1 -1
  212. package/dist/wizard/steps/custom-team.d.ts +3 -2
  213. package/dist/wizard/steps/custom-team.d.ts.map +1 -1
  214. package/dist/wizard/steps/custom-team.js +3 -3
  215. package/dist/wizard/steps/custom-team.js.map +1 -1
  216. package/dist/wizard/steps/target-selection.d.ts +6 -0
  217. package/dist/wizard/steps/target-selection.d.ts.map +1 -0
  218. package/dist/wizard/steps/target-selection.js +27 -0
  219. package/dist/wizard/steps/target-selection.js.map +1 -0
  220. package/dist/wizard/steps/team-selection.d.ts +4 -2
  221. package/dist/wizard/steps/team-selection.d.ts.map +1 -1
  222. package/dist/wizard/steps/team-selection.js +6 -6
  223. package/dist/wizard/steps/team-selection.js.map +1 -1
  224. package/package.json +17 -3
  225. package/schema/teamcast.schema.json +42 -155
  226. package/templates/presets/feature-team.yaml +78 -47
  227. package/templates/presets/research-and-build.yaml +64 -41
  228. package/templates/presets/secure-dev.yaml +84 -56
  229. package/templates/presets/solo-dev.yaml +23 -17
  230. package/dist/cli/manifest-validation.d.ts +0 -13
  231. package/dist/cli/manifest-validation.d.ts.map +0 -1
  232. package/dist/cli/manifest-validation.js +0 -38
  233. package/dist/cli/manifest-validation.js.map +0 -1
  234. package/dist/core/permissions.d.ts +0 -10
  235. package/dist/core/permissions.d.ts.map +0 -1
  236. package/dist/core/permissions.js +0 -67
  237. package/dist/core/permissions.js.map +0 -1
  238. package/dist/generator/renderers/agent-md.d.ts +0 -5
  239. package/dist/generator/renderers/agent-md.d.ts.map +0 -1
  240. package/dist/generator/renderers/agent-md.js +0 -66
  241. package/dist/generator/renderers/agent-md.js.map +0 -1
  242. package/dist/generator/renderers/agents-md.d.ts +0 -4
  243. package/dist/generator/renderers/agents-md.d.ts.map +0 -1
  244. package/dist/generator/renderers/agents-md.js +0 -86
  245. package/dist/generator/renderers/agents-md.js.map +0 -1
  246. package/dist/generator/renderers/claude-md.d.ts +0 -4
  247. package/dist/generator/renderers/claude-md.d.ts.map +0 -1
  248. package/dist/generator/renderers/claude-md.js +0 -68
  249. package/dist/generator/renderers/claude-md.js.map +0 -1
  250. package/dist/generator/renderers/codex-config.d.ts +0 -4
  251. package/dist/generator/renderers/codex-config.d.ts.map +0 -1
  252. package/dist/generator/renderers/codex-config.js +0 -145
  253. package/dist/generator/renderers/codex-config.js.map +0 -1
  254. package/dist/generator/renderers/codex-skill-md.d.ts +0 -4
  255. package/dist/generator/renderers/codex-skill-md.d.ts.map +0 -1
  256. package/dist/generator/renderers/codex-skill-md.js +0 -47
  257. package/dist/generator/renderers/codex-skill-md.js.map +0 -1
  258. package/dist/generator/renderers/settings-json.d.ts +0 -5
  259. package/dist/generator/renderers/settings-json.d.ts.map +0 -1
  260. package/dist/generator/renderers/settings-json.js +0 -100
  261. package/dist/generator/renderers/settings-json.js.map +0 -1
  262. package/dist/generator/renderers/skill-md.d.ts +0 -4
  263. package/dist/generator/renderers/skill-md.d.ts.map +0 -1
  264. package/dist/generator/renderers/skill-md.js +0 -44
  265. package/dist/generator/renderers/skill-md.js.map +0 -1
  266. package/dist/generator/state.d.ts +0 -14
  267. package/dist/generator/state.d.ts.map +0 -1
  268. package/dist/generator/state.js +0 -76
  269. package/dist/generator/state.js.map +0 -1
  270. package/dist/generator/targets/claude.d.ts +0 -3
  271. package/dist/generator/targets/claude.d.ts.map +0 -1
  272. package/dist/generator/targets/claude.js +0 -24
  273. package/dist/generator/targets/claude.js.map +0 -1
  274. package/dist/generator/targets/codex.d.ts +0 -3
  275. package/dist/generator/targets/codex.d.ts.map +0 -1
  276. package/dist/generator/targets/codex.js +0 -19
  277. package/dist/generator/targets/codex.js.map +0 -1
  278. package/dist/generator/targets/index.d.ts +0 -4
  279. package/dist/generator/targets/index.d.ts.map +0 -1
  280. package/dist/generator/targets/index.js +0 -10
  281. package/dist/generator/targets/index.js.map +0 -1
  282. package/dist/generator/targets/types.d.ts +0 -8
  283. package/dist/generator/targets/types.d.ts.map +0 -1
  284. package/dist/manifest/compat.d.ts +0 -6
  285. package/dist/manifest/compat.d.ts.map +0 -1
  286. package/dist/manifest/compat.js +0 -56
  287. package/dist/manifest/compat.js.map +0 -1
  288. /package/dist/{generator/targets → plugins}/types.js +0 -0
@@ -1,7 +1,6 @@
1
1
  import chalk from 'chalk';
2
2
  import { readManifest, ManifestError } from '../manifest/reader.js';
3
- import { runValidation } from '../validator/index.js';
4
- import { printValidationReport, hasErrors } from '../validator/reporter.js';
3
+ import { evaluateTeam, teamHasBlockingIssues, printManifestValidation, } from '../application/validate-team.js';
5
4
  export function registerValidateCommand(program) {
6
5
  program
7
6
  .command('validate')
@@ -30,16 +29,15 @@ export function registerValidateCommand(program) {
30
29
  }
31
30
  throw err;
32
31
  }
33
- const results = runValidation(manifest);
34
- const policyAssertionCount = manifest.policies?.assertions?.length ?? 0;
32
+ const validation = evaluateTeam(manifest);
35
33
  if (options.format === 'json') {
36
- process.stdout.write(JSON.stringify(results, null, 2) + '\n');
34
+ process.stdout.write(JSON.stringify(validation.validationResults, null, 2) + '\n');
37
35
  }
38
36
  else {
39
- printValidationReport(results, policyAssertionCount);
37
+ printManifestValidation(validation);
40
38
  }
41
- const shouldFail = hasErrors(results) ||
42
- (options.strict && results.some((r) => r.severity === 'warning'));
39
+ const shouldFail = teamHasBlockingIssues(validation) ||
40
+ (options.strict && validation.validationResults.some((result) => result.severity === 'warning'));
43
41
  if (shouldFail) {
44
42
  process.exit(1);
45
43
  }
@@ -1 +1 @@
1
- {"version":3,"file":"validate.js","sourceRoot":"","sources":["../../src/cli/validate.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AACpE,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AACtD,OAAO,EAAE,qBAAqB,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAC;AAE5E,MAAM,UAAU,uBAAuB,CAAC,OAAgB;IACtD,OAAO;SACJ,OAAO,CAAC,UAAU,CAAC;SACnB,WAAW,CAAC,yEAAyE,CAAC;SACtF,MAAM,CAAC,UAAU,EAAE,sCAAsC,CAAC;SAC1D,MAAM,CAAC,mBAAmB,EAAE,6BAA6B,EAAE,MAAM,CAAC;SAClE,MAAM,CAAC,CAAC,OAA8C,EAAE,EAAE;QACzD,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;QAE1B,IAAI,QAAQ,CAAC;QACb,IAAI,CAAC;YACH,QAAQ,GAAG,YAAY,CAAC,GAAG,CAAC,CAAC;QAC/B,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,IAAI,GAAG,YAAY,aAAa,EAAE,CAAC;gBACjC,IAAI,OAAO,CAAC,MAAM,KAAK,MAAM,EAAE,CAAC;oBAC9B,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,GAAG,CAAC,OAAO,EAAE,OAAO,EAAE,GAAG,CAAC,OAAO,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC;gBAC3G,CAAC;qBAAM,CAAC;oBACN,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,YAAY,GAAG,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;oBACpD,IAAI,GAAG,CAAC,OAAO,EAAE,MAAM,EAAE,CAAC;wBACxB,KAAK,MAAM,CAAC,IAAI,GAAG,CAAC,OAAO;4BAAE,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC;oBAClE,CAAC;gBACH,CAAC;gBACD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAClB,CAAC;YACD,MAAM,GAAG,CAAC;QACZ,CAAC;QAED,MAAM,OAAO,GAAG,aAAa,CAAC,QAAQ,CAAC,CAAC;QACxC,MAAM,oBAAoB,GAAG,QAAQ,CAAC,QAAQ,EAAE,UAAU,EAAE,MAAM,IAAI,CAAC,CAAC;QAExE,IAAI,OAAO,CAAC,MAAM,KAAK,MAAM,EAAE,CAAC;YAC9B,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC;QAChE,CAAC;aAAM,CAAC;YACN,qBAAqB,CAAC,OAAO,EAAE,oBAAoB,CAAC,CAAC;QACvD,CAAC;QAED,MAAM,UAAU,GACd,SAAS,CAAC,OAAO,CAAC;YAClB,CAAC,OAAO,CAAC,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC;QAEpE,IAAI,UAAU,EAAE,CAAC;YACf,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;IACH,CAAC,CAAC,CAAC;AACP,CAAC"}
1
+ {"version":3,"file":"validate.js","sourceRoot":"","sources":["../../src/cli/validate.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AACpE,OAAO,EACL,YAAY,EACZ,qBAAqB,EACrB,uBAAuB,GACxB,MAAM,iCAAiC,CAAC;AAEzC,MAAM,UAAU,uBAAuB,CAAC,OAAgB;IACtD,OAAO;SACJ,OAAO,CAAC,UAAU,CAAC;SACnB,WAAW,CAAC,yEAAyE,CAAC;SACtF,MAAM,CAAC,UAAU,EAAE,sCAAsC,CAAC;SAC1D,MAAM,CAAC,mBAAmB,EAAE,6BAA6B,EAAE,MAAM,CAAC;SAClE,MAAM,CAAC,CAAC,OAA8C,EAAE,EAAE;QACzD,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;QAE1B,IAAI,QAAQ,CAAC;QACb,IAAI,CAAC;YACH,QAAQ,GAAG,YAAY,CAAC,GAAG,CAAC,CAAC;QAC/B,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,IAAI,GAAG,YAAY,aAAa,EAAE,CAAC;gBACjC,IAAI,OAAO,CAAC,MAAM,KAAK,MAAM,EAAE,CAAC;oBAC9B,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,GAAG,CAAC,OAAO,EAAE,OAAO,EAAE,GAAG,CAAC,OAAO,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC;gBAC3G,CAAC;qBAAM,CAAC;oBACN,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,YAAY,GAAG,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;oBACpD,IAAI,GAAG,CAAC,OAAO,EAAE,MAAM,EAAE,CAAC;wBACxB,KAAK,MAAM,CAAC,IAAI,GAAG,CAAC,OAAO;4BAAE,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC;oBAClE,CAAC;gBACH,CAAC;gBACD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAClB,CAAC;YACD,MAAM,GAAG,CAAC;QACZ,CAAC;QAED,MAAM,UAAU,GAAG,YAAY,CAAC,QAAQ,CAAC,CAAC;QAE1C,IAAI,OAAO,CAAC,MAAM,KAAK,MAAM,EAAE,CAAC;YAC9B,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,iBAAiB,EAAE,IAAI,EAAE,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC;QACrF,CAAC;aAAM,CAAC;YACN,uBAAuB,CAAC,UAAU,CAAC,CAAC;QACtC,CAAC;QAED,MAAM,UAAU,GACd,qBAAqB,CAAC,UAAU,CAAC;YACjC,CAAC,OAAO,CAAC,MAAM,IAAI,UAAU,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC;QAEnG,IAAI,UAAU,EAAE,CAAC;YACf,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;IACH,CAAC,CAAC,CAAC;AACP,CAAC"}
@@ -1,5 +1,5 @@
1
1
  import type { TeamPolicies } from '../core/types.js';
2
- export type PolicyFragmentName = 'allow-npm-run' | 'allow-npm-test' | 'allow-git-read' | 'allow-git-write' | 'allow-npx' | 'allow-npm-audit' | 'ask-git-push' | 'deny-destructive-shell' | 'deny-network-downloads' | 'deny-dynamic-exec' | 'deny-env-files' | 'sandbox-default';
2
+ export type PolicyFragmentName = 'allow-git-read' | 'allow-git-write' | 'ask-git-push' | 'deny-destructive-shell' | 'deny-network-downloads' | 'deny-dynamic-exec' | 'deny-env-files' | 'sandbox-default';
3
3
  export declare function listPolicyFragments(): PolicyFragmentName[];
4
4
  export declare function composePoliciesFromFragments(fragments: PolicyFragmentName[] | undefined, overrides?: TeamPolicies): TeamPolicies;
5
5
  //# sourceMappingURL=policy-fragments.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"policy-fragments.d.ts","sourceRoot":"","sources":["../../src/components/policy-fragments.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAErD,MAAM,MAAM,kBAAkB,GAC1B,eAAe,GACf,gBAAgB,GAChB,gBAAgB,GAChB,iBAAiB,GACjB,WAAW,GACX,iBAAiB,GACjB,cAAc,GACd,wBAAwB,GACxB,wBAAwB,GACxB,mBAAmB,GACnB,gBAAgB,GAChB,iBAAiB,CAAC;AAwHtB,wBAAgB,mBAAmB,IAAI,kBAAkB,EAAE,CAE1D;AAED,wBAAgB,4BAA4B,CAC1C,SAAS,EAAE,kBAAkB,EAAE,GAAG,SAAS,EAC3C,SAAS,GAAE,YAAiB,GAC3B,YAAY,CAWd"}
1
+ {"version":3,"file":"policy-fragments.d.ts","sourceRoot":"","sources":["../../src/components/policy-fragments.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAErD,MAAM,MAAM,kBAAkB,GAC1B,gBAAgB,GAChB,iBAAiB,GACjB,cAAc,GACd,wBAAwB,GACxB,wBAAwB,GACxB,mBAAmB,GACnB,gBAAgB,GAChB,iBAAiB,CAAC;AAmFtB,wBAAgB,mBAAmB,IAAI,kBAAkB,EAAE,CAE1D;AAED,wBAAgB,4BAA4B,CAC1C,SAAS,EAAE,kBAAkB,EAAE,GAAG,SAAS,EAC3C,SAAS,GAAE,YAAiB,GAC3B,YAAY,CAWd"}
@@ -1,58 +1,24 @@
1
1
  const POLICY_FRAGMENTS = {
2
- 'allow-npm-run': {
3
- permissions: {
4
- allow: ['project.commands'],
5
- },
6
- },
7
- 'allow-npm-test': {
8
- permissions: {
9
- allow: ['tests'],
10
- },
11
- },
12
2
  'allow-git-read': {
13
- permissions: {
14
- allow: ['git.read'],
15
- },
3
+ permissions: { rules: { allow: ['Bash(git status)', 'Bash(git diff *)'] } }
16
4
  },
17
5
  'allow-git-write': {
18
- permissions: {
19
- allow: ['git.write'],
20
- },
21
- },
22
- 'allow-npx': {
23
- permissions: {
24
- allow: ['package.exec'],
25
- },
26
- },
27
- 'allow-npm-audit': {
28
- permissions: {
29
- allow: ['security.audit'],
30
- },
6
+ permissions: { rules: { allow: ['Bash(git add *)', 'Bash(git commit *)'] } }
31
7
  },
32
8
  'ask-git-push': {
33
- permissions: {
34
- ask: ['git.push'],
35
- },
9
+ permissions: { rules: { ask: ['Bash(git push *)'] } }
36
10
  },
37
11
  'deny-destructive-shell': {
38
- permissions: {
39
- deny: ['destructive-shell'],
40
- },
12
+ permissions: { rules: { deny: ['Bash(rm -rf *)', 'Bash(git push --force *)'] } }
41
13
  },
42
14
  'deny-network-downloads': {
43
- permissions: {
44
- deny: ['downloads'],
45
- },
15
+ permissions: { rules: { deny: ['Bash(curl *)', 'Bash(wget *)'] } }
46
16
  },
47
17
  'deny-dynamic-exec': {
48
- permissions: {
49
- deny: ['dynamic-exec'],
50
- },
18
+ permissions: { rules: { deny: ['Bash(eval *)', 'Bash(exec *)'] } }
51
19
  },
52
20
  'deny-env-files': {
53
- permissions: {
54
- deny: ['env.write'],
55
- },
21
+ permissions: { rules: { deny: ['Write(.env*)', 'Edit(.env*)'] } }
56
22
  },
57
23
  'sandbox-default': {
58
24
  sandbox: {
@@ -69,17 +35,14 @@ function mergePolicies(base, extra) {
69
35
  return {
70
36
  permissions: base.permissions || extra.permissions
71
37
  ? {
72
- allow: mergeUnique(base.permissions?.allow, extra.permissions?.allow),
73
- ask: mergeUnique(base.permissions?.ask, extra.permissions?.ask),
74
- deny: mergeUnique(base.permissions?.deny, extra.permissions?.deny),
75
- defaultMode: extra.permissions?.defaultMode ?? base.permissions?.defaultMode,
76
- rawRules: base.permissions?.rawRules || extra.permissions?.rawRules
38
+ rules: base.permissions?.rules || extra.permissions?.rules
77
39
  ? {
78
- allow: mergeUnique(base.permissions?.rawRules?.allow, extra.permissions?.rawRules?.allow),
79
- ask: mergeUnique(base.permissions?.rawRules?.ask, extra.permissions?.rawRules?.ask),
80
- deny: mergeUnique(base.permissions?.rawRules?.deny, extra.permissions?.rawRules?.deny),
40
+ allow: mergeUnique(base.permissions?.rules?.allow, extra.permissions?.rules?.allow),
41
+ ask: mergeUnique(base.permissions?.rules?.ask, extra.permissions?.rules?.ask),
42
+ deny: mergeUnique(base.permissions?.rules?.deny, extra.permissions?.rules?.deny),
81
43
  }
82
44
  : undefined,
45
+ defaultMode: extra.permissions?.defaultMode ?? base.permissions?.defaultMode,
83
46
  }
84
47
  : undefined,
85
48
  sandbox: base.sandbox || extra.sandbox
@@ -1 +1 @@
1
- {"version":3,"file":"policy-fragments.js","sourceRoot":"","sources":["../../src/components/policy-fragments.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"policy-fragments.js","sourceRoot":"","sources":["../../src/components/policy-fragments.ts"],"names":[],"mappings":"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"}
@@ -3,7 +3,6 @@ export * from './skills.js';
3
3
  export * from './instructions.js';
4
4
  export * from './assertions.js';
5
5
  export * from './guards.js';
6
- export * from './permissions.js';
7
6
  export * from './skill-resolver.js';
8
7
  export { evaluatePolicyAssertions } from './policy-evaluator.js';
9
8
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/core/index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAC;AAC3B,cAAc,aAAa,CAAC;AAC5B,cAAc,mBAAmB,CAAC;AAClC,cAAc,iBAAiB,CAAC;AAChC,cAAc,aAAa,CAAC;AAC5B,cAAc,kBAAkB,CAAC;AACjC,cAAc,qBAAqB,CAAC;AACpC,OAAO,EAAE,wBAAwB,EAAE,MAAM,uBAAuB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/core/index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAC;AAC3B,cAAc,aAAa,CAAC;AAC5B,cAAc,mBAAmB,CAAC;AAClC,cAAc,iBAAiB,CAAC;AAChC,cAAc,aAAa,CAAC;AAC5B,cAAc,qBAAqB,CAAC;AACpC,OAAO,EAAE,wBAAwB,EAAE,MAAM,uBAAuB,CAAC"}
@@ -3,7 +3,6 @@ export * from './skills.js';
3
3
  export * from './instructions.js';
4
4
  export * from './assertions.js';
5
5
  export * from './guards.js';
6
- export * from './permissions.js';
7
6
  export * from './skill-resolver.js';
8
7
  export { evaluatePolicyAssertions } from './policy-evaluator.js';
9
8
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/core/index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAC;AAC3B,cAAc,aAAa,CAAC;AAC5B,cAAc,mBAAmB,CAAC;AAClC,cAAc,iBAAiB,CAAC;AAChC,cAAc,aAAa,CAAC;AAC5B,cAAc,kBAAkB,CAAC;AACjC,cAAc,qBAAqB,CAAC;AACpC,OAAO,EAAE,wBAAwB,EAAE,MAAM,uBAAuB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/core/index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAC;AAC3B,cAAc,aAAa,CAAC;AAC5B,cAAc,mBAAmB,CAAC;AAClC,cAAc,iBAAiB,CAAC;AAChC,cAAc,aAAa,CAAC;AAC5B,cAAc,qBAAqB,CAAC;AACpC,OAAO,EAAE,wBAAwB,EAAE,MAAM,uBAAuB,CAAC"}
@@ -1,8 +1,7 @@
1
1
  import type { InstructionBlock } from './instructions.js';
2
2
  import type { PolicyAssertion } from './assertions.js';
3
- export type ModelAlias = 'sonnet' | 'haiku' | 'opus' | 'inherit' | string;
3
+ export type ReasoningEffort = 'low' | 'medium' | 'high';
4
4
  export type PermissionMode = 'default' | 'acceptEdits' | 'bypassPermissions' | 'plan' | 'dontAsk';
5
- export type AbstractPermission = 'project.commands' | 'tests' | 'git.read' | 'git.write' | 'package.exec' | 'security.audit' | 'git.push' | 'destructive-shell' | 'downloads' | 'dynamic-exec' | 'env.write';
6
5
  export interface McpServerConfig {
7
6
  type?: string;
8
7
  command?: string;
@@ -17,8 +16,10 @@ export interface HookEntry {
17
16
  command: string;
18
17
  }
19
18
  export interface AgentRuntime {
20
- /** Effective model identifier after preset and default resolution. */
21
- model?: ModelAlias;
19
+ /** Target-native model identifier. */
20
+ model?: string;
21
+ /** Target-native reasoning level where supported (e.g. Codex). */
22
+ reasoningEffort?: ReasoningEffort;
22
23
  /**
23
24
  * Allowed tools. Uses string[] to keep the core platform-agnostic.
24
25
  * The Claude renderer layer casts these to CanonicalTool as needed.
@@ -53,11 +54,8 @@ export interface CoreAgent {
53
54
  metadata?: AgentMetadata;
54
55
  }
55
56
  export interface PermissionsConfig {
56
- allow?: AbstractPermission[];
57
- ask?: AbstractPermission[];
58
- deny?: AbstractPermission[];
59
57
  defaultMode?: 'default' | 'acceptEdits';
60
- rawRules?: {
58
+ rules?: {
61
59
  allow?: string[];
62
60
  ask?: string[];
63
61
  deny?: string[];
@@ -86,7 +84,6 @@ export interface TeamPolicies {
86
84
  assertions?: PolicyAssertion[];
87
85
  }
88
86
  export interface TeamSettings {
89
- defaultModel?: ModelAlias;
90
87
  generateDocs?: boolean;
91
88
  generateLocalSettings?: boolean;
92
89
  }
@@ -101,13 +98,13 @@ export interface ProjectConfig {
101
98
  description?: string;
102
99
  }
103
100
  /**
104
- * A fully-normalized team manifest used internally after all
105
- * legacy-format coercion, default application, and preset resolution.
101
+ * A fully-normalized, target-specific team view used internally after
102
+ * raw manifest defaults, target selection, and normalization.
106
103
  * Agents carry a `runtime` block, which distinguishes this type from
107
104
  * the raw `TeamCastManifest` loaded directly from YAML.
108
105
  */
109
106
  export interface CoreTeam {
110
- version: '1' | '2';
107
+ version: '2';
111
108
  project: ProjectConfig;
112
109
  agents: Record<string, CoreAgent>;
113
110
  policies?: TeamPolicies;
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/core/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/core/types.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,5 @@
1
1
  export interface ProjectContext {
2
2
  name?: string;
3
- stack?: 'nodejs' | 'rust' | 'python' | 'unknown';
4
- hasExistingClaude?: boolean;
5
3
  }
6
4
  export declare function detectProjectContext(cwd: string): ProjectContext;
7
5
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/detector/index.ts"],"names":[],"mappings":"AAIA,MAAM,WAAW,cAAc;IAC7B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,QAAQ,GAAG,MAAM,GAAG,QAAQ,GAAG,SAAS,CAAC;IACjD,iBAAiB,CAAC,EAAE,OAAO,CAAC;CAC7B;AAED,wBAAgB,oBAAoB,CAAC,GAAG,EAAE,MAAM,GAAG,cAAc,CAsDhE"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/detector/index.ts"],"names":[],"mappings":"AAGA,MAAM,WAAW,cAAc;IAC7B,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED,wBAAgB,oBAAoB,CAAC,GAAG,EAAE,MAAM,GAAG,cAAc,CA+ChE"}
@@ -8,14 +8,13 @@ export function detectProjectContext(cwd) {
8
8
  try {
9
9
  const pkg = JSON.parse(readFileSync(pkgPath, 'utf-8'));
10
10
  ctx.name = pkg.name ?? basename(cwd);
11
- ctx.stack = 'nodejs';
12
11
  }
13
12
  catch {
14
13
  // ignore
15
14
  }
16
15
  }
17
16
  // Detect Rust
18
- if (!ctx.stack) {
17
+ if (!ctx.name) {
19
18
  const cargoPath = join(cwd, 'Cargo.toml');
20
19
  if (existsSync(cargoPath)) {
21
20
  try {
@@ -23,7 +22,6 @@ export function detectProjectContext(cwd) {
23
22
  const match = raw.match(/^\s*name\s*=\s*"([^"]+)"/m);
24
23
  if (match)
25
24
  ctx.name = match[1];
26
- ctx.stack = 'rust';
27
25
  }
28
26
  catch {
29
27
  // ignore
@@ -31,7 +29,7 @@ export function detectProjectContext(cwd) {
31
29
  }
32
30
  }
33
31
  // Detect Python
34
- if (!ctx.stack) {
32
+ if (!ctx.name) {
35
33
  const pyprojectPath = join(cwd, 'pyproject.toml');
36
34
  if (existsSync(pyprojectPath)) {
37
35
  try {
@@ -39,19 +37,15 @@ export function detectProjectContext(cwd) {
39
37
  const match = raw.match(/^\s*name\s*=\s*"([^"]+)"/m);
40
38
  if (match)
41
39
  ctx.name = match[1];
42
- ctx.stack = 'python';
43
40
  }
44
41
  catch {
45
42
  // ignore
46
43
  }
47
44
  }
48
45
  }
49
- if (!ctx.stack) {
50
- ctx.name = ctx.name ?? basename(cwd);
51
- ctx.stack = 'unknown';
46
+ if (!ctx.name) {
47
+ ctx.name = basename(cwd);
52
48
  }
53
- // Check for existing .claude directory
54
- ctx.hasExistingClaude = existsSync(join(cwd, '.claude'));
55
49
  return ctx;
56
50
  }
57
51
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/detector/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,IAAI,CAAC;AAC9C,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,MAAM,CAAC;AAStC,MAAM,UAAU,oBAAoB,CAAC,GAAW;IAC9C,MAAM,GAAG,GAAmB,EAAE,CAAC;IAE/B,iBAAiB;IACjB,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,EAAE,cAAc,CAAC,CAAC;IAC1C,IAAI,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;QACxB,IAAI,CAAC;YACH,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC;YACvD,GAAG,CAAC,IAAI,GAAG,GAAG,CAAC,IAAI,IAAI,QAAQ,CAAC,GAAG,CAAC,CAAC;YACrC,GAAG,CAAC,KAAK,GAAG,QAAQ,CAAC;QACvB,CAAC;QAAC,MAAM,CAAC;YACP,SAAS;QACX,CAAC;IACH,CAAC;IAED,cAAc;IACd,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC;QACf,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,YAAY,CAAC,CAAC;QAC1C,IAAI,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;YAC1B,IAAI,CAAC;gBACH,MAAM,GAAG,GAAG,YAAY,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;gBAC7C,MAAM,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC,2BAA2B,CAAC,CAAC;gBACrD,IAAI,KAAK;oBAAE,GAAG,CAAC,IAAI,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;gBAC/B,GAAG,CAAC,KAAK,GAAG,MAAM,CAAC;YACrB,CAAC;YAAC,MAAM,CAAC;gBACP,SAAS;YACX,CAAC;QACH,CAAC;IACH,CAAC;IAED,gBAAgB;IAChB,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC;QACf,MAAM,aAAa,GAAG,IAAI,CAAC,GAAG,EAAE,gBAAgB,CAAC,CAAC;QAClD,IAAI,UAAU,CAAC,aAAa,CAAC,EAAE,CAAC;YAC9B,IAAI,CAAC;gBACH,MAAM,GAAG,GAAG,YAAY,CAAC,aAAa,EAAE,OAAO,CAAC,CAAC;gBACjD,MAAM,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC,2BAA2B,CAAC,CAAC;gBACrD,IAAI,KAAK;oBAAE,GAAG,CAAC,IAAI,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;gBAC/B,GAAG,CAAC,KAAK,GAAG,QAAQ,CAAC;YACvB,CAAC;YAAC,MAAM,CAAC;gBACP,SAAS;YACX,CAAC;QACH,CAAC;IACH,CAAC;IAED,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC;QACf,GAAG,CAAC,IAAI,GAAG,GAAG,CAAC,IAAI,IAAI,QAAQ,CAAC,GAAG,CAAC,CAAC;QACrC,GAAG,CAAC,KAAK,GAAG,SAAS,CAAC;IACxB,CAAC;IAED,uCAAuC;IACvC,GAAG,CAAC,iBAAiB,GAAG,UAAU,CAAC,IAAI,CAAC,GAAG,EAAE,SAAS,CAAC,CAAC,CAAC;IAEzD,OAAO,GAAG,CAAC;AACb,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/detector/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,IAAI,CAAC;AAC9C,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,MAAM,CAAC;AAMtC,MAAM,UAAU,oBAAoB,CAAC,GAAW;IAC9C,MAAM,GAAG,GAAmB,EAAE,CAAC;IAE/B,iBAAiB;IACjB,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,EAAE,cAAc,CAAC,CAAC;IAC1C,IAAI,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;QACxB,IAAI,CAAC;YACH,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC;YACvD,GAAG,CAAC,IAAI,GAAG,GAAG,CAAC,IAAI,IAAI,QAAQ,CAAC,GAAG,CAAC,CAAC;QACvC,CAAC;QAAC,MAAM,CAAC;YACP,SAAS;QACX,CAAC;IACH,CAAC;IAED,cAAc;IACd,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC;QACd,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,YAAY,CAAC,CAAC;QAC1C,IAAI,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;YAC1B,IAAI,CAAC;gBACH,MAAM,GAAG,GAAG,YAAY,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;gBAC7C,MAAM,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC,2BAA2B,CAAC,CAAC;gBACrD,IAAI,KAAK;oBAAE,GAAG,CAAC,IAAI,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;YACjC,CAAC;YAAC,MAAM,CAAC;gBACP,SAAS;YACX,CAAC;QACH,CAAC;IACH,CAAC;IAED,gBAAgB;IAChB,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC;QACd,MAAM,aAAa,GAAG,IAAI,CAAC,GAAG,EAAE,gBAAgB,CAAC,CAAC;QAClD,IAAI,UAAU,CAAC,aAAa,CAAC,EAAE,CAAC;YAC9B,IAAI,CAAC;gBACH,MAAM,GAAG,GAAG,YAAY,CAAC,aAAa,EAAE,OAAO,CAAC,CAAC;gBACjD,MAAM,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC,2BAA2B,CAAC,CAAC;gBACrD,IAAI,KAAK;oBAAE,GAAG,CAAC,IAAI,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;YACjC,CAAC;YAAC,MAAM,CAAC;gBACP,SAAS;YACX,CAAC;QACH,CAAC;IACH,CAAC;IAED,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC;QACd,GAAG,CAAC,IAAI,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC;IAC3B,CAAC;IAED,OAAO,GAAG,CAAC;AACb,CAAC"}
@@ -1,4 +1,4 @@
1
- import type { CoreTeam } from '../core/types.js';
1
+ import type { TeamCastManifest } from '../manifest/types.js';
2
2
  export type DiffStatus = 'new' | 'modified' | 'unchanged';
3
3
  export interface DiffEntry {
4
4
  path: string;
@@ -6,5 +6,5 @@ export interface DiffEntry {
6
6
  addedLines?: number;
7
7
  removedLines?: number;
8
8
  }
9
- export declare function diffManifest(team: CoreTeam, cwd: string): DiffEntry[];
9
+ export declare function diffManifest(manifest: TeamCastManifest, cwd: string): DiffEntry[];
10
10
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/diff/index.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAIjD,MAAM,MAAM,UAAU,GAAG,KAAK,GAAG,UAAU,GAAG,WAAW,CAAC;AAE1D,MAAM,WAAW,SAAS;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,UAAU,CAAC;IACnB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,wBAAgB,YAAY,CAAC,IAAI,EAAE,QAAQ,EAAE,GAAG,EAAE,MAAM,GAAG,SAAS,EAAE,CA2BrE"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/diff/index.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAI7D,MAAM,MAAM,UAAU,GAAG,KAAK,GAAG,UAAU,GAAG,WAAW,CAAC;AAE1D,MAAM,WAAW,SAAS;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,UAAU,CAAC;IACnB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,wBAAgB,YAAY,CAAC,QAAQ,EAAE,gBAAgB,EAAE,GAAG,EAAE,MAAM,GAAG,SAAS,EAAE,CA2BjF"}
@@ -2,8 +2,8 @@ import { readFileSync, existsSync } from 'fs';
2
2
  import { join } from 'path';
3
3
  import { generate } from '../generator/index.js';
4
4
  import { isUserEditableGeneratedFile } from '../generator/file-policies.js';
5
- export function diffManifest(team, cwd) {
6
- const expected = generate(team, { cwd, dryRun: true });
5
+ export function diffManifest(manifest, cwd) {
6
+ const expected = generate(manifest, { cwd, dryRun: true });
7
7
  return expected.map((file) => {
8
8
  const absPath = join(cwd, file.path);
9
9
  if (!existsSync(absPath)) {
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/diff/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,IAAI,CAAC;AAC9C,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAE5B,OAAO,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AACjD,OAAO,EAAE,2BAA2B,EAAE,MAAM,+BAA+B,CAAC;AAW5E,MAAM,UAAU,YAAY,CAAC,IAAc,EAAE,GAAW;IACtD,MAAM,QAAQ,GAAG,QAAQ,CAAC,IAAI,EAAE,EAAE,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;IAEvD,OAAO,QAAQ,CAAC,GAAG,CAAC,CAAC,IAAI,EAAa,EAAE;QACtC,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;QAErC,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;YACzB,OAAO,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC;QAC5C,CAAC;QAED,MAAM,QAAQ,GAAG,YAAY,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;QAChD,IAAI,2BAA2B,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;YAC3C,OAAO,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,WAAW,EAAE,CAAC;QAClD,CAAC;QAED,IAAI,QAAQ,KAAK,IAAI,CAAC,OAAO,EAAE,CAAC;YAC9B,OAAO,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,WAAW,EAAE,CAAC;QAClD,CAAC;QAED,MAAM,aAAa,GAAG,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAC3C,MAAM,aAAa,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAE/C,MAAM,KAAK,GAAG,aAAa,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,aAAa,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC;QACnF,MAAM,OAAO,GAAG,aAAa,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,aAAa,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC;QAErF,OAAO,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,UAAU,EAAE,UAAU,EAAE,KAAK,EAAE,YAAY,EAAE,OAAO,EAAE,CAAC;IAC3F,CAAC,CAAC,CAAC;AACL,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/diff/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,IAAI,CAAC;AAC9C,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAE5B,OAAO,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AACjD,OAAO,EAAE,2BAA2B,EAAE,MAAM,+BAA+B,CAAC;AAW5E,MAAM,UAAU,YAAY,CAAC,QAA0B,EAAE,GAAW;IAClE,MAAM,QAAQ,GAAG,QAAQ,CAAC,QAAQ,EAAE,EAAE,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;IAE3D,OAAO,QAAQ,CAAC,GAAG,CAAC,CAAC,IAAI,EAAa,EAAE;QACtC,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;QAErC,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;YACzB,OAAO,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC;QAC5C,CAAC;QAED,MAAM,QAAQ,GAAG,YAAY,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;QAChD,IAAI,2BAA2B,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;YAC3C,OAAO,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,WAAW,EAAE,CAAC;QAClD,CAAC;QAED,IAAI,QAAQ,KAAK,IAAI,CAAC,OAAO,EAAE,CAAC;YAC9B,OAAO,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,WAAW,EAAE,CAAC;QAClD,CAAC;QAED,MAAM,aAAa,GAAG,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAC3C,MAAM,aAAa,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAE/C,MAAM,KAAK,GAAG,aAAa,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,aAAa,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC;QACnF,MAAM,OAAO,GAAG,aAAa,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,aAAa,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC;QAErF,OAAO,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,UAAU,EAAE,UAAU,EAAE,KAAK,EAAE,YAAY,EAAE,OAAO,EAAE,CAAC;IAC3F,CAAC,CAAC,CAAC;AACL,CAAC"}
@@ -1,3 +1,4 @@
1
1
  import type { CoreTeam } from '../core/types.js';
2
- export declare function buildExplanation(team: CoreTeam): string;
2
+ import type { TargetContext } from '../renderers/target-context.js';
3
+ export declare function buildExplanation(team: CoreTeam, targetContext: TargetContext): string;
3
4
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/explainer/index.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AA6DjD,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,QAAQ,GAAG,MAAM,CA8CvD"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/explainer/index.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AACjD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,gCAAgC,CAAC;AAqEpE,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,QAAQ,EAAE,aAAa,EAAE,aAAa,GAAG,MAAM,CA8CrF"}
@@ -1,25 +1,33 @@
1
1
  import chalk from 'chalk';
2
- import { reverseMapToolsToSkills } from '../renderers/claude/skill-map.js';
3
- function formatAgentSection(agentId, agent, defaultModel) {
2
+ function formatAgentSection(agentId, agent, targetContext) {
4
3
  const lines = [];
5
- const model = agent.runtime.model ?? defaultModel ?? 'sonnet';
4
+ const model = agent.runtime.model ?? 'unspecified';
6
5
  lines.push(` ${chalk.cyan(agentId)} ${chalk.dim(`(${model})`)}`);
7
6
  // Description
8
7
  if (agent.description) {
9
8
  lines.push(` ${chalk.dim('Description:')} ${agent.description}`);
10
9
  }
10
+ if (agent.runtime.reasoningEffort) {
11
+ lines.push(` ${chalk.dim('Reasoning effort:')} ${agent.runtime.reasoningEffort}`);
12
+ }
11
13
  // Skills (abstract) — reverse-mapped from tools, or from runtime.skills if no tools
12
14
  const tools = agent.runtime.tools ?? [];
13
15
  if (tools.length > 0) {
14
- const { skills, remainingTools } = reverseMapToolsToSkills(tools);
15
- if (skills.length > 0) {
16
- lines.push(` ${chalk.dim('Skills:')} ${skills.join(', ')}`);
16
+ const reverseMap = targetContext.reverseMapTools;
17
+ if (reverseMap) {
18
+ const { skills, remainingTools } = reverseMap(tools);
19
+ if (skills.length > 0) {
20
+ lines.push(` ${chalk.dim('Skills:')} ${skills.join(', ')}`);
21
+ }
22
+ // Expanded tools list (all, including unmapped remainders)
23
+ lines.push(` ${chalk.dim('Tools:')} ${tools.join(', ')}`);
24
+ if (remainingTools.length > 0) {
25
+ // Unmapped tools shown for transparency
26
+ lines.push(` ${chalk.dim('Unmapped tools:')} ${remainingTools.join(', ')}`);
27
+ }
17
28
  }
18
- // Expanded tools list (all, including unmapped remainders)
19
- lines.push(` ${chalk.dim('Tools:')} ${tools.join(', ')}`);
20
- if (remainingTools.length > 0) {
21
- // Unmapped tools shown for transparency
22
- lines.push(` ${chalk.dim('Unmapped tools:')} ${remainingTools.join(', ')}`);
29
+ else {
30
+ lines.push(` ${chalk.dim('Tools:')} ${tools.join(', ')}`);
23
31
  }
24
32
  }
25
33
  // Disallowed tools
@@ -45,14 +53,14 @@ function formatAgentSection(agentId, agent, defaultModel) {
45
53
  }
46
54
  return lines;
47
55
  }
48
- export function buildExplanation(team) {
56
+ export function buildExplanation(team, targetContext) {
49
57
  const lines = [];
50
58
  const preset = team.project.preset ? ` (preset: ${team.project.preset})` : '';
51
59
  lines.push(chalk.bold(`Project: ${team.project.name}`) + chalk.dim(preset));
52
60
  lines.push('');
53
61
  lines.push(chalk.bold('Team structure:'));
54
62
  for (const [agentId, agent] of Object.entries(team.agents)) {
55
- lines.push(...formatAgentSection(agentId, agent, team.settings?.defaultModel));
63
+ lines.push(...formatAgentSection(agentId, agent, targetContext));
56
64
  lines.push('');
57
65
  }
58
66
  if (team.policies) {
@@ -62,16 +70,16 @@ export function buildExplanation(team) {
62
70
  if (team.policies.network?.allowedDomains?.length) {
63
71
  lines.push(` ${chalk.dim('*')} Network: restricted to ${team.policies.network.allowedDomains.join(', ')}`);
64
72
  }
65
- // Abstract permissions (allow / ask / deny)
66
- const perms = team.policies.permissions;
67
- if (perms?.allow?.length) {
68
- lines.push(` ${chalk.dim('*')} Allowed: ${perms.allow.join(', ')}`);
73
+ // Permissions (allow / ask / deny)
74
+ const rules = team.policies.permissions?.rules;
75
+ if (rules?.allow?.length) {
76
+ lines.push(` ${chalk.dim('*')} Allowed: ${rules.allow.join(', ')}`);
69
77
  }
70
- if (perms?.ask?.length) {
71
- lines.push(` ${chalk.dim('*')} Ask before: ${perms.ask.join(', ')}`);
78
+ if (rules?.ask?.length) {
79
+ lines.push(` ${chalk.dim('*')} Ask before: ${rules.ask.join(', ')}`);
72
80
  }
73
- if (perms?.deny?.length) {
74
- lines.push(` ${chalk.dim('*')} Denied: ${perms.deny.join(', ')}`);
81
+ if (rules?.deny?.length) {
82
+ lines.push(` ${chalk.dim('*')} Denied: ${rules.deny.join(', ')}`);
75
83
  }
76
84
  const hookCount = (team.policies.hooks?.preToolUse?.length ?? 0) +
77
85
  (team.policies.hooks?.postToolUse?.length ?? 0);
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/explainer/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/explainer/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAI1B,SAAS,kBAAkB,CAAC,OAAe,EAAE,KAAiC,EAAE,aAA4B;IAC1G,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,MAAM,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,KAAK,IAAI,aAAa,CAAC;IAEnD,KAAK,CAAC,IAAI,CAAC,KAAK,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,KAAK,CAAC,GAAG,CAAC,IAAI,KAAK,GAAG,CAAC,EAAE,CAAC,CAAC;IAElE,cAAc;IACd,IAAI,KAAK,CAAC,WAAW,EAAE,CAAC;QACtB,KAAK,CAAC,IAAI,CAAC,OAAO,KAAK,CAAC,GAAG,CAAC,cAAc,CAAC,IAAI,KAAK,CAAC,WAAW,EAAE,CAAC,CAAC;IACtE,CAAC;IAED,IAAI,KAAK,CAAC,OAAO,CAAC,eAAe,EAAE,CAAC;QAClC,KAAK,CAAC,IAAI,CAAC,OAAO,KAAK,CAAC,GAAG,CAAC,mBAAmB,CAAC,IAAI,KAAK,CAAC,OAAO,CAAC,eAAe,EAAE,CAAC,CAAC;IACvF,CAAC;IAED,oFAAoF;IACpF,MAAM,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,KAAK,IAAI,EAAE,CAAC;IACxC,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACrB,MAAM,UAAU,GAAG,aAAa,CAAC,eAAe,CAAC;QACjD,IAAI,UAAU,EAAE,CAAC;YACf,MAAM,EAAE,MAAM,EAAE,cAAc,EAAE,GAAG,UAAU,CAAC,KAAK,CAAC,CAAC;YAErD,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACtB,KAAK,CAAC,IAAI,CAAC,OAAO,KAAK,CAAC,GAAG,CAAC,SAAS,CAAC,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YACjE,CAAC;YAED,2DAA2D;YAC3D,KAAK,CAAC,IAAI,CAAC,OAAO,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YAE7D,IAAI,cAAc,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC9B,wCAAwC;gBACxC,KAAK,CAAC,IAAI,CAAC,OAAO,KAAK,CAAC,GAAG,CAAC,iBAAiB,CAAC,IAAI,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YACjF,CAAC;QACH,CAAC;aAAM,CAAC;YACN,KAAK,CAAC,IAAI,CAAC,OAAO,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAC/D,CAAC;IACH,CAAC;IAED,mBAAmB;IACnB,IAAI,KAAK,CAAC,OAAO,CAAC,eAAe,EAAE,MAAM,EAAE,CAAC;QAC1C,KAAK,CAAC,IAAI,CAAC,OAAO,KAAK,CAAC,GAAG,CAAC,gBAAgB,CAAC,IAAI,KAAK,CAAC,OAAO,CAAC,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAC/F,CAAC;IAED,sFAAsF;IACtF,IAAI,KAAK,CAAC,OAAO,CAAC,SAAS,EAAE,MAAM,EAAE,CAAC;QACpC,KAAK,CAAC,IAAI,CAAC,OAAO,KAAK,CAAC,GAAG,CAAC,aAAa,CAAC,IAAI,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACtF,CAAC;IAED,yCAAyC;IACzC,IAAI,KAAK,CAAC,YAAY,EAAE,MAAM,EAAE,CAAC;QAC/B,MAAM,KAAK,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,KAAK,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClE,KAAK,CAAC,IAAI,CAAC,OAAO,KAAK,CAAC,GAAG,CAAC,qBAAqB,CAAC,IAAI,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAC5E,CAAC;IAED,0CAA0C;IAC1C,IAAI,KAAK,CAAC,OAAO,CAAC,cAAc,EAAE,CAAC;QACjC,KAAK,CAAC,IAAI,CAAC,OAAO,KAAK,CAAC,GAAG,CAAC,kBAAkB,CAAC,IAAI,KAAK,CAAC,OAAO,CAAC,cAAc,EAAE,CAAC,CAAC;IACrF,CAAC;IAED,WAAW;IACX,IAAI,KAAK,CAAC,QAAQ,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC;QACrC,KAAK,CAAC,IAAI,CAAC,OAAO,KAAK,CAAC,GAAG,CAAC,eAAe,CAAC,IAAI,KAAK,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACxF,CAAC;IAED,OAAO,KAAK,CAAC;AACf,CAAC;AAED,MAAM,UAAU,gBAAgB,CAAC,IAAc,EAAE,aAA4B;IAC3E,MAAM,KAAK,GAAa,EAAE,CAAC;IAE3B,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,aAAa,IAAI,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;IAC9E,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,YAAY,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,GAAG,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC;IAC5E,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACf,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC,CAAC;IAE1C,KAAK,MAAM,CAAC,OAAO,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC;QAC3D,KAAK,CAAC,IAAI,CAAC,GAAG,kBAAkB,CAAC,OAAO,EAAE,KAAK,EAAE,aAAa,CAAC,CAAC,CAAC;QACjE,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACjB,CAAC;IAED,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;QAClB,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAC,CAAC;QAE/C,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC;QACtC,KAAK,CAAC,IAAI,CAAC,KAAK,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,aAAa,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC;QAEnH,IAAI,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,cAAc,EAAE,MAAM,EAAE,CAAC;YAClD,KAAK,CAAC,IAAI,CAAC,KAAK,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,2BAA2B,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAC9G,CAAC;QAED,mCAAmC;QACnC,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,WAAW,EAAE,KAAK,CAAC;QAC/C,IAAI,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC;YACzB,KAAK,CAAC,IAAI,CAAC,KAAK,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,aAAa,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACvE,CAAC;QACD,IAAI,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,CAAC;YACvB,KAAK,CAAC,IAAI,CAAC,KAAK,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,gBAAgB,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACxE,CAAC;QACD,IAAI,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;YACxB,KAAK,CAAC,IAAI,CAAC,KAAK,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,YAAY,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACrE,CAAC;QAED,MAAM,SAAS,GACb,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE,UAAU,EAAE,MAAM,IAAI,CAAC,CAAC;YAC9C,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE,WAAW,EAAE,MAAM,IAAI,CAAC,CAAC,CAAC;QAClD,IAAI,SAAS,GAAG,CAAC,EAAE,CAAC;YAClB,KAAK,CAAC,IAAI,CAAC,KAAK,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,WAAW,SAAS,aAAa,CAAC,CAAC;QACnE,CAAC;QAED,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACjB,CAAC;IAED,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC1B,CAAC"}
@@ -1,5 +1,5 @@
1
- import type { CoreTeam } from '../core/types.js';
2
1
  import type { TeamCastManifest } from '../manifest/types.js';
3
2
  import type { BuildGeneratedOutputsOptions } from '../application/build-generated-files.js';
4
- export declare function generate(manifest: TeamCastManifest | CoreTeam, options: BuildGeneratedOutputsOptions): import("../renderers/types.js").RenderedFile[];
3
+ import '../renderers/index.js';
4
+ export declare function generate(manifest: TeamCastManifest, options: BuildGeneratedOutputsOptions): import("../renderers/types.js").RenderedFile[];
5
5
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/generator/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AACjD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAG7D,OAAO,KAAK,EAAE,4BAA4B,EAAE,MAAM,yCAAyC,CAAC;AAG5F,wBAAgB,QAAQ,CACtB,QAAQ,EAAE,gBAAgB,GAAG,QAAQ,EACrC,OAAO,EAAE,4BAA4B,kDAOtC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/generator/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAE7D,OAAO,KAAK,EAAE,4BAA4B,EAAE,MAAM,yCAAyC,CAAC;AAG5F,OAAO,uBAAuB,CAAC;AAK/B,wBAAgB,QAAQ,CACtB,QAAQ,EAAE,gBAAgB,EAC1B,OAAO,EAAE,4BAA4B,kDAmBtC"}
@@ -1,10 +1,23 @@
1
- import { isCoreTeam } from '../core/guards.js';
2
1
  import { applyDefaults } from '../manifest/defaults.js';
3
2
  import { buildGeneratedOutputs } from '../application/build-generated-files.js';
3
+ import '../renderers/index.js';
4
+ import { getRegisteredTargetNames, getTarget } from '../renderers/registry.js';
5
+ import { normalizeManifest } from '../manifest/normalize.js';
6
+ import { injectEnvironmentPolicies } from '../plugins/inject.js';
4
7
  export function generate(manifest, options) {
5
- const team = isCoreTeam(manifest)
6
- ? manifest
7
- : applyDefaults(manifest);
8
- return buildGeneratedOutputs(team, options);
8
+ const rawManifest = applyDefaults(manifest);
9
+ injectEnvironmentPolicies(rawManifest, options.cwd);
10
+ const rawManifestRecord = rawManifest;
11
+ const registeredTargets = getRegisteredTargetNames();
12
+ const allGeneratedFiles = [];
13
+ for (const targetName of registeredTargets) {
14
+ if (rawManifestRecord[targetName]) {
15
+ const targetContext = getTarget(targetName);
16
+ const coreTeam = normalizeManifest(rawManifest, targetContext);
17
+ const targetFiles = buildGeneratedOutputs(coreTeam, targetName, options);
18
+ allGeneratedFiles.push(...targetFiles);
19
+ }
20
+ }
21
+ return allGeneratedFiles;
9
22
  }
10
23
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/generator/index.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAC/C,OAAO,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AAExD,OAAO,EAAE,qBAAqB,EAAE,MAAM,yCAAyC,CAAC;AAEhF,MAAM,UAAU,QAAQ,CACtB,QAAqC,EACrC,OAAqC;IAErC,MAAM,IAAI,GAAG,UAAU,CAAC,QAAQ,CAAC;QAC/B,CAAC,CAAC,QAAQ;QACV,CAAC,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;IAE5B,OAAO,qBAAqB,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;AAC9C,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/generator/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AAExD,OAAO,EAAE,qBAAqB,EAAE,MAAM,yCAAyC,CAAC;AAEhF,OAAO,uBAAuB,CAAC;AAC/B,OAAO,EAAE,wBAAwB,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAC;AAC/E,OAAO,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAC7D,OAAO,EAAE,yBAAyB,EAAE,MAAM,sBAAsB,CAAC;AAEjE,MAAM,UAAU,QAAQ,CACtB,QAA0B,EAC1B,OAAqC;IAErC,MAAM,WAAW,GAAG,aAAa,CAAC,QAAQ,CAAC,CAAC;IAC5C,yBAAyB,CAAC,WAAW,EAAE,OAAO,CAAC,GAAG,CAAC,CAAC;IAEpD,MAAM,iBAAiB,GAAG,WAAiD,CAAC;IAC5E,MAAM,iBAAiB,GAAG,wBAAwB,EAAE,CAAC;IACrD,MAAM,iBAAiB,GAA6C,EAAE,CAAC;IAEvE,KAAK,MAAM,UAAU,IAAI,iBAAiB,EAAE,CAAC;QAC3C,IAAI,iBAAiB,CAAC,UAAU,CAAC,EAAE,CAAC;YAClC,MAAM,aAAa,GAAG,SAAS,CAAC,UAAU,CAAC,CAAC;YAC5C,MAAM,QAAQ,GAAG,iBAAiB,CAAC,WAAW,EAAE,aAAa,CAAC,CAAC;YAC/D,MAAM,WAAW,GAAG,qBAAqB,CAAC,QAAQ,EAAE,UAAU,EAAE,OAAO,CAAC,CAAC;YACzE,iBAAiB,CAAC,IAAI,CAAC,GAAG,WAAW,CAAC,CAAC;QACzC,CAAC;IACH,CAAC;IAED,OAAO,iBAAiB,CAAC;AAC3B,CAAC"}
@@ -1,12 +1,13 @@
1
- import type { CoreTeam } from '../core/types.js';
1
+ import type { TeamCastManifest } from '../manifest/types.js';
2
2
  interface ImportWarning {
3
3
  file: string;
4
4
  message: string;
5
5
  }
6
6
  interface ImportResult {
7
- team: CoreTeam;
7
+ team: TeamCastManifest;
8
8
  warnings: ImportWarning[];
9
9
  }
10
10
  export declare function importFromClaudeDir(cwd: string, projectName: string): ImportResult;
11
+ export declare function importFromCodexDir(cwd: string, projectName: string): ImportResult;
11
12
  export {};
12
13
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/importer/index.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAEV,QAAQ,EAMT,MAAM,kBAAkB,CAAC;AAY1B,UAAU,aAAa;IACrB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,UAAU,YAAY;IACpB,IAAI,EAAE,QAAQ,CAAC;IACf,QAAQ,EAAE,aAAa,EAAE,CAAC;CAC3B;AAyRD,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,YAAY,CAyClF"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/importer/index.ts"],"names":[],"mappings":"AAWA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAY7D,UAAU,aAAa;IACrB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,UAAU,YAAY;IACpB,IAAI,EAAE,gBAAgB,CAAC;IACvB,QAAQ,EAAE,aAAa,EAAE,CAAC;CAC3B;AAuVD,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,YAAY,CAqFlF;AAuFD,wBAAgB,kBAAkB,CAAC,GAAG,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,YAAY,CA2DjF"}