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,22 +1,62 @@
1
1
  import chalk from 'chalk';
2
- import { AGENT_SKILLS } from '../../core/skills.js';
3
- import { promptConfirm, promptList, promptCheckbox } from '../../utils/prompts.js';
4
- import { expandSkillsToTools, reverseMapToolsToSkills } from '../../renderers/claude/skill-map.js';
2
+ import { expandSkills } from '../../core/skill-resolver.js';
3
+ import { promptConfirm, promptList, promptCheckbox, promptInput } from '../../utils/prompts.js';
4
+ import { defaultRegistry } from '../../plugins/index.js';
5
5
  /**
6
6
  * Human-readable labels for each AgentSkill value, shown in the wizard checkbox.
7
7
  * Format: "<label> (<tools>)"
8
8
  */
9
- const SKILL_LABELS = {
10
- read_files: 'Read files (Read, Glob, Grep)',
11
- write_files: 'Write files (Write, Edit, MultiEdit)',
12
- execute: 'Execute commands (Bash)',
13
- search: 'Search (Glob, Grep)',
14
- web: 'Web access (WebFetch, WebSearch)',
15
- delegate: 'Delegate (Agent)',
16
- interact: 'Interact (AskUserQuestion, TodoWrite, TodoRead)',
17
- notebook: 'Notebook (NotebookEdit)',
18
- };
19
- export async function stepAgentCustomization(team, options) {
9
+ function formatSkillLabel(skillId, description) {
10
+ // Try to use the registry description, otherwise default to capitalized ID
11
+ const skillDef = defaultRegistry.getSkills()[skillId];
12
+ const label = skillDef ? skillDef.description : skillId;
13
+ const shortLabel = label.split(' ')[0] ?? skillId; // Use first word as short name
14
+ return `${shortLabel.padEnd(16)}`;
15
+ }
16
+ function getSupportedSkills(targetContext) {
17
+ // Return skills from the registry that this target supports (has mapped tools for)
18
+ const allSkills = Object.keys(defaultRegistry.getSkills());
19
+ return allSkills.filter((skill) => (targetContext.skillMap[skill]?.length ?? 0) > 0);
20
+ }
21
+ async function promptTargetModel(targetContext, currentModel) {
22
+ const models = Object.values(defaultRegistry.getModels());
23
+ const targetModels = models.filter((m) => !m.target || m.target === targetContext.name);
24
+ if (targetModels.length > 0) {
25
+ const choices = targetModels.map((m) => ({
26
+ name: `${m.displayName.padEnd(20)} ${chalk.dim(`(${m.features.join(', ')})`)}`,
27
+ value: m.id,
28
+ }));
29
+ choices.push({ name: 'unspecified', value: 'unspecified' });
30
+ const model = await promptList({
31
+ message: ' Model:',
32
+ choices,
33
+ default: currentModel ?? targetModels[0].id,
34
+ });
35
+ return model === 'unspecified' ? undefined : model;
36
+ }
37
+ const model = await promptInput({
38
+ message: ' Model (leave empty to omit):',
39
+ default: currentModel ?? '',
40
+ });
41
+ return model.trim() || undefined;
42
+ }
43
+ async function promptReasoningEffort(targetContext, currentValue) {
44
+ if (targetContext.name !== 'codex') {
45
+ return undefined;
46
+ }
47
+ const reasoning = await promptList({
48
+ message: ' Reasoning effort:',
49
+ choices: [
50
+ { name: 'unspecified', value: 'unspecified' },
51
+ { name: 'low', value: 'low' },
52
+ { name: 'medium', value: 'medium' },
53
+ { name: 'high', value: 'high' },
54
+ ],
55
+ default: currentValue ?? 'unspecified',
56
+ });
57
+ return reasoning === 'unspecified' ? undefined : reasoning;
58
+ }
59
+ export async function stepAgentCustomization(team, targetContext, options) {
20
60
  if (options?.nonInteractive) {
21
61
  return team;
22
62
  }
@@ -27,38 +67,34 @@ export async function stepAgentCustomization(team, options) {
27
67
  if (!customize)
28
68
  return team;
29
69
  const updatedAgents = { ...team.agents };
70
+ const supportedSkills = getSupportedSkills(targetContext);
30
71
  for (const name of Object.keys(updatedAgents)) {
31
72
  const agent = updatedAgents[name];
32
- const currentModel = agent.runtime.model ?? 'inherit';
33
73
  console.log('');
34
74
  console.log(chalk.bold(name) + chalk.dim(` - ${agent.description}`));
35
- const model = await promptList({
36
- message: ` Model for ${name}:`,
37
- choices: [
38
- { name: 'sonnet (recommended)', value: 'sonnet' },
39
- { name: 'opus (most capable)', value: 'opus' },
40
- { name: 'haiku (fastest)', value: 'haiku' },
41
- { name: 'inherit (project default)', value: 'inherit' },
42
- ],
43
- default: currentModel,
44
- });
75
+ const model = await promptTargetModel(targetContext, agent.runtime.model);
76
+ const reasoningEffort = await promptReasoningEffort(targetContext, agent.runtime.reasoningEffort);
45
77
  // Reverse-map the agent's current tools to pre-select matching skills.
46
- const { skills: currentSkills } = reverseMapToolsToSkills(agent.runtime.tools ?? []);
78
+ const { skills: currentSkills } = targetContext.reverseMapTools
79
+ ? targetContext.reverseMapTools(agent.runtime.tools ?? [])
80
+ : { skills: [] };
47
81
  const selectedSkills = await promptCheckbox({
48
82
  message: ` Skills for ${name}:`,
49
- choices: AGENT_SKILLS.map((skill) => ({
50
- name: SKILL_LABELS[skill],
83
+ choices: supportedSkills.map((skill) => ({
84
+ name: formatSkillLabel(skill, defaultRegistry.getSkills()[skill]?.description),
51
85
  value: skill,
52
86
  checked: currentSkills.includes(skill),
53
87
  })),
54
88
  });
55
- // Expand the selected skills to canonical tools.
56
- const expandedTools = selectedSkills.length > 0 ? expandSkillsToTools(selectedSkills) : undefined;
89
+ const expandedTools = selectedSkills.length > 0
90
+ ? expandSkills(selectedSkills, targetContext.skillMap)
91
+ : undefined;
57
92
  updatedAgents[name] = {
58
93
  ...agent,
59
94
  runtime: {
60
95
  ...agent.runtime,
61
96
  model,
97
+ reasoningEffort,
62
98
  tools: expandedTools,
63
99
  },
64
100
  };
@@ -1 +1 @@
1
- {"version":3,"file":"agent-customization.js","sourceRoot":"","sources":["../../../src/wizard/steps/agent-customization.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"agent-customization.js","sourceRoot":"","sources":["../../../src/wizard/steps/agent-customization.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,3 @@
1
- import type { CoreTeam } from '../../core/types.js';
2
- export declare function stepConfirmGenerate(team: CoreTeam, cwd: string, skipConfirm?: boolean): Promise<boolean>;
1
+ import type { TeamCastManifest } from '../../manifest/types.js';
2
+ export declare function stepConfirmGenerate(manifest: TeamCastManifest, cwd: string, skipConfirm?: boolean): Promise<boolean>;
3
3
  //# sourceMappingURL=confirm-generate.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"confirm-generate.d.ts","sourceRoot":"","sources":["../../../src/wizard/steps/confirm-generate.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAIpD,wBAAsB,mBAAmB,CACvC,IAAI,EAAE,QAAQ,EACd,GAAG,EAAE,MAAM,EACX,WAAW,UAAQ,GAClB,OAAO,CAAC,OAAO,CAAC,CAgBlB"}
1
+ {"version":3,"file":"confirm-generate.d.ts","sourceRoot":"","sources":["../../../src/wizard/steps/confirm-generate.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAIhE,wBAAsB,mBAAmB,CACvC,QAAQ,EAAE,gBAAgB,EAC1B,GAAG,EAAE,MAAM,EACX,WAAW,UAAQ,GAClB,OAAO,CAAC,OAAO,CAAC,CAgBlB"}
@@ -1,8 +1,8 @@
1
1
  import chalk from 'chalk';
2
2
  import { generate } from '../../generator/index.js';
3
3
  import { promptConfirm } from '../../utils/prompts.js';
4
- export async function stepConfirmGenerate(team, cwd, skipConfirm = false) {
5
- const files = generate(team, { cwd, dryRun: true });
4
+ export async function stepConfirmGenerate(manifest, cwd, skipConfirm = false) {
5
+ const files = generate(manifest, { cwd, dryRun: true });
6
6
  console.log('');
7
7
  console.log(chalk.bold('Files that will be created:'));
8
8
  for (const file of files) {
@@ -1 +1 @@
1
- {"version":3,"file":"confirm-generate.js","sourceRoot":"","sources":["../../../src/wizard/steps/confirm-generate.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AACpD,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAEvD,MAAM,CAAC,KAAK,UAAU,mBAAmB,CACvC,IAAc,EACd,GAAW,EACX,WAAW,GAAG,KAAK;IAEnB,MAAM,KAAK,GAAG,QAAQ,CAAC,IAAI,EAAE,EAAE,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;IAEpD,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAChB,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,6BAA6B,CAAC,CAAC,CAAC;IACvD,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,OAAO,CAAC,GAAG,CAAC,KAAK,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;IAClD,CAAC;IACD,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAEhB,IAAI,WAAW;QAAE,OAAO,IAAI,CAAC;IAE7B,OAAO,aAAa,CAAC;QACnB,OAAO,EAAE,uBAAuB;QAChC,OAAO,EAAE,IAAI;KACd,CAAC,CAAC;AACL,CAAC"}
1
+ {"version":3,"file":"confirm-generate.js","sourceRoot":"","sources":["../../../src/wizard/steps/confirm-generate.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AACpD,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAEvD,MAAM,CAAC,KAAK,UAAU,mBAAmB,CACvC,QAA0B,EAC1B,GAAW,EACX,WAAW,GAAG,KAAK;IAEnB,MAAM,KAAK,GAAG,QAAQ,CAAC,QAAQ,EAAE,EAAE,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;IAExD,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAChB,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,6BAA6B,CAAC,CAAC,CAAC;IACvD,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,OAAO,CAAC,GAAG,CAAC,KAAK,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;IAClD,CAAC;IACD,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAEhB,IAAI,WAAW;QAAE,OAAO,IAAI,CAAC;IAE7B,OAAO,aAAa,CAAC;QACnB,OAAO,EAAE,uBAAuB;QAChC,OAAO,EAAE,IAAI;KACd,CAAC,CAAC;AACL,CAAC"}
@@ -1,3 +1,4 @@
1
- import type { CoreTeam } from '../../core/types.js';
2
- export declare function stepCustomTeam(projectName: string): Promise<CoreTeam>;
1
+ import type { TeamCastManifest } from '../../manifest/types.js';
2
+ import type { InitTargetSelection } from '../../application/team.js';
3
+ export declare function stepCustomTeam(projectName: string, selection?: InitTargetSelection): Promise<TeamCastManifest>;
3
4
  //# sourceMappingURL=custom-team.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"custom-team.d.ts","sourceRoot":"","sources":["../../../src/wizard/steps/custom-team.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAQpD,wBAAsB,cAAc,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,CAAC,CAY3E"}
1
+ {"version":3,"file":"custom-team.d.ts","sourceRoot":"","sources":["../../../src/wizard/steps/custom-team.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAMhE,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AAGrE,wBAAsB,cAAc,CAClC,WAAW,EAAE,MAAM,EACnB,SAAS,GAAE,mBAA8B,GACxC,OAAO,CAAC,gBAAgB,CAAC,CAY3B"}
@@ -1,8 +1,8 @@
1
1
  import chalk from 'chalk';
2
2
  import { promptCheckbox } from '../../utils/prompts.js';
3
3
  import { listRoleTemplates, } from '../../team-templates/roles.js';
4
- import { buildTeamFromRoles } from '../../application/team.js';
5
- export async function stepCustomTeam(projectName) {
4
+ import { buildManifestFromRoles } from '../../application/team.js';
5
+ export async function stepCustomTeam(projectName, selection = 'claude') {
6
6
  const roleTemplates = listRoleTemplates();
7
7
  const selectedRoles = await promptCheckbox({
8
8
  message: 'Select roles for your team:',
@@ -12,6 +12,6 @@ export async function stepCustomTeam(projectName) {
12
12
  })),
13
13
  validate: (value) => value.length > 0 || 'Select at least one role',
14
14
  });
15
- return buildTeamFromRoles(projectName, selectedRoles);
15
+ return buildManifestFromRoles(projectName, selectedRoles, selection);
16
16
  }
17
17
  //# sourceMappingURL=custom-team.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"custom-team.js","sourceRoot":"","sources":["../../../src/wizard/steps/custom-team.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AACxD,OAAO,EACL,iBAAiB,GAElB,MAAM,+BAA+B,CAAC;AACvC,OAAO,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAE/D,MAAM,CAAC,KAAK,UAAU,cAAc,CAAC,WAAmB;IACtD,MAAM,aAAa,GAAG,iBAAiB,EAAE,CAAC;IAC1C,MAAM,aAAa,GAAG,MAAM,cAAc,CAAe;QACvD,OAAO,EAAE,6BAA6B;QACtC,OAAO,EAAE,aAAa,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;YACpC,IAAI,EAAE,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE;YAC3E,KAAK,EAAE,IAAI,CAAC,IAAI;SACjB,CAAC,CAAC;QACH,QAAQ,EAAE,CAAC,KAAqB,EAAE,EAAE,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,IAAI,0BAA0B;KACpF,CAAC,CAAC;IAEH,OAAO,kBAAkB,CAAC,WAAW,EAAE,aAAa,CAAC,CAAC;AACxD,CAAC"}
1
+ {"version":3,"file":"custom-team.js","sourceRoot":"","sources":["../../../src/wizard/steps/custom-team.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AACxD,OAAO,EACL,iBAAiB,GAElB,MAAM,+BAA+B,CAAC;AAEvC,OAAO,EAAE,sBAAsB,EAAE,MAAM,2BAA2B,CAAC;AAEnE,MAAM,CAAC,KAAK,UAAU,cAAc,CAClC,WAAmB,EACnB,YAAiC,QAAQ;IAEzC,MAAM,aAAa,GAAG,iBAAiB,EAAE,CAAC;IAC1C,MAAM,aAAa,GAAG,MAAM,cAAc,CAAe;QACvD,OAAO,EAAE,6BAA6B;QACtC,OAAO,EAAE,aAAa,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;YACpC,IAAI,EAAE,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE;YAC3E,KAAK,EAAE,IAAI,CAAC,IAAI;SACjB,CAAC,CAAC;QACH,QAAQ,EAAE,CAAC,KAAqB,EAAE,EAAE,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,IAAI,0BAA0B;KACpF,CAAC,CAAC;IAEH,OAAO,sBAAsB,CAAC,WAAW,EAAE,aAAa,EAAE,SAAS,CAAC,CAAC;AACvE,CAAC"}
@@ -0,0 +1,6 @@
1
+ import type { InitTargetSelection } from '../../application/team.js';
2
+ export declare function stepTargetSelection(options?: {
3
+ nonInteractive?: boolean;
4
+ defaultSelection?: InitTargetSelection;
5
+ }): Promise<InitTargetSelection>;
6
+ //# sourceMappingURL=target-selection.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"target-selection.d.ts","sourceRoot":"","sources":["../../../src/wizard/steps/target-selection.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AAGrE,wBAAsB,mBAAmB,CACvC,OAAO,CAAC,EAAE;IAAE,cAAc,CAAC,EAAE,OAAO,CAAC;IAAC,gBAAgB,CAAC,EAAE,mBAAmB,CAAA;CAAE,GAC7E,OAAO,CAAC,mBAAmB,CAAC,CAyB9B"}
@@ -0,0 +1,27 @@
1
+ import chalk from 'chalk';
2
+ import { promptList } from '../../utils/prompts.js';
3
+ export async function stepTargetSelection(options) {
4
+ const fallback = options?.defaultSelection ?? 'claude';
5
+ if (options?.nonInteractive) {
6
+ return fallback;
7
+ }
8
+ return promptList({
9
+ message: 'Which target configs should TeamCast generate?',
10
+ choices: [
11
+ {
12
+ name: `${chalk.bold('Claude')} ${chalk.dim('Generate .claude/ files only')}`,
13
+ value: 'claude',
14
+ },
15
+ {
16
+ name: `${chalk.bold('Codex')} ${chalk.dim('Generate .codex/ files only')}`,
17
+ value: 'codex',
18
+ },
19
+ {
20
+ name: `${chalk.bold('Both')} ${chalk.dim('Keep one manifest and generate both targets')}`,
21
+ value: 'both',
22
+ },
23
+ ],
24
+ default: fallback,
25
+ });
26
+ }
27
+ //# sourceMappingURL=target-selection.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"target-selection.js","sourceRoot":"","sources":["../../../src/wizard/steps/target-selection.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AAEpD,MAAM,CAAC,KAAK,UAAU,mBAAmB,CACvC,OAA8E;IAE9E,MAAM,QAAQ,GAAG,OAAO,EAAE,gBAAgB,IAAI,QAAQ,CAAC;IAEvD,IAAI,OAAO,EAAE,cAAc,EAAE,CAAC;QAC5B,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED,OAAO,UAAU,CAAsB;QACrC,OAAO,EAAE,gDAAgD;QACzD,OAAO,EAAE;YACP;gBACE,IAAI,EAAE,GAAG,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,KAAK,CAAC,GAAG,CAAC,8BAA8B,CAAC,EAAE;gBAC5E,KAAK,EAAE,QAAQ;aAChB;YACD;gBACE,IAAI,EAAE,GAAG,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,KAAK,CAAC,GAAG,CAAC,6BAA6B,CAAC,EAAE;gBAC3E,KAAK,EAAE,OAAO;aACf;YACD;gBACE,IAAI,EAAE,GAAG,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,KAAK,CAAC,GAAG,CAAC,6CAA6C,CAAC,EAAE;gBAC3F,KAAK,EAAE,MAAM;aACd;SACF;QACD,OAAO,EAAE,QAAQ;KAClB,CAAC,CAAC;AACL,CAAC"}
@@ -1,5 +1,7 @@
1
1
  import type { CoreTeam } from '../../core/types.js';
2
- export declare function stepTeamSelection(partial: Pick<CoreTeam, 'project'>, options?: {
2
+ import type { TeamCastManifest } from '../../manifest/types.js';
3
+ import type { InitTargetSelection } from '../../application/team.js';
4
+ export declare function stepTeamSelection(partial: Pick<CoreTeam, 'project'>, selection: InitTargetSelection, options?: {
3
5
  nonInteractive?: boolean;
4
- }): Promise<CoreTeam>;
6
+ }): Promise<TeamCastManifest>;
5
7
  //# sourceMappingURL=team-selection.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"team-selection.d.ts","sourceRoot":"","sources":["../../../src/wizard/steps/team-selection.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAQpD,wBAAsB,iBAAiB,CACrC,OAAO,EAAE,IAAI,CAAC,QAAQ,EAAE,SAAS,CAAC,EAClC,OAAO,CAAC,EAAE;IAAE,cAAc,CAAC,EAAE,OAAO,CAAA;CAAE,GACrC,OAAO,CAAC,QAAQ,CAAC,CA0CnB"}
1
+ {"version":3,"file":"team-selection.d.ts","sourceRoot":"","sources":["../../../src/wizard/steps/team-selection.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AACpD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAIhE,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AAQrE,wBAAsB,iBAAiB,CACrC,OAAO,EAAE,IAAI,CAAC,QAAQ,EAAE,SAAS,CAAC,EAClC,SAAS,EAAE,mBAAmB,EAC9B,OAAO,CAAC,EAAE;IAAE,cAAc,CAAC,EAAE,OAAO,CAAA;CAAE,GACrC,OAAO,CAAC,gBAAgB,CAAC,CA0C3B"}
@@ -2,11 +2,11 @@ import chalk from 'chalk';
2
2
  import { listPresets } from '../../presets/index.js';
3
3
  import { stepCustomTeam } from './custom-team.js';
4
4
  import { promptList } from '../../utils/prompts.js';
5
- import { buildSingleAgentTeam, buildTeamFromPreset } from '../../application/team.js';
6
- export async function stepTeamSelection(partial, options) {
5
+ import { buildManifestFromPreset, buildSingleAgentManifest, } from '../../application/team.js';
6
+ export async function stepTeamSelection(partial, selection, options) {
7
7
  const projectName = partial.project.name;
8
8
  if (options?.nonInteractive) {
9
- return buildTeamFromPreset('feature-team', projectName);
9
+ return buildManifestFromPreset('feature-team', projectName, selection);
10
10
  }
11
11
  const mode = await promptList({
12
12
  message: 'How do you want to set up your agent team?',
@@ -34,11 +34,11 @@ export async function stepTeamSelection(partial, options) {
34
34
  value: preset.name,
35
35
  })),
36
36
  });
37
- return buildTeamFromPreset(presetName, projectName);
37
+ return buildManifestFromPreset(presetName, projectName, selection);
38
38
  }
39
39
  if (mode === 'custom') {
40
- return stepCustomTeam(projectName);
40
+ return stepCustomTeam(projectName, selection);
41
41
  }
42
- return buildSingleAgentTeam(projectName);
42
+ return buildSingleAgentManifest(projectName, selection);
43
43
  }
44
44
  //# sourceMappingURL=team-selection.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"team-selection.js","sourceRoot":"","sources":["../../../src/wizard/steps/team-selection.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AACrD,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AACpD,OAAO,EAAE,oBAAoB,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AAItF,MAAM,CAAC,KAAK,UAAU,iBAAiB,CACrC,OAAkC,EAClC,OAAsC;IAEtC,MAAM,WAAW,GAAG,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC;IAEzC,IAAI,OAAO,EAAE,cAAc,EAAE,CAAC;QAC5B,OAAO,mBAAmB,CAAC,cAAc,EAAE,WAAW,CAAC,CAAC;IAC1D,CAAC;IAED,MAAM,IAAI,GAAG,MAAM,UAAU,CAAgB;QAC3C,OAAO,EAAE,4CAA4C;QACrD,OAAO,EAAE;YACP;gBACE,IAAI,EAAE,GAAG,KAAK,CAAC,IAAI,CAAC,cAAc,CAAC,KAAK,KAAK,CAAC,GAAG,CAAC,4CAA4C,CAAC,EAAE;gBACjG,KAAK,EAAE,QAAQ;aAChB;YACD;gBACE,IAAI,EAAE,GAAG,KAAK,CAAC,IAAI,CAAC,aAAa,CAAC,MAAM,KAAK,CAAC,GAAG,CAAC,oCAAoC,CAAC,EAAE;gBACzF,KAAK,EAAE,QAAQ;aAChB;YACD;gBACE,IAAI,EAAE,GAAG,KAAK,CAAC,IAAI,CAAC,cAAc,CAAC,KAAK,KAAK,CAAC,GAAG,CAAC,sCAAsC,CAAC,EAAE;gBAC3F,KAAK,EAAE,QAAQ;aAChB;SACF;KACF,CAAC,CAAC;IAEH,IAAI,IAAI,KAAK,QAAQ,EAAE,CAAC;QACtB,MAAM,OAAO,GAAG,WAAW,EAAE,CAAC;QAC9B,MAAM,UAAU,GAAG,MAAM,UAAU,CAAS;YAC1C,OAAO,EAAE,kBAAkB;YAC3B,OAAO,EAAE,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;gBAChC,IAAI,EAAE,GAAG,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,WAAW,CAAC,EAAE;gBACpE,KAAK,EAAE,MAAM,CAAC,IAAI;aACnB,CAAC,CAAC;SACJ,CAAC,CAAC;QACH,OAAO,mBAAmB,CAAC,UAAU,EAAE,WAAW,CAAC,CAAC;IACtD,CAAC;IAED,IAAI,IAAI,KAAK,QAAQ,EAAE,CAAC;QACtB,OAAO,cAAc,CAAC,WAAW,CAAC,CAAC;IACrC,CAAC;IAED,OAAO,oBAAoB,CAAC,WAAW,CAAC,CAAC;AAC3C,CAAC"}
1
+ {"version":3,"file":"team-selection.js","sourceRoot":"","sources":["../../../src/wizard/steps/team-selection.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAG1B,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AACrD,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AAEpD,OAAO,EACL,uBAAuB,EACvB,wBAAwB,GACzB,MAAM,2BAA2B,CAAC;AAInC,MAAM,CAAC,KAAK,UAAU,iBAAiB,CACrC,OAAkC,EAClC,SAA8B,EAC9B,OAAsC;IAEtC,MAAM,WAAW,GAAG,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC;IAEzC,IAAI,OAAO,EAAE,cAAc,EAAE,CAAC;QAC5B,OAAO,uBAAuB,CAAC,cAAc,EAAE,WAAW,EAAE,SAAS,CAAC,CAAC;IACzE,CAAC;IAED,MAAM,IAAI,GAAG,MAAM,UAAU,CAAgB;QAC3C,OAAO,EAAE,4CAA4C;QACrD,OAAO,EAAE;YACP;gBACE,IAAI,EAAE,GAAG,KAAK,CAAC,IAAI,CAAC,cAAc,CAAC,KAAK,KAAK,CAAC,GAAG,CAAC,4CAA4C,CAAC,EAAE;gBACjG,KAAK,EAAE,QAAQ;aAChB;YACD;gBACE,IAAI,EAAE,GAAG,KAAK,CAAC,IAAI,CAAC,aAAa,CAAC,MAAM,KAAK,CAAC,GAAG,CAAC,oCAAoC,CAAC,EAAE;gBACzF,KAAK,EAAE,QAAQ;aAChB;YACD;gBACE,IAAI,EAAE,GAAG,KAAK,CAAC,IAAI,CAAC,cAAc,CAAC,KAAK,KAAK,CAAC,GAAG,CAAC,sCAAsC,CAAC,EAAE;gBAC3F,KAAK,EAAE,QAAQ;aAChB;SACF;KACF,CAAC,CAAC;IAEH,IAAI,IAAI,KAAK,QAAQ,EAAE,CAAC;QACtB,MAAM,OAAO,GAAG,WAAW,EAAE,CAAC;QAC9B,MAAM,UAAU,GAAG,MAAM,UAAU,CAAS;YAC1C,OAAO,EAAE,kBAAkB;YAC3B,OAAO,EAAE,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;gBAChC,IAAI,EAAE,GAAG,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,WAAW,CAAC,EAAE;gBACpE,KAAK,EAAE,MAAM,CAAC,IAAI;aACnB,CAAC,CAAC;SACJ,CAAC,CAAC;QACH,OAAO,uBAAuB,CAAC,UAAU,EAAE,WAAW,EAAE,SAAS,CAAC,CAAC;IACrE,CAAC;IAED,IAAI,IAAI,KAAK,QAAQ,EAAE,CAAC;QACtB,OAAO,cAAc,CAAC,WAAW,EAAE,SAAS,CAAC,CAAC;IAChD,CAAC;IAED,OAAO,wBAAwB,CAAC,WAAW,EAAE,SAAS,CAAC,CAAC;AAC1D,CAAC"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "teamcast",
3
- "version": "0.6.0",
4
- "description": "YAML-driven CLI to design, validate, and generate multi-agent team configs from a single manifest",
3
+ "version": "0.9.0",
4
+ "description": "YAML-driven CLI to design, validate, and generate multi-target agent teams for Claude Code and Codex",
5
5
  "type": "module",
6
6
  "bin": {
7
7
  "teamcast": "./dist/index.js"
@@ -20,7 +20,21 @@
20
20
  "README.md",
21
21
  "LICENSE"
22
22
  ],
23
- "keywords": ["claude", "claude-code", "agents", "multi-agent", "cli", "team", "codegen"],
23
+ "keywords": [
24
+ "agents",
25
+ "claude",
26
+ "claude-code",
27
+ "cli",
28
+ "codegen",
29
+ "codex",
30
+ "manifest",
31
+ "multi-agent",
32
+ "multi-target",
33
+ "openai",
34
+ "team",
35
+ "custom-plugins",
36
+ "yaml"
37
+ ],
24
38
  "author": "Nickolas Voznyuk",
25
39
  "license": "MIT",
26
40
  "repository": {