@skastr0/prism-linux-x64 0.1.1 → 0.1.2
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.
- package/bin/prism +0 -0
- package/package.json +2 -1
- package/types/compile/bundle-utils.d.ts +16 -0
- package/types/compile/cache.d.ts +49 -0
- package/types/compile/compile-manifest.d.ts +48 -0
- package/types/compile/compose.d.ts +35 -0
- package/types/compile/errors.d.ts +124 -0
- package/types/compile/generated-plugin.d.ts +8 -0
- package/types/compile/load.d.ts +23 -0
- package/types/compile/paths.d.ts +2 -0
- package/types/compile/protocol-tools.d.ts +47 -0
- package/types/compile/refs.d.ts +7 -0
- package/types/compile/registry.d.ts +32 -0
- package/types/compile/resolve.d.ts +63 -0
- package/types/compile/runtime/schema-bridge.d.ts +61 -0
- package/types/compile/runtime-deps.d.ts +6 -0
- package/types/compile/sources.d.ts +2782 -0
- package/types/content-hash.d.ts +1 -0
- package/types/errors.d.ts +107 -0
- package/types/fs.d.ts +60 -0
- package/types/harnesses.d.ts +10 -0
- package/types/index.d.ts +493 -0
- package/types/lowerer-capabilities.d.ts +559 -0
- package/types/manifest.d.ts +106 -0
- package/types/prism-home.d.ts +26 -0
- package/types/project-key.d.ts +48 -0
- package/types/source-selection.d.ts +38 -0
- package/types/state/lock.d.ts +14 -0
- package/types/types.d.ts +193 -0
- package/types/workflow-amp-worker.d.ts +12 -0
- package/types/workflow-antigravity-worker.d.ts +14 -0
- package/types/workflow-claude-worker.d.ts +13 -0
- package/types/workflow-codex-worker.d.ts +12 -0
- package/types/workflow-grok-worker.d.ts +14 -0
- package/types/workflow-hermes-worker.d.ts +14 -0
- package/types/workflow-kimi-worker.d.ts +13 -0
- package/types/workflow-loader.d.ts +64 -0
- package/types/workflow-opencode-worker.d.ts +12 -0
- package/types/workflow-runner.d.ts +69 -0
- package/types/workflow-store.d.ts +214 -0
- package/types/workflow-tsconfig.d.ts +90 -0
- package/types/workflow-worker-contract.d.ts +10 -0
- package/types/workflow-worker-metadata.d.ts +8 -0
- package/types/workflow-worker-process.d.ts +18 -0
- package/types/workflow-workers.d.ts +27 -0
- package/types/workflows.d.ts +145 -0
|
@@ -0,0 +1,559 @@
|
|
|
1
|
+
import type { HarnessId } from "./types.js";
|
|
2
|
+
export type GeneratedCanonicalToolSupport = "executable" | "unsupported";
|
|
3
|
+
export type SkillPermissionSupport = "supported" | "unsupported";
|
|
4
|
+
export type CompileSurfaceSupport = "supported" | "unsupported";
|
|
5
|
+
export interface CompileTargetCapabilities {
|
|
6
|
+
readonly agents: CompileSurfaceSupport;
|
|
7
|
+
readonly generatedCanonicalTools: GeneratedCanonicalToolSupport;
|
|
8
|
+
readonly hooks: CompileSurfaceSupport;
|
|
9
|
+
readonly skillPermissions: SkillPermissionSupport;
|
|
10
|
+
}
|
|
11
|
+
export declare const LOWERER_SURFACE_IDS: readonly ["pluginBundle", "rules", "commands", "agents", "skills", "generatedTools", "hooks", "mcpConfig", "agentConfig"];
|
|
12
|
+
export type LowererSurfaceId = (typeof LOWERER_SURFACE_IDS)[number];
|
|
13
|
+
export declare const LOWERER_SURFACE_KINDS: readonly ["native-plugin-api", "native-plugin-bundle", "generated-mcp", "markdown-file", "direct-file", "config-patch", "unsupported"];
|
|
14
|
+
export type LowererSurfaceKind = (typeof LOWERER_SURFACE_KINDS)[number];
|
|
15
|
+
export type HarnessFamily = "coding-harness" | "claw-harness";
|
|
16
|
+
export interface LowererSurfaceCapability {
|
|
17
|
+
readonly kind: LowererSurfaceKind;
|
|
18
|
+
readonly summary: string;
|
|
19
|
+
readonly path?: string;
|
|
20
|
+
}
|
|
21
|
+
export interface LowererCapabilityProfile {
|
|
22
|
+
readonly harness: HarnessId;
|
|
23
|
+
readonly family: HarnessFamily;
|
|
24
|
+
readonly compile: CompileTargetCapabilities;
|
|
25
|
+
readonly surfaces: Record<LowererSurfaceId, LowererSurfaceCapability>;
|
|
26
|
+
readonly notes?: readonly string[];
|
|
27
|
+
}
|
|
28
|
+
export declare const LOWERER_CAPABILITIES: {
|
|
29
|
+
readonly "claude-code": {
|
|
30
|
+
readonly harness: "claude-code";
|
|
31
|
+
readonly family: "coding-harness";
|
|
32
|
+
readonly compile: CompileTargetCapabilities;
|
|
33
|
+
readonly surfaces: {
|
|
34
|
+
readonly pluginBundle: {
|
|
35
|
+
readonly kind: "native-plugin-bundle";
|
|
36
|
+
readonly path: "<claude-root>/skills/prism-generated-<plugin>/";
|
|
37
|
+
readonly summary: "Compile emits Claude Code skills-directory plugin bundles with plugin metadata.";
|
|
38
|
+
};
|
|
39
|
+
readonly rules: {
|
|
40
|
+
readonly kind: "direct-file";
|
|
41
|
+
readonly path: "<claude-root>/CLAUDE.md";
|
|
42
|
+
readonly summary: "Install appends managed sections to the native instructions file.";
|
|
43
|
+
};
|
|
44
|
+
readonly commands: {
|
|
45
|
+
readonly kind: "native-plugin-bundle";
|
|
46
|
+
readonly path: "<generated-plugin>/commands/";
|
|
47
|
+
readonly summary: "Install compiles markdown command files into the generated plugin bundle.";
|
|
48
|
+
};
|
|
49
|
+
readonly agents: {
|
|
50
|
+
readonly kind: "markdown-file";
|
|
51
|
+
readonly path: "<generated-plugin>/agents/";
|
|
52
|
+
readonly summary: "Compile writes Claude-style subagent markdown inside the plugin bundle.";
|
|
53
|
+
};
|
|
54
|
+
readonly skills: {
|
|
55
|
+
readonly kind: "markdown-file";
|
|
56
|
+
readonly path: "<generated-plugin>/skills/";
|
|
57
|
+
readonly summary: "Compile bundles targeted skills and orbit skills as Agent Skills.";
|
|
58
|
+
};
|
|
59
|
+
readonly generatedTools: {
|
|
60
|
+
readonly kind: "generated-mcp";
|
|
61
|
+
readonly path: "<prism-home>/runtime/mcp/<plugin>/server.mjs";
|
|
62
|
+
readonly summary: "Canonical tools lower to the canonical PRISM_HOME union MCP server referenced from the plugin .mcp.json.";
|
|
63
|
+
};
|
|
64
|
+
readonly hooks: {
|
|
65
|
+
readonly kind: "native-plugin-bundle";
|
|
66
|
+
readonly path: "<generated-plugin>/hooks/hooks.json";
|
|
67
|
+
readonly summary: "Hooks are bundled in Claude Code's plugin hook layout.";
|
|
68
|
+
};
|
|
69
|
+
readonly mcpConfig: {
|
|
70
|
+
readonly kind: "native-plugin-bundle";
|
|
71
|
+
readonly path: "<generated-plugin>/.mcp.json";
|
|
72
|
+
readonly summary: "MCP config is plugin-local, not a global settings patch.";
|
|
73
|
+
};
|
|
74
|
+
readonly agentConfig: LowererSurfaceCapability;
|
|
75
|
+
};
|
|
76
|
+
};
|
|
77
|
+
readonly opencode: {
|
|
78
|
+
readonly harness: "opencode";
|
|
79
|
+
readonly family: "coding-harness";
|
|
80
|
+
readonly compile: CompileTargetCapabilities;
|
|
81
|
+
readonly surfaces: {
|
|
82
|
+
readonly pluginBundle: {
|
|
83
|
+
readonly kind: "native-plugin-api";
|
|
84
|
+
readonly path: "<opencode-root>/plugins/prism-generated-<plugin>/";
|
|
85
|
+
readonly summary: "Compile emits an OpenCode plugin using @opencode-ai/plugin APIs.";
|
|
86
|
+
};
|
|
87
|
+
readonly rules: {
|
|
88
|
+
readonly kind: "direct-file";
|
|
89
|
+
readonly path: "<opencode-root>/AGENTS.md";
|
|
90
|
+
readonly summary: "Install appends managed sections to the native instructions file.";
|
|
91
|
+
};
|
|
92
|
+
readonly commands: {
|
|
93
|
+
readonly kind: "direct-file";
|
|
94
|
+
readonly path: "<opencode-root>/commands/";
|
|
95
|
+
readonly summary: "Install writes markdown command files.";
|
|
96
|
+
};
|
|
97
|
+
readonly agents: {
|
|
98
|
+
readonly kind: "markdown-file";
|
|
99
|
+
readonly path: "<opencode-root>/agents/";
|
|
100
|
+
readonly summary: "Compile writes OpenCode agent markdown files.";
|
|
101
|
+
};
|
|
102
|
+
readonly skills: {
|
|
103
|
+
readonly kind: "markdown-file";
|
|
104
|
+
readonly path: "<opencode-root>/skills/";
|
|
105
|
+
readonly summary: "Install and compile write Agent Skill folders.";
|
|
106
|
+
};
|
|
107
|
+
readonly generatedTools: {
|
|
108
|
+
readonly kind: "native-plugin-api";
|
|
109
|
+
readonly path: "<generated-plugin>/dist/server.mjs";
|
|
110
|
+
readonly summary: "Canonical tools lower to OpenCode plugin tools.";
|
|
111
|
+
};
|
|
112
|
+
readonly hooks: {
|
|
113
|
+
readonly kind: "native-plugin-api";
|
|
114
|
+
readonly path: "<generated-plugin>/dist/server.mjs";
|
|
115
|
+
readonly summary: "Hooks lower through the OpenCode plugin API.";
|
|
116
|
+
};
|
|
117
|
+
readonly mcpConfig: LowererSurfaceCapability;
|
|
118
|
+
readonly agentConfig: {
|
|
119
|
+
readonly kind: "config-patch";
|
|
120
|
+
readonly path: "<opencode-root>/opencode.json#agent.<name>";
|
|
121
|
+
readonly summary: "Compile patches compiler-owned agent keys and plugin entries.";
|
|
122
|
+
};
|
|
123
|
+
};
|
|
124
|
+
};
|
|
125
|
+
readonly openclaw: {
|
|
126
|
+
readonly harness: "openclaw";
|
|
127
|
+
readonly family: "claw-harness";
|
|
128
|
+
readonly compile: CompileTargetCapabilities;
|
|
129
|
+
readonly surfaces: {
|
|
130
|
+
readonly pluginBundle: LowererSurfaceCapability;
|
|
131
|
+
readonly rules: LowererSurfaceCapability;
|
|
132
|
+
readonly commands: LowererSurfaceCapability;
|
|
133
|
+
readonly agents: LowererSurfaceCapability;
|
|
134
|
+
readonly skills: {
|
|
135
|
+
readonly kind: "direct-file";
|
|
136
|
+
readonly path: "<openclaw-root>/skills/";
|
|
137
|
+
readonly summary: "Install writes Agent Skill folders only.";
|
|
138
|
+
};
|
|
139
|
+
readonly generatedTools: LowererSurfaceCapability;
|
|
140
|
+
readonly hooks: LowererSurfaceCapability;
|
|
141
|
+
readonly mcpConfig: LowererSurfaceCapability;
|
|
142
|
+
readonly agentConfig: LowererSurfaceCapability;
|
|
143
|
+
};
|
|
144
|
+
readonly notes: readonly ["OpenClaw remains Prism skills-only for now."];
|
|
145
|
+
};
|
|
146
|
+
readonly hermes: {
|
|
147
|
+
readonly harness: "hermes";
|
|
148
|
+
readonly family: "claw-harness";
|
|
149
|
+
readonly compile: CompileTargetCapabilities;
|
|
150
|
+
readonly surfaces: {
|
|
151
|
+
readonly pluginBundle: LowererSurfaceCapability;
|
|
152
|
+
readonly rules: LowererSurfaceCapability;
|
|
153
|
+
readonly commands: LowererSurfaceCapability;
|
|
154
|
+
readonly agents: LowererSurfaceCapability;
|
|
155
|
+
readonly skills: {
|
|
156
|
+
readonly kind: "markdown-file";
|
|
157
|
+
readonly path: "<hermes-root>/skills/";
|
|
158
|
+
readonly summary: "Install and compile write Hermes skill folders.";
|
|
159
|
+
};
|
|
160
|
+
readonly generatedTools: {
|
|
161
|
+
readonly kind: "generated-mcp";
|
|
162
|
+
readonly path: "<prism-home>/runtime/mcp/<plugin>/server.mjs";
|
|
163
|
+
readonly summary: "Canonical tools lower to the canonical PRISM_HOME union MCP server referenced from config.yaml.";
|
|
164
|
+
};
|
|
165
|
+
readonly hooks: LowererSurfaceCapability;
|
|
166
|
+
readonly mcpConfig: {
|
|
167
|
+
readonly kind: "config-patch";
|
|
168
|
+
readonly path: "<hermes-root>/config.yaml#mcp_servers";
|
|
169
|
+
readonly summary: "Compile patches the Hermes MCP server map.";
|
|
170
|
+
};
|
|
171
|
+
readonly agentConfig: LowererSurfaceCapability;
|
|
172
|
+
};
|
|
173
|
+
};
|
|
174
|
+
readonly "codex-cli": {
|
|
175
|
+
readonly harness: "codex-cli";
|
|
176
|
+
readonly family: "coding-harness";
|
|
177
|
+
readonly compile: CompileTargetCapabilities;
|
|
178
|
+
readonly surfaces: {
|
|
179
|
+
readonly pluginBundle: LowererSurfaceCapability;
|
|
180
|
+
readonly rules: {
|
|
181
|
+
readonly kind: "direct-file";
|
|
182
|
+
readonly path: "<codex-root>/AGENTS.md";
|
|
183
|
+
readonly summary: "Install appends managed sections to the native instructions file.";
|
|
184
|
+
};
|
|
185
|
+
readonly commands: {
|
|
186
|
+
readonly kind: "direct-file";
|
|
187
|
+
readonly path: "<codex-root>/prompts/";
|
|
188
|
+
readonly summary: "Install writes prompt markdown files.";
|
|
189
|
+
};
|
|
190
|
+
readonly agents: {
|
|
191
|
+
readonly kind: "direct-file";
|
|
192
|
+
readonly path: "<codex-root>/agents/<name>.toml";
|
|
193
|
+
readonly summary: "Compile writes Codex agent TOML files.";
|
|
194
|
+
};
|
|
195
|
+
readonly skills: {
|
|
196
|
+
readonly kind: "markdown-file";
|
|
197
|
+
readonly path: "<codex-root>/skills/";
|
|
198
|
+
readonly summary: "Install and compile write Agent Skill folders.";
|
|
199
|
+
};
|
|
200
|
+
readonly generatedTools: {
|
|
201
|
+
readonly kind: "generated-mcp";
|
|
202
|
+
readonly path: "<prism-home>/runtime/mcp/<plugin>/server.mjs";
|
|
203
|
+
readonly summary: "Canonical tools lower to the canonical PRISM_HOME union MCP server referenced from config.toml.";
|
|
204
|
+
};
|
|
205
|
+
readonly hooks: {
|
|
206
|
+
readonly kind: "config-patch";
|
|
207
|
+
readonly path: "<codex-root>/config.toml#hooks";
|
|
208
|
+
readonly summary: "Compile patches managed Codex hook entries and wrapper files.";
|
|
209
|
+
};
|
|
210
|
+
readonly mcpConfig: {
|
|
211
|
+
readonly kind: "config-patch";
|
|
212
|
+
readonly path: "<codex-root>/config.toml#mcp_servers";
|
|
213
|
+
readonly summary: "Compile patches generated MCP server tables.";
|
|
214
|
+
};
|
|
215
|
+
readonly agentConfig: {
|
|
216
|
+
readonly kind: "direct-file";
|
|
217
|
+
readonly path: "<codex-root>/agents/<name>.toml";
|
|
218
|
+
readonly summary: "Codex agent settings live in generated TOML files.";
|
|
219
|
+
};
|
|
220
|
+
};
|
|
221
|
+
};
|
|
222
|
+
readonly "antigravity-cli": {
|
|
223
|
+
readonly harness: "antigravity-cli";
|
|
224
|
+
readonly family: "coding-harness";
|
|
225
|
+
readonly compile: CompileTargetCapabilities;
|
|
226
|
+
readonly surfaces: {
|
|
227
|
+
readonly pluginBundle: {
|
|
228
|
+
readonly kind: "native-plugin-bundle";
|
|
229
|
+
readonly path: "<antigravity-root>/plugins/prism-generated-<plugin>/";
|
|
230
|
+
readonly summary: "Compile emits Antigravity plugin bundles with plugin.json.";
|
|
231
|
+
};
|
|
232
|
+
readonly rules: {
|
|
233
|
+
readonly kind: "native-plugin-bundle";
|
|
234
|
+
readonly path: "<generated-plugin>/rules/";
|
|
235
|
+
readonly summary: "Rules are bundled into Antigravity plugins.";
|
|
236
|
+
};
|
|
237
|
+
readonly commands: LowererSurfaceCapability;
|
|
238
|
+
readonly agents: {
|
|
239
|
+
readonly kind: "native-plugin-bundle";
|
|
240
|
+
readonly path: "<generated-plugin>/agents/";
|
|
241
|
+
readonly summary: "Compile writes subagent markdown inside the Antigravity plugin bundle.";
|
|
242
|
+
};
|
|
243
|
+
readonly skills: {
|
|
244
|
+
readonly kind: "native-plugin-bundle";
|
|
245
|
+
readonly path: "<generated-plugin>/skills/";
|
|
246
|
+
readonly summary: "Compile bundles targeted skills and orbit skills.";
|
|
247
|
+
};
|
|
248
|
+
readonly generatedTools: {
|
|
249
|
+
readonly kind: "generated-mcp";
|
|
250
|
+
readonly path: "<prism-home>/runtime/mcp/<plugin>/server.mjs";
|
|
251
|
+
readonly summary: "Canonical tools lower to the canonical PRISM_HOME union MCP server referenced by plugin config.";
|
|
252
|
+
};
|
|
253
|
+
readonly hooks: {
|
|
254
|
+
readonly kind: "native-plugin-bundle";
|
|
255
|
+
readonly path: "<generated-plugin>/hooks.json";
|
|
256
|
+
readonly summary: "Hooks are bundled in Antigravity plugin format.";
|
|
257
|
+
};
|
|
258
|
+
readonly mcpConfig: {
|
|
259
|
+
readonly kind: "native-plugin-bundle";
|
|
260
|
+
readonly path: "<generated-plugin>/mcp_config.json";
|
|
261
|
+
readonly summary: "MCP config is plugin-local for generated plugin bundles.";
|
|
262
|
+
};
|
|
263
|
+
readonly agentConfig: {
|
|
264
|
+
readonly kind: "native-plugin-bundle";
|
|
265
|
+
readonly path: "<generated-plugin>/agents/";
|
|
266
|
+
readonly summary: "Agent settings live in generated frontmatter.";
|
|
267
|
+
};
|
|
268
|
+
};
|
|
269
|
+
};
|
|
270
|
+
readonly "kimi-code": {
|
|
271
|
+
readonly harness: "kimi-code";
|
|
272
|
+
readonly family: "coding-harness";
|
|
273
|
+
readonly compile: CompileTargetCapabilities;
|
|
274
|
+
readonly surfaces: {
|
|
275
|
+
readonly pluginBundle: {
|
|
276
|
+
readonly kind: "native-plugin-bundle";
|
|
277
|
+
readonly path: "<kimi-root>/plugins/managed/prism-generated-<plugin>/";
|
|
278
|
+
readonly summary: "Compile emits a Kimi plugin bundle with kimi.plugin.json and registers it in plugins/installed.json.";
|
|
279
|
+
};
|
|
280
|
+
readonly rules: {
|
|
281
|
+
readonly kind: "native-plugin-bundle";
|
|
282
|
+
readonly path: "<generated-plugin>/skills/prism-context/SKILL.md";
|
|
283
|
+
readonly summary: "Rules lower into a sessionStart skill because Kimi plugins inject Markdown skills, not arbitrary rule files.";
|
|
284
|
+
};
|
|
285
|
+
readonly commands: {
|
|
286
|
+
readonly kind: "native-plugin-bundle";
|
|
287
|
+
readonly path: "<generated-plugin>/skills/prism-command-<name>/SKILL.md";
|
|
288
|
+
readonly summary: "Command-like workflows lower as manual Kimi flow skills.";
|
|
289
|
+
};
|
|
290
|
+
readonly agents: {
|
|
291
|
+
readonly kind: "native-plugin-bundle";
|
|
292
|
+
readonly path: "<generated-plugin>/skills/prism-agent-<name>/SKILL.md";
|
|
293
|
+
readonly summary: "Compiled agents lower honestly as role/workflow skills; Kimi subagents are runtime dispatches, not custom agent files.";
|
|
294
|
+
};
|
|
295
|
+
readonly skills: {
|
|
296
|
+
readonly kind: "native-plugin-bundle";
|
|
297
|
+
readonly path: "<generated-plugin>/skills/";
|
|
298
|
+
readonly summary: "Compile bundles targeted plugin skills and orbit skills into the generated Kimi plugin.";
|
|
299
|
+
};
|
|
300
|
+
readonly generatedTools: {
|
|
301
|
+
readonly kind: "generated-mcp";
|
|
302
|
+
readonly path: "<prism-home>/runtime/mcp/<plugin>/server.mjs";
|
|
303
|
+
readonly summary: "Canonical tools lower to the canonical PRISM_HOME union MCP server declared by the Kimi plugin manifest.";
|
|
304
|
+
};
|
|
305
|
+
readonly hooks: {
|
|
306
|
+
readonly kind: "config-patch";
|
|
307
|
+
readonly path: "<kimi-root>/config.toml#hooks";
|
|
308
|
+
readonly summary: "Hooks lower to managed [[hooks]] config entries plus generated wrapper scripts.";
|
|
309
|
+
};
|
|
310
|
+
readonly mcpConfig: {
|
|
311
|
+
readonly kind: "native-plugin-bundle";
|
|
312
|
+
readonly path: "<generated-plugin>/kimi.plugin.json#mcpServers + <kimi-root>/plugins/installed.json";
|
|
313
|
+
readonly summary: "MCP config is plugin-local and enabled through Kimi's installed plugin record; Prism patches config.toml only for hooks.";
|
|
314
|
+
};
|
|
315
|
+
readonly agentConfig: {
|
|
316
|
+
readonly kind: "native-plugin-bundle";
|
|
317
|
+
readonly path: "<generated-plugin>/skills/prism-agent-<name>/SKILL.md";
|
|
318
|
+
readonly summary: "Agent role settings and instructions live in generated Kimi role skills.";
|
|
319
|
+
};
|
|
320
|
+
};
|
|
321
|
+
readonly notes: readonly ["The active Kimi Code target uses ~/.kimi-code exclusively.", "Kimi Code plugins are user-scoped in official docs; Prism keeps project scope unsupported for this lowerer.", "Current Moonshot-hosted Kimi Code CLI docs also document project-local .kimi-code/skills and .kimi-code/mcp.json, but Prism does not mix those direct project surfaces with generated user-scoped plugin bundles yet.", "Kimi Code subagents are runtime dispatches, so Prism compiled agents lower as role skills rather than native subagent definitions."];
|
|
322
|
+
};
|
|
323
|
+
readonly "amp-code": {
|
|
324
|
+
readonly harness: "amp-code";
|
|
325
|
+
readonly family: "coding-harness";
|
|
326
|
+
readonly compile: CompileTargetCapabilities;
|
|
327
|
+
readonly surfaces: {
|
|
328
|
+
readonly pluginBundle: {
|
|
329
|
+
readonly kind: "native-plugin-api";
|
|
330
|
+
readonly path: "<amp-root>/plugins/prism-generated-<plugin>.ts";
|
|
331
|
+
readonly summary: "Compile emits a TypeScript Amp plugin using @ampcode/plugin APIs.";
|
|
332
|
+
};
|
|
333
|
+
readonly rules: {
|
|
334
|
+
readonly kind: "direct-file";
|
|
335
|
+
readonly path: "<amp-root>/AGENTS.md";
|
|
336
|
+
readonly summary: "Install appends managed sections to the native instructions file.";
|
|
337
|
+
};
|
|
338
|
+
readonly commands: {
|
|
339
|
+
readonly kind: "native-plugin-api";
|
|
340
|
+
readonly path: "<generated-plugin>.ts";
|
|
341
|
+
readonly summary: "Commands lower to Amp registerCommand definitions that append Prism command prompts to the active thread.";
|
|
342
|
+
};
|
|
343
|
+
readonly agents: {
|
|
344
|
+
readonly kind: "markdown-file";
|
|
345
|
+
readonly path: "<amp-root>/skills/prism-agent-<name>/SKILL.md";
|
|
346
|
+
readonly summary: "Compiled agents lower as generated role skills; Prism does not claim a native Amp custom-agent surface yet.";
|
|
347
|
+
};
|
|
348
|
+
readonly skills: {
|
|
349
|
+
readonly kind: "markdown-file";
|
|
350
|
+
readonly path: "<amp-root>/skills/";
|
|
351
|
+
readonly summary: "Install and compile write Agent Skill folders.";
|
|
352
|
+
};
|
|
353
|
+
readonly generatedTools: {
|
|
354
|
+
readonly kind: "native-plugin-api";
|
|
355
|
+
readonly path: "<generated-plugin>.ts";
|
|
356
|
+
readonly summary: "Canonical tools lower to Amp registerTool definitions.";
|
|
357
|
+
};
|
|
358
|
+
readonly hooks: {
|
|
359
|
+
readonly kind: "native-plugin-api";
|
|
360
|
+
readonly path: "<generated-plugin>.ts";
|
|
361
|
+
readonly summary: "Supported Prism hooks lower to Amp amp.on(...) plugin event handlers; session.end fails closed because Amp has no native session-end event.";
|
|
362
|
+
};
|
|
363
|
+
readonly mcpConfig: LowererSurfaceCapability;
|
|
364
|
+
readonly agentConfig: LowererSurfaceCapability;
|
|
365
|
+
};
|
|
366
|
+
readonly notes: readonly ["Amp generated commands, tools, and supported hooks use the native plugin API; compiled agents currently lower as role-skill guidance.", "Amp exposes session.start, tool.call, tool.result, agent.start, and agent.end plugin events; Prism does not map portable session.end to agent.end."];
|
|
367
|
+
};
|
|
368
|
+
readonly cursor: {
|
|
369
|
+
readonly harness: "cursor";
|
|
370
|
+
readonly family: "coding-harness";
|
|
371
|
+
readonly compile: CompileTargetCapabilities;
|
|
372
|
+
readonly surfaces: {
|
|
373
|
+
readonly pluginBundle: {
|
|
374
|
+
readonly kind: "native-plugin-bundle";
|
|
375
|
+
readonly path: "<cursor-root>/plugins/local/prism-generated-<plugin>/";
|
|
376
|
+
readonly summary: "Install emits local Cursor plugin bundles for Prism-managed command components.";
|
|
377
|
+
};
|
|
378
|
+
readonly rules: {
|
|
379
|
+
readonly kind: "direct-file";
|
|
380
|
+
readonly path: "<cursor-root>/.cursorrules or rules/";
|
|
381
|
+
readonly summary: "Install writes Cursor rules files.";
|
|
382
|
+
};
|
|
383
|
+
readonly commands: {
|
|
384
|
+
readonly kind: "native-plugin-bundle";
|
|
385
|
+
readonly path: "<generated-plugin>/commands/";
|
|
386
|
+
readonly summary: "Install writes Cursor commands inside the generated local plugin bundle.";
|
|
387
|
+
};
|
|
388
|
+
readonly agents: LowererSurfaceCapability;
|
|
389
|
+
readonly skills: {
|
|
390
|
+
readonly kind: "direct-file";
|
|
391
|
+
readonly path: "<cursor-root>/skills/";
|
|
392
|
+
readonly summary: "Install writes Agent Skill folders.";
|
|
393
|
+
};
|
|
394
|
+
readonly generatedTools: {
|
|
395
|
+
readonly kind: "generated-mcp";
|
|
396
|
+
readonly path: "<prism-home>/runtime/mcp/<plugin>/server.mjs";
|
|
397
|
+
readonly summary: "Canonical tools lower to the canonical PRISM_HOME union MCP server referenced by Cursor mcp.json.";
|
|
398
|
+
};
|
|
399
|
+
readonly hooks: LowererSurfaceCapability;
|
|
400
|
+
readonly mcpConfig: {
|
|
401
|
+
readonly kind: "config-patch";
|
|
402
|
+
readonly path: "<cursor-root>/mcp.json#mcpServers";
|
|
403
|
+
readonly summary: "Compile patches a compiler-owned Cursor MCP server entry.";
|
|
404
|
+
};
|
|
405
|
+
readonly agentConfig: LowererSurfaceCapability;
|
|
406
|
+
};
|
|
407
|
+
readonly notes: readonly ["Cursor compile support is tools-only for now; compiled agents, orbits, hooks, and skill permission visibility remain unsupported.", "Cursor command artifacts install through a local plugin bundle under ~/.cursor/plugins/local so Prism uses Cursor's native command discovery instead of direct command files.", "Cursor Agent Skills are docs-backed under .cursor/skills and ~/.cursor/skills, so Prism keeps install-phase skills direct.", "Cursor IDE and CLI share the same mcp.json contract."];
|
|
408
|
+
};
|
|
409
|
+
readonly "factory-droid": {
|
|
410
|
+
readonly harness: "factory-droid";
|
|
411
|
+
readonly family: "coding-harness";
|
|
412
|
+
readonly compile: CompileTargetCapabilities;
|
|
413
|
+
readonly surfaces: {
|
|
414
|
+
readonly pluginBundle: {
|
|
415
|
+
readonly kind: "native-plugin-bundle";
|
|
416
|
+
readonly path: "<factory-root>/plugins/prism-generated-<plugin>/";
|
|
417
|
+
readonly summary: "Compile emits Factory plugin bundles with .factory-plugin/plugin.json.";
|
|
418
|
+
};
|
|
419
|
+
readonly rules: {
|
|
420
|
+
readonly kind: "direct-file";
|
|
421
|
+
readonly path: "<factory-root>/AGENTS.md or rules/";
|
|
422
|
+
readonly summary: "Install writes Factory instruction/rule files.";
|
|
423
|
+
};
|
|
424
|
+
readonly commands: {
|
|
425
|
+
readonly kind: "direct-file";
|
|
426
|
+
readonly path: "<factory-root>/commands/";
|
|
427
|
+
readonly summary: "Install writes Factory command markdown files.";
|
|
428
|
+
};
|
|
429
|
+
readonly agents: {
|
|
430
|
+
readonly kind: "native-plugin-bundle";
|
|
431
|
+
readonly path: "<generated-plugin>/droids/";
|
|
432
|
+
readonly summary: "Compile writes generated droids inside the Factory plugin bundle.";
|
|
433
|
+
};
|
|
434
|
+
readonly skills: {
|
|
435
|
+
readonly kind: "native-plugin-bundle";
|
|
436
|
+
readonly path: "<generated-plugin>/skills/";
|
|
437
|
+
readonly summary: "Compiled bundles own targeted skills; skills-only plugins still install direct skills.";
|
|
438
|
+
};
|
|
439
|
+
readonly generatedTools: {
|
|
440
|
+
readonly kind: "generated-mcp";
|
|
441
|
+
readonly path: "<prism-home>/runtime/mcp/<plugin>/server.mjs";
|
|
442
|
+
readonly summary: "Canonical tools lower to the canonical PRISM_HOME union MCP server referenced by the plugin mcp.json.";
|
|
443
|
+
};
|
|
444
|
+
readonly hooks: {
|
|
445
|
+
readonly kind: "native-plugin-bundle";
|
|
446
|
+
readonly path: "<generated-plugin>/hooks/hooks.json";
|
|
447
|
+
readonly summary: "Hooks are bundled in Factory plugin format.";
|
|
448
|
+
};
|
|
449
|
+
readonly mcpConfig: {
|
|
450
|
+
readonly kind: "native-plugin-bundle";
|
|
451
|
+
readonly path: "<generated-plugin>/mcp.json";
|
|
452
|
+
readonly summary: "MCP config is plugin-local; Prism does not patch settings.json.";
|
|
453
|
+
};
|
|
454
|
+
readonly agentConfig: {
|
|
455
|
+
readonly kind: "native-plugin-bundle";
|
|
456
|
+
readonly path: "<generated-plugin>/droids/";
|
|
457
|
+
readonly summary: "Droid settings live in generated frontmatter.";
|
|
458
|
+
};
|
|
459
|
+
};
|
|
460
|
+
};
|
|
461
|
+
readonly pi: {
|
|
462
|
+
readonly harness: "pi";
|
|
463
|
+
readonly family: "coding-harness";
|
|
464
|
+
readonly compile: CompileTargetCapabilities;
|
|
465
|
+
readonly surfaces: {
|
|
466
|
+
readonly pluginBundle: {
|
|
467
|
+
readonly kind: "native-plugin-bundle";
|
|
468
|
+
readonly path: "<pi-root>/packages/prism-generated-<plugin>/";
|
|
469
|
+
readonly summary: "Compile emits a local Pi package and registers it through settings.json packages.";
|
|
470
|
+
};
|
|
471
|
+
readonly rules: {
|
|
472
|
+
readonly kind: "native-plugin-api";
|
|
473
|
+
readonly path: "<generated-package>/extensions/prism-extension.js";
|
|
474
|
+
readonly summary: "Rules lower as Pi before_agent_start context injection in the generated extension.";
|
|
475
|
+
};
|
|
476
|
+
readonly commands: {
|
|
477
|
+
readonly kind: "native-plugin-bundle";
|
|
478
|
+
readonly path: "<generated-package>/prompts/";
|
|
479
|
+
readonly summary: "Compile writes Prism command markdown as Pi prompt templates in the generated package.";
|
|
480
|
+
};
|
|
481
|
+
readonly agents: {
|
|
482
|
+
readonly kind: "markdown-file";
|
|
483
|
+
readonly path: "~/.pi/agents/<name>.md or .pi/agents/<name>.md";
|
|
484
|
+
readonly summary: "Compiled agents lower to the markdown files discovered by the pi-agents package.";
|
|
485
|
+
};
|
|
486
|
+
readonly skills: {
|
|
487
|
+
readonly kind: "native-plugin-bundle";
|
|
488
|
+
readonly path: "<generated-package>/skills/";
|
|
489
|
+
readonly summary: "Compile bundles targeted skills and concrete orbit skills into the generated Pi package.";
|
|
490
|
+
};
|
|
491
|
+
readonly generatedTools: {
|
|
492
|
+
readonly kind: "native-plugin-api";
|
|
493
|
+
readonly path: "<generated-package>/extensions/prism-extension.js";
|
|
494
|
+
readonly summary: "Canonical tools lower through Pi's extension registerTool API.";
|
|
495
|
+
};
|
|
496
|
+
readonly hooks: {
|
|
497
|
+
readonly kind: "native-plugin-api";
|
|
498
|
+
readonly path: "<generated-package>/extensions/prism-extension.js and <generated-package>/hooks/";
|
|
499
|
+
readonly summary: "Hooks lower through Pi extension events and generated wrapper files.";
|
|
500
|
+
};
|
|
501
|
+
readonly mcpConfig: LowererSurfaceCapability;
|
|
502
|
+
readonly agentConfig: {
|
|
503
|
+
readonly kind: "markdown-file";
|
|
504
|
+
readonly path: "~/.pi/agents/<name>.md or .pi/agents/<name>.md";
|
|
505
|
+
readonly summary: "Pi agent settings live in generated agent frontmatter.";
|
|
506
|
+
};
|
|
507
|
+
};
|
|
508
|
+
readonly notes: readonly ["Pi packages are referenced from settings.json#packages; project scope uses .pi/settings.json.", "Compiled Pi agents use pi-agents markdown discovery: ~/.pi/agents globally and nearest .pi/agents in project scope."];
|
|
509
|
+
};
|
|
510
|
+
readonly grok: {
|
|
511
|
+
readonly harness: "grok";
|
|
512
|
+
readonly family: "coding-harness";
|
|
513
|
+
readonly compile: CompileTargetCapabilities;
|
|
514
|
+
readonly surfaces: {
|
|
515
|
+
readonly pluginBundle: {
|
|
516
|
+
readonly kind: "native-plugin-bundle";
|
|
517
|
+
readonly path: "<grok-root>/plugins/prism-generated-<plugin>/";
|
|
518
|
+
readonly summary: "Compile emits Grok plugin bundles.";
|
|
519
|
+
};
|
|
520
|
+
readonly rules: {
|
|
521
|
+
readonly kind: "direct-file";
|
|
522
|
+
readonly path: "<grok-root>/AGENTS.md";
|
|
523
|
+
readonly summary: "Install appends managed sections to the native instructions file.";
|
|
524
|
+
};
|
|
525
|
+
readonly commands: LowererSurfaceCapability;
|
|
526
|
+
readonly agents: {
|
|
527
|
+
readonly kind: "native-plugin-bundle";
|
|
528
|
+
readonly path: "<generated-plugin>/agents/";
|
|
529
|
+
readonly summary: "Compile writes generated agents inside the Grok plugin bundle.";
|
|
530
|
+
};
|
|
531
|
+
readonly skills: {
|
|
532
|
+
readonly kind: "native-plugin-bundle";
|
|
533
|
+
readonly path: "<generated-plugin>/skills/";
|
|
534
|
+
readonly summary: "Compile bundles targeted skills and orbit skills.";
|
|
535
|
+
};
|
|
536
|
+
readonly generatedTools: {
|
|
537
|
+
readonly kind: "generated-mcp";
|
|
538
|
+
readonly path: "<generated-plugin>/.mcp.json";
|
|
539
|
+
readonly summary: "Canonical tools lower through the shared Streamable HTTP MCP daemon.";
|
|
540
|
+
};
|
|
541
|
+
readonly hooks: {
|
|
542
|
+
readonly kind: "native-plugin-bundle";
|
|
543
|
+
readonly path: "<generated-plugin>/hooks/hooks.json";
|
|
544
|
+
readonly summary: "Hooks are bundled in Grok plugin format.";
|
|
545
|
+
};
|
|
546
|
+
readonly mcpConfig: {
|
|
547
|
+
readonly kind: "native-plugin-bundle";
|
|
548
|
+
readonly path: "<generated-plugin>/.mcp.json";
|
|
549
|
+
readonly summary: "Generated plugin-local MCP config points at Prism's Streamable HTTP daemon.";
|
|
550
|
+
};
|
|
551
|
+
readonly agentConfig: {
|
|
552
|
+
readonly kind: "native-plugin-bundle";
|
|
553
|
+
readonly path: "<generated-plugin>/agents/";
|
|
554
|
+
readonly summary: "Agent settings live in generated frontmatter.";
|
|
555
|
+
};
|
|
556
|
+
};
|
|
557
|
+
};
|
|
558
|
+
};
|
|
559
|
+
export declare const getCompileTargetCapabilities: (harness: string) => CompileTargetCapabilities;
|
|
@@ -0,0 +1,106 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Plugin manifest parsing and validation
|
|
3
|
+
*/
|
|
4
|
+
import type { HarnessId, AgentValidationResult, PluginArtifactType, PluginManifest, PluginTargetId, SkillFrontmatter, SkillValidationResult, UnifiedFrontmatter } from "./types.js";
|
|
5
|
+
export interface ArtifactSourceFile {
|
|
6
|
+
relativePath: string;
|
|
7
|
+
sourcePath: string;
|
|
8
|
+
scope: "shared" | "harness";
|
|
9
|
+
}
|
|
10
|
+
export declare function collectArtifactSourceFiles(pluginPath: string, artifact: PluginArtifactType, harnessId?: HarnessId): Promise<ArtifactSourceFile[]>;
|
|
11
|
+
/**
|
|
12
|
+
* Read and validate plugin manifest
|
|
13
|
+
*/
|
|
14
|
+
export declare function readManifest(pluginPath: string): Promise<PluginManifest>;
|
|
15
|
+
export declare function resolveManifestTargets(targets: readonly PluginTargetId[]): HarnessId[];
|
|
16
|
+
export declare function resolveManifestTargetsForArtifact(targets: readonly PluginTargetId[], artifact: PluginArtifactType): HarnessId[];
|
|
17
|
+
export declare function getManifestArtifactTargets(manifest: PluginManifest, artifact: PluginArtifactType): HarnessId[];
|
|
18
|
+
/**
|
|
19
|
+
* Check if manifest targets a specific harness for any artifact
|
|
20
|
+
*/
|
|
21
|
+
export declare function manifestTargetsHarness(manifest: PluginManifest, harnessId: HarnessId): boolean;
|
|
22
|
+
/**
|
|
23
|
+
* Check if manifest targets a specific harness for one artifact type
|
|
24
|
+
*/
|
|
25
|
+
export declare function manifestTargetsArtifact(manifest: PluginManifest, artifact: PluginArtifactType, harnessId: HarnessId): boolean;
|
|
26
|
+
export declare function manifestHasCompileTargets(manifest: PluginManifest, harnessId?: HarnessId): boolean;
|
|
27
|
+
export declare function formatManifestTargets(manifest: PluginManifest): string;
|
|
28
|
+
/**
|
|
29
|
+
* Parse markdown file with frontmatter
|
|
30
|
+
*/
|
|
31
|
+
export declare function parseMarkdownFile(filePath: string): Promise<{
|
|
32
|
+
frontmatter: UnifiedFrontmatter;
|
|
33
|
+
content: string;
|
|
34
|
+
}>;
|
|
35
|
+
/**
|
|
36
|
+
* Extract harness-specific frontmatter, merging with base frontmatter
|
|
37
|
+
*/
|
|
38
|
+
export declare function getHarnessFrontmatter(frontmatter: UnifiedFrontmatter, harnessId: HarnessId): Record<string, unknown>;
|
|
39
|
+
/**
|
|
40
|
+
* Serialize frontmatter back to YAML format
|
|
41
|
+
*/
|
|
42
|
+
export declare function serializeFrontmatter(frontmatter: Record<string, unknown>): string;
|
|
43
|
+
/**
|
|
44
|
+
* Reconstruct markdown file with new frontmatter
|
|
45
|
+
*/
|
|
46
|
+
export declare function reconstructMarkdown(frontmatter: Record<string, unknown>, content: string): string;
|
|
47
|
+
/**
|
|
48
|
+
* Validate a skill name according to Anthropic's spec
|
|
49
|
+
*/
|
|
50
|
+
export declare function validateSkillName(name: unknown): {
|
|
51
|
+
valid: boolean;
|
|
52
|
+
error?: string;
|
|
53
|
+
};
|
|
54
|
+
/**
|
|
55
|
+
* Validate a skill description according to Anthropic's spec
|
|
56
|
+
*/
|
|
57
|
+
export declare function validateSkillDescription(description: unknown): {
|
|
58
|
+
valid: boolean;
|
|
59
|
+
error?: string;
|
|
60
|
+
};
|
|
61
|
+
/**
|
|
62
|
+
* Validate skill frontmatter keys (whitelist check)
|
|
63
|
+
*/
|
|
64
|
+
export declare function validateSkillFrontmatterKeys(frontmatter: Record<string, unknown>): {
|
|
65
|
+
valid: boolean;
|
|
66
|
+
error?: string;
|
|
67
|
+
};
|
|
68
|
+
/**
|
|
69
|
+
* Validate optional skill fields (allowed-tools, metadata, license, compatibility)
|
|
70
|
+
*/
|
|
71
|
+
export declare function validateSkillOptionalFields(frontmatter: Record<string, unknown>): {
|
|
72
|
+
valid: boolean;
|
|
73
|
+
errors: string[];
|
|
74
|
+
warnings: string[];
|
|
75
|
+
};
|
|
76
|
+
/**
|
|
77
|
+
* Parse and validate a SKILL.md file
|
|
78
|
+
*/
|
|
79
|
+
export declare function parseSkillFile(filePath: string): Promise<{
|
|
80
|
+
frontmatter: SkillFrontmatter;
|
|
81
|
+
content: string;
|
|
82
|
+
lineCount: number;
|
|
83
|
+
}>;
|
|
84
|
+
/**
|
|
85
|
+
* Comprehensive skill validation
|
|
86
|
+
*/
|
|
87
|
+
export declare function validateSkill(skillPath: string, skillDirName?: string): Promise<SkillValidationResult>;
|
|
88
|
+
/**
|
|
89
|
+
* Validate all skills in a plugin
|
|
90
|
+
*/
|
|
91
|
+
export declare function validatePluginSkills(pluginPath: string): Promise<SkillValidationResult[]>;
|
|
92
|
+
/**
|
|
93
|
+
* Validate an agent description
|
|
94
|
+
*/
|
|
95
|
+
export declare function validateAgentDescription(description: unknown): {
|
|
96
|
+
valid: boolean;
|
|
97
|
+
error?: string;
|
|
98
|
+
};
|
|
99
|
+
/**
|
|
100
|
+
* Validate an agent definition file
|
|
101
|
+
*/
|
|
102
|
+
export declare function validateAgent(agentPath: string): Promise<AgentValidationResult>;
|
|
103
|
+
/**
|
|
104
|
+
* Validate all agents in a plugin
|
|
105
|
+
*/
|
|
106
|
+
export declare function validatePluginAgents(pluginPath: string): Promise<AgentValidationResult[]>;
|