loadouts 0.2.5 → 0.4.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 (209) hide show
  1. package/bundled/embedded/pi/loadouts-runtime.ts +19677 -0
  2. package/bundled/extensions/loadouts-runtime/index.ts +19677 -0
  3. package/bundled/extensions/loadouts-runtime/package.json +6 -0
  4. package/bundled/loadouts/opencode-runtime.yaml +5 -0
  5. package/bundled/loadouts/pi-runtime.yaml +5 -0
  6. package/bundled/opencode/plugins/loadouts/index.js +39198 -0
  7. package/bundled/opencode/plugins/loadouts/package.json +9 -0
  8. package/bundled/opencode/plugins/loadouts/tui.js +16913 -0
  9. package/dist/builtins/agent-transforms.d.ts.map +1 -1
  10. package/dist/builtins/agent-transforms.js +31 -9
  11. package/dist/builtins/agent-transforms.js.map +1 -1
  12. package/dist/builtins/index.d.ts.map +1 -1
  13. package/dist/builtins/index.js +18 -3
  14. package/dist/builtins/index.js.map +1 -1
  15. package/dist/builtins/kinds/extension-dir.d.ts +3 -0
  16. package/dist/builtins/kinds/extension-dir.d.ts.map +1 -0
  17. package/dist/builtins/kinds/extension-dir.js +8 -0
  18. package/dist/builtins/kinds/extension-dir.js.map +1 -0
  19. package/dist/builtins/kinds/opencode-cli-config.d.ts +3 -0
  20. package/dist/builtins/kinds/opencode-cli-config.d.ts.map +1 -0
  21. package/dist/builtins/kinds/opencode-cli-config.js +10 -0
  22. package/dist/builtins/kinds/opencode-cli-config.js.map +1 -0
  23. package/dist/builtins/kinds/opencode-command.d.ts +3 -0
  24. package/dist/builtins/kinds/opencode-command.d.ts.map +1 -0
  25. package/dist/builtins/kinds/opencode-command.js +8 -0
  26. package/dist/builtins/kinds/opencode-command.js.map +1 -0
  27. package/dist/builtins/kinds/opencode-plugin-dir.d.ts +3 -0
  28. package/dist/builtins/kinds/opencode-plugin-dir.d.ts.map +1 -0
  29. package/dist/builtins/kinds/opencode-plugin-dir.js +11 -0
  30. package/dist/builtins/kinds/opencode-plugin-dir.js.map +1 -0
  31. package/dist/builtins/kinds/opencode-plugin.js +1 -1
  32. package/dist/builtins/kinds/opencode-plugin.js.map +1 -1
  33. package/dist/builtins/tools/opencode.d.ts.map +1 -1
  34. package/dist/builtins/tools/opencode.js +13 -1
  35. package/dist/builtins/tools/opencode.js.map +1 -1
  36. package/dist/builtins/tools/pi.d.ts.map +1 -1
  37. package/dist/builtins/tools/pi.js +2 -1
  38. package/dist/builtins/tools/pi.js.map +1 -1
  39. package/dist/cli/commands/diff.d.ts +10 -0
  40. package/dist/cli/commands/diff.d.ts.map +1 -1
  41. package/dist/cli/commands/diff.js +71 -30
  42. package/dist/cli/commands/diff.js.map +1 -1
  43. package/dist/cli/commands/info.d.ts +10 -0
  44. package/dist/cli/commands/info.d.ts.map +1 -1
  45. package/dist/cli/commands/info.js +45 -1
  46. package/dist/cli/commands/info.js.map +1 -1
  47. package/dist/cli/commands/list.d.ts +18 -0
  48. package/dist/cli/commands/list.d.ts.map +1 -1
  49. package/dist/cli/commands/list.js +27 -0
  50. package/dist/cli/commands/list.js.map +1 -1
  51. package/dist/cli/commands/session.d.ts +3 -0
  52. package/dist/cli/commands/session.d.ts.map +1 -0
  53. package/dist/cli/commands/session.js +68 -0
  54. package/dist/cli/commands/session.js.map +1 -0
  55. package/dist/cli/commands/status.d.ts +10 -0
  56. package/dist/cli/commands/status.d.ts.map +1 -1
  57. package/dist/cli/commands/status.js +100 -2
  58. package/dist/cli/commands/status.js.map +1 -1
  59. package/dist/cli/commands/sync.d.ts.map +1 -1
  60. package/dist/cli/commands/sync.js +6 -0
  61. package/dist/cli/commands/sync.js.map +1 -1
  62. package/dist/cli/commands/tui.d.ts +3 -0
  63. package/dist/cli/commands/tui.d.ts.map +1 -0
  64. package/dist/cli/commands/tui.js +20 -0
  65. package/dist/cli/commands/tui.js.map +1 -0
  66. package/dist/cli/index.d.ts.map +1 -1
  67. package/dist/cli/index.js +4 -0
  68. package/dist/cli/index.js.map +1 -1
  69. package/dist/core/discovery.js +1 -1
  70. package/dist/core/discovery.js.map +1 -1
  71. package/dist/core/import-discovery.d.ts.map +1 -1
  72. package/dist/core/import-discovery.js +2 -0
  73. package/dist/core/import-discovery.js.map +1 -1
  74. package/dist/core/registry.d.ts +5 -0
  75. package/dist/core/registry.d.ts.map +1 -1
  76. package/dist/core/registry.js.map +1 -1
  77. package/dist/core/render.d.ts.map +1 -1
  78. package/dist/core/render.js +77 -8
  79. package/dist/core/render.js.map +1 -1
  80. package/dist/core/resolve.d.ts +1 -1
  81. package/dist/core/resolve.d.ts.map +1 -1
  82. package/dist/core/resolve.js +3 -2
  83. package/dist/core/resolve.js.map +1 -1
  84. package/dist/core/runtime.d.ts +4 -0
  85. package/dist/core/runtime.d.ts.map +1 -1
  86. package/dist/core/runtime.js +10 -3
  87. package/dist/core/runtime.js.map +1 -1
  88. package/dist/core/schema.d.ts +59 -0
  89. package/dist/core/schema.d.ts.map +1 -1
  90. package/dist/core/schema.js +5 -0
  91. package/dist/core/schema.js.map +1 -1
  92. package/dist/core/types.d.ts +13 -0
  93. package/dist/core/types.d.ts.map +1 -1
  94. package/dist/integrations/opencode/advertisement.d.ts +7 -0
  95. package/dist/integrations/opencode/advertisement.d.ts.map +1 -0
  96. package/dist/integrations/opencode/advertisement.js +17 -0
  97. package/dist/integrations/opencode/advertisement.js.map +1 -0
  98. package/dist/integrations/opencode/client.d.ts +12 -0
  99. package/dist/integrations/opencode/client.d.ts.map +1 -0
  100. package/dist/integrations/opencode/client.js +48 -0
  101. package/dist/integrations/opencode/client.js.map +1 -0
  102. package/dist/integrations/opencode/command.d.ts +11 -0
  103. package/dist/integrations/opencode/command.d.ts.map +1 -0
  104. package/dist/integrations/opencode/command.js +19 -0
  105. package/dist/integrations/opencode/command.js.map +1 -0
  106. package/dist/integrations/opencode/delta.d.ts +15 -0
  107. package/dist/integrations/opencode/delta.d.ts.map +1 -0
  108. package/dist/integrations/opencode/delta.js +75 -0
  109. package/dist/integrations/opencode/delta.js.map +1 -0
  110. package/dist/integrations/opencode/session.d.ts +207 -0
  111. package/dist/integrations/opencode/session.d.ts.map +1 -0
  112. package/dist/integrations/opencode/session.js +201 -0
  113. package/dist/integrations/opencode/session.js.map +1 -0
  114. package/dist/lib/gitignore.d.ts +7 -3
  115. package/dist/lib/gitignore.d.ts.map +1 -1
  116. package/dist/lib/gitignore.js +16 -6
  117. package/dist/lib/gitignore.js.map +1 -1
  118. package/dist/tui/core/actions.d.ts +8 -0
  119. package/dist/tui/core/actions.d.ts.map +1 -0
  120. package/dist/tui/core/actions.js +76 -0
  121. package/dist/tui/core/actions.js.map +1 -0
  122. package/dist/tui/core/controller.d.ts +28 -0
  123. package/dist/tui/core/controller.d.ts.map +1 -0
  124. package/dist/tui/core/controller.js +78 -0
  125. package/dist/tui/core/controller.js.map +1 -0
  126. package/dist/tui/core/data.d.ts +43 -0
  127. package/dist/tui/core/data.d.ts.map +1 -0
  128. package/dist/tui/core/data.js +161 -0
  129. package/dist/tui/core/data.js.map +1 -0
  130. package/dist/tui/core/host.d.ts +15 -0
  131. package/dist/tui/core/host.d.ts.map +1 -0
  132. package/dist/tui/core/host.js +2 -0
  133. package/dist/tui/core/host.js.map +1 -0
  134. package/dist/tui/core/intent.d.ts +95 -0
  135. package/dist/tui/core/intent.d.ts.map +1 -0
  136. package/dist/tui/core/intent.js +2 -0
  137. package/dist/tui/core/intent.js.map +1 -0
  138. package/dist/tui/core/keymap.d.ts +16 -0
  139. package/dist/tui/core/keymap.d.ts.map +1 -0
  140. package/dist/tui/core/keymap.js +68 -0
  141. package/dist/tui/core/keymap.js.map +1 -0
  142. package/dist/tui/core/model.d.ts +65 -0
  143. package/dist/tui/core/model.d.ts.map +1 -0
  144. package/dist/tui/core/model.js +34 -0
  145. package/dist/tui/core/model.js.map +1 -0
  146. package/dist/tui/core/selection.d.ts +12 -0
  147. package/dist/tui/core/selection.d.ts.map +1 -0
  148. package/dist/tui/core/selection.js +42 -0
  149. package/dist/tui/core/selection.js.map +1 -0
  150. package/dist/tui/core/theme.d.ts +15 -0
  151. package/dist/tui/core/theme.d.ts.map +1 -0
  152. package/dist/tui/core/theme.js +11 -0
  153. package/dist/tui/core/theme.js.map +1 -0
  154. package/dist/tui/core/update.d.ts +8 -0
  155. package/dist/tui/core/update.d.ts.map +1 -0
  156. package/dist/tui/core/update.js +206 -0
  157. package/dist/tui/core/update.js.map +1 -0
  158. package/dist/tui/core/view.d.ts +4 -0
  159. package/dist/tui/core/view.d.ts.map +1 -0
  160. package/dist/tui/core/view.js +162 -0
  161. package/dist/tui/core/view.js.map +1 -0
  162. package/dist/tui/core/viewport.d.ts +5 -0
  163. package/dist/tui/core/viewport.d.ts.map +1 -0
  164. package/dist/tui/core/viewport.js +33 -0
  165. package/dist/tui/core/viewport.js.map +1 -0
  166. package/dist/tui/core/viewspec.d.ts +49 -0
  167. package/dist/tui/core/viewspec.d.ts.map +1 -0
  168. package/dist/tui/core/viewspec.js +2 -0
  169. package/dist/tui/core/viewspec.js.map +1 -0
  170. package/dist/tui/hosts/pi/embed-entry.d.ts +3 -0
  171. package/dist/tui/hosts/pi/embed-entry.d.ts.map +1 -0
  172. package/dist/tui/hosts/pi/embed-entry.js +96 -0
  173. package/dist/tui/hosts/pi/embed-entry.js.map +1 -0
  174. package/dist/tui/hosts/pi/inject.d.ts +49 -0
  175. package/dist/tui/hosts/pi/inject.d.ts.map +1 -0
  176. package/dist/tui/hosts/pi/inject.js +31 -0
  177. package/dist/tui/hosts/pi/inject.js.map +1 -0
  178. package/dist/tui/hosts/standalone.d.ts +2 -0
  179. package/dist/tui/hosts/standalone.d.ts.map +1 -0
  180. package/dist/tui/hosts/standalone.js +109 -0
  181. package/dist/tui/hosts/standalone.js.map +1 -0
  182. package/dist/tui/skins/pi-tui/input.d.ts +5 -0
  183. package/dist/tui/skins/pi-tui/input.d.ts.map +1 -0
  184. package/dist/tui/skins/pi-tui/input.js +42 -0
  185. package/dist/tui/skins/pi-tui/input.js.map +1 -0
  186. package/dist/tui/skins/pi-tui/pi-theme-adapter.d.ts +4 -0
  187. package/dist/tui/skins/pi-tui/pi-theme-adapter.d.ts.map +1 -0
  188. package/dist/tui/skins/pi-tui/pi-theme-adapter.js +27 -0
  189. package/dist/tui/skins/pi-tui/pi-theme-adapter.js.map +1 -0
  190. package/dist/tui/skins/pi-tui/render.d.ts +38 -0
  191. package/dist/tui/skins/pi-tui/render.d.ts.map +1 -0
  192. package/dist/tui/skins/pi-tui/render.js +162 -0
  193. package/dist/tui/skins/pi-tui/render.js.map +1 -0
  194. package/dist/tui/skins/pi-tui/theme.d.ts +10 -0
  195. package/dist/tui/skins/pi-tui/theme.d.ts.map +1 -0
  196. package/dist/tui/skins/pi-tui/theme.js +58 -0
  197. package/dist/tui/skins/pi-tui/theme.js.map +1 -0
  198. package/docs/archive/opencode-v2-runtime-beta-18707.md +813 -0
  199. package/docs/authoring.md +69 -14
  200. package/docs/commands.md +24 -0
  201. package/docs/compatibility.md +8 -8
  202. package/docs/concepts.md +4 -2
  203. package/docs/opencode-v2-probes.md +253 -0
  204. package/docs/opencode-v2-runtime.md +129 -0
  205. package/docs/registry.md +1366 -0
  206. package/docs/runtime.md +115 -50
  207. package/docs/troubleshooting.md +20 -1
  208. package/docs/tui-architecture.md +503 -0
  209. package/package.json +17 -3
@@ -33,6 +33,7 @@ export function resolveLoadout(name, roots, rootConfig, options = {}) {
33
33
  tools: effectiveTools,
34
34
  items,
35
35
  rootPath,
36
+ ...(definition.opencode ? { opencode: definition.opencode } : {}),
36
37
  };
37
38
  }
38
39
  /**
@@ -138,8 +139,8 @@ export async function loadResolvedLoadouts(ctx, names, options = {}) {
138
139
  * 2. Sources declared in loadout.yaml (transitively)
139
140
  * 3. Global ~/.config/loadouts/ (lowest priority)
140
141
  */
141
- export async function loadResolvedLoadout(ctx, name) {
142
- const result = await loadResolvedLoadouts(ctx, name ? [name] : undefined);
142
+ export async function loadResolvedLoadout(ctx, name, options = {}) {
143
+ const result = await loadResolvedLoadouts(ctx, name ? [name] : undefined, options);
143
144
  return {
144
145
  loadout: result.loadouts[0],
145
146
  rootConfig: result.rootConfig,
@@ -1 +1 @@
1
- {"version":3,"file":"resolve.js","sourceRoot":"","sources":["../../src/core/resolve.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"resolve.js","sourceRoot":"","sources":["../../src/core/resolve.ts"],"names":[],"mappings":"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"}
@@ -10,6 +10,8 @@ export interface RuntimeCapabilities {
10
10
  };
11
11
  skillPathDiscovery: boolean;
12
12
  nativeSkillHotSwap: boolean;
13
+ sessionInstructionEntries?: boolean;
14
+ sessionSkillGating?: boolean;
13
15
  supportedKinds: RuntimeSupportedKind[];
14
16
  }
15
17
  export interface RuntimeDiagnostic {
@@ -72,6 +74,8 @@ export interface RuntimeBundle {
72
74
  }
73
75
  export interface CompileRuntimeBundleOptions {
74
76
  generatedAt?: string;
77
+ /** Canonical source paths already rendered to this tool on disk. */
78
+ exclude?: ReadonlySet<string>;
75
79
  }
76
80
  export declare function compileRuntimeBundle(tool: Tool, resolved: ResolvedLoadout | ResolvedLoadout[], options?: CompileRuntimeBundleOptions): RuntimeBundle;
77
81
  export declare function renderRuntimeSystemBlock(bundle: RuntimeBundle): string;
@@ -1 +1 @@
1
- {"version":3,"file":"runtime.d.ts","sourceRoot":"","sources":["../../src/core/runtime.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"runtime.d.ts","sourceRoot":"","sources":["../../src/core/runtime.ts"],"names":[],"mappings":"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"}
@@ -5,13 +5,15 @@ import { fileExists, hashContent, isDirectory, readFile } from "../lib/fs.js";
5
5
  export const RUNTIME_SCHEMA_VERSION = 1;
6
6
  const RUNTIME_CAPABILITY_MATRIX = {
7
7
  opencode: {
8
- runtimeMode: "experimental-runtime",
8
+ runtimeMode: "native-runtime",
9
9
  modelInjection: {
10
10
  instructions: true,
11
11
  rules: true,
12
12
  },
13
13
  skillPathDiscovery: true,
14
- nativeSkillHotSwap: false,
14
+ nativeSkillHotSwap: true,
15
+ sessionInstructionEntries: true,
16
+ sessionSkillGating: true,
15
17
  supportedKinds: ["instruction", "rule", "skill"],
16
18
  },
17
19
  pi: {
@@ -60,10 +62,15 @@ export function compileRuntimeBundle(tool, resolved, options = {}) {
60
62
  const generatedAt = options.generatedAt ?? new Date().toISOString();
61
63
  const components = [];
62
64
  const diagnostics = [];
65
+ const seen = new Set();
63
66
  for (const loadout of loadouts) {
64
67
  for (const item of loadout.items) {
65
68
  if (!item.tools.includes(tool))
66
69
  continue;
70
+ const identity = `${item.kind}:${path.resolve(item.sourcePath)}`;
71
+ if (options.exclude?.has(path.resolve(item.sourcePath)) || seen.has(identity))
72
+ continue;
73
+ seen.add(identity);
67
74
  if (item.kind === "instruction" || item.kind === "rule") {
68
75
  const textComponent = compileTextComponent(loadout.name, item);
69
76
  if ("diagnostic" in textComponent) {
@@ -179,7 +186,7 @@ export function renderRuntimeSystemBlock(bundle) {
179
186
  }
180
187
  }
181
188
  lines.push("## Skills (Path Discovery Only)");
182
- lines.push("These are references for discovery. Native skill hot-swap is disabled in runtime v1.");
189
+ lines.push("Read these skill entrypoints when needed; discovery references do not install native skills.");
183
190
  if (bundle.injection.skills.length === 0) {
184
191
  lines.push("(none)");
185
192
  }
@@ -1 +1 @@
1
- {"version":3,"file":"runtime.js","sourceRoot":"","sources":["../../src/core/runtime.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"runtime.js","sourceRoot":"","sources":["../../src/core/runtime.ts"],"names":[],"mappings":"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"}
@@ -18,18 +18,31 @@ export declare const RootConfigSchema: z.ZodObject<{
18
18
  mode: z.ZodOptional<z.ZodEnum<["symlink", "copy", "generate"]>>;
19
19
  tools: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
20
20
  sources: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
21
+ opencode: z.ZodOptional<z.ZodObject<{
22
+ defaultSession: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
23
+ }, "strip", z.ZodTypeAny, {
24
+ defaultSession?: string[] | undefined;
25
+ }, {
26
+ defaultSession?: string[] | undefined;
27
+ }>>;
21
28
  }, "strip", z.ZodTypeAny, {
22
29
  version: "1";
23
30
  default?: string | undefined;
24
31
  mode?: "symlink" | "copy" | "generate" | undefined;
25
32
  tools?: string[] | undefined;
26
33
  sources?: string[] | undefined;
34
+ opencode?: {
35
+ defaultSession?: string[] | undefined;
36
+ } | undefined;
27
37
  }, {
28
38
  version: "1";
29
39
  default?: string | undefined;
30
40
  mode?: "symlink" | "copy" | "generate" | undefined;
31
41
  tools?: string[] | undefined;
32
42
  sources?: string[] | undefined;
43
+ opencode?: {
44
+ defaultSession?: string[] | undefined;
45
+ } | undefined;
33
46
  }>;
34
47
  export declare const LoadoutIncludeSchema: z.ZodUnion<[z.ZodString, z.ZodObject<{
35
48
  path: z.ZodString;
@@ -55,6 +68,36 @@ export declare const LoadoutDefinitionSchema: z.ZodObject<{
55
68
  path: string;
56
69
  tools?: string[] | undefined;
57
70
  }>]>, "many">;
71
+ opencode: z.ZodOptional<z.ZodObject<{
72
+ agent: z.ZodOptional<z.ZodString>;
73
+ model: z.ZodOptional<z.ZodObject<{
74
+ providerID: z.ZodString;
75
+ id: z.ZodString;
76
+ variant: z.ZodOptional<z.ZodString>;
77
+ }, "strip", z.ZodTypeAny, {
78
+ providerID: string;
79
+ id: string;
80
+ variant?: string | undefined;
81
+ }, {
82
+ providerID: string;
83
+ id: string;
84
+ variant?: string | undefined;
85
+ }>>;
86
+ }, "strip", z.ZodTypeAny, {
87
+ agent?: string | undefined;
88
+ model?: {
89
+ providerID: string;
90
+ id: string;
91
+ variant?: string | undefined;
92
+ } | undefined;
93
+ }, {
94
+ agent?: string | undefined;
95
+ model?: {
96
+ providerID: string;
97
+ id: string;
98
+ variant?: string | undefined;
99
+ } | undefined;
100
+ }>>;
58
101
  }, "strip", z.ZodTypeAny, {
59
102
  name: string;
60
103
  include: (string | {
@@ -62,6 +105,14 @@ export declare const LoadoutDefinitionSchema: z.ZodObject<{
62
105
  tools?: string[] | undefined;
63
106
  })[];
64
107
  tools?: string[] | undefined;
108
+ opencode?: {
109
+ agent?: string | undefined;
110
+ model?: {
111
+ providerID: string;
112
+ id: string;
113
+ variant?: string | undefined;
114
+ } | undefined;
115
+ } | undefined;
65
116
  description?: string | undefined;
66
117
  }, {
67
118
  name: string;
@@ -70,6 +121,14 @@ export declare const LoadoutDefinitionSchema: z.ZodObject<{
70
121
  tools?: string[] | undefined;
71
122
  })[];
72
123
  tools?: string[] | undefined;
124
+ opencode?: {
125
+ agent?: string | undefined;
126
+ model?: {
127
+ providerID: string;
128
+ id: string;
129
+ variant?: string | undefined;
130
+ } | undefined;
131
+ } | undefined;
73
132
  description?: string | undefined;
74
133
  }>;
75
134
  export declare const ManifestEntrySchema: z.ZodObject<{
@@ -1 +1 @@
1
- {"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../src/core/schema.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAIxB,eAAO,MAAM,UAAU,aAAoB,CAAC;AAC5C,eAAO,MAAM,kBAAkB,aAAoB,CAAC;AAEpD,eAAO,MAAM,gBAAgB,4CAA0C,CAAC;AACxE,eAAO,MAAM,gBAAgB,iCAA+B,CAAC;AAC7D,MAAM,MAAM,UAAU,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,gBAAgB,CAAC,CAAC;AAG1D,eAAO,MAAM,eAAe,aAAa,CAAC;AAE1C,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;EAM3B,CAAC;AAEH,eAAO,MAAM,oBAAoB;;;;;;;;;IAM/B,CAAC;AAEH,eAAO,MAAM,uBAAuB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAKlC,CAAC;AAEH,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;;;EAO9B,CAAC;AAGH,eAAO,MAAM,yBAAyB;;;;;;;;;;;;;;;;;;;;;EAOpC,CAAC;AAEH,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;EAK9B,CAAC;AAEH,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAM7B,CAAC;AAGH,eAAO,MAAM,wBAAwB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAMnC,CAAC;AAGH,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;gCAMlB,CAAC;AAEjB,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAC;AAEpE,eAAO,MAAM,8BAA8B;;;;;;;;;;;;;;;;;;;;;0DAKzC,CAAC;AAEH,MAAM,MAAM,wBAAwB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,8BAA8B,CAAC,CAAC;AAGtF,eAAO,MAAM,sBAAsB;;;;;;;;;;;;;;;;;;gCAMnB,CAAC;AAEjB,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,sBAAsB,CAAC,CAAC;AAGtE,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;gCAUd,CAAC;AAEjB,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAC"}
1
+ {"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../src/core/schema.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAIxB,eAAO,MAAM,UAAU,aAAoB,CAAC;AAC5C,eAAO,MAAM,kBAAkB,aAAoB,CAAC;AAEpD,eAAO,MAAM,gBAAgB,4CAA0C,CAAC;AACxE,eAAO,MAAM,gBAAgB,iCAA+B,CAAC;AAC7D,MAAM,MAAM,UAAU,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,gBAAgB,CAAC,CAAC;AAG1D,eAAO,MAAM,eAAe,aAAa,CAAC;AAE1C,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAO3B,CAAC;AAEH,eAAO,MAAM,oBAAoB;;;;;;;;;IAM/B,CAAC;AAEH,eAAO,MAAM,uBAAuB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EASlC,CAAC;AAEH,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;;;EAO9B,CAAC;AAGH,eAAO,MAAM,yBAAyB;;;;;;;;;;;;;;;;;;;;;EAOpC,CAAC;AAEH,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;EAK9B,CAAC;AAEH,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAM7B,CAAC;AAGH,eAAO,MAAM,wBAAwB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAMnC,CAAC;AAGH,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;gCAMlB,CAAC;AAEjB,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAC;AAEpE,eAAO,MAAM,8BAA8B;;;;;;;;;;;;;;;;;;;;;0DAKzC,CAAC;AAEH,MAAM,MAAM,wBAAwB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,8BAA8B,CAAC,CAAC;AAGtF,eAAO,MAAM,sBAAsB;;;;;;;;;;;;;;;;;;gCAMnB,CAAC;AAEjB,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,sBAAsB,CAAC,CAAC;AAGtE,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;gCAUd,CAAC;AAEjB,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAC"}
@@ -20,6 +20,7 @@ export const RootConfigSchema = z.object({
20
20
  mode: OutputModeSchema.optional(),
21
21
  tools: z.array(ToolSchema).optional(),
22
22
  sources: z.array(SourceRefSchema).optional(),
23
+ opencode: z.object({ defaultSession: z.array(z.string()).optional() }).optional(),
23
24
  });
24
25
  export const LoadoutIncludeSchema = z.union([
25
26
  z.string(),
@@ -33,6 +34,10 @@ export const LoadoutDefinitionSchema = z.object({
33
34
  description: z.string().optional(),
34
35
  tools: z.array(ToolSchema).optional(),
35
36
  include: z.array(LoadoutIncludeSchema),
37
+ opencode: z.object({
38
+ agent: z.string().min(1).optional(),
39
+ model: z.object({ providerID: z.string().min(1), id: z.string().min(1), variant: z.string().optional() }).optional(),
40
+ }).optional(),
36
41
  });
37
42
  export const ManifestEntrySchema = z.object({
38
43
  tools: z.array(ToolSchema),
@@ -1 +1 @@
1
- {"version":3,"file":"schema.js","sourceRoot":"","sources":["../../src/core/schema.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"schema.js","sourceRoot":"","sources":["../../src/core/schema.ts"],"names":[],"mappings":"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"}
@@ -17,12 +17,24 @@ export interface RootConfig {
17
17
  mode?: OutputMode;
18
18
  tools?: Tool[];
19
19
  sources?: SourceRef[];
20
+ opencode?: {
21
+ defaultSession?: string[];
22
+ };
20
23
  }
21
24
  export interface LoadoutDefinition {
22
25
  name: string;
23
26
  description?: string;
24
27
  tools?: Tool[];
25
28
  include: LoadoutInclude[];
29
+ opencode?: OpenCodeSelection;
30
+ }
31
+ export interface OpenCodeSelection {
32
+ agent?: string;
33
+ model?: {
34
+ providerID: string;
35
+ id: string;
36
+ variant?: string;
37
+ };
26
38
  }
27
39
  export type LoadoutInclude = string | {
28
40
  path: string;
@@ -40,6 +52,7 @@ export interface ResolvedLoadout {
40
52
  tools: Tool[];
41
53
  items: ResolvedItem[];
42
54
  rootPath: string;
55
+ opencode?: OpenCodeSelection;
43
56
  }
44
57
  export interface OutputSpec {
45
58
  tool: Tool;
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/core/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/core/types.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,7 @@
1
+ import type { PermissionRuleset } from "@opencode/client";
2
+ /** Match OpenCode's permission wildcard vocabulary without interpolating a regex. */
3
+ export declare function matches(pattern: string, value: string): boolean;
4
+ export declare function skillDenied(id: string, permissions: PermissionRuleset): boolean;
5
+ /** Restrict only recognized advertisements; missing or unfamiliar markers are a no-op. */
6
+ export declare function filterSkillAdvertisement(text: string, visible: (id: string) => boolean): string;
7
+ //# sourceMappingURL=advertisement.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"advertisement.d.ts","sourceRoot":"","sources":["../../../src/integrations/opencode/advertisement.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AAE1D,qFAAqF;AACrF,wBAAgB,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAE/D;AAED,wBAAgB,WAAW,CAAC,EAAE,EAAE,MAAM,EAAE,WAAW,EAAE,iBAAiB,GAAG,OAAO,CAM/E;AAED,0FAA0F;AAC1F,wBAAgB,wBAAwB,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,OAAO,GAAG,MAAM,CAG/F"}
@@ -0,0 +1,17 @@
1
+ /** Match OpenCode's permission wildcard vocabulary without interpolating a regex. */
2
+ export function matches(pattern, value) {
3
+ return new RegExp(`^${pattern.split("*").map((part) => part.replace(/[.+?^${}()|[\]\\]/g, "\\$&")).join(".*")}$`, "s").test(value);
4
+ }
5
+ export function skillDenied(id, permissions) {
6
+ let effect;
7
+ for (const rule of permissions) {
8
+ if (matches(rule.action, "skill") && matches(rule.resource, id))
9
+ effect = rule.effect;
10
+ }
11
+ return effect === "deny";
12
+ }
13
+ /** Restrict only recognized advertisements; missing or unfamiliar markers are a no-op. */
14
+ export function filterSkillAdvertisement(text, visible) {
15
+ return text.replace(/<available_skills>[\s\S]*?<\/available_skills>/g, (block) => block.replace(/<skill>\s*<id>([^<]+)<\/id>[\s\S]*?<\/skill>/g, (skill, id) => visible(id.trim()) ? skill : ""));
16
+ }
17
+ //# sourceMappingURL=advertisement.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"advertisement.js","sourceRoot":"","sources":["../../../src/integrations/opencode/advertisement.ts"],"names":[],"mappings":"AAEA,qFAAqF;AACrF,MAAM,UAAU,OAAO,CAAC,OAAe,EAAE,KAAa;IACpD,OAAO,IAAI,MAAM,CAAC,IAAI,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,oBAAoB,EAAE,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;AACrI,CAAC;AAED,MAAM,UAAU,WAAW,CAAC,EAAU,EAAE,WAA8B;IACpE,IAAI,MAA0B,CAAC;IAC/B,KAAK,MAAM,IAAI,IAAI,WAAW,EAAE,CAAC;QAC/B,IAAI,OAAO,CAAC,IAAI,CAAC,MAAM,EAAE,OAAO,CAAC,IAAI,OAAO,CAAC,IAAI,CAAC,QAAQ,EAAE,EAAE,CAAC;YAAE,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;IACxF,CAAC;IACD,OAAO,MAAM,KAAK,MAAM,CAAC;AAC3B,CAAC;AAED,0FAA0F;AAC1F,MAAM,UAAU,wBAAwB,CAAC,IAAY,EAAE,OAAgC;IACrF,OAAO,IAAI,CAAC,OAAO,CAAC,iDAAiD,EAAE,CAAC,KAAK,EAAE,EAAE,CAC/E,KAAK,CAAC,OAAO,CAAC,+CAA+C,EAAE,CAAC,KAAK,EAAE,EAAU,EAAE,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;AAC5H,CAAC"}
@@ -0,0 +1,12 @@
1
+ import { OpenCode, type SessionInfo } from "@opencode/client";
2
+ export declare const TESTED_OPENCODE_VERSION = "2.0.3";
3
+ export interface Connection {
4
+ client: ReturnType<typeof OpenCode.make>;
5
+ version: string;
6
+ warning?: string;
7
+ }
8
+ export declare function discoverClient(): Promise<Connection | undefined>;
9
+ export declare function requireClient(): Promise<Connection>;
10
+ export declare function sessionsAt(client: ReturnType<typeof OpenCode.make>, cwd: string): Promise<SessionInfo[]>;
11
+ export declare function selectSession(client: ReturnType<typeof OpenCode.make>, cwd: string, sessionID?: string): Promise<SessionInfo>;
12
+ //# sourceMappingURL=client.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../../src/integrations/opencode/client.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,QAAQ,EAAE,KAAK,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAG9D,eAAO,MAAM,uBAAuB,UAAU,CAAC;AAC/C,MAAM,WAAW,UAAU;IAAG,MAAM,EAAE,UAAU,CAAC,OAAO,QAAQ,CAAC,IAAI,CAAC,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAA;CAAE;AAE3G,wBAAsB,cAAc,IAAI,OAAO,CAAC,UAAU,GAAG,SAAS,CAAC,CAOtE;AAED,wBAAsB,aAAa,IAAI,OAAO,CAAC,UAAU,CAAC,CAIzD;AAED,wBAAsB,UAAU,CAAC,MAAM,EAAE,UAAU,CAAC,OAAO,QAAQ,CAAC,IAAI,CAAC,EAAE,GAAG,EAAE,MAAM,0BASrF;AAED,wBAAsB,aAAa,CAAC,MAAM,EAAE,UAAU,CAAC,OAAO,QAAQ,CAAC,IAAI,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,MAAM,wBAM5G"}
@@ -0,0 +1,48 @@
1
+ import * as path from "node:path";
2
+ import { realpathSync } from "node:fs";
3
+ import { OpenCode } from "@opencode/client";
4
+ import { Service } from "@opencode/client/service";
5
+ export const TESTED_OPENCODE_VERSION = "2.0.3";
6
+ export async function discoverClient() {
7
+ const endpoint = await Service.discover();
8
+ if (!endpoint)
9
+ return undefined;
10
+ const client = OpenCode.make({ baseUrl: endpoint.url, headers: Service.headers(endpoint) });
11
+ const health = await client.health.get();
12
+ return { client, version: health.version, warning: health.version === TESTED_OPENCODE_VERSION
13
+ ? undefined : `OpenCode ${health.version} is running; Loadouts is tested against ${TESTED_OPENCODE_VERSION}.` };
14
+ }
15
+ export async function requireClient() {
16
+ const connection = await discoverClient();
17
+ if (!connection)
18
+ throw new Error("No running OpenCode service found. Start OpenCode, then retry.");
19
+ return connection;
20
+ }
21
+ export async function sessionsAt(client, cwd) {
22
+ const sessions = [];
23
+ let cursor;
24
+ do {
25
+ const result = await client.session.list({ directory: canonical(cwd), order: "desc", limit: 100, cursor });
26
+ sessions.push(...result.data);
27
+ cursor = result.cursor.next ?? undefined;
28
+ } while (cursor);
29
+ return sessions.filter((session) => !session.time.archived && canonical(session.location.directory) === canonical(cwd));
30
+ }
31
+ export async function selectSession(client, cwd, sessionID) {
32
+ if (sessionID)
33
+ return client.session.get({ sessionID });
34
+ const sessions = await sessionsAt(client, cwd);
35
+ const session = sessions.filter((item) => !item.parentID).sort((a, b) => b.time.updated - a.time.updated)[0];
36
+ if (!session)
37
+ throw new Error(`No OpenCode session at ${cwd}. Specify --session <id>.`);
38
+ return session;
39
+ }
40
+ function canonical(directory) {
41
+ try {
42
+ return realpathSync(directory);
43
+ }
44
+ catch {
45
+ return path.resolve(directory);
46
+ }
47
+ }
48
+ //# sourceMappingURL=client.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"client.js","sourceRoot":"","sources":["../../../src/integrations/opencode/client.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,IAAI,MAAM,WAAW,CAAC;AAClC,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AACvC,OAAO,EAAE,QAAQ,EAAoB,MAAM,kBAAkB,CAAC;AAC9D,OAAO,EAAE,OAAO,EAAE,MAAM,0BAA0B,CAAC;AAEnD,MAAM,CAAC,MAAM,uBAAuB,GAAG,OAAO,CAAC;AAG/C,MAAM,CAAC,KAAK,UAAU,cAAc;IAClC,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,QAAQ,EAAE,CAAC;IAC1C,IAAI,CAAC,QAAQ;QAAE,OAAO,SAAS,CAAC;IAChC,MAAM,MAAM,GAAG,QAAQ,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,QAAQ,CAAC,GAAG,EAAE,OAAO,EAAE,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;IAC5F,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC;IACzC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,CAAC,OAAO,EAAE,OAAO,EAAE,MAAM,CAAC,OAAO,KAAK,uBAAuB;YAC3F,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,YAAY,MAAM,CAAC,OAAO,2CAA2C,uBAAuB,GAAG,EAAE,CAAC;AACpH,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,aAAa;IACjC,MAAM,UAAU,GAAG,MAAM,cAAc,EAAE,CAAC;IAC1C,IAAI,CAAC,UAAU;QAAE,MAAM,IAAI,KAAK,CAAC,gEAAgE,CAAC,CAAC;IACnG,OAAO,UAAU,CAAC;AACpB,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,UAAU,CAAC,MAAwC,EAAE,GAAW;IACpF,MAAM,QAAQ,GAAkB,EAAE,CAAC;IACnC,IAAI,MAA0B,CAAC;IAC/B,GAAG,CAAC;QACF,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,SAAS,EAAE,SAAS,CAAC,GAAG,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,CAAC,CAAC;QAC3G,QAAQ,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC;QAC9B,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,IAAI,SAAS,CAAC;IAC3C,CAAC,QAAQ,MAAM,EAAE;IACjB,OAAO,QAAQ,CAAC,MAAM,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,IAAI,SAAS,CAAC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAC,KAAK,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC;AAC1H,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,aAAa,CAAC,MAAwC,EAAE,GAAW,EAAE,SAAkB;IAC3G,IAAI,SAAS;QAAE,OAAO,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,SAAS,EAAE,CAAC,CAAC;IACxD,MAAM,QAAQ,GAAG,MAAM,UAAU,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAC/C,MAAM,OAAO,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,GAAG,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC;IAC7G,IAAI,CAAC,OAAO;QAAE,MAAM,IAAI,KAAK,CAAC,0BAA0B,GAAG,2BAA2B,CAAC,CAAC;IACxF,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,SAAS,SAAS,CAAC,SAAiB;IAClC,IAAI,CAAC;QAAC,OAAO,YAAY,CAAC,SAAS,CAAC,CAAC;IAAC,CAAC;IAAC,MAAM,CAAC;QAAC,OAAO,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;IAAC,CAAC;AACnF,CAAC"}
@@ -0,0 +1,11 @@
1
+ import type { Scope } from "../../core/types.js";
2
+ export type EquipCommand = {
3
+ action: "equip";
4
+ names: string[];
5
+ scope: Scope;
6
+ } | {
7
+ action: "dashboard" | "quick" | "status" | "unequip" | "list";
8
+ };
9
+ /** Shared slash grammar. Loadout names are unquoted identifiers, never shell input. */
10
+ export declare function parseEquipCommand(input?: string): EquipCommand;
11
+ //# sourceMappingURL=command.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"command.d.ts","sourceRoot":"","sources":["../../../src/integrations/opencode/command.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,qBAAqB,CAAC;AAEjD,MAAM,MAAM,YAAY,GAAG;IAAE,MAAM,EAAE,OAAO,CAAC;IAAC,KAAK,EAAE,MAAM,EAAE,CAAC;IAAC,KAAK,EAAE,KAAK,CAAA;CAAE,GACzE;IAAE,MAAM,EAAE,WAAW,GAAG,OAAO,GAAG,QAAQ,GAAG,SAAS,GAAG,MAAM,CAAA;CAAE,CAAC;AAEtE,uFAAuF;AACvF,wBAAgB,iBAAiB,CAAC,KAAK,SAAK,GAAG,YAAY,CAa1D"}
@@ -0,0 +1,19 @@
1
+ /** Shared slash grammar. Loadout names are unquoted identifiers, never shell input. */
2
+ export function parseEquipCommand(input = "") {
3
+ const [action = "dashboard", ...args] = input.trim().split(/\s+/).filter(Boolean);
4
+ if (action === "equip") {
5
+ const global = args.includes("-g") || args.includes("--global");
6
+ const project = args.includes("-p") || args.includes("--project");
7
+ if (global && project)
8
+ throw new Error("Choose --global or --project.");
9
+ const flags = new Set(["-g", "--global", "-p", "--project"]);
10
+ const names = args.filter((arg) => !flags.has(arg));
11
+ if (!names.length || names.some((name) => name.startsWith("-")))
12
+ throw new Error("Usage: /loadouts equip <names…> [-g|-p]");
13
+ return { action, names, scope: global ? "global" : "project" };
14
+ }
15
+ if (["dashboard", "quick", "status", "unequip", "list"].includes(action) && !args.length)
16
+ return { action: action };
17
+ throw new Error("Usage: /loadouts [equip <names…> [-g|-p] | unequip | status | list | quick]");
18
+ }
19
+ //# sourceMappingURL=command.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"command.js","sourceRoot":"","sources":["../../../src/integrations/opencode/command.ts"],"names":[],"mappings":"AAKA,uFAAuF;AACvF,MAAM,UAAU,iBAAiB,CAAC,KAAK,GAAG,EAAE;IAC1C,MAAM,CAAC,MAAM,GAAG,WAAW,EAAE,GAAG,IAAI,CAAC,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IAClF,IAAI,MAAM,KAAK,OAAO,EAAE,CAAC;QACvB,MAAM,MAAM,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;QAChE,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;QAClE,IAAI,MAAM,IAAI,OAAO;YAAE,MAAM,IAAI,KAAK,CAAC,+BAA+B,CAAC,CAAC;QACxE,MAAM,KAAK,GAAG,IAAI,GAAG,CAAC,CAAC,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,WAAW,CAAC,CAAC,CAAC;QAC7D,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC;QACpD,IAAI,CAAC,KAAK,CAAC,MAAM,IAAI,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;YAAE,MAAM,IAAI,KAAK,CAAC,yCAAyC,CAAC,CAAC;QAC5H,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,EAAE,CAAC;IACjE,CAAC;IACD,IAAI,CAAC,WAAW,EAAE,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM;QAAE,OAAO,EAAE,MAAM,EAAE,MAA+D,EAAE,CAAC;IAC7K,MAAM,IAAI,KAAK,CAAC,6EAA6E,CAAC,CAAC;AACjG,CAAC"}
@@ -0,0 +1,15 @@
1
+ import { type RuntimeBundle } from "../../core/runtime.js";
2
+ import type { OpenCodeSelection, Scope } from "../../core/types.js";
3
+ export interface SessionCompilation {
4
+ bundle: RuntimeBundle;
5
+ entries: Record<string, string>;
6
+ skills: string[];
7
+ warnings: string[];
8
+ selection?: OpenCodeSelection;
9
+ }
10
+ export declare function entryKey(name: string): string;
11
+ export declare function compileSession(directory: string, names: string[], options: {
12
+ scope: Scope;
13
+ excludeOnDisk?: boolean;
14
+ }): Promise<SessionCompilation>;
15
+ //# sourceMappingURL=delta.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"delta.d.ts","sourceRoot":"","sources":["../../../src/integrations/opencode/delta.ts"],"names":[],"mappings":"AAKA,OAAO,EAAwB,KAAK,aAAa,EAAE,MAAM,uBAAuB,CAAC;AACjF,OAAO,KAAK,EAAE,iBAAiB,EAAE,KAAK,EAAE,MAAM,qBAAqB,CAAC;AAGpE,MAAM,WAAW,kBAAkB;IACjC,MAAM,EAAE,aAAa,CAAC;IACtB,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAChC,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,SAAS,CAAC,EAAE,iBAAiB,CAAC;CAC/B;AAED,wBAAgB,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAG7C;AAED,wBAAsB,cAAc,CAClC,SAAS,EAAE,MAAM,EACjB,KAAK,EAAE,MAAM,EAAE,EACf,OAAO,EAAE;IAAE,KAAK,EAAE,KAAK,CAAC;IAAC,aAAa,CAAC,EAAE,OAAO,CAAA;CAAE,GACjD,OAAO,CAAC,kBAAkB,CAAC,CAkD7B"}
@@ -0,0 +1,75 @@
1
+ import * as path from "node:path";
2
+ import { realpathSync } from "node:fs";
3
+ import { discoverLoadoutRoots, getContext } from "../../core/discovery.js";
4
+ import { detectDrift, loadState } from "../../core/manifest.js";
5
+ import { loadResolvedLoadouts } from "../../core/resolve.js";
6
+ import { compileRuntimeBundle } from "../../core/runtime.js";
7
+ import { hashContent, isDirectory, isSymlink } from "../../lib/fs.js";
8
+ export function entryKey(name) {
9
+ // Keep names readable, but distinguish case, punctuation, and the manifest key.
10
+ return `loadouts.bundle.${name.toLowerCase().replace(/[^a-z0-9._-]/g, "-").slice(0, 60)}-${hashContent(name).replace(/^sha256:/, "").slice(0, 12)}`;
11
+ }
12
+ export async function compileSession(directory, names, options) {
13
+ const ctx = await getContext(options.scope, directory);
14
+ const { loadouts, sourceWarnings } = await loadResolvedLoadouts(ctx, names, { includeBundled: true });
15
+ const full = compileRuntimeBundle("opencode", loadouts);
16
+ const exclude = new Set();
17
+ if (options.excludeOnDisk !== false) {
18
+ // Only exclude intact outputs. A stale manifest or a shadowed/missing file
19
+ // is not evidence that the model has these instructions.
20
+ const rendered = new Set();
21
+ for (const root of await discoverLoadoutRoots(directory)) {
22
+ const state = loadState(root.path);
23
+ if (!state)
24
+ continue;
25
+ for (const drift of detectDrift(state, path.dirname(root.path))) {
26
+ const target = path.resolve(path.dirname(root.path), drift.entry.targetPath);
27
+ const sameLiveSource = isSymlink(target) && canonical(target) === canonical(drift.entry.sourcePath);
28
+ // V2 natively reads AGENTS.md and skill directories. A managed rule file
29
+ // alone is not proof that an external rule-loader injected its content.
30
+ const native = drift.entry.kind === "skill" || (drift.entry.kind === "instruction" && path.basename(target) === "AGENTS.md");
31
+ if (native && (drift.status === "ok" || sameLiveSource) && drift.entry.tools.includes("opencode")) {
32
+ rendered.add(canonical(drift.entry.sourcePath));
33
+ }
34
+ }
35
+ }
36
+ for (const component of full.components) {
37
+ const entrypoint = component.kind === "skill" && isDirectory(component.sourcePath) ? path.join(component.sourcePath, "SKILL.md") : component.sourcePath;
38
+ if (rendered.has(canonical(component.sourcePath)) || rendered.has(canonical(entrypoint)))
39
+ exclude.add(path.resolve(component.sourcePath));
40
+ }
41
+ }
42
+ const bundle = compileRuntimeBundle("opencode", loadouts, { exclude });
43
+ const selection = {};
44
+ for (const loadout of loadouts)
45
+ Object.assign(selection, loadout.opencode);
46
+ if (Object.keys(selection).length)
47
+ bundle.fingerprint = hashContent(bundle.fingerprint + JSON.stringify(selection));
48
+ const entries = {};
49
+ for (const loadout of bundle.loadouts) {
50
+ const text = [...bundle.injection.instructions, ...bundle.injection.rules]
51
+ .filter((item) => item.loadout === loadout.name)
52
+ .map((item) => `## ${item.relativePath}\n${item.content}`);
53
+ const refs = bundle.injection.skills.filter((skill) => skill.loadout === loadout.name);
54
+ if (refs.length)
55
+ text.push("## Additional skill entrypoints\n" + refs.map((skill) => `- ${skill.name}${skill.description ? `: ${skill.description}` : ""}\n Read: ${isDirectory(skill.sourcePath) ? path.join(skill.sourcePath, "SKILL.md") : skill.sourcePath}`).join("\n"));
56
+ if (text.length)
57
+ entries[entryKey(loadout.name)] = text.join("\n\n");
58
+ }
59
+ return {
60
+ bundle,
61
+ entries,
62
+ skills: [...new Set(full.injection.skills.map((skill) => skill.name))],
63
+ warnings: [...sourceWarnings, ...bundle.diagnostics.map((item) => item.message + ` (${item.relativePath})`)],
64
+ selection,
65
+ };
66
+ }
67
+ function canonical(file) {
68
+ try {
69
+ return realpathSync(file);
70
+ }
71
+ catch {
72
+ return path.resolve(file);
73
+ }
74
+ }
75
+ //# sourceMappingURL=delta.js.map