teamcast 0.6.0 → 0.8.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 (222) 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 +74 -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 +30 -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 +230 -64
  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/core/types.d.ts +8 -7
  35. package/dist/core/types.d.ts.map +1 -1
  36. package/dist/diff/index.d.ts +2 -2
  37. package/dist/diff/index.d.ts.map +1 -1
  38. package/dist/diff/index.js +2 -2
  39. package/dist/diff/index.js.map +1 -1
  40. package/dist/explainer/index.d.ts +2 -1
  41. package/dist/explainer/index.d.ts.map +1 -1
  42. package/dist/explainer/index.js +21 -13
  43. package/dist/explainer/index.js.map +1 -1
  44. package/dist/generator/index.d.ts +2 -2
  45. package/dist/generator/index.d.ts.map +1 -1
  46. package/dist/generator/index.js +16 -5
  47. package/dist/generator/index.js.map +1 -1
  48. package/dist/importer/index.d.ts +1 -0
  49. package/dist/importer/index.d.ts.map +1 -1
  50. package/dist/importer/index.js +178 -16
  51. package/dist/importer/index.js.map +1 -1
  52. package/dist/index.d.ts +1 -1
  53. package/dist/index.d.ts.map +1 -1
  54. package/dist/index.js +2 -1
  55. package/dist/index.js.map +1 -1
  56. package/dist/manifest/defaults.d.ts +1 -2
  57. package/dist/manifest/defaults.d.ts.map +1 -1
  58. package/dist/manifest/defaults.js +12 -12
  59. package/dist/manifest/defaults.js.map +1 -1
  60. package/dist/manifest/normalize.d.ts +8 -4
  61. package/dist/manifest/normalize.d.ts.map +1 -1
  62. package/dist/manifest/normalize.js +84 -136
  63. package/dist/manifest/normalize.js.map +1 -1
  64. package/dist/manifest/reader.d.ts +2 -2
  65. package/dist/manifest/reader.d.ts.map +1 -1
  66. package/dist/manifest/reader.js +1 -2
  67. package/dist/manifest/reader.js.map +1 -1
  68. package/dist/manifest/types.d.ts +17 -65
  69. package/dist/manifest/types.d.ts.map +1 -1
  70. package/dist/manifest/types.js.map +1 -1
  71. package/dist/manifest/writer.d.ts +2 -2
  72. package/dist/manifest/writer.d.ts.map +1 -1
  73. package/dist/manifest/writer.js +2 -3
  74. package/dist/manifest/writer.js.map +1 -1
  75. package/dist/presets/index.d.ts +2 -2
  76. package/dist/presets/index.d.ts.map +1 -1
  77. package/dist/presets/index.js +7 -2
  78. package/dist/presets/index.js.map +1 -1
  79. package/dist/presets/types.d.ts +2 -2
  80. package/dist/presets/types.d.ts.map +1 -1
  81. package/dist/renderers/claude/agent-md.js +1 -1
  82. package/dist/renderers/claude/agent-md.js.map +1 -1
  83. package/dist/renderers/claude/docs.js +1 -1
  84. package/dist/renderers/claude/docs.js.map +1 -1
  85. package/dist/renderers/claude/index.d.ts +2 -0
  86. package/dist/renderers/claude/index.d.ts.map +1 -1
  87. package/dist/renderers/claude/index.js +11 -0
  88. package/dist/renderers/claude/index.js.map +1 -1
  89. package/dist/renderers/claude/tools.d.ts +0 -1
  90. package/dist/renderers/claude/tools.d.ts.map +1 -1
  91. package/dist/renderers/claude/tools.js +0 -2
  92. package/dist/renderers/claude/tools.js.map +1 -1
  93. package/dist/renderers/codex/index.d.ts +7 -0
  94. package/dist/renderers/codex/index.d.ts.map +1 -0
  95. package/dist/renderers/codex/index.js +97 -0
  96. package/dist/renderers/codex/index.js.map +1 -0
  97. package/dist/renderers/codex/skill-map.d.ts +8 -0
  98. package/dist/renderers/codex/skill-map.d.ts.map +1 -0
  99. package/dist/renderers/codex/skill-map.js +29 -0
  100. package/dist/renderers/codex/skill-map.js.map +1 -0
  101. package/dist/renderers/codex/tools.d.ts +3 -0
  102. package/dist/renderers/codex/tools.d.ts.map +1 -0
  103. package/dist/renderers/codex/tools.js +8 -0
  104. package/dist/renderers/codex/tools.js.map +1 -0
  105. package/dist/renderers/index.d.ts +3 -0
  106. package/dist/renderers/index.d.ts.map +1 -1
  107. package/dist/renderers/index.js +7 -0
  108. package/dist/renderers/index.js.map +1 -1
  109. package/dist/renderers/registry.d.ts +8 -0
  110. package/dist/renderers/registry.d.ts.map +1 -0
  111. package/dist/renderers/registry.js +22 -0
  112. package/dist/renderers/registry.js.map +1 -0
  113. package/dist/renderers/target-context.d.ts +14 -0
  114. package/dist/renderers/target-context.d.ts.map +1 -0
  115. package/dist/renderers/target-context.js +2 -0
  116. package/dist/renderers/target-context.js.map +1 -0
  117. package/dist/team-templates/presets.d.ts +1 -1
  118. package/dist/team-templates/presets.d.ts.map +1 -1
  119. package/dist/team-templates/roles.d.ts +6 -6
  120. package/dist/team-templates/roles.d.ts.map +1 -1
  121. package/dist/team-templates/roles.js +3 -4
  122. package/dist/team-templates/roles.js.map +1 -1
  123. package/dist/types/manifest.d.ts +8 -5
  124. package/dist/types/manifest.d.ts.map +1 -1
  125. package/dist/types/manifest.js +7 -9
  126. package/dist/types/manifest.js.map +1 -1
  127. package/dist/validator/checks/handoff-graph.d.ts.map +1 -1
  128. package/dist/validator/checks/handoff-graph.js +3 -2
  129. package/dist/validator/checks/handoff-graph.js.map +1 -1
  130. package/dist/validator/checks/instruction-blocks.d.ts.map +1 -1
  131. package/dist/validator/checks/instruction-blocks.js +3 -1
  132. package/dist/validator/checks/instruction-blocks.js.map +1 -1
  133. package/dist/validator/index.d.ts +2 -2
  134. package/dist/validator/index.d.ts.map +1 -1
  135. package/dist/validator/index.js +4 -8
  136. package/dist/validator/index.js.map +1 -1
  137. package/dist/wizard/index.d.ts +2 -0
  138. package/dist/wizard/index.d.ts.map +1 -1
  139. package/dist/wizard/index.js +25 -10
  140. package/dist/wizard/index.js.map +1 -1
  141. package/dist/wizard/steps/agent-customization.d.ts +2 -1
  142. package/dist/wizard/steps/agent-customization.d.ts.map +1 -1
  143. package/dist/wizard/steps/agent-customization.js +67 -29
  144. package/dist/wizard/steps/agent-customization.js.map +1 -1
  145. package/dist/wizard/steps/confirm-generate.d.ts +2 -2
  146. package/dist/wizard/steps/confirm-generate.d.ts.map +1 -1
  147. package/dist/wizard/steps/confirm-generate.js +2 -2
  148. package/dist/wizard/steps/confirm-generate.js.map +1 -1
  149. package/dist/wizard/steps/custom-team.d.ts +3 -2
  150. package/dist/wizard/steps/custom-team.d.ts.map +1 -1
  151. package/dist/wizard/steps/custom-team.js +3 -3
  152. package/dist/wizard/steps/custom-team.js.map +1 -1
  153. package/dist/wizard/steps/target-selection.d.ts +6 -0
  154. package/dist/wizard/steps/target-selection.d.ts.map +1 -0
  155. package/dist/wizard/steps/target-selection.js +27 -0
  156. package/dist/wizard/steps/target-selection.js.map +1 -0
  157. package/dist/wizard/steps/team-selection.d.ts +4 -2
  158. package/dist/wizard/steps/team-selection.d.ts.map +1 -1
  159. package/dist/wizard/steps/team-selection.js +6 -6
  160. package/dist/wizard/steps/team-selection.js.map +1 -1
  161. package/package.json +16 -3
  162. package/schema/teamcast.schema.json +34 -155
  163. package/templates/presets/feature-team.yaml +80 -47
  164. package/templates/presets/research-and-build.yaml +66 -41
  165. package/templates/presets/secure-dev.yaml +87 -56
  166. package/templates/presets/solo-dev.yaml +23 -14
  167. package/dist/cli/manifest-validation.d.ts +0 -13
  168. package/dist/cli/manifest-validation.d.ts.map +0 -1
  169. package/dist/cli/manifest-validation.js +0 -38
  170. package/dist/cli/manifest-validation.js.map +0 -1
  171. package/dist/generator/renderers/agent-md.d.ts +0 -5
  172. package/dist/generator/renderers/agent-md.d.ts.map +0 -1
  173. package/dist/generator/renderers/agent-md.js +0 -66
  174. package/dist/generator/renderers/agent-md.js.map +0 -1
  175. package/dist/generator/renderers/agents-md.d.ts +0 -4
  176. package/dist/generator/renderers/agents-md.d.ts.map +0 -1
  177. package/dist/generator/renderers/agents-md.js +0 -86
  178. package/dist/generator/renderers/agents-md.js.map +0 -1
  179. package/dist/generator/renderers/claude-md.d.ts +0 -4
  180. package/dist/generator/renderers/claude-md.d.ts.map +0 -1
  181. package/dist/generator/renderers/claude-md.js +0 -68
  182. package/dist/generator/renderers/claude-md.js.map +0 -1
  183. package/dist/generator/renderers/codex-config.d.ts +0 -4
  184. package/dist/generator/renderers/codex-config.d.ts.map +0 -1
  185. package/dist/generator/renderers/codex-config.js +0 -145
  186. package/dist/generator/renderers/codex-config.js.map +0 -1
  187. package/dist/generator/renderers/codex-skill-md.d.ts +0 -4
  188. package/dist/generator/renderers/codex-skill-md.d.ts.map +0 -1
  189. package/dist/generator/renderers/codex-skill-md.js +0 -47
  190. package/dist/generator/renderers/codex-skill-md.js.map +0 -1
  191. package/dist/generator/renderers/settings-json.d.ts +0 -5
  192. package/dist/generator/renderers/settings-json.d.ts.map +0 -1
  193. package/dist/generator/renderers/settings-json.js +0 -100
  194. package/dist/generator/renderers/settings-json.js.map +0 -1
  195. package/dist/generator/renderers/skill-md.d.ts +0 -4
  196. package/dist/generator/renderers/skill-md.d.ts.map +0 -1
  197. package/dist/generator/renderers/skill-md.js +0 -44
  198. package/dist/generator/renderers/skill-md.js.map +0 -1
  199. package/dist/generator/state.d.ts +0 -14
  200. package/dist/generator/state.d.ts.map +0 -1
  201. package/dist/generator/state.js +0 -76
  202. package/dist/generator/state.js.map +0 -1
  203. package/dist/generator/targets/claude.d.ts +0 -3
  204. package/dist/generator/targets/claude.d.ts.map +0 -1
  205. package/dist/generator/targets/claude.js +0 -24
  206. package/dist/generator/targets/claude.js.map +0 -1
  207. package/dist/generator/targets/codex.d.ts +0 -3
  208. package/dist/generator/targets/codex.d.ts.map +0 -1
  209. package/dist/generator/targets/codex.js +0 -19
  210. package/dist/generator/targets/codex.js.map +0 -1
  211. package/dist/generator/targets/index.d.ts +0 -4
  212. package/dist/generator/targets/index.d.ts.map +0 -1
  213. package/dist/generator/targets/index.js +0 -10
  214. package/dist/generator/targets/index.js.map +0 -1
  215. package/dist/generator/targets/types.d.ts +0 -8
  216. package/dist/generator/targets/types.d.ts.map +0 -1
  217. package/dist/generator/targets/types.js +0 -2
  218. package/dist/generator/targets/types.js.map +0 -1
  219. package/dist/manifest/compat.d.ts +0 -6
  220. package/dist/manifest/compat.d.ts.map +0 -1
  221. package/dist/manifest/compat.js +0 -56
  222. package/dist/manifest/compat.js.map +0 -1
@@ -1,145 +0,0 @@
1
- import { hasAllowList } from '../../types/manifest.js';
2
- const WRITE_TOOLS = new Set(['Write', 'Edit', 'MultiEdit', 'Bash']);
3
- const READ_ONLY_SANDBOX = 'read-only';
4
- const WORKSPACE_WRITE_SANDBOX = 'workspace-write';
5
- const NEVER_APPROVAL = 'never';
6
- const ON_REQUEST_APPROVAL = 'on-request';
7
- function toTomlString(value) {
8
- return JSON.stringify(value);
9
- }
10
- function toTomlMultilineString(value) {
11
- const normalized = value.replace(/\r\n/g, '\n').trim();
12
- return `'''\n${normalized}\n'''`;
13
- }
14
- function resolveCodexModel(model, inheritedModel) {
15
- const effectiveModel = !model || model === 'inherit' ? inheritedModel : model;
16
- switch (effectiveModel) {
17
- case 'haiku':
18
- return 'gpt-5.3-codex-spark';
19
- case 'opus':
20
- case 'sonnet':
21
- default:
22
- return 'gpt-5.3-codex';
23
- }
24
- }
25
- function hasWriteCapabilities(agent) {
26
- const tools = agent.tools;
27
- if (!tools)
28
- return true;
29
- if (hasAllowList(tools)) {
30
- return tools.allow.some((tool) => WRITE_TOOLS.has(tool));
31
- }
32
- return Array.from(WRITE_TOOLS).some((tool) => !tools.deny.includes(tool));
33
- }
34
- function needsNetwork(agent) {
35
- const tools = agent.tools;
36
- if (!tools)
37
- return false;
38
- if (hasAllowList(tools)) {
39
- return tools.allow.includes('WebFetch') || tools.allow.includes('WebSearch');
40
- }
41
- return !tools.deny.includes('WebFetch') || !tools.deny.includes('WebSearch');
42
- }
43
- function resolveAgentSandbox(agent) {
44
- return hasWriteCapabilities(agent) ? WORKSPACE_WRITE_SANDBOX : READ_ONLY_SANDBOX;
45
- }
46
- function resolveAgentApproval(agent) {
47
- return hasWriteCapabilities(agent) ? ON_REQUEST_APPROVAL : NEVER_APPROVAL;
48
- }
49
- function resolveProjectSandbox(manifest) {
50
- return Object.values(manifest.agents).some((agent) => hasWriteCapabilities(agent))
51
- ? WORKSPACE_WRITE_SANDBOX
52
- : READ_ONLY_SANDBOX;
53
- }
54
- function resolveProjectApproval(manifest) {
55
- if (manifest.policies?.permissions?.ask?.length)
56
- return ON_REQUEST_APPROVAL;
57
- return Object.values(manifest.agents).some((agent) => hasWriteCapabilities(agent))
58
- ? ON_REQUEST_APPROVAL
59
- : NEVER_APPROVAL;
60
- }
61
- function buildInstructionLines(agentId, agent) {
62
- const lines = [
63
- `Agent role: ${agentId}`,
64
- `Primary responsibility: ${agent.description}`,
65
- ];
66
- if (agent.tools) {
67
- if (hasAllowList(agent.tools) && agent.tools.allow.length > 0) {
68
- lines.push(`Allowed tools in AgentForge: ${agent.tools.allow.join(', ')}`);
69
- }
70
- const denied = hasAllowList(agent.tools)
71
- ? (agent.tools.deny ?? [])
72
- : agent.tools.deny;
73
- if (denied.length > 0) {
74
- lines.push(`Restricted tools in AgentForge: ${denied.join(', ')}`);
75
- }
76
- }
77
- if (agent.handoffs?.length) {
78
- lines.push(`Preferred collaborators: ${agent.handoffs.join(', ')}`);
79
- }
80
- if (agent.skills?.length) {
81
- lines.push(`Skills to load when applicable: ${agent.skills.join(', ')}`);
82
- }
83
- if (agent.max_turns) {
84
- lines.push(`Target effort limit from AgentForge: ${agent.max_turns} turns`);
85
- }
86
- if (needsNetwork(agent)) {
87
- lines.push('This role may require networked research. Configure Codex network access before using live web search.');
88
- }
89
- if (agent.behavior) {
90
- lines.push('');
91
- lines.push('Behavior:');
92
- lines.push(agent.behavior.trim());
93
- }
94
- return lines;
95
- }
96
- function renderCodexRoleFile(agentId, agent, defaultModel) {
97
- const lines = [
98
- '# Generated by AgentForge from agentforge.yaml.',
99
- `model = ${toTomlString(resolveCodexModel(agent.model, defaultModel))}`,
100
- `approval_policy = ${toTomlString(resolveAgentApproval(agent))}`,
101
- `sandbox_mode = ${toTomlString(resolveAgentSandbox(agent))}`,
102
- '',
103
- `developer_instructions = ${toTomlMultilineString(buildInstructionLines(agentId, agent).join('\n'))}`,
104
- '',
105
- ];
106
- return {
107
- path: `.codex/agents/${agentId}.toml`,
108
- content: lines.join('\n'),
109
- };
110
- }
111
- function renderTopLevelConfig(manifest) {
112
- const lines = [
113
- '# Generated by AgentForge from agentforge.yaml.',
114
- '# Review sandbox_mode and approval_policy before unattended runs.',
115
- `model = ${toTomlString(resolveCodexModel(manifest.settings?.default_model))}`,
116
- `approval_policy = ${toTomlString(resolveProjectApproval(manifest))}`,
117
- `sandbox_mode = ${toTomlString(resolveProjectSandbox(manifest))}`,
118
- '',
119
- ];
120
- if (Object.keys(manifest.agents).length > 1) {
121
- lines.push('[features]');
122
- lines.push('multi_agent = true');
123
- lines.push('');
124
- lines.push('[agents]');
125
- lines.push('max_depth = 1');
126
- lines.push('');
127
- }
128
- for (const [agentId, agent] of Object.entries(manifest.agents)) {
129
- lines.push(`[agents.${agentId}]`);
130
- lines.push(`description = ${toTomlString(agent.description)}`);
131
- lines.push(`config_file = ${toTomlString(`agents/${agentId}.toml`)}`);
132
- lines.push('');
133
- }
134
- return {
135
- path: '.codex/config.toml',
136
- content: lines.join('\n'),
137
- };
138
- }
139
- export function renderCodexConfigFiles(manifest) {
140
- return [
141
- renderTopLevelConfig(manifest),
142
- ...Object.entries(manifest.agents).map(([agentId, agent]) => renderCodexRoleFile(agentId, agent, manifest.settings?.default_model)),
143
- ];
144
- }
145
- //# sourceMappingURL=codex-config.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"codex-config.js","sourceRoot":"","sources":["../../../src/generator/renderers/codex-config.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AAGvD,MAAM,WAAW,GAAG,IAAI,GAAG,CAAO,CAAC,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,CAAC,CAAC,CAAC;AAC1E,MAAM,iBAAiB,GAAG,WAAW,CAAC;AACtC,MAAM,uBAAuB,GAAG,iBAAiB,CAAC;AAClD,MAAM,cAAc,GAAG,OAAO,CAAC;AAC/B,MAAM,mBAAmB,GAAG,YAAY,CAAC;AAEzC,SAAS,YAAY,CAAC,KAAa;IACjC,OAAO,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;AAC/B,CAAC;AAED,SAAS,qBAAqB,CAAC,KAAa;IAC1C,MAAM,UAAU,GAAG,KAAK,CAAC,OAAO,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC,IAAI,EAAE,CAAC;IACvD,OAAO,QAAQ,UAAU,OAAO,CAAC;AACnC,CAAC;AAED,SAAS,iBAAiB,CAAC,KAA6B,EAAE,cAA2B;IACnF,MAAM,cAAc,GAAG,CAAC,KAAK,IAAI,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,KAAK,CAAC;IAE9E,QAAQ,cAAc,EAAE,CAAC;QACvB,KAAK,OAAO;YACV,OAAO,qBAAqB,CAAC;QAC/B,KAAK,MAAM,CAAC;QACZ,KAAK,QAAQ,CAAC;QACd;YACE,OAAO,eAAe,CAAC;IAC3B,CAAC;AACH,CAAC;AAED,SAAS,oBAAoB,CAAC,KAAkB;IAC9C,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC;IAC1B,IAAI,CAAC,KAAK;QAAE,OAAO,IAAI,CAAC;IACxB,IAAI,YAAY,CAAC,KAAK,CAAC,EAAE,CAAC;QACxB,OAAO,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC;IAC3D,CAAC;IAED,OAAO,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC;AAC5E,CAAC;AAED,SAAS,YAAY,CAAC,KAAkB;IACtC,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC;IAC1B,IAAI,CAAC,KAAK;QAAE,OAAO,KAAK,CAAC;IACzB,IAAI,YAAY,CAAC,KAAK,CAAC,EAAE,CAAC;QACxB,OAAO,KAAK,CAAC,KAAK,CAAC,QAAQ,CAAC,UAAU,CAAC,IAAI,KAAK,CAAC,KAAK,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;IAC/E,CAAC;IAED,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;AAC/E,CAAC;AAED,SAAS,mBAAmB,CAAC,KAAkB;IAC7C,OAAO,oBAAoB,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,uBAAuB,CAAC,CAAC,CAAC,iBAAiB,CAAC;AACnF,CAAC;AAED,SAAS,oBAAoB,CAAC,KAAkB;IAC9C,OAAO,oBAAoB,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,mBAAmB,CAAC,CAAC,CAAC,cAAc,CAAC;AAC5E,CAAC;AAED,SAAS,qBAAqB,CAAC,QAA4B;IACzD,OAAO,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,oBAAoB,CAAC,KAAK,CAAC,CAAC;QAChF,CAAC,CAAC,uBAAuB;QACzB,CAAC,CAAC,iBAAiB,CAAC;AACxB,CAAC;AAED,SAAS,sBAAsB,CAAC,QAA4B;IAC1D,IAAI,QAAQ,CAAC,QAAQ,EAAE,WAAW,EAAE,GAAG,EAAE,MAAM;QAAE,OAAO,mBAAmB,CAAC;IAE5E,OAAO,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,oBAAoB,CAAC,KAAK,CAAC,CAAC;QAChF,CAAC,CAAC,mBAAmB;QACrB,CAAC,CAAC,cAAc,CAAC;AACrB,CAAC;AAED,SAAS,qBAAqB,CAAC,OAAe,EAAE,KAAkB;IAChE,MAAM,KAAK,GAAa;QACtB,eAAe,OAAO,EAAE;QACxB,2BAA2B,KAAK,CAAC,WAAW,EAAE;KAC/C,CAAC;IAEF,IAAI,KAAK,CAAC,KAAK,EAAE,CAAC;QAChB,IAAI,YAAY,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC9D,KAAK,CAAC,IAAI,CAAC,gCAAgC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAC7E,CAAC;QAED,MAAM,MAAM,GAAG,YAAY,CAAC,KAAK,CAAC,KAAK,CAAC;YACtC,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,IAAI,EAAE,CAAC;YAC1B,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC;QAErB,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACtB,KAAK,CAAC,IAAI,CAAC,mCAAmC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACrE,CAAC;IACH,CAAC;IAED,IAAI,KAAK,CAAC,QAAQ,EAAE,MAAM,EAAE,CAAC;QAC3B,KAAK,CAAC,IAAI,CAAC,4BAA4B,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACtE,CAAC;IAED,IAAI,KAAK,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC;QACzB,KAAK,CAAC,IAAI,CAAC,mCAAmC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAC3E,CAAC;IAED,IAAI,KAAK,CAAC,SAAS,EAAE,CAAC;QACpB,KAAK,CAAC,IAAI,CAAC,wCAAwC,KAAK,CAAC,SAAS,QAAQ,CAAC,CAAC;IAC9E,CAAC;IAED,IAAI,YAAY,CAAC,KAAK,CAAC,EAAE,CAAC;QACxB,KAAK,CAAC,IAAI,CAAC,wGAAwG,CAAC,CAAC;IACvH,CAAC;IAED,IAAI,KAAK,CAAC,QAAQ,EAAE,CAAC;QACnB,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACf,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QACxB,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC;IACpC,CAAC;IAED,OAAO,KAAK,CAAC;AACf,CAAC;AAED,SAAS,mBAAmB,CAC1B,OAAe,EACf,KAAkB,EAClB,YAAyB;IAEzB,MAAM,KAAK,GAAa;QACtB,iDAAiD;QACjD,WAAW,YAAY,CAAC,iBAAiB,CAAC,KAAK,CAAC,KAAK,EAAE,YAAY,CAAC,CAAC,EAAE;QACvE,qBAAqB,YAAY,CAAC,oBAAoB,CAAC,KAAK,CAAC,CAAC,EAAE;QAChE,kBAAkB,YAAY,CAAC,mBAAmB,CAAC,KAAK,CAAC,CAAC,EAAE;QAC5D,EAAE;QACF,4BAA4B,qBAAqB,CAAC,qBAAqB,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,EAAE;QACrG,EAAE;KACH,CAAC;IAEF,OAAO;QACL,IAAI,EAAE,iBAAiB,OAAO,OAAO;QACrC,OAAO,EAAE,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC;KAC1B,CAAC;AACJ,CAAC;AAED,SAAS,oBAAoB,CAAC,QAA4B;IACxD,MAAM,KAAK,GAAa;QACtB,iDAAiD;QACjD,mEAAmE;QACnE,WAAW,YAAY,CAAC,iBAAiB,CAAC,QAAQ,CAAC,QAAQ,EAAE,aAAa,CAAC,CAAC,EAAE;QAC9E,qBAAqB,YAAY,CAAC,sBAAsB,CAAC,QAAQ,CAAC,CAAC,EAAE;QACrE,kBAAkB,YAAY,CAAC,qBAAqB,CAAC,QAAQ,CAAC,CAAC,EAAE;QACjE,EAAE;KACH,CAAC;IAEF,IAAI,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC5C,KAAK,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;QACzB,KAAK,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC;QACjC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACf,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QACvB,KAAK,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;QAC5B,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACjB,CAAC;IAED,KAAK,MAAM,CAAC,OAAO,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;QAC/D,KAAK,CAAC,IAAI,CAAC,WAAW,OAAO,GAAG,CAAC,CAAC;QAClC,KAAK,CAAC,IAAI,CAAC,iBAAiB,YAAY,CAAC,KAAK,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC;QAC/D,KAAK,CAAC,IAAI,CAAC,iBAAiB,YAAY,CAAC,UAAU,OAAO,OAAO,CAAC,EAAE,CAAC,CAAC;QACtE,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACjB,CAAC;IAED,OAAO;QACL,IAAI,EAAE,oBAAoB;QAC1B,OAAO,EAAE,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC;KAC1B,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,sBAAsB,CAAC,QAA4B;IACjE,OAAO;QACL,oBAAoB,CAAC,QAAQ,CAAC;QAC9B,GAAG,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,OAAO,EAAE,KAAK,CAAC,EAAE,EAAE,CAC1D,mBAAmB,CAAC,OAAO,EAAE,KAAK,EAAE,QAAQ,CAAC,QAAQ,EAAE,aAAa,CAAC,CACtE;KACF,CAAC;AACJ,CAAC"}
@@ -1,4 +0,0 @@
1
- import type { TeamCastManifest } from '../../types/manifest.js';
2
- import type { GeneratedFile } from '../types.js';
3
- export declare function renderCodexSkillMd(manifest: TeamCastManifest): GeneratedFile[];
4
- //# sourceMappingURL=codex-skill-md.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"codex-skill-md.d.ts","sourceRoot":"","sources":["../../../src/generator/renderers/codex-skill-md.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAClE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAwCjD,wBAAgB,kBAAkB,CAAC,QAAQ,EAAE,kBAAkB,GAAG,aAAa,EAAE,CAahF"}
@@ -1,47 +0,0 @@
1
- function toTitle(skillName) {
2
- return skillName
3
- .split('-')
4
- .map((word) => word.charAt(0).toUpperCase() + word.slice(1))
5
- .join(' ');
6
- }
7
- function buildDescription(skillName) {
8
- return `Use this skill when the task clearly matches ${skillName}.`;
9
- }
10
- function renderSkillContent(skillName) {
11
- const title = toTitle(skillName);
12
- return `---
13
- name: ${skillName}
14
- description: ${buildDescription(skillName)}
15
- ---
16
-
17
- # ${title}
18
-
19
- ## When to use
20
-
21
- Use this skill when the request matches ${skillName} and a repeatable workflow would speed up execution.
22
-
23
- ## Workflow
24
-
25
- 1. Restate the task in the terms of this skill.
26
- 2. Load the minimal local context needed to execute safely.
27
- 3. Apply the repeatable steps for ${skillName}.
28
- 4. Verify the result before handing control back to the main agent.
29
-
30
- ## Output
31
-
32
- Return the concrete artifact, code change, or review notes produced by this skill.
33
- `;
34
- }
35
- export function renderCodexSkillMd(manifest) {
36
- const skillNames = new Set();
37
- for (const agent of Object.values(manifest.agents)) {
38
- for (const skill of agent.skills ?? []) {
39
- skillNames.add(skill);
40
- }
41
- }
42
- return Array.from(skillNames).map((skillName) => ({
43
- path: `.agents/skills/${skillName}/SKILL.md`,
44
- content: renderSkillContent(skillName),
45
- }));
46
- }
47
- //# sourceMappingURL=codex-skill-md.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"codex-skill-md.js","sourceRoot":"","sources":["../../../src/generator/renderers/codex-skill-md.ts"],"names":[],"mappings":"AAGA,SAAS,OAAO,CAAC,SAAiB;IAChC,OAAO,SAAS;SACb,KAAK,CAAC,GAAG,CAAC;SACV,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;SAC3D,IAAI,CAAC,GAAG,CAAC,CAAC;AACf,CAAC;AAED,SAAS,gBAAgB,CAAC,SAAiB;IACzC,OAAO,gDAAgD,SAAS,GAAG,CAAC;AACtE,CAAC;AAED,SAAS,kBAAkB,CAAC,SAAiB;IAC3C,MAAM,KAAK,GAAG,OAAO,CAAC,SAAS,CAAC,CAAC;IAEjC,OAAO;QACD,SAAS;eACF,gBAAgB,CAAC,SAAS,CAAC;;;IAGtC,KAAK;;;;0CAIiC,SAAS;;;;;;oCAMf,SAAS;;;;;;CAM5C,CAAC;AACF,CAAC;AAED,MAAM,UAAU,kBAAkB,CAAC,QAA4B;IAC7D,MAAM,UAAU,GAAG,IAAI,GAAG,EAAU,CAAC;IAErC,KAAK,MAAM,KAAK,IAAI,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;QACnD,KAAK,MAAM,KAAK,IAAI,KAAK,CAAC,MAAM,IAAI,EAAE,EAAE,CAAC;YACvC,UAAU,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QACxB,CAAC;IACH,CAAC;IAED,OAAO,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,GAAG,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC;QAChD,IAAI,EAAE,kBAAkB,SAAS,WAAW;QAC5C,OAAO,EAAE,kBAAkB,CAAC,SAAS,CAAC;KACvC,CAAC,CAAC,CAAC;AACN,CAAC"}
@@ -1,5 +0,0 @@
1
- import type { TeamCastManifest } from '../../types/manifest.js';
2
- import type { GeneratedFile } from '../types.js';
3
- export declare function renderSettingsJson(manifest: TeamCastManifest): GeneratedFile;
4
- export declare function renderSettingsLocalJson(): GeneratedFile;
5
- //# sourceMappingURL=settings-json.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"settings-json.d.ts","sourceRoot":"","sources":["../../../src/generator/renderers/settings-json.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAa,MAAM,yBAAyB,CAAC;AAC7E,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAgDjD,wBAAgB,kBAAkB,CAAC,QAAQ,EAAE,kBAAkB,GAAG,aAAa,CAwE9E;AAED,wBAAgB,uBAAuB,IAAI,aAAa,CAUvD"}
@@ -1,100 +0,0 @@
1
- // Converts a network domain to a WebFetch permission rule
2
- function domainToPermissionRule(domain) {
3
- return `WebFetch(${domain}:*)`;
4
- }
5
- // Maps shell pattern to Bash permission rule
6
- function shellPatternToRule(pattern) {
7
- return `Bash(${pattern})`;
8
- }
9
- // Maps hook entries to Claude Code hooks format
10
- function mapHooks(entries) {
11
- return entries.map((entry) => ({
12
- matcher: entry.matcher,
13
- hooks: [
14
- {
15
- type: 'command',
16
- command: entry.command,
17
- },
18
- ],
19
- }));
20
- }
21
- export function renderSettingsJson(manifest) {
22
- const policies = manifest.policies;
23
- const settings = {};
24
- // Build permissions
25
- const allow = [...(policies?.permissions?.allow ?? [])];
26
- const ask = [...(policies?.permissions?.ask ?? [])];
27
- const deny = [...(policies?.permissions?.deny ?? [])];
28
- // Convert shell rules to Bash() permission rules
29
- if (policies?.permissions) {
30
- // Already in allow/ask/deny — pass through as-is
31
- }
32
- // Convert network allowed domains to WebFetch rules
33
- if (policies?.network?.allowed_domains) {
34
- for (const domain of policies.network.allowed_domains) {
35
- allow.push(domainToPermissionRule(domain));
36
- }
37
- }
38
- if (allow.length > 0 || ask.length > 0 || deny.length > 0 || policies?.permissions?.default_mode) {
39
- settings.permissions = {};
40
- if (allow.length > 0)
41
- settings.permissions.allow = allow;
42
- if (ask.length > 0)
43
- settings.permissions.ask = ask;
44
- if (deny.length > 0)
45
- settings.permissions.deny = deny;
46
- if (policies?.permissions?.default_mode) {
47
- settings.permissions.defaultMode = policies.permissions.default_mode;
48
- }
49
- }
50
- // Build sandbox config
51
- if (policies?.sandbox) {
52
- settings.sandbox = {};
53
- if (policies.sandbox.enabled !== undefined) {
54
- settings.sandbox.enabled = policies.sandbox.enabled;
55
- }
56
- if (policies.sandbox.auto_allow_bash !== undefined) {
57
- settings.sandbox.autoAllowBashIfSandboxed = policies.sandbox.auto_allow_bash;
58
- }
59
- if (policies.sandbox.excluded_commands?.length) {
60
- settings.sandbox.excludedCommands = policies.sandbox.excluded_commands;
61
- }
62
- if (policies.sandbox.network) {
63
- settings.sandbox.network = {};
64
- if (policies.sandbox.network.allow_unix_sockets?.length) {
65
- settings.sandbox.network.allowUnixSockets = policies.sandbox.network.allow_unix_sockets;
66
- }
67
- if (policies.sandbox.network.allow_local_binding !== undefined) {
68
- settings.sandbox.network.allowLocalBinding = policies.sandbox.network.allow_local_binding;
69
- }
70
- }
71
- }
72
- // Build hooks config
73
- if (policies?.hooks) {
74
- settings.hooks = {};
75
- if (policies.hooks.pre_tool_use?.length) {
76
- settings.hooks.PreToolUse = mapHooks(policies.hooks.pre_tool_use);
77
- }
78
- if (policies.hooks.post_tool_use?.length) {
79
- settings.hooks.PostToolUse = mapHooks(policies.hooks.post_tool_use);
80
- }
81
- if (policies.hooks.notification?.length) {
82
- settings.hooks.Notification = mapHooks(policies.hooks.notification);
83
- }
84
- }
85
- return {
86
- path: '.claude/settings.json',
87
- content: JSON.stringify(settings, null, 2) + '\n',
88
- };
89
- }
90
- export function renderSettingsLocalJson() {
91
- const local = {
92
- // Local settings — not committed to git
93
- // Override any settings from settings.json here
94
- };
95
- return {
96
- path: '.claude/settings.local.json',
97
- content: JSON.stringify(local, null, 2) + '\n',
98
- };
99
- }
100
- //# sourceMappingURL=settings-json.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"settings-json.js","sourceRoot":"","sources":["../../../src/generator/renderers/settings-json.ts"],"names":[],"mappings":"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"}
@@ -1,4 +0,0 @@
1
- import type { TeamCastManifest } from '../../types/manifest.js';
2
- import type { GeneratedFile } from '../types.js';
3
- export declare function renderSkillMd(manifest: TeamCastManifest): GeneratedFile[];
4
- //# sourceMappingURL=skill-md.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"skill-md.d.ts","sourceRoot":"","sources":["../../../src/generator/renderers/skill-md.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAClE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAGjD,wBAAgB,aAAa,CAAC,QAAQ,EAAE,kBAAkB,GAAG,aAAa,EAAE,CAsB3E"}
@@ -1,44 +0,0 @@
1
- // Generates a stub SKILL.md for each unique skill name across all agents.
2
- export function renderSkillMd(manifest) {
3
- // Collect all unique skill names
4
- const skillNames = new Set();
5
- for (const agent of Object.values(manifest.agents)) {
6
- if (agent.skills) {
7
- for (const skill of agent.skills) {
8
- skillNames.add(skill);
9
- }
10
- }
11
- }
12
- const files = [];
13
- for (const skillName of skillNames) {
14
- const filePath = `.claude/skills/${skillName}/SKILL.md`;
15
- files.push({
16
- path: filePath,
17
- content: generateSkillStub(skillName),
18
- });
19
- }
20
- return files;
21
- }
22
- function generateSkillStub(skillName) {
23
- const title = skillName
24
- .split('-')
25
- .map((w) => w.charAt(0).toUpperCase() + w.slice(1))
26
- .join(' ');
27
- return `# ${title}
28
-
29
- ## When to use this skill
30
-
31
- Use this skill when <!-- describe the trigger condition -->.
32
-
33
- ## Steps
34
-
35
- 1. <!-- First step -->
36
- 2. <!-- Second step -->
37
- 3. <!-- Third step -->
38
-
39
- ## Output
40
-
41
- <!-- Describe the expected output or artifact produced by this skill -->
42
- `;
43
- }
44
- //# sourceMappingURL=skill-md.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"skill-md.js","sourceRoot":"","sources":["../../../src/generator/renderers/skill-md.ts"],"names":[],"mappings":"AAGA,0EAA0E;AAC1E,MAAM,UAAU,aAAa,CAAC,QAA4B;IACxD,iCAAiC;IACjC,MAAM,UAAU,GAAG,IAAI,GAAG,EAAU,CAAC;IACrC,KAAK,MAAM,KAAK,IAAI,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;QACnD,IAAI,KAAK,CAAC,MAAM,EAAE,CAAC;YACjB,KAAK,MAAM,KAAK,IAAI,KAAK,CAAC,MAAM,EAAE,CAAC;gBACjC,UAAU,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;YACxB,CAAC;QACH,CAAC;IACH,CAAC;IAED,MAAM,KAAK,GAAoB,EAAE,CAAC;IAElC,KAAK,MAAM,SAAS,IAAI,UAAU,EAAE,CAAC;QACnC,MAAM,QAAQ,GAAG,kBAAkB,SAAS,WAAW,CAAC;QACxD,KAAK,CAAC,IAAI,CAAC;YACT,IAAI,EAAE,QAAQ;YACd,OAAO,EAAE,iBAAiB,CAAC,SAAS,CAAC;SACtC,CAAC,CAAC;IACL,CAAC;IAED,OAAO,KAAK,CAAC;AACf,CAAC;AAED,SAAS,iBAAiB,CAAC,SAAiB;IAC1C,MAAM,KAAK,GAAG,SAAS;SACpB,KAAK,CAAC,GAAG,CAAC;SACV,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;SAClD,IAAI,CAAC,GAAG,CAAC,CAAC;IAEb,OAAO,KAAK,KAAK;;;;;;;;;;;;;;;CAelB,CAAC;AACF,CAAC"}
@@ -1,14 +0,0 @@
1
- export interface GeneratedFileStateEntry {
2
- path: string;
3
- userEditable: boolean;
4
- }
5
- export declare const GENERATED_STATE_PATH = ".teamcast/generated-files.json";
6
- export declare function readGeneratedState(cwd: string): GeneratedFileStateEntry[];
7
- export declare function writeGeneratedState(cwd: string, files: GeneratedFileStateEntry[]): void;
8
- export declare function deleteTrackedFile(cwd: string, relPath: string): void;
9
- export declare function cleanupGeneratedRoots(cwd: string): void;
10
- export declare function pruneStaleGeneratedFiles(cwd: string, currentFiles: GeneratedFileStateEntry[]): void;
11
- export declare function listTrackedGeneratedPaths(cwd: string, options?: {
12
- includeStateFile?: boolean;
13
- }): string[];
14
- //# sourceMappingURL=state.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"state.d.ts","sourceRoot":"","sources":["../../src/generator/state.ts"],"names":[],"mappings":"AAGA,MAAM,WAAW,uBAAuB;IACtC,IAAI,EAAE,MAAM,CAAC;IACb,YAAY,EAAE,OAAO,CAAC;CACvB;AAOD,eAAO,MAAM,oBAAoB,qCAAqC,CAAC;AAiBvE,wBAAgB,kBAAkB,CAAC,GAAG,EAAE,MAAM,GAAG,uBAAuB,EAAE,CAezE;AAED,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,uBAAuB,EAAE,GAAG,IAAI,CAQvF;AAED,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,IAAI,CAIpE;AAED,wBAAgB,qBAAqB,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,CAOvD;AAED,wBAAgB,wBAAwB,CACtC,GAAG,EAAE,MAAM,EACX,YAAY,EAAE,uBAAuB,EAAE,GACtC,IAAI,CAYN;AAED,wBAAgB,yBAAyB,CACvC,GAAG,EAAE,MAAM,EACX,OAAO,CAAC,EAAE;IAAE,gBAAgB,CAAC,EAAE,OAAO,CAAA;CAAE,GACvC,MAAM,EAAE,CAUV"}
@@ -1,76 +0,0 @@
1
- import { existsSync, mkdirSync, readFileSync, readdirSync, rmSync, writeFileSync } from 'fs';
2
- import { dirname, join } from 'path';
3
- export const GENERATED_STATE_PATH = '.agentforge/generated-files.json';
4
- const GENERATED_ROOTS = [
5
- '.claude/agents',
6
- '.claude/skills',
7
- '.claude',
8
- '.codex/agents',
9
- '.codex',
10
- '.agents/skills',
11
- '.agents',
12
- '.agentforge',
13
- ];
14
- function getStateFilePath(cwd) {
15
- return join(cwd, GENERATED_STATE_PATH);
16
- }
17
- export function readGeneratedState(cwd) {
18
- const statePath = getStateFilePath(cwd);
19
- if (!existsSync(statePath))
20
- return [];
21
- try {
22
- const parsed = JSON.parse(readFileSync(statePath, 'utf-8'));
23
- if (!Array.isArray(parsed.files))
24
- return [];
25
- return parsed.files.filter((entry) => typeof entry?.path === 'string' && typeof entry?.userEditable === 'boolean');
26
- }
27
- catch {
28
- return [];
29
- }
30
- }
31
- export function writeGeneratedState(cwd, files) {
32
- const statePath = getStateFilePath(cwd);
33
- mkdirSync(dirname(statePath), { recursive: true });
34
- const payload = {
35
- version: 1,
36
- files,
37
- };
38
- writeFileSync(statePath, JSON.stringify(payload, null, 2) + '\n', 'utf-8');
39
- }
40
- export function deleteTrackedFile(cwd, relPath) {
41
- const absPath = join(cwd, relPath);
42
- if (!existsSync(absPath))
43
- return;
44
- rmSync(absPath);
45
- }
46
- export function cleanupGeneratedRoots(cwd) {
47
- for (const relPath of GENERATED_ROOTS) {
48
- const absPath = join(cwd, relPath);
49
- if (!existsSync(absPath))
50
- continue;
51
- if (readdirSync(absPath).length > 0)
52
- continue;
53
- rmSync(absPath, { recursive: true });
54
- }
55
- }
56
- export function pruneStaleGeneratedFiles(cwd, currentFiles) {
57
- const currentManagedPaths = new Set(currentFiles.filter((file) => !file.userEditable).map((file) => file.path));
58
- for (const previousFile of readGeneratedState(cwd)) {
59
- if (previousFile.userEditable)
60
- continue;
61
- if (currentManagedPaths.has(previousFile.path))
62
- continue;
63
- deleteTrackedFile(cwd, previousFile.path);
64
- }
65
- cleanupGeneratedRoots(cwd);
66
- }
67
- export function listTrackedGeneratedPaths(cwd, options) {
68
- const trackedPaths = readGeneratedState(cwd)
69
- .map((file) => file.path)
70
- .filter((relPath) => existsSync(join(cwd, relPath)));
71
- if (options?.includeStateFile && existsSync(getStateFilePath(cwd))) {
72
- trackedPaths.push(GENERATED_STATE_PATH);
73
- }
74
- return trackedPaths;
75
- }
76
- //# sourceMappingURL=state.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"state.js","sourceRoot":"","sources":["../../src/generator/state.ts"],"names":[],"mappings":"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"}
@@ -1,3 +0,0 @@
1
- import type { TargetRenderer } from './types.js';
2
- export declare const claudeTargetRenderer: TargetRenderer;
3
- //# sourceMappingURL=claude.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"claude.d.ts","sourceRoot":"","sources":["../../../src/generator/targets/claude.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAoBjD,eAAO,MAAM,oBAAoB,EAAE,cAIlC,CAAC"}
@@ -1,24 +0,0 @@
1
- import { renderAllAgentMd } from '../renderers/agent-md.js';
2
- import { renderClaudeMd } from '../renderers/claude-md.js';
3
- import { renderSettingsJson, renderSettingsLocalJson } from '../renderers/settings-json.js';
4
- import { renderSkillMd } from '../renderers/skill-md.js';
5
- function renderClaudeTargetFiles(manifest) {
6
- const files = [
7
- ...renderAllAgentMd(manifest),
8
- renderSettingsJson(manifest),
9
- ...renderSkillMd(manifest),
10
- ];
11
- if (manifest.settings?.generate_local_settings !== false) {
12
- files.push(renderSettingsLocalJson());
13
- }
14
- if (manifest.settings?.generate_docs !== false) {
15
- files.push(renderClaudeMd(manifest));
16
- }
17
- return files;
18
- }
19
- export const claudeTargetRenderer = {
20
- target: 'claude',
21
- render: renderClaudeTargetFiles,
22
- isUserEditable: (path) => path.startsWith('.claude/skills/'),
23
- };
24
- //# sourceMappingURL=claude.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"claude.js","sourceRoot":"","sources":["../../../src/generator/targets/claude.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAC5D,OAAO,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAC3D,OAAO,EAAE,kBAAkB,EAAE,uBAAuB,EAAE,MAAM,+BAA+B,CAAC;AAC5F,OAAO,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AAIzD,SAAS,uBAAuB,CAAC,QAA4B;IAC3D,MAAM,KAAK,GAAoB;QAC7B,GAAG,gBAAgB,CAAC,QAAQ,CAAC;QAC7B,kBAAkB,CAAC,QAAQ,CAAC;QAC5B,GAAG,aAAa,CAAC,QAAQ,CAAC;KAC3B,CAAC;IAEF,IAAI,QAAQ,CAAC,QAAQ,EAAE,uBAAuB,KAAK,KAAK,EAAE,CAAC;QACzD,KAAK,CAAC,IAAI,CAAC,uBAAuB,EAAE,CAAC,CAAC;IACxC,CAAC;IAED,IAAI,QAAQ,CAAC,QAAQ,EAAE,aAAa,KAAK,KAAK,EAAE,CAAC;QAC/C,KAAK,CAAC,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC,CAAC;IACvC,CAAC;IAED,OAAO,KAAK,CAAC;AACf,CAAC;AAED,MAAM,CAAC,MAAM,oBAAoB,GAAmB;IAClD,MAAM,EAAE,QAAQ;IAChB,MAAM,EAAE,uBAAuB;IAC/B,cAAc,EAAE,CAAC,IAAY,EAAE,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,iBAAiB,CAAC;CACrE,CAAC"}
@@ -1,3 +0,0 @@
1
- import type { TargetRenderer } from './types.js';
2
- export declare const codexTargetRenderer: TargetRenderer;
3
- //# sourceMappingURL=codex.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"codex.d.ts","sourceRoot":"","sources":["../../../src/generator/targets/codex.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAejD,eAAO,MAAM,mBAAmB,EAAE,cAIjC,CAAC"}
@@ -1,19 +0,0 @@
1
- import { renderAgentsMd } from '../renderers/agents-md.js';
2
- import { renderCodexConfigFiles } from '../renderers/codex-config.js';
3
- import { renderCodexSkillMd } from '../renderers/codex-skill-md.js';
4
- function renderCodexTargetFiles(manifest) {
5
- const files = [
6
- ...renderCodexConfigFiles(manifest),
7
- ...renderCodexSkillMd(manifest),
8
- ];
9
- if (manifest.settings?.generate_docs !== false) {
10
- files.push(renderAgentsMd(manifest));
11
- }
12
- return files;
13
- }
14
- export const codexTargetRenderer = {
15
- target: 'codex',
16
- render: renderCodexTargetFiles,
17
- isUserEditable: (path) => path.startsWith('.agents/skills/'),
18
- };
19
- //# sourceMappingURL=codex.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"codex.js","sourceRoot":"","sources":["../../../src/generator/targets/codex.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAC3D,OAAO,EAAE,sBAAsB,EAAE,MAAM,8BAA8B,CAAC;AACtE,OAAO,EAAE,kBAAkB,EAAE,MAAM,gCAAgC,CAAC;AAIpE,SAAS,sBAAsB,CAAC,QAA4B;IAC1D,MAAM,KAAK,GAAoB;QAC7B,GAAG,sBAAsB,CAAC,QAAQ,CAAC;QACnC,GAAG,kBAAkB,CAAC,QAAQ,CAAC;KAChC,CAAC;IAEF,IAAI,QAAQ,CAAC,QAAQ,EAAE,aAAa,KAAK,KAAK,EAAE,CAAC;QAC/C,KAAK,CAAC,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC,CAAC;IACvC,CAAC;IAED,OAAO,KAAK,CAAC;AACf,CAAC;AAED,MAAM,CAAC,MAAM,mBAAmB,GAAmB;IACjD,MAAM,EAAE,OAAO;IACf,MAAM,EAAE,sBAAsB;IAC9B,cAAc,EAAE,CAAC,IAAY,EAAE,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,iBAAiB,CAAC;CACrE,CAAC"}
@@ -1,4 +0,0 @@
1
- import type { RenderTarget } from '../../types/manifest.js';
2
- import type { TargetRenderer } from './types.js';
3
- export declare function resolveTargetRenderer(target: RenderTarget): TargetRenderer;
4
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/generator/targets/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AAG5D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAOjD,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,YAAY,GAAG,cAAc,CAE1E"}
@@ -1,10 +0,0 @@
1
- import { claudeTargetRenderer } from './claude.js';
2
- import { codexTargetRenderer } from './codex.js';
3
- const TARGET_RENDERERS = {
4
- claude: claudeTargetRenderer,
5
- codex: codexTargetRenderer,
6
- };
7
- export function resolveTargetRenderer(target) {
8
- return TARGET_RENDERERS[target];
9
- }
10
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/generator/targets/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAC;AACnD,OAAO,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAC;AAGjD,MAAM,gBAAgB,GAAyC;IAC7D,MAAM,EAAE,oBAAoB;IAC5B,KAAK,EAAE,mBAAmB;CAC3B,CAAC;AAEF,MAAM,UAAU,qBAAqB,CAAC,MAAoB;IACxD,OAAO,gBAAgB,CAAC,MAAM,CAAC,CAAC;AAClC,CAAC"}
@@ -1,8 +0,0 @@
1
- import type { TeamCastManifest, RenderTarget } from '../../types/manifest.js';
2
- import type { GeneratedFile } from '../types.js';
3
- export interface TargetRenderer {
4
- target: RenderTarget;
5
- render(manifest: TeamCastManifest): GeneratedFile[];
6
- isUserEditable(path: string): boolean;
7
- }
8
- //# sourceMappingURL=types.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/generator/targets/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AAChF,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAEjD,MAAM,WAAW,cAAc;IAC7B,MAAM,EAAE,YAAY,CAAC;IACrB,MAAM,CAAC,QAAQ,EAAE,kBAAkB,GAAG,aAAa,EAAE,CAAC;IACtD,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;CACvC"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=types.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/generator/targets/types.ts"],"names":[],"mappings":""}
@@ -1,6 +0,0 @@
1
- import type { AgentConfigV2, AgentDefinition } from './types.js';
2
- export declare function isCanonicalAgentConfig(agent: AgentDefinition): agent is AgentConfigV2;
3
- export declare function normalizeLegacyAgentConfig(agent: AgentDefinition): AgentConfigV2;
4
- export declare function getClaudeConfig(agent: AgentDefinition): AgentConfigV2['claude'];
5
- export declare function getForgeConfig(agent: AgentDefinition): AgentConfigV2['forge'] | undefined;
6
- //# sourceMappingURL=compat.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"compat.d.ts","sourceRoot":"","sources":["../../src/manifest/compat.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAGjE,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,eAAe,GAAG,KAAK,IAAI,aAAa,CAErF;AAqCD,wBAAgB,0BAA0B,CAAC,KAAK,EAAE,eAAe,GAAG,aAAa,CAEhF;AAED,wBAAgB,eAAe,CAAC,KAAK,EAAE,eAAe,GAAG,aAAa,CAAC,QAAQ,CAAC,CAK/E;AAED,wBAAgB,cAAc,CAAC,KAAK,EAAE,eAAe,GAAG,aAAa,CAAC,OAAO,CAAC,GAAG,SAAS,CAKzF"}