loadouts 0.2.2 → 0.2.5

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 (108) hide show
  1. package/dist/builtins/agent-transforms.d.ts +9 -0
  2. package/dist/builtins/agent-transforms.d.ts.map +1 -0
  3. package/dist/builtins/agent-transforms.js +231 -0
  4. package/dist/builtins/agent-transforms.js.map +1 -0
  5. package/dist/builtins/index.d.ts.map +1 -1
  6. package/dist/builtins/index.js +7 -0
  7. package/dist/builtins/index.js.map +1 -1
  8. package/dist/builtins/kinds/agent.d.ts +3 -0
  9. package/dist/builtins/kinds/agent.d.ts.map +1 -0
  10. package/dist/builtins/kinds/agent.js +8 -0
  11. package/dist/builtins/kinds/agent.js.map +1 -0
  12. package/dist/builtins/tools/claude-code.d.ts.map +1 -1
  13. package/dist/builtins/tools/claude-code.js +7 -1
  14. package/dist/builtins/tools/claude-code.js.map +1 -1
  15. package/dist/builtins/tools/codex.d.ts.map +1 -1
  16. package/dist/builtins/tools/codex.js +10 -1
  17. package/dist/builtins/tools/codex.js.map +1 -1
  18. package/dist/builtins/tools/cursor.d.ts.map +1 -1
  19. package/dist/builtins/tools/cursor.js +7 -1
  20. package/dist/builtins/tools/cursor.js.map +1 -1
  21. package/dist/builtins/tools/opencode.d.ts.map +1 -1
  22. package/dist/builtins/tools/opencode.js +7 -0
  23. package/dist/builtins/tools/opencode.js.map +1 -1
  24. package/dist/cli/commands/activate.d.ts.map +1 -1
  25. package/dist/cli/commands/activate.js +2 -0
  26. package/dist/cli/commands/activate.js.map +1 -1
  27. package/dist/cli/commands/add-to.d.ts +13 -0
  28. package/dist/cli/commands/add-to.d.ts.map +1 -0
  29. package/dist/cli/commands/add-to.js +56 -0
  30. package/dist/cli/commands/add-to.js.map +1 -0
  31. package/dist/cli/commands/docs.d.ts.map +1 -1
  32. package/dist/cli/commands/docs.js +3 -1
  33. package/dist/cli/commands/docs.js.map +1 -1
  34. package/dist/cli/commands/doctor.d.ts.map +1 -1
  35. package/dist/cli/commands/doctor.js +10 -0
  36. package/dist/cli/commands/doctor.js.map +1 -1
  37. package/dist/cli/commands/init.d.ts.map +1 -1
  38. package/dist/cli/commands/init.js +5 -0
  39. package/dist/cli/commands/init.js.map +1 -1
  40. package/dist/cli/commands/install.d.ts.map +1 -1
  41. package/dist/cli/commands/install.js +15 -3
  42. package/dist/cli/commands/install.js.map +1 -1
  43. package/dist/cli/commands/loadout-include.d.ts +29 -0
  44. package/dist/cli/commands/loadout-include.d.ts.map +1 -0
  45. package/dist/cli/commands/loadout-include.js +138 -0
  46. package/dist/cli/commands/loadout-include.js.map +1 -0
  47. package/dist/cli/commands/migrate.d.ts +31 -0
  48. package/dist/cli/commands/migrate.d.ts.map +1 -0
  49. package/dist/cli/commands/migrate.js +223 -0
  50. package/dist/cli/commands/migrate.js.map +1 -0
  51. package/dist/cli/commands/remove-from.d.ts +9 -0
  52. package/dist/cli/commands/remove-from.d.ts.map +1 -0
  53. package/dist/cli/commands/remove-from.js +51 -0
  54. package/dist/cli/commands/remove-from.js.map +1 -0
  55. package/dist/cli/commands/render-engine.d.ts +1 -0
  56. package/dist/cli/commands/render-engine.d.ts.map +1 -1
  57. package/dist/cli/commands/render-engine.js +10 -35
  58. package/dist/cli/commands/render-engine.js.map +1 -1
  59. package/dist/cli/commands/runtime.d.ts +21 -0
  60. package/dist/cli/commands/runtime.d.ts.map +1 -0
  61. package/dist/cli/commands/runtime.js +100 -0
  62. package/dist/cli/commands/runtime.js.map +1 -0
  63. package/dist/cli/index.d.ts.map +1 -1
  64. package/dist/cli/index.js +8 -0
  65. package/dist/cli/index.js.map +1 -1
  66. package/dist/core/agent-migration.d.ts +13 -0
  67. package/dist/core/agent-migration.d.ts.map +1 -0
  68. package/dist/core/agent-migration.js +397 -0
  69. package/dist/core/agent-migration.js.map +1 -0
  70. package/dist/core/import-discovery.d.ts.map +1 -1
  71. package/dist/core/import-discovery.js +27 -0
  72. package/dist/core/import-discovery.js.map +1 -1
  73. package/dist/core/kindLoader.d.ts +10 -4
  74. package/dist/core/kindLoader.d.ts.map +1 -1
  75. package/dist/core/kindLoader.js +22 -10
  76. package/dist/core/kindLoader.js.map +1 -1
  77. package/dist/core/registry.d.ts +4 -2
  78. package/dist/core/registry.d.ts.map +1 -1
  79. package/dist/core/registry.js.map +1 -1
  80. package/dist/core/render.d.ts.map +1 -1
  81. package/dist/core/render.js +14 -6
  82. package/dist/core/render.js.map +1 -1
  83. package/dist/core/resolve.d.ts +17 -1
  84. package/dist/core/resolve.d.ts.map +1 -1
  85. package/dist/core/resolve.js +50 -27
  86. package/dist/core/resolve.js.map +1 -1
  87. package/dist/core/runtime.d.ts +79 -0
  88. package/dist/core/runtime.d.ts.map +1 -0
  89. package/dist/core/runtime.js +345 -0
  90. package/dist/core/runtime.js.map +1 -0
  91. package/dist/lib/artifact-paths.d.ts.map +1 -1
  92. package/dist/lib/artifact-paths.js +4 -0
  93. package/dist/lib/artifact-paths.js.map +1 -1
  94. package/dist/lib/artifact-table.d.ts.map +1 -1
  95. package/dist/lib/artifact-table.js +13 -1
  96. package/dist/lib/artifact-table.js.map +1 -1
  97. package/dist/lib/gitignore.d.ts.map +1 -1
  98. package/dist/lib/gitignore.js +2 -0
  99. package/dist/lib/gitignore.js.map +1 -1
  100. package/docs/authoring.md +81 -4
  101. package/docs/commands.md +45 -0
  102. package/docs/compatibility.md +41 -0
  103. package/docs/concepts.md +8 -7
  104. package/docs/examples/opencode-runtime-plugin.ts +143 -0
  105. package/docs/index.md +2 -0
  106. package/docs/quickstart.md +1 -0
  107. package/docs/runtime.md +72 -0
  108. package/package.json +1 -1
@@ -0,0 +1,9 @@
1
+ import type { OutputMode, ResolvedItem } from "../core/types.js";
2
+ type AgentTarget = "opencode" | "cursor" | "claude-code" | "codex";
3
+ export declare function selectAgentMarkdownMode(target: Exclude<AgentTarget, "codex">): (item: ResolvedItem) => OutputMode;
4
+ export declare function renderOpenCodeAgent(raw: string, item?: ResolvedItem): string;
5
+ export declare function renderCursorAgent(raw: string, item?: ResolvedItem): string;
6
+ export declare function renderClaudeAgent(raw: string, item?: ResolvedItem): string;
7
+ export declare function renderCodexAgent(raw: string, item?: ResolvedItem): string;
8
+ export {};
9
+ //# sourceMappingURL=agent-transforms.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"agent-transforms.d.ts","sourceRoot":"","sources":["../../src/builtins/agent-transforms.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAEjE,KAAK,WAAW,GAAG,UAAU,GAAG,QAAQ,GAAG,aAAa,GAAG,OAAO,CAAC;AA0HnE,wBAAgB,uBAAuB,CAAC,MAAM,EAAE,OAAO,CAAC,WAAW,EAAE,OAAO,CAAC,IACnE,MAAM,YAAY,KAAG,UAAU,CAIxC;AA6DD,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,YAAY,GAAG,MAAM,CAG5E;AAED,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,YAAY,GAAG,MAAM,CAG1E;AAED,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,YAAY,GAAG,MAAM,CAG1E;AA4FD,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,YAAY,GAAG,MAAM,CAGzE"}
@@ -0,0 +1,231 @@
1
+ import * as path from "node:path";
2
+ import { parseMarkdownFrontmatter, serializeMarkdownFrontmatter, } from "../core/config.js";
3
+ import { readFile } from "../lib/fs.js";
4
+ const MARKDOWN_NATIVE_KEYS = {
5
+ opencode: new Set([
6
+ "description",
7
+ "mode",
8
+ "model",
9
+ "variant",
10
+ "temperature",
11
+ "top_p",
12
+ "steps",
13
+ "disable",
14
+ "hidden",
15
+ "color",
16
+ "permission",
17
+ ]),
18
+ cursor: new Set([
19
+ "name",
20
+ "description",
21
+ "model",
22
+ "readonly",
23
+ "is_background",
24
+ ]),
25
+ "claude-code": new Set([
26
+ "name",
27
+ "description",
28
+ "tools",
29
+ "disallowedTools",
30
+ "model",
31
+ "permissionMode",
32
+ "maxTurns",
33
+ "skills",
34
+ "mcpServers",
35
+ "hooks",
36
+ "memory",
37
+ "background",
38
+ "effort",
39
+ "isolation",
40
+ "color",
41
+ "initialPrompt",
42
+ ]),
43
+ };
44
+ function isRecord(value) {
45
+ return !!value && typeof value === "object" && !Array.isArray(value);
46
+ }
47
+ function cloneRecord(value) {
48
+ return { ...value };
49
+ }
50
+ function getAgentName(item) {
51
+ if (!item)
52
+ return "agent";
53
+ return path.basename(item.sourcePath, path.extname(item.sourcePath));
54
+ }
55
+ function getTargets(frontmatter) {
56
+ return isRecord(frontmatter.targets) ? frontmatter.targets : {};
57
+ }
58
+ function getTargetOverlay(frontmatter, target) {
59
+ const targets = getTargets(frontmatter);
60
+ const overlay = targets[target];
61
+ return isRecord(overlay) ? overlay : {};
62
+ }
63
+ function omitLoadoutsOnlyFields(frontmatter) {
64
+ const result = cloneRecord(frontmatter);
65
+ delete result.targets;
66
+ return result;
67
+ }
68
+ function mergePermission(frontmatter, permission) {
69
+ const existing = isRecord(frontmatter.permission) ? frontmatter.permission : {};
70
+ frontmatter.permission = { ...existing, ...permission };
71
+ }
72
+ function removeUndefined(frontmatter) {
73
+ return Object.fromEntries(Object.entries(frontmatter).filter(([, value]) => value !== undefined));
74
+ }
75
+ function filterKnownKeys(frontmatter, target) {
76
+ const allowed = MARKDOWN_NATIVE_KEYS[target];
77
+ return Object.fromEntries(Object.entries(frontmatter).filter(([key]) => allowed.has(key)));
78
+ }
79
+ function canSymlinkMarkdownAgent(raw, target) {
80
+ const { frontmatter } = parseMarkdownFrontmatter(raw);
81
+ if (Object.keys(getTargets(frontmatter)).length > 0)
82
+ return false;
83
+ const allowed = MARKDOWN_NATIVE_KEYS[target];
84
+ if (!Object.keys(frontmatter).every((key) => allowed.has(key)))
85
+ return false;
86
+ if (target === "opencode") {
87
+ return typeof frontmatter.description === "string" && frontmatter.description.length > 0;
88
+ }
89
+ if (target === "claude-code") {
90
+ return (typeof frontmatter.name === "string" &&
91
+ frontmatter.name.length > 0 &&
92
+ typeof frontmatter.description === "string" &&
93
+ frontmatter.description.length > 0);
94
+ }
95
+ return true;
96
+ }
97
+ export function selectAgentMarkdownMode(target) {
98
+ return (item) => {
99
+ const raw = readFile(item.sourcePath);
100
+ return canSymlinkMarkdownAgent(raw, target) ? "symlink" : "copy";
101
+ };
102
+ }
103
+ function buildOpenCodeFrontmatter(frontmatter, item) {
104
+ const overlay = getTargetOverlay(frontmatter, "opencode");
105
+ const result = filterKnownKeys(omitLoadoutsOnlyFields(frontmatter), "opencode");
106
+ if (result.model === "inherit")
107
+ delete result.model;
108
+ if (typeof result.description !== "string" || result.description.length === 0) {
109
+ result.description = `${getAgentName(item)} agent`;
110
+ }
111
+ const merged = { ...result, ...overlay };
112
+ if (frontmatter.readonly === true) {
113
+ mergePermission(merged, { edit: "deny" });
114
+ }
115
+ return removeUndefined(merged);
116
+ }
117
+ function buildCursorFrontmatter(frontmatter, item) {
118
+ const overlay = getTargetOverlay(frontmatter, "cursor");
119
+ const result = filterKnownKeys(omitLoadoutsOnlyFields(frontmatter), "cursor");
120
+ result.name = typeof result.name === "string" ? result.name : getAgentName(item);
121
+ if (typeof result.description !== "string" || result.description.length === 0) {
122
+ result.description = `${result.name} agent`;
123
+ }
124
+ if (frontmatter.background !== undefined && result.is_background === undefined) {
125
+ result.is_background = frontmatter.background;
126
+ }
127
+ return removeUndefined({ ...result, ...overlay });
128
+ }
129
+ function buildClaudeFrontmatter(frontmatter, item) {
130
+ const overlay = getTargetOverlay(frontmatter, "claude-code");
131
+ const result = filterKnownKeys(omitLoadoutsOnlyFields(frontmatter), "claude-code");
132
+ result.name = typeof result.name === "string" ? result.name : getAgentName(item);
133
+ if (typeof result.description !== "string" || result.description.length === 0) {
134
+ result.description = `${result.name} agent`;
135
+ }
136
+ if (frontmatter.readonly === true && result.permissionMode === undefined) {
137
+ result.permissionMode = "plan";
138
+ }
139
+ if (frontmatter.background !== undefined && result.background === undefined) {
140
+ result.background = frontmatter.background;
141
+ }
142
+ return removeUndefined({ ...result, ...overlay });
143
+ }
144
+ export function renderOpenCodeAgent(raw, item) {
145
+ const { frontmatter, body } = parseMarkdownFrontmatter(raw);
146
+ return serializeMarkdownFrontmatter(buildOpenCodeFrontmatter(frontmatter, item), body);
147
+ }
148
+ export function renderCursorAgent(raw, item) {
149
+ const { frontmatter, body } = parseMarkdownFrontmatter(raw);
150
+ return serializeMarkdownFrontmatter(buildCursorFrontmatter(frontmatter, item), body);
151
+ }
152
+ export function renderClaudeAgent(raw, item) {
153
+ const { frontmatter, body } = parseMarkdownFrontmatter(raw);
154
+ return serializeMarkdownFrontmatter(buildClaudeFrontmatter(frontmatter, item), body);
155
+ }
156
+ function buildCodexConfig(frontmatter, body, item) {
157
+ const overlay = getTargetOverlay(frontmatter, "codex");
158
+ const result = {
159
+ name: typeof frontmatter.name === "string" ? frontmatter.name : getAgentName(item),
160
+ description: typeof frontmatter.description === "string" && frontmatter.description.length > 0
161
+ ? frontmatter.description
162
+ : `${getAgentName(item)} agent`,
163
+ developer_instructions: body.trim(),
164
+ };
165
+ if (typeof frontmatter.model === "string" && frontmatter.model !== "inherit") {
166
+ result.model = frontmatter.model;
167
+ }
168
+ if (frontmatter.readonly === true) {
169
+ result.sandbox_mode = "read-only";
170
+ }
171
+ return removeUndefined({ ...result, ...overlay });
172
+ }
173
+ function isScalar(value) {
174
+ return value === null || ["string", "number", "boolean"].includes(typeof value);
175
+ }
176
+ function formatTomlString(value) {
177
+ if (value.includes("\n")) {
178
+ return `"""\n${value.replaceAll('"""', '\\"\\"\\"')}\n"""`;
179
+ }
180
+ return JSON.stringify(value);
181
+ }
182
+ function formatTomlValue(value) {
183
+ if (typeof value === "string")
184
+ return formatTomlString(value);
185
+ if (typeof value === "number" || typeof value === "boolean")
186
+ return String(value);
187
+ if (value === null)
188
+ return '""';
189
+ if (Array.isArray(value) && value.every(isScalar)) {
190
+ return `[${value.map(formatTomlValue).join(", ")}]`;
191
+ }
192
+ throw new Error("Unsupported TOML value in agent config.");
193
+ }
194
+ function renderTomlObject(value, prefix = []) {
195
+ const lines = [];
196
+ const nested = [];
197
+ const objectArrays = [];
198
+ for (const [key, entry] of Object.entries(value)) {
199
+ if (isScalar(entry) || (Array.isArray(entry) && entry.every(isScalar))) {
200
+ lines.push(`${key} = ${formatTomlValue(entry)}`);
201
+ continue;
202
+ }
203
+ if (Array.isArray(entry) && entry.every(isRecord)) {
204
+ objectArrays.push([key, entry]);
205
+ continue;
206
+ }
207
+ if (isRecord(entry)) {
208
+ nested.push([key, entry]);
209
+ continue;
210
+ }
211
+ throw new Error(`Unsupported TOML value for key "${key}" in agent config.`);
212
+ }
213
+ for (const [key, entry] of nested) {
214
+ lines.push("");
215
+ lines.push(`[${[...prefix, key].join(".")}]`);
216
+ lines.push(...renderTomlObject(entry, [...prefix, key]));
217
+ }
218
+ for (const [key, entries] of objectArrays) {
219
+ for (const entry of entries) {
220
+ lines.push("");
221
+ lines.push(`[[${[...prefix, key].join(".")}]]`);
222
+ lines.push(...renderTomlObject(entry, [...prefix, key]));
223
+ }
224
+ }
225
+ return lines;
226
+ }
227
+ export function renderCodexAgent(raw, item) {
228
+ const { frontmatter, body } = parseMarkdownFrontmatter(raw);
229
+ return `${renderTomlObject(buildCodexConfig(frontmatter, body, item)).join("\n")}\n`;
230
+ }
231
+ //# sourceMappingURL=agent-transforms.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"agent-transforms.js","sourceRoot":"","sources":["../../src/builtins/agent-transforms.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/builtins/index.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAmBnD,oEAAoE;AACpE,eAAO,MAAM,kBAAkB,+DAMrB,CAAC;AAEX,MAAM,MAAM,eAAe,GAAG,CAAC,OAAO,kBAAkB,CAAC,CAAC,MAAM,CAAC,CAAC;AAgClE,uDAAuD;AACvD,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,SAAS,GAAG,IAAI,CAsBrD"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/builtins/index.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AA0BnD,oEAAoE;AACpE,eAAO,MAAM,kBAAkB,+DAMrB,CAAC;AAEX,MAAM,MAAM,eAAe,GAAG,CAAC,OAAO,kBAAkB,CAAC,CAAC,MAAM,CAAC,CAAC;AAgClE,uDAAuD;AACvD,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,SAAS,GAAG,IAAI,CA2BrD"}
@@ -9,6 +9,7 @@ import { parseMarkdownFrontmatter, serializeMarkdownFrontmatter, } from "../core
9
9
  import { ruleKind } from "./kinds/rule.js";
10
10
  import { skillKind } from "./kinds/skill.js";
11
11
  import { instructionKind } from "./kinds/instruction.js";
12
+ import { agentKind } from "./kinds/agent.js";
12
13
  import { promptKind } from "./kinds/prompt.js";
13
14
  import { extensionKind } from "./kinds/extension.js";
14
15
  import { themeKind } from "./kinds/theme.js";
@@ -19,6 +20,7 @@ import { cursorTool } from "./tools/cursor.js";
19
20
  import { opencodeTool } from "./tools/opencode.js";
20
21
  import { codexTool } from "./tools/codex.js";
21
22
  import { piTool } from "./tools/pi.js";
23
+ import { renderClaudeAgent, renderCodexAgent, renderCursorAgent, renderOpenCodeAgent, } from "./agent-transforms.js";
22
24
  /** Names of the built-in tools, for use in defaults and display. */
23
25
  export const BUILTIN_TOOL_NAMES = [
24
26
  "claude-code",
@@ -56,6 +58,7 @@ export function registerBuiltins(api) {
56
58
  api.registerKind(ruleKind);
57
59
  api.registerKind(skillKind);
58
60
  api.registerKind(instructionKind);
61
+ api.registerKind(agentKind);
59
62
  api.registerKind(promptKind);
60
63
  api.registerKind(extensionKind);
61
64
  api.registerKind(themeKind);
@@ -65,6 +68,10 @@ export function registerBuiltins(api) {
65
68
  api.registerTransform("cursor-rule-frontmatter", translateRuleFrontmatter);
66
69
  api.registerTransform("opencode-rule-frontmatter", translateRuleFrontmatter);
67
70
  api.registerTransform("opencode-skill-frontmatter", translateOpenCodeSkillFrontmatter);
71
+ api.registerTransform("opencode-agent-frontmatter", renderOpenCodeAgent);
72
+ api.registerTransform("cursor-agent-frontmatter", renderCursorAgent);
73
+ api.registerTransform("claude-agent-frontmatter", renderClaudeAgent);
74
+ api.registerTransform("codex-agent-toml", renderCodexAgent);
68
75
  // Tools
69
76
  api.registerTool(claudeCodeTool);
70
77
  api.registerTool(cursorTool);
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/builtins/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/builtins/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ import type { KindSpec } from "../../core/registry.js";
2
+ export declare const agentKind: KindSpec;
3
+ //# sourceMappingURL=agent.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"agent.d.ts","sourceRoot":"","sources":["../../../src/builtins/kinds/agent.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAC;AAEvD,eAAO,MAAM,SAAS,EAAE,QAMvB,CAAC"}
@@ -0,0 +1,8 @@
1
+ export const agentKind = {
2
+ id: "agent",
3
+ description: "Specialized agent and subagent definitions.",
4
+ detect: (rel) => rel.startsWith("agents/") && rel.endsWith(".md"),
5
+ layout: "file",
6
+ defaultTargets: {},
7
+ };
8
+ //# sourceMappingURL=agent.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"agent.js","sourceRoot":"","sources":["../../../src/builtins/kinds/agent.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,SAAS,GAAa;IACjC,EAAE,EAAE,OAAO;IACX,WAAW,EAAE,6CAA6C;IAC1D,MAAM,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,UAAU,CAAC,SAAS,CAAC,IAAI,GAAG,CAAC,QAAQ,CAAC,KAAK,CAAC;IACjE,MAAM,EAAE,MAAM;IACd,cAAc,EAAE,EAAE;CACnB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"claude-code.d.ts","sourceRoot":"","sources":["../../../src/builtins/tools/claude-code.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAC;AAavD,eAAO,MAAM,cAAc,EAAE,QAgB5B,CAAC"}
1
+ {"version":3,"file":"claude-code.d.ts","sourceRoot":"","sources":["../../../src/builtins/tools/claude-code.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAC;AAcvD,eAAO,MAAM,cAAc,EAAE,QAqB5B,CAAC"}
@@ -1,5 +1,6 @@
1
1
  import * as path from "node:path";
2
2
  import * as os from "node:os";
3
+ import { selectAgentMarkdownMode } from "../agent-transforms.js";
3
4
  /**
4
5
  * Claude Code reads CLAUDE.md (not AGENTS.md). We generate a thin wrapper
5
6
  * that references the canonical AGENTS.md so both files stay in sync.
@@ -16,7 +17,7 @@ export const claudeCodeTool = {
16
17
  global: path.join(os.homedir(), ".claude"),
17
18
  project: ".claude",
18
19
  },
19
- supports: ["rule", "skill", "instruction"],
20
+ supports: ["rule", "skill", "instruction", "agent"],
20
21
  targets: {
21
22
  rule: { path: "{base}/rules/{stem}.md" },
22
23
  skill: { path: "{base}/skills/{name}" },
@@ -25,6 +26,11 @@ export const claudeCodeTool = {
25
26
  mode: "generate",
26
27
  generate: () => CLAUDE_WRAPPER,
27
28
  },
29
+ agent: {
30
+ path: "{base}/agents/{stem}.md",
31
+ mode: selectAgentMarkdownMode("claude-code"),
32
+ transform: "claude-agent-frontmatter",
33
+ },
28
34
  },
29
35
  };
30
36
  //# sourceMappingURL=claude-code.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"claude-code.js","sourceRoot":"","sources":["../../../src/builtins/tools/claude-code.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,IAAI,MAAM,WAAW,CAAC;AAClC,OAAO,KAAK,EAAE,MAAM,SAAS,CAAC;AAG9B;;;GAGG;AACH,MAAM,cAAc,GAAG;;;;;CAKtB,CAAC;AAEF,MAAM,CAAC,MAAM,cAAc,GAAa;IACtC,IAAI,EAAE,aAAa;IACnB,QAAQ,EAAE;QACR,MAAM,EAAE,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,EAAE,SAAS,CAAC;QAC1C,OAAO,EAAE,SAAS;KACnB;IACD,QAAQ,EAAE,CAAC,MAAM,EAAE,OAAO,EAAE,aAAa,CAAC;IAC1C,OAAO,EAAE;QACP,IAAI,EAAE,EAAE,IAAI,EAAE,wBAAwB,EAAE;QACxC,KAAK,EAAE,EAAE,IAAI,EAAE,sBAAsB,EAAE;QACvC,WAAW,EAAE;YACX,IAAI,EAAE,EAAE,OAAO,EAAE,WAAW,EAAE,MAAM,EAAE,kBAAkB,EAAE;YAC1D,IAAI,EAAE,UAAU;YAChB,QAAQ,EAAE,GAAG,EAAE,CAAC,cAAc;SAC/B;KACF;CACF,CAAC"}
1
+ {"version":3,"file":"claude-code.js","sourceRoot":"","sources":["../../../src/builtins/tools/claude-code.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,IAAI,MAAM,WAAW,CAAC;AAClC,OAAO,KAAK,EAAE,MAAM,SAAS,CAAC;AAE9B,OAAO,EAAE,uBAAuB,EAAE,MAAM,wBAAwB,CAAC;AAEjE;;;GAGG;AACH,MAAM,cAAc,GAAG;;;;;CAKtB,CAAC;AAEF,MAAM,CAAC,MAAM,cAAc,GAAa;IACtC,IAAI,EAAE,aAAa;IACnB,QAAQ,EAAE;QACR,MAAM,EAAE,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,EAAE,SAAS,CAAC;QAC1C,OAAO,EAAE,SAAS;KACnB;IACD,QAAQ,EAAE,CAAC,MAAM,EAAE,OAAO,EAAE,aAAa,EAAE,OAAO,CAAC;IACnD,OAAO,EAAE;QACP,IAAI,EAAE,EAAE,IAAI,EAAE,wBAAwB,EAAE;QACxC,KAAK,EAAE,EAAE,IAAI,EAAE,sBAAsB,EAAE;QACvC,WAAW,EAAE;YACX,IAAI,EAAE,EAAE,OAAO,EAAE,WAAW,EAAE,MAAM,EAAE,kBAAkB,EAAE;YAC1D,IAAI,EAAE,UAAU;YAChB,QAAQ,EAAE,GAAG,EAAE,CAAC,cAAc;SAC/B;QACD,KAAK,EAAE;YACL,IAAI,EAAE,yBAAyB;YAC/B,IAAI,EAAE,uBAAuB,CAAC,aAAa,CAAC;YAC5C,SAAS,EAAE,0BAA0B;SACtC;KACF;CACF,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"codex.d.ts","sourceRoot":"","sources":["../../../src/builtins/tools/codex.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAC;AAEvD,eAAO,MAAM,SAAS,EAAE,QAavB,CAAC"}
1
+ {"version":3,"file":"codex.d.ts","sourceRoot":"","sources":["../../../src/builtins/tools/codex.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAC;AAEvD,eAAO,MAAM,SAAS,EAAE,QAsBvB,CAAC"}
@@ -6,12 +6,21 @@ export const codexTool = {
6
6
  global: path.join(os.homedir(), ".agents"),
7
7
  project: ".agents",
8
8
  },
9
- supports: ["skill", "instruction"],
9
+ supports: ["skill", "instruction", "agent"],
10
10
  targets: {
11
11
  skill: { path: "{base}/skills/{name}" },
12
12
  instruction: {
13
13
  path: { project: "AGENTS.md", global: "{home}/AGENTS.md" },
14
14
  },
15
+ agent: {
16
+ path: {
17
+ project: ".codex/agents/{stem}.toml",
18
+ global: "{home}/.codex/agents/{stem}.toml",
19
+ },
20
+ ext: ".toml",
21
+ mode: "copy",
22
+ transform: "codex-agent-toml",
23
+ },
15
24
  },
16
25
  };
17
26
  //# sourceMappingURL=codex.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"codex.js","sourceRoot":"","sources":["../../../src/builtins/tools/codex.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,IAAI,MAAM,WAAW,CAAC;AAClC,OAAO,KAAK,EAAE,MAAM,SAAS,CAAC;AAG9B,MAAM,CAAC,MAAM,SAAS,GAAa;IACjC,IAAI,EAAE,OAAO;IACb,QAAQ,EAAE;QACR,MAAM,EAAE,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,EAAE,SAAS,CAAC;QAC1C,OAAO,EAAE,SAAS;KACnB;IACD,QAAQ,EAAE,CAAC,OAAO,EAAE,aAAa,CAAC;IAClC,OAAO,EAAE;QACP,KAAK,EAAE,EAAE,IAAI,EAAE,sBAAsB,EAAE;QACvC,WAAW,EAAE;YACX,IAAI,EAAE,EAAE,OAAO,EAAE,WAAW,EAAE,MAAM,EAAE,kBAAkB,EAAE;SAC3D;KACF;CACF,CAAC"}
1
+ {"version":3,"file":"codex.js","sourceRoot":"","sources":["../../../src/builtins/tools/codex.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,IAAI,MAAM,WAAW,CAAC;AAClC,OAAO,KAAK,EAAE,MAAM,SAAS,CAAC;AAG9B,MAAM,CAAC,MAAM,SAAS,GAAa;IACjC,IAAI,EAAE,OAAO;IACb,QAAQ,EAAE;QACR,MAAM,EAAE,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,EAAE,SAAS,CAAC;QAC1C,OAAO,EAAE,SAAS;KACnB;IACD,QAAQ,EAAE,CAAC,OAAO,EAAE,aAAa,EAAE,OAAO,CAAC;IAC3C,OAAO,EAAE;QACP,KAAK,EAAE,EAAE,IAAI,EAAE,sBAAsB,EAAE;QACvC,WAAW,EAAE;YACX,IAAI,EAAE,EAAE,OAAO,EAAE,WAAW,EAAE,MAAM,EAAE,kBAAkB,EAAE;SAC3D;QACD,KAAK,EAAE;YACL,IAAI,EAAE;gBACJ,OAAO,EAAE,2BAA2B;gBACpC,MAAM,EAAE,kCAAkC;aAC3C;YACD,GAAG,EAAE,OAAO;YACZ,IAAI,EAAE,MAAM;YACZ,SAAS,EAAE,kBAAkB;SAC9B;KACF;CACF,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"cursor.d.ts","sourceRoot":"","sources":["../../../src/builtins/tools/cursor.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAC;AAEvD,eAAO,MAAM,UAAU,EAAE,QAkBxB,CAAC"}
1
+ {"version":3,"file":"cursor.d.ts","sourceRoot":"","sources":["../../../src/builtins/tools/cursor.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAC;AAGvD,eAAO,MAAM,UAAU,EAAE,QAuBxB,CAAC"}
@@ -1,12 +1,13 @@
1
1
  import * as path from "node:path";
2
2
  import * as os from "node:os";
3
+ import { selectAgentMarkdownMode } from "../agent-transforms.js";
3
4
  export const cursorTool = {
4
5
  name: "cursor",
5
6
  basePath: {
6
7
  global: path.join(os.homedir(), ".cursor"),
7
8
  project: ".cursor",
8
9
  },
9
- supports: ["rule", "skill", "instruction"],
10
+ supports: ["rule", "skill", "instruction", "agent"],
10
11
  targets: {
11
12
  // Cursor rules render canonical paths/activation with native aliases.
12
13
  rule: {
@@ -17,6 +18,11 @@ export const cursorTool = {
17
18
  instruction: {
18
19
  path: { project: "AGENTS.md", global: "{home}/AGENTS.md" },
19
20
  },
21
+ agent: {
22
+ path: "{base}/agents/{stem}.md",
23
+ mode: selectAgentMarkdownMode("cursor"),
24
+ transform: "cursor-agent-frontmatter",
25
+ },
20
26
  },
21
27
  };
22
28
  //# sourceMappingURL=cursor.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"cursor.js","sourceRoot":"","sources":["../../../src/builtins/tools/cursor.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,IAAI,MAAM,WAAW,CAAC;AAClC,OAAO,KAAK,EAAE,MAAM,SAAS,CAAC;AAG9B,MAAM,CAAC,MAAM,UAAU,GAAa;IAClC,IAAI,EAAE,QAAQ;IACd,QAAQ,EAAE;QACR,MAAM,EAAE,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,EAAE,SAAS,CAAC;QAC1C,OAAO,EAAE,SAAS;KACnB;IACD,QAAQ,EAAE,CAAC,MAAM,EAAE,OAAO,EAAE,aAAa,CAAC;IAC1C,OAAO,EAAE;QACP,sEAAsE;QACtE,IAAI,EAAE;YACJ,IAAI,EAAE,yBAAyB;YAC/B,SAAS,EAAE,yBAAyB;SACrC;QACD,KAAK,EAAE,EAAE,IAAI,EAAE,sBAAsB,EAAE;QACvC,WAAW,EAAE;YACX,IAAI,EAAE,EAAE,OAAO,EAAE,WAAW,EAAE,MAAM,EAAE,kBAAkB,EAAE;SAC3D;KACF;CACF,CAAC"}
1
+ {"version":3,"file":"cursor.js","sourceRoot":"","sources":["../../../src/builtins/tools/cursor.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,IAAI,MAAM,WAAW,CAAC;AAClC,OAAO,KAAK,EAAE,MAAM,SAAS,CAAC;AAE9B,OAAO,EAAE,uBAAuB,EAAE,MAAM,wBAAwB,CAAC;AAEjE,MAAM,CAAC,MAAM,UAAU,GAAa;IAClC,IAAI,EAAE,QAAQ;IACd,QAAQ,EAAE;QACR,MAAM,EAAE,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,EAAE,SAAS,CAAC;QAC1C,OAAO,EAAE,SAAS;KACnB;IACD,QAAQ,EAAE,CAAC,MAAM,EAAE,OAAO,EAAE,aAAa,EAAE,OAAO,CAAC;IACnD,OAAO,EAAE;QACP,sEAAsE;QACtE,IAAI,EAAE;YACJ,IAAI,EAAE,yBAAyB;YAC/B,SAAS,EAAE,yBAAyB;SACrC;QACD,KAAK,EAAE,EAAE,IAAI,EAAE,sBAAsB,EAAE;QACvC,WAAW,EAAE;YACX,IAAI,EAAE,EAAE,OAAO,EAAE,WAAW,EAAE,MAAM,EAAE,kBAAkB,EAAE;SAC3D;QACD,KAAK,EAAE;YACL,IAAI,EAAE,yBAAyB;YAC/B,IAAI,EAAE,uBAAuB,CAAC,QAAQ,CAAC;YACvC,SAAS,EAAE,0BAA0B;SACtC;KACF;CACF,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"opencode.d.ts","sourceRoot":"","sources":["../../../src/builtins/tools/opencode.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAC;AAEvD,eAAO,MAAM,YAAY,EAAE,QAiC1B,CAAC"}
1
+ {"version":3,"file":"opencode.d.ts","sourceRoot":"","sources":["../../../src/builtins/tools/opencode.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAC;AAGvD,eAAO,MAAM,YAAY,EAAE,QAuC1B,CAAC"}
@@ -1,5 +1,6 @@
1
1
  import * as path from "node:path";
2
2
  import * as os from "node:os";
3
+ import { selectAgentMarkdownMode } from "../agent-transforms.js";
3
4
  export const opencodeTool = {
4
5
  name: "opencode",
5
6
  basePath: {
@@ -10,6 +11,7 @@ export const opencodeTool = {
10
11
  "rule",
11
12
  "skill",
12
13
  "instruction",
14
+ "agent",
13
15
  "opencode-config",
14
16
  "opencode-plugin",
15
17
  ],
@@ -25,6 +27,11 @@ export const opencodeTool = {
25
27
  instruction: {
26
28
  path: { project: "AGENTS.md", global: "{home}/AGENTS.md" },
27
29
  },
30
+ agent: {
31
+ path: "{base}/agents/{stem}.md",
32
+ mode: selectAgentMarkdownMode("opencode"),
33
+ transform: "opencode-agent-frontmatter",
34
+ },
28
35
  "opencode-config": {
29
36
  path: {
30
37
  project: "opencode{ext}",
@@ -1 +1 @@
1
- {"version":3,"file":"opencode.js","sourceRoot":"","sources":["../../../src/builtins/tools/opencode.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,IAAI,MAAM,WAAW,CAAC;AAClC,OAAO,KAAK,EAAE,MAAM,SAAS,CAAC;AAG9B,MAAM,CAAC,MAAM,YAAY,GAAa;IACpC,IAAI,EAAE,UAAU;IAChB,QAAQ,EAAE;QACR,MAAM,EAAE,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,UAAU,CAAC;QACtD,OAAO,EAAE,WAAW;KACrB;IACD,QAAQ,EAAE;QACR,MAAM;QACN,OAAO;QACP,aAAa;QACb,iBAAiB;QACjB,iBAAiB;KAClB;IACD,OAAO,EAAE;QACP,IAAI,EAAE;YACJ,IAAI,EAAE,wBAAwB;YAC9B,SAAS,EAAE,2BAA2B;SACvC;QACD,KAAK,EAAE;YACL,IAAI,EAAE,sBAAsB;YAC5B,SAAS,EAAE,4BAA4B;SACxC;QACD,WAAW,EAAE;YACX,IAAI,EAAE,EAAE,OAAO,EAAE,WAAW,EAAE,MAAM,EAAE,kBAAkB,EAAE;SAC3D;QACD,iBAAiB,EAAE;YACjB,IAAI,EAAE;gBACJ,OAAO,EAAE,eAAe;gBACxB,MAAM,EAAE,sBAAsB;aAC/B;SACF;QACD,iBAAiB,EAAE,EAAE,IAAI,EAAE,4BAA4B,EAAE;KAC1D;CACF,CAAC"}
1
+ {"version":3,"file":"opencode.js","sourceRoot":"","sources":["../../../src/builtins/tools/opencode.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,IAAI,MAAM,WAAW,CAAC;AAClC,OAAO,KAAK,EAAE,MAAM,SAAS,CAAC;AAE9B,OAAO,EAAE,uBAAuB,EAAE,MAAM,wBAAwB,CAAC;AAEjE,MAAM,CAAC,MAAM,YAAY,GAAa;IACpC,IAAI,EAAE,UAAU;IAChB,QAAQ,EAAE;QACR,MAAM,EAAE,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,UAAU,CAAC;QACtD,OAAO,EAAE,WAAW;KACrB;IACD,QAAQ,EAAE;QACR,MAAM;QACN,OAAO;QACP,aAAa;QACb,OAAO;QACP,iBAAiB;QACjB,iBAAiB;KAClB;IACD,OAAO,EAAE;QACP,IAAI,EAAE;YACJ,IAAI,EAAE,wBAAwB;YAC9B,SAAS,EAAE,2BAA2B;SACvC;QACD,KAAK,EAAE;YACL,IAAI,EAAE,sBAAsB;YAC5B,SAAS,EAAE,4BAA4B;SACxC;QACD,WAAW,EAAE;YACX,IAAI,EAAE,EAAE,OAAO,EAAE,WAAW,EAAE,MAAM,EAAE,kBAAkB,EAAE;SAC3D;QACD,KAAK,EAAE;YACL,IAAI,EAAE,yBAAyB;YAC/B,IAAI,EAAE,uBAAuB,CAAC,UAAU,CAAC;YACzC,SAAS,EAAE,4BAA4B;SACxC;QACD,iBAAiB,EAAE;YACjB,IAAI,EAAE;gBACJ,OAAO,EAAE,eAAe;gBACxB,MAAM,EAAE,sBAAsB;aAC/B;SACF;QACD,iBAAiB,EAAE,EAAE,IAAI,EAAE,4BAA4B,EAAE;KAC1D;CACF,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"activate.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/activate.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAkBpC,eAAO,MAAM,eAAe,SAiExB,CAAC"}
1
+ {"version":3,"file":"activate.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/activate.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAkBpC,eAAO,MAAM,eAAe,SAmExB,CAAC"}
@@ -37,6 +37,7 @@ export const activateCommand = new Command("activate")
37
37
  await applyTargetSet(ctx, targets, {
38
38
  dryRun: options.dryRun,
39
39
  verb: "Activated",
40
+ showKindNamespaceNotes: true,
40
41
  });
41
42
  }
42
43
  return;
@@ -72,6 +73,7 @@ export const activateCommand = new Command("activate")
72
73
  await applyTargetSet(ctx, targets, {
73
74
  dryRun: options.dryRun,
74
75
  verb: "Activated",
76
+ showKindNamespaceNotes: true,
75
77
  });
76
78
  });
77
79
  //# sourceMappingURL=activate.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"activate.js","sourceRoot":"","sources":["../../../src/cli/commands/activate.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"activate.js","sourceRoot":"","sources":["../../../src/cli/commands/activate.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,13 @@
1
+ import { Command } from "commander";
2
+ import { type ScopeFlags } from "../../core/scope.js";
3
+ import { type IncludeMutationResult } from "./loadout-include.js";
4
+ interface AddToOptions extends ScopeFlags {
5
+ tools?: string;
6
+ }
7
+ export interface AddToResult extends IncludeMutationResult {
8
+ loadout: string;
9
+ }
10
+ export declare function runAddTo(loadout: string, artifacts: string[], options: AddToOptions, cwd?: string): Promise<AddToResult>;
11
+ export declare const addToCommand: Command;
12
+ export {};
13
+ //# sourceMappingURL=add-to.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"add-to.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/add-to.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAEpC,OAAO,EAAe,KAAK,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAEnE,OAAO,EAML,KAAK,qBAAqB,EAC3B,MAAM,sBAAsB,CAAC;AAE9B,UAAU,YAAa,SAAQ,UAAU;IACvC,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,WAAY,SAAQ,qBAAqB;IACxD,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,wBAAsB,QAAQ,CAC5B,OAAO,EAAE,MAAM,EACf,SAAS,EAAE,MAAM,EAAE,EACnB,OAAO,EAAE,YAAY,EACrB,GAAG,GAAE,MAAsB,GAC1B,OAAO,CAAC,WAAW,CAAC,CAkBtB;AAsBD,eAAO,MAAM,YAAY,SAcrB,CAAC"}
@@ -0,0 +1,56 @@
1
+ import { Command } from "commander";
2
+ import chalk from "chalk";
3
+ import { SCOPE_FLAGS } from "../../core/scope.js";
4
+ import { log, heading } from "../../lib/output.js";
5
+ import { addIncludes, normalizeAndValidateArtifact, parseToolsOption, resolveLoadoutMutationTarget, writeLoadoutDefinition, } from "./loadout-include.js";
6
+ export async function runAddTo(loadout, artifacts, options, cwd = process.cwd()) {
7
+ if (artifacts.length === 0) {
8
+ throw new Error("Provide at least one artifact path.");
9
+ }
10
+ const target = await resolveLoadoutMutationTarget(loadout, options, cwd);
11
+ const tools = parseToolsOption(options.tools);
12
+ const includes = artifacts.map((artifact) => ({
13
+ ...normalizeAndValidateArtifact(artifact, target.ctx.configPath),
14
+ tools,
15
+ }));
16
+ const result = addIncludes(target.definition, includes);
17
+ if (result.changed.length > 0) {
18
+ writeLoadoutDefinition(target.loadoutPath, target.definition);
19
+ }
20
+ return { loadout, ...result };
21
+ }
22
+ function printResult(result) {
23
+ if (result.changed.length === 0) {
24
+ log.dim(`No changes to ${result.loadout}.`);
25
+ }
26
+ else {
27
+ heading(`Added to ${result.loadout}`);
28
+ for (const includePath of result.changed) {
29
+ console.log(chalk.green(`+ ${includePath}`));
30
+ }
31
+ }
32
+ for (const skipped of result.skipped) {
33
+ console.log(chalk.dim(`- ${skipped.path} ${skipped.reason}`));
34
+ }
35
+ if (result.changed.length > 0) {
36
+ console.log();
37
+ log.info(`Run ${chalk.cyan("loadouts sync")} to apply changes.`);
38
+ }
39
+ }
40
+ export const addToCommand = new Command("add-to")
41
+ .description("Add existing artifacts to a loadout")
42
+ .argument("<loadout>", "Loadout to update")
43
+ .argument("<artifacts...>", "Artifact paths relative to .loadouts/")
44
+ .option(...SCOPE_FLAGS.local)
45
+ .option(...SCOPE_FLAGS.global)
46
+ .option("--tools <tools>", "Restrict added artifacts to specific tools (comma-separated)")
47
+ .action(async (loadout, artifacts, options) => {
48
+ try {
49
+ printResult(await runAddTo(loadout, artifacts, options));
50
+ }
51
+ catch (err) {
52
+ log.error(err instanceof Error ? err.message : String(err));
53
+ process.exit(1);
54
+ }
55
+ });
56
+ //# sourceMappingURL=add-to.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"add-to.js","sourceRoot":"","sources":["../../../src/cli/commands/add-to.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"docs.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/docs.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAqFpC,eAAO,MAAM,WAAW,SAqCpB,CAAC"}
1
+ {"version":3,"file":"docs.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/docs.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAuFpC,eAAO,MAAM,WAAW,SAqCpB,CAAC"}