mthds 0.0.6 → 0.0.8

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 (239) hide show
  1. package/LICENSE +1 -1
  2. package/README.md +51 -11
  3. package/dist/agent/commands/build.d.ts +35 -0
  4. package/dist/agent/commands/build.js +334 -0
  5. package/dist/agent/commands/build.js.map +1 -0
  6. package/dist/agent/commands/config.d.ts +6 -0
  7. package/dist/agent/commands/config.js +50 -0
  8. package/dist/agent/commands/config.js.map +1 -0
  9. package/dist/agent/commands/install.d.ts +14 -0
  10. package/dist/agent/commands/install.js +178 -0
  11. package/dist/agent/commands/install.js.map +1 -0
  12. package/dist/agent/commands/pipelex.d.ts +7 -0
  13. package/dist/agent/commands/pipelex.js +56 -0
  14. package/dist/agent/commands/pipelex.js.map +1 -0
  15. package/dist/agent/commands/plxt.d.ts +7 -0
  16. package/dist/agent/commands/plxt.js +27 -0
  17. package/dist/agent/commands/plxt.js.map +1 -0
  18. package/dist/agent/commands/validate.d.ts +15 -0
  19. package/dist/agent/commands/validate.js +118 -0
  20. package/dist/agent/commands/validate.js.map +1 -0
  21. package/dist/agent/output.d.ts +25 -0
  22. package/dist/agent/output.js +51 -0
  23. package/dist/agent/output.js.map +1 -0
  24. package/dist/agent/passthrough.d.ts +5 -0
  25. package/dist/agent/passthrough.js +19 -0
  26. package/dist/agent/passthrough.js.map +1 -0
  27. package/dist/agent-cli.d.ts +8 -0
  28. package/dist/agent-cli.js +237 -0
  29. package/dist/agent-cli.js.map +1 -0
  30. package/dist/cli/commands/build.d.ts +31 -0
  31. package/dist/cli/commands/build.js +305 -0
  32. package/dist/cli/commands/build.js.map +1 -0
  33. package/dist/{commands → cli/commands}/config.js +4 -4
  34. package/dist/cli/commands/config.js.map +1 -0
  35. package/dist/{commands → cli/commands}/index.js +20 -18
  36. package/dist/cli/commands/index.js.map +1 -0
  37. package/dist/cli/commands/install.js +275 -0
  38. package/dist/cli/commands/install.js.map +1 -0
  39. package/dist/cli/commands/package/add.d.ts +6 -0
  40. package/dist/cli/commands/package/add.js +9 -0
  41. package/dist/cli/commands/package/add.js.map +1 -0
  42. package/dist/cli/commands/package/init.d.ts +3 -0
  43. package/dist/cli/commands/package/init.js +108 -0
  44. package/dist/cli/commands/package/init.js.map +1 -0
  45. package/dist/cli/commands/package/install.d.ts +3 -0
  46. package/dist/cli/commands/package/install.js +97 -0
  47. package/dist/cli/commands/package/install.js.map +1 -0
  48. package/dist/cli/commands/package/list.d.ts +3 -0
  49. package/dist/cli/commands/package/list.js +58 -0
  50. package/dist/cli/commands/package/list.js.map +1 -0
  51. package/dist/cli/commands/package/lock.d.ts +3 -0
  52. package/dist/cli/commands/package/lock.js +37 -0
  53. package/dist/cli/commands/package/lock.js.map +1 -0
  54. package/dist/cli/commands/package/update.d.ts +3 -0
  55. package/dist/cli/commands/package/update.js +35 -0
  56. package/dist/cli/commands/package/update.js.map +1 -0
  57. package/dist/cli/commands/package/validate.d.ts +3 -0
  58. package/dist/cli/commands/package/validate.js +76 -0
  59. package/dist/cli/commands/package/validate.js.map +1 -0
  60. package/dist/cli/commands/run.d.ts +12 -0
  61. package/dist/cli/commands/run.js +95 -0
  62. package/dist/cli/commands/run.js.map +1 -0
  63. package/dist/cli/commands/setup.d.ts +3 -0
  64. package/dist/cli/commands/setup.js +168 -0
  65. package/dist/cli/commands/setup.js.map +1 -0
  66. package/dist/cli/commands/utils.d.ts +9 -0
  67. package/dist/cli/commands/utils.js +34 -0
  68. package/dist/cli/commands/utils.js.map +1 -0
  69. package/dist/cli/commands/validate.d.ts +10 -0
  70. package/dist/cli/commands/validate.js +93 -0
  71. package/dist/cli/commands/validate.js.map +1 -0
  72. package/dist/cli.js +276 -99
  73. package/dist/cli.js.map +1 -1
  74. package/dist/client/client.js +2 -2
  75. package/dist/client/client.js.map +1 -1
  76. package/dist/config/config.d.ts +5 -20
  77. package/dist/config/config.js +5 -78
  78. package/dist/config/config.js.map +1 -1
  79. package/dist/config/credentials.d.ts +25 -0
  80. package/dist/config/credentials.js +230 -0
  81. package/dist/config/credentials.js.map +1 -0
  82. package/dist/installer/agents/registry.d.ts +12 -0
  83. package/dist/installer/agents/registry.js +78 -0
  84. package/dist/installer/agents/registry.js.map +1 -0
  85. package/dist/installer/agents/types.d.ts +16 -0
  86. package/dist/installer/agents/types.js +6 -0
  87. package/dist/installer/agents/types.js.map +1 -0
  88. package/dist/installer/resolver/address.d.ts +2 -0
  89. package/dist/installer/resolver/address.js.map +1 -0
  90. package/dist/{resolver → installer/resolver}/github.d.ts +1 -1
  91. package/dist/{resolver → installer/resolver}/github.js +2 -2
  92. package/dist/installer/resolver/github.js.map +1 -0
  93. package/dist/installer/resolver/index.d.ts +6 -0
  94. package/dist/{resolver → installer/resolver}/index.js +1 -1
  95. package/dist/installer/resolver/index.js.map +1 -0
  96. package/dist/{resolver → installer/resolver}/local.d.ts +1 -1
  97. package/dist/{resolver → installer/resolver}/local.js +2 -2
  98. package/dist/installer/resolver/local.js.map +1 -0
  99. package/dist/installer/runtime/check.js.map +1 -0
  100. package/dist/installer/runtime/installer.js.map +1 -0
  101. package/dist/installer/runtime/spawn.js.map +1 -0
  102. package/dist/{telemetry → installer/telemetry}/posthog.d.ts +2 -5
  103. package/dist/installer/telemetry/posthog.js +55 -0
  104. package/dist/installer/telemetry/posthog.js.map +1 -0
  105. package/dist/package/bundle-metadata.d.ts +8 -0
  106. package/dist/package/bundle-metadata.js +2 -0
  107. package/dist/package/bundle-metadata.js.map +1 -0
  108. package/dist/package/bundle-scanner.d.ts +18 -0
  109. package/dist/package/bundle-scanner.js +77 -0
  110. package/dist/package/bundle-scanner.js.map +1 -0
  111. package/dist/package/dependency-resolver.d.ts +32 -0
  112. package/dist/package/dependency-resolver.js +298 -0
  113. package/dist/package/dependency-resolver.js.map +1 -0
  114. package/dist/package/discovery.d.ts +9 -0
  115. package/dist/package/discovery.js +32 -0
  116. package/dist/package/discovery.js.map +1 -0
  117. package/dist/package/exceptions.d.ts +36 -0
  118. package/dist/package/exceptions.js +73 -0
  119. package/dist/package/exceptions.js.map +1 -0
  120. package/dist/package/lock-file.d.ts +27 -0
  121. package/dist/package/lock-file.js +137 -0
  122. package/dist/package/lock-file.js.map +1 -0
  123. package/dist/package/manifest/convert.d.ts +14 -0
  124. package/dist/package/manifest/convert.js +83 -0
  125. package/dist/package/manifest/convert.js.map +1 -0
  126. package/dist/package/manifest/parser.d.ts +9 -0
  127. package/dist/package/manifest/parser.js +261 -0
  128. package/dist/package/manifest/parser.js.map +1 -0
  129. package/dist/package/manifest/schema.d.ts +71 -0
  130. package/dist/package/manifest/schema.js +73 -0
  131. package/dist/package/manifest/schema.js.map +1 -0
  132. package/dist/{resolver → package/manifest}/types.d.ts +2 -5
  133. package/dist/{resolver → package/manifest}/types.js.map +1 -1
  134. package/dist/{resolver → package/manifest}/validate.js +25 -20
  135. package/dist/package/manifest/validate.js.map +1 -0
  136. package/dist/package/manifest/validation.d.ts +10 -0
  137. package/dist/package/manifest/validation.js +34 -0
  138. package/dist/package/manifest/validation.js.map +1 -0
  139. package/dist/package/package-cache.d.ts +24 -0
  140. package/dist/package/package-cache.js +92 -0
  141. package/dist/package/package-cache.js.map +1 -0
  142. package/dist/package/qualified-ref.d.ts +41 -0
  143. package/dist/package/qualified-ref.js +105 -0
  144. package/dist/package/qualified-ref.js.map +1 -0
  145. package/dist/package/semver.d.ts +33 -0
  146. package/dist/package/semver.js +77 -0
  147. package/dist/package/semver.js.map +1 -0
  148. package/dist/package/vcs-resolver.d.ts +19 -0
  149. package/dist/package/vcs-resolver.js +115 -0
  150. package/dist/package/vcs-resolver.js.map +1 -0
  151. package/dist/package/visibility.d.ts +25 -0
  152. package/dist/package/visibility.js +132 -0
  153. package/dist/package/visibility.js.map +1 -0
  154. package/dist/runners/api-runner.d.ts +3 -0
  155. package/dist/runners/api-runner.js +9 -1
  156. package/dist/runners/api-runner.js.map +1 -1
  157. package/dist/runners/pipelex-runner.d.ts +16 -2
  158. package/dist/runners/pipelex-runner.js +155 -41
  159. package/dist/runners/pipelex-runner.js.map +1 -1
  160. package/dist/runners/registry.d.ts +1 -1
  161. package/dist/runners/registry.js +5 -4
  162. package/dist/runners/registry.js.map +1 -1
  163. package/dist/runners/types.d.ts +17 -10
  164. package/dist/runners/types.js +6 -1
  165. package/dist/runners/types.js.map +1 -1
  166. package/package.json +7 -4
  167. package/dist/agents/claude-code.d.ts +0 -2
  168. package/dist/agents/claude-code.js +0 -36
  169. package/dist/agents/claude-code.js.map +0 -1
  170. package/dist/agents/cursor.d.ts +0 -2
  171. package/dist/agents/cursor.js +0 -11
  172. package/dist/agents/cursor.js.map +0 -1
  173. package/dist/agents/github-copilot.d.ts +0 -2
  174. package/dist/agents/github-copilot.js +0 -11
  175. package/dist/agents/github-copilot.js.map +0 -1
  176. package/dist/agents/registry.d.ts +0 -4
  177. package/dist/agents/registry.js +0 -24
  178. package/dist/agents/registry.js.map +0 -1
  179. package/dist/agents/types.d.ts +0 -25
  180. package/dist/agents/types.js +0 -11
  181. package/dist/agents/types.js.map +0 -1
  182. package/dist/agents/windsurf.d.ts +0 -2
  183. package/dist/agents/windsurf.js +0 -11
  184. package/dist/agents/windsurf.js.map +0 -1
  185. package/dist/commands/build.d.ts +0 -19
  186. package/dist/commands/build.js +0 -128
  187. package/dist/commands/build.js.map +0 -1
  188. package/dist/commands/config.js.map +0 -1
  189. package/dist/commands/index.js.map +0 -1
  190. package/dist/commands/install.js +0 -252
  191. package/dist/commands/install.js.map +0 -1
  192. package/dist/commands/run.d.ts +0 -11
  193. package/dist/commands/run.js +0 -44
  194. package/dist/commands/run.js.map +0 -1
  195. package/dist/commands/runner.d.ts +0 -2
  196. package/dist/commands/runner.js +0 -59
  197. package/dist/commands/runner.js.map +0 -1
  198. package/dist/commands/setup.d.ts +0 -1
  199. package/dist/commands/setup.js +0 -45
  200. package/dist/commands/setup.js.map +0 -1
  201. package/dist/commands/telemetry.d.ts +0 -3
  202. package/dist/commands/telemetry.js +0 -49
  203. package/dist/commands/telemetry.js.map +0 -1
  204. package/dist/commands/validate.d.ts +0 -6
  205. package/dist/commands/validate.js +0 -41
  206. package/dist/commands/validate.js.map +0 -1
  207. package/dist/resolver/address.d.ts +0 -2
  208. package/dist/resolver/address.js.map +0 -1
  209. package/dist/resolver/github.js.map +0 -1
  210. package/dist/resolver/index.d.ts +0 -6
  211. package/dist/resolver/index.js.map +0 -1
  212. package/dist/resolver/local.js.map +0 -1
  213. package/dist/resolver/validate.js.map +0 -1
  214. package/dist/runtime/check.js.map +0 -1
  215. package/dist/runtime/installer.js.map +0 -1
  216. package/dist/runtime/spawn.js.map +0 -1
  217. package/dist/supabase/client.d.ts +0 -4
  218. package/dist/supabase/client.js +0 -5
  219. package/dist/supabase/client.js.map +0 -1
  220. package/dist/supabase/methods.d.ts +0 -2
  221. package/dist/supabase/methods.js +0 -13
  222. package/dist/supabase/methods.js.map +0 -1
  223. package/dist/supabase/types.d.ts +0 -30
  224. package/dist/supabase/types.js +0 -2
  225. package/dist/supabase/types.js.map +0 -1
  226. package/dist/telemetry/posthog.js +0 -117
  227. package/dist/telemetry/posthog.js.map +0 -1
  228. /package/dist/{commands → cli/commands}/config.d.ts +0 -0
  229. /package/dist/{commands → cli/commands}/index.d.ts +0 -0
  230. /package/dist/{commands → cli/commands}/install.d.ts +0 -0
  231. /package/dist/{resolver → installer/resolver}/address.js +0 -0
  232. /package/dist/{runtime → installer/runtime}/check.d.ts +0 -0
  233. /package/dist/{runtime → installer/runtime}/check.js +0 -0
  234. /package/dist/{runtime → installer/runtime}/installer.d.ts +0 -0
  235. /package/dist/{runtime → installer/runtime}/installer.js +0 -0
  236. /package/dist/{runtime → installer/runtime}/spawn.d.ts +0 -0
  237. /package/dist/{runtime → installer/runtime}/spawn.js +0 -0
  238. /package/dist/{resolver → package/manifest}/types.js +0 -0
  239. /package/dist/{resolver → package/manifest}/validate.d.ts +0 -0
@@ -1,19 +1,74 @@
1
- import { execFile } from "node:child_process";
1
+ import { execFile, spawn } from "node:child_process";
2
2
  import { promisify } from "node:util";
3
- import { writeFileSync, readFileSync, mkdtempSync, rmSync, } from "node:fs";
3
+ import { existsSync, mkdirSync, writeFileSync, readFileSync, mkdtempSync, rmSync, } from "node:fs";
4
4
  import { join } from "node:path";
5
- import { tmpdir } from "node:os";
5
+ import { homedir, tmpdir } from "node:os";
6
+ import { Runners } from "./types.js";
6
7
  const execFileAsync = promisify(execFile);
7
- function notSupported(method) {
8
- throw new Error(`PipelexRunner.${method}() has no CLI equivalent. Use the API runner instead.`);
9
- }
10
8
  function makeTmpDir() {
11
9
  return mkdtempSync(join(tmpdir(), "mthds-"));
12
10
  }
11
+ /**
12
+ * Return the default methods directory (~/.mthds/methods).
13
+ */
14
+ function getMethodsDir() {
15
+ return join(homedir(), ".mthds", "methods");
16
+ }
17
+ /**
18
+ * Ensure the output directory exists and return the pipelex `-o` base path.
19
+ * Pipelex treats `-o <path>` as a base name and creates `<path>_NN/`,
20
+ * so we pass `<dir>/bundle` to get output inside `<dir>/`.
21
+ */
22
+ function resolveOutputBase(output) {
23
+ const dir = output ?? getMethodsDir();
24
+ if (!existsSync(dir)) {
25
+ mkdirSync(dir, { recursive: true });
26
+ }
27
+ return join(dir, "bundle");
28
+ }
13
29
  export class PipelexRunner {
14
- type = "pipelex";
30
+ type = Runners.PIPELEX;
31
+ libraryDirs;
32
+ constructor(libraryDirs) {
33
+ this.libraryDirs = libraryDirs ?? [];
34
+ }
35
+ libraryArgs() {
36
+ return this.libraryDirs.flatMap((dir) => ["-L", dir]);
37
+ }
15
38
  async exec(args) {
16
- return execFileAsync("pipelex", args, { encoding: "utf-8" });
39
+ return execFileAsync("pipelex", [...args, ...this.libraryArgs()], {
40
+ encoding: "utf-8",
41
+ });
42
+ }
43
+ /**
44
+ * Run pipelex with stdout and stderr inherited (streamed to the terminal).
45
+ * Use this for long-running or interactive commands.
46
+ */
47
+ async execStreaming(args, inheritStdin = false) {
48
+ return new Promise((resolve, reject) => {
49
+ const child = spawn("pipelex", [...args, ...this.libraryArgs()], {
50
+ stdio: [inheritStdin ? "inherit" : "ignore", "inherit", "inherit"],
51
+ });
52
+ child.on("error", (err) => reject(new Error(`pipelex not found: ${err.message}`)));
53
+ child.on("close", (code) => {
54
+ if (code === 0) {
55
+ resolve();
56
+ }
57
+ else {
58
+ reject(new Error(`pipelex exited with code ${code}`));
59
+ }
60
+ });
61
+ });
62
+ }
63
+ // ── CLI passthrough ──────────────────────────────────────────
64
+ async buildPassthrough(subcommand, rawArgs) {
65
+ await this.execStreaming(["build", subcommand, ...rawArgs]);
66
+ }
67
+ async runPassthrough(rawArgs) {
68
+ await this.execStreaming(["run", ...rawArgs], true);
69
+ }
70
+ async validatePassthrough(rawArgs) {
71
+ await this.execStreaming(["validate", ...rawArgs]);
17
72
  }
18
73
  // ── Health & version ────────────────────────────────────────────
19
74
  async health() {
@@ -31,38 +86,73 @@ export class PipelexRunner {
31
86
  }
32
87
  // ── Build ───────────────────────────────────────────────────────
33
88
  // buildInputs and buildOutput have no CLI equivalent.
34
- async buildInputs(_request) {
35
- notSupported("buildInputs");
36
- }
37
- async buildOutput(_request) {
38
- notSupported("buildOutput");
89
+ // pipelex build inputs <bundle.mthds> --pipe <pipe_code>
90
+ async buildInputs(request) {
91
+ const tmp = makeTmpDir();
92
+ try {
93
+ const bundlePath = join(tmp, "bundle.mthds");
94
+ writeFileSync(bundlePath, request.mthds_content, "utf-8");
95
+ const { stdout } = await this.exec([
96
+ "build",
97
+ "inputs",
98
+ bundlePath,
99
+ "--pipe",
100
+ request.pipe_code,
101
+ ]);
102
+ return JSON.parse(stdout);
103
+ }
104
+ finally {
105
+ rmSync(tmp, { recursive: true, force: true });
106
+ }
39
107
  }
40
- // pipelex build pipe "PROMPT" -o <file>
41
- async buildPipe(request) {
108
+ // pipelex build output <bundle.mthds> --pipe <pipe_code> [--format <fmt>]
109
+ async buildOutput(request) {
42
110
  const tmp = makeTmpDir();
43
111
  try {
44
- const outPath = join(tmp, "bundle.plx");
45
- await this.exec(["build", "pipe", request.brief, "-o", outPath]);
46
- const plxContent = readFileSync(outPath, "utf-8");
47
- return {
48
- plx_content: plxContent,
49
- pipelex_bundle_blueprint: {},
50
- success: true,
51
- message: "Pipeline generated via local CLI",
52
- };
112
+ const bundlePath = join(tmp, "bundle.mthds");
113
+ writeFileSync(bundlePath, request.mthds_content, "utf-8");
114
+ const args = [
115
+ "build",
116
+ "output",
117
+ bundlePath,
118
+ "--pipe",
119
+ request.pipe_code,
120
+ ];
121
+ if (request.format) {
122
+ args.push("--format", request.format);
123
+ }
124
+ const { stdout } = await this.exec(args);
125
+ return JSON.parse(stdout);
53
126
  }
54
127
  finally {
55
128
  rmSync(tmp, { recursive: true, force: true });
56
129
  }
57
130
  }
58
- // pipelex build runner <bundle.plx> --pipe <pipe_code> -o <file>
131
+ // pipelex build pipe "PROMPT" -o <dir>
132
+ async buildPipe(request) {
133
+ const outputDir = resolveOutputBase(request.output);
134
+ await this.execStreaming([
135
+ "build",
136
+ "pipe",
137
+ request.brief,
138
+ "-o",
139
+ outputDir,
140
+ ]);
141
+ return {
142
+ mthds_content: "",
143
+ pipelex_bundle_blueprint: {},
144
+ success: true,
145
+ message: `Pipeline built successfully — saved to ${outputDir}`,
146
+ };
147
+ }
148
+ // pipelex build runner <bundle.mthds> --pipe <pipe_code> -o <file>
59
149
  async buildRunner(request) {
60
150
  const tmp = makeTmpDir();
61
151
  try {
62
- const bundlePath = join(tmp, "bundle.plx");
63
- writeFileSync(bundlePath, request.plx_content, "utf-8");
152
+ const bundlePath = join(tmp, "bundle.mthds");
153
+ writeFileSync(bundlePath, request.mthds_content, "utf-8");
64
154
  const outPath = join(tmp, "runner.py");
65
- await this.exec([
155
+ await this.execStreaming([
66
156
  "build",
67
157
  "runner",
68
158
  bundlePath,
@@ -89,9 +179,9 @@ export class PipelexRunner {
89
179
  const tmp = makeTmpDir();
90
180
  try {
91
181
  const args = ["run"];
92
- if (request.plx_content) {
93
- const bundlePath = join(tmp, "bundle.plx");
94
- writeFileSync(bundlePath, request.plx_content, "utf-8");
182
+ if (request.mthds_content) {
183
+ const bundlePath = join(tmp, "bundle.mthds");
184
+ writeFileSync(bundlePath, request.mthds_content, "utf-8");
95
185
  args.push(bundlePath);
96
186
  if (request.pipe_code) {
97
187
  args.push("--pipe", request.pipe_code);
@@ -105,10 +195,12 @@ export class PipelexRunner {
105
195
  writeFileSync(inputsPath, JSON.stringify(request.inputs), "utf-8");
106
196
  args.push("--inputs", inputsPath);
107
197
  }
108
- const outputPath = join(tmp, "output.json");
109
- args.push("--output", outputPath);
110
- await this.exec(args);
111
- const raw = JSON.parse(readFileSync(outputPath, "utf-8"));
198
+ args.push("--output-dir", tmp);
199
+ await this.execStreaming(args);
200
+ const wmPath = join(tmp, "working_memory.json");
201
+ const raw = existsSync(wmPath)
202
+ ? JSON.parse(readFileSync(wmPath, "utf-8"))
203
+ : {};
112
204
  // The CLI output is working memory JSON. Wrap it in PipelineResponse shape.
113
205
  return {
114
206
  pipeline_run_id: raw["pipeline_run_id"] ?? "local",
@@ -126,26 +218,26 @@ export class PipelexRunner {
126
218
  }
127
219
  }
128
220
  // ── Validation ──────────────────────────────────────────────────
129
- // pipelex validate --bundle <file.plx>
221
+ // pipelex validate --bundle <file.mthds>
130
222
  async validate(request) {
131
223
  const tmp = makeTmpDir();
132
224
  try {
133
- const bundlePath = join(tmp, "bundle.plx");
134
- writeFileSync(bundlePath, request.plx_content, "utf-8");
225
+ const bundlePath = join(tmp, "bundle.mthds");
226
+ writeFileSync(bundlePath, request.mthds_content, "utf-8");
135
227
  await this.exec(["validate", "--bundle", bundlePath]);
136
228
  return {
137
- plx_content: request.plx_content,
229
+ mthds_content: request.mthds_content,
138
230
  pipelex_bundle_blueprint: {
139
231
  domain: "local",
140
232
  },
141
233
  success: true,
142
- message: "PLX content validated via local CLI",
234
+ message: "Bundle validated via local CLI",
143
235
  };
144
236
  }
145
237
  catch (err) {
146
238
  const message = err instanceof Error ? err.message : "Validation failed";
147
239
  return {
148
- plx_content: request.plx_content,
240
+ mthds_content: request.mthds_content,
149
241
  pipelex_bundle_blueprint: { domain: "local" },
150
242
  success: false,
151
243
  message,
@@ -155,5 +247,27 @@ export class PipelexRunner {
155
247
  rmSync(tmp, { recursive: true, force: true });
156
248
  }
157
249
  }
250
+ // ── RunnerProtocol implementation ─────────────────────────────────
251
+ async executePipeline(options) {
252
+ const request = {
253
+ mthds_content: options.mthds_content ?? undefined,
254
+ pipe_code: options.pipe_code ?? undefined,
255
+ inputs: options.inputs
256
+ ? Object.fromEntries(Object.entries(options.inputs).map(([k, v]) => [k, v]))
257
+ : undefined,
258
+ };
259
+ const response = await this.execute(request);
260
+ return {
261
+ pipeline_run_id: response.pipeline_run_id,
262
+ created_at: response.created_at,
263
+ pipeline_state: response.pipeline_state,
264
+ finished_at: response.finished_at,
265
+ main_stuff_name: response.main_stuff_name,
266
+ pipe_output: response.pipe_output,
267
+ };
268
+ }
269
+ async startPipeline(_options) {
270
+ throw new Error("startPipeline is not supported by the pipelex CLI runner. Use the API runner instead.");
271
+ }
158
272
  }
159
273
  //# sourceMappingURL=pipelex-runner.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"pipelex-runner.js","sourceRoot":"","sources":["../../src/runners/pipelex-runner.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"pipelex-runner.js","sourceRoot":"","sources":["../../src/runners/pipelex-runner.ts"],"names":[],"mappings":"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"}
@@ -1,2 +1,2 @@
1
1
  import type { Runner, RunnerType } from "./types.js";
2
- export declare function createRunner(type?: RunnerType): Runner;
2
+ export declare function createRunner(type?: RunnerType, libraryDirs?: string[]): Runner;
@@ -1,13 +1,14 @@
1
1
  import { loadConfig } from "../config/config.js";
2
+ import { Runners } from "./types.js";
2
3
  import { ApiRunner } from "./api-runner.js";
3
4
  import { PipelexRunner } from "./pipelex-runner.js";
4
- export function createRunner(type) {
5
+ export function createRunner(type, libraryDirs) {
5
6
  const runnerType = type ?? loadConfig().runner;
6
7
  switch (runnerType) {
7
- case "api":
8
+ case Runners.API:
8
9
  return new ApiRunner();
9
- case "pipelex":
10
- return new PipelexRunner();
10
+ case Runners.PIPELEX:
11
+ return new PipelexRunner(libraryDirs);
11
12
  default:
12
13
  throw new Error(`Unknown runner type: ${runnerType}`);
13
14
  }
@@ -1 +1 @@
1
- {"version":3,"file":"registry.js","sourceRoot":"","sources":["../../src/runners/registry.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAEjD,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC5C,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAEpD,MAAM,UAAU,YAAY,CAAC,IAAiB;IAC5C,MAAM,UAAU,GAAG,IAAI,IAAI,UAAU,EAAE,CAAC,MAAM,CAAC;IAE/C,QAAQ,UAAU,EAAE,CAAC;QACnB,KAAK,KAAK;YACR,OAAO,IAAI,SAAS,EAAE,CAAC;QACzB,KAAK,SAAS;YACZ,OAAO,IAAI,aAAa,EAAE,CAAC;QAC7B;YACE,MAAM,IAAI,KAAK,CAAC,wBAAwB,UAAoB,EAAE,CAAC,CAAC;IACpE,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"registry.js","sourceRoot":"","sources":["../../src/runners/registry.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AACjD,OAAO,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AAErC,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC5C,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAEpD,MAAM,UAAU,YAAY,CAC1B,IAAiB,EACjB,WAAsB;IAEtB,MAAM,UAAU,GAAG,IAAI,IAAI,UAAU,EAAE,CAAC,MAAM,CAAC;IAE/C,QAAQ,UAAU,EAAE,CAAC;QACnB,KAAK,OAAO,CAAC,GAAG;YACd,OAAO,IAAI,SAAS,EAAE,CAAC;QACzB,KAAK,OAAO,CAAC,OAAO;YAClB,OAAO,IAAI,aAAa,CAAC,WAAW,CAAC,CAAC;QACxC;YACE,MAAM,IAAI,KAAK,CAAC,wBAAwB,UAAoB,EAAE,CAAC,CAAC;IACpE,CAAC;AACH,CAAC"}
@@ -1,33 +1,40 @@
1
- export type RunnerType = "api" | "pipelex";
1
+ import type { RunnerProtocol } from "../client/protocol.js";
2
+ export declare const Runners: {
3
+ readonly API: "api";
4
+ readonly PIPELEX: "pipelex";
5
+ };
6
+ export type RunnerType = (typeof Runners)[keyof typeof Runners];
7
+ export declare const RUNNER_NAMES: RunnerType[];
2
8
  export type PipelineState = "RUNNING" | "COMPLETED" | "FAILED" | "CANCELLED" | "ERROR" | "STARTED";
3
9
  export type ConceptRepresentationFormat = "json" | "python" | "schema";
4
10
  export interface BuildInputsRequest {
5
- plx_content: string;
11
+ mthds_content: string;
6
12
  pipe_code: string;
7
13
  }
8
14
  export interface BuildOutputRequest {
9
- plx_content: string;
15
+ mthds_content: string;
10
16
  pipe_code: string;
11
17
  format?: ConceptRepresentationFormat;
12
18
  }
13
19
  export interface BuildPipeRequest {
14
20
  brief: string;
21
+ output?: string;
15
22
  }
16
23
  export interface BuildRunnerRequest {
17
- plx_content: string;
24
+ mthds_content: string;
18
25
  pipe_code: string;
19
26
  }
20
27
  export interface ExecuteRequest {
21
- /** PLX content to validate, load, and execute. Omit to run an already-loaded pipe. */
22
- plx_content?: string;
28
+ /** MTHDS bundle content to validate, load, and execute. Omit to run an already-loaded pipe. */
29
+ mthds_content?: string;
23
30
  pipe_code?: string;
24
31
  inputs?: Record<string, unknown>;
25
32
  }
26
33
  export interface ValidateRequest {
27
- plx_content: string;
34
+ mthds_content: string;
28
35
  }
29
36
  export interface BuildPipeResponse {
30
- plx_content: string;
37
+ mthds_content: string;
31
38
  pipelex_bundle_blueprint: Record<string, unknown>;
32
39
  success: boolean;
33
40
  message: string;
@@ -69,12 +76,12 @@ export interface PipelexBundleBlueprint {
69
76
  pipe?: Record<string, unknown> | null;
70
77
  }
71
78
  export interface ValidateResponse {
72
- plx_content: string;
79
+ mthds_content: string;
73
80
  pipelex_bundle_blueprint: PipelexBundleBlueprint;
74
81
  success: boolean;
75
82
  message: string;
76
83
  }
77
- export interface Runner {
84
+ export interface Runner extends RunnerProtocol {
78
85
  readonly type: RunnerType;
79
86
  health(): Promise<Record<string, unknown>>;
80
87
  version(): Promise<Record<string, string>>;
@@ -1,2 +1,7 @@
1
- export {};
1
+ // ── Runner type ─────────────────────────────────────────────────────
2
+ export const Runners = {
3
+ API: "api",
4
+ PIPELEX: "pipelex",
5
+ };
6
+ export const RUNNER_NAMES = Object.values(Runners);
2
7
  //# sourceMappingURL=types.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/runners/types.ts"],"names":[],"mappings":""}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/runners/types.ts"],"names":[],"mappings":"AAEA,uEAAuE;AAEvE,MAAM,CAAC,MAAM,OAAO,GAAG;IACrB,GAAG,EAAE,KAAK;IACV,OAAO,EAAE,SAAS;CACV,CAAC;AAIX,MAAM,CAAC,MAAM,YAAY,GAAiB,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "mthds",
3
- "version": "0.0.6",
3
+ "version": "0.0.8",
4
4
  "description": "CLI and SDK for MTHDS — the open standard for reusable AI agent methods. Install, execute, and manage methods.",
5
5
  "license": "MIT",
6
6
  "repository": {
@@ -17,7 +17,8 @@
17
17
  }
18
18
  },
19
19
  "bin": {
20
- "mthds": "./dist/cli.js"
20
+ "mthds": "./dist/cli.js",
21
+ "mthds-agent": "./dist/agent-cli.js"
21
22
  },
22
23
  "scripts": {
23
24
  "build": "tsc",
@@ -32,15 +33,17 @@
32
33
  },
33
34
  "dependencies": {
34
35
  "@clack/prompts": "^1.0.0",
35
- "@supabase/supabase-js": "^2.95.3",
36
36
  "chalk": "^5.4.1",
37
37
  "commander": "^13.1.0",
38
38
  "ora": "^8.2.0",
39
39
  "posthog-node": "^4.4.0",
40
- "smol-toml": "^1.6.0"
40
+ "semver": "^7.7.4",
41
+ "smol-toml": "^1.6.0",
42
+ "zod": "^4.3.6"
41
43
  },
42
44
  "devDependencies": {
43
45
  "@types/node": "^22.12.0",
46
+ "@types/semver": "^7.7.1",
44
47
  "tsx": "^4.19.0",
45
48
  "typescript": "^5.7.3",
46
49
  "vitest": "^4.0.18"
@@ -1,2 +0,0 @@
1
- import type { AgentHandler } from "./types.js";
2
- export declare const claudeCodeHandler: AgentHandler;
@@ -1,36 +0,0 @@
1
- import { join, dirname, resolve } from "node:path";
2
- import { mkdirSync, writeFileSync } from "node:fs";
3
- import * as p from "@clack/prompts";
4
- import { Agent } from "./types.js";
5
- export const claudeCodeHandler = {
6
- id: Agent.ClaudeCode,
7
- label: "Claude Code",
8
- supported: true,
9
- async installMethod(ctx) {
10
- const s = p.spinner();
11
- const { repo } = ctx;
12
- for (const method of repo.methods) {
13
- const installDir = resolve(join(ctx.targetDir, repo.repoName, method.slug));
14
- s.start(`Installing "${method.slug}" to ${installDir}...`);
15
- // Create the install directory
16
- mkdirSync(installDir, { recursive: true });
17
- // Write METHODS.toml (verbatim raw string)
18
- writeFileSync(join(installDir, "METHODS.toml"), method.rawManifest, "utf-8");
19
- // Write all .mthds files, preserving directory structure
20
- for (const file of method.files) {
21
- const filePath = resolve(join(installDir, file.relativePath));
22
- if (!filePath.startsWith(installDir + "/")) {
23
- throw new Error(`Path traversal detected: "${file.relativePath}" escapes install directory.`);
24
- }
25
- mkdirSync(dirname(filePath), { recursive: true });
26
- writeFileSync(filePath, file.content, "utf-8");
27
- }
28
- const fileCount = method.files.length;
29
- const filesMsg = fileCount === 0
30
- ? "(manifest only)"
31
- : `(${fileCount} .mthds file${fileCount > 1 ? "s" : ""})`;
32
- s.stop(`Installed "${method.slug}" to ${installDir} ${filesMsg}`);
33
- }
34
- },
35
- };
36
- //# sourceMappingURL=claude-code.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"claude-code.js","sourceRoot":"","sources":["../../src/agents/claude-code.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACnD,OAAO,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AACnD,OAAO,KAAK,CAAC,MAAM,gBAAgB,CAAC;AAEpC,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AAEnC,MAAM,CAAC,MAAM,iBAAiB,GAAiB;IAC7C,EAAE,EAAE,KAAK,CAAC,UAAU;IACpB,KAAK,EAAE,aAAa;IACpB,SAAS,EAAE,IAAI;IAEf,KAAK,CAAC,aAAa,CAAC,GAAmB;QACrC,MAAM,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,CAAC;QACtB,MAAM,EAAE,IAAI,EAAE,GAAG,GAAG,CAAC;QAErB,KAAK,MAAM,MAAM,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;YAClC,MAAM,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,SAAS,EAAE,IAAI,CAAC,QAAQ,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC;YAE5E,CAAC,CAAC,KAAK,CAAC,eAAe,MAAM,CAAC,IAAI,QAAQ,UAAU,KAAK,CAAC,CAAC;YAE3D,+BAA+B;YAC/B,SAAS,CAAC,UAAU,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;YAE3C,2CAA2C;YAC3C,aAAa,CAAC,IAAI,CAAC,UAAU,EAAE,cAAc,CAAC,EAAE,MAAM,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;YAE7E,yDAAyD;YACzD,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,KAAK,EAAE,CAAC;gBAChC,MAAM,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC;gBAC9D,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,UAAU,GAAG,GAAG,CAAC,EAAE,CAAC;oBAC3C,MAAM,IAAI,KAAK,CAAC,6BAA6B,IAAI,CAAC,YAAY,8BAA8B,CAAC,CAAC;gBAChG,CAAC;gBACD,SAAS,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;gBAClD,aAAa,CAAC,QAAQ,EAAE,IAAI,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;YACjD,CAAC;YAED,MAAM,SAAS,GAAG,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC;YACtC,MAAM,QAAQ,GAAG,SAAS,KAAK,CAAC;gBAC9B,CAAC,CAAC,iBAAiB;gBACnB,CAAC,CAAC,IAAI,SAAS,eAAe,SAAS,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC;YAE5D,CAAC,CAAC,IAAI,CAAC,cAAc,MAAM,CAAC,IAAI,QAAQ,UAAU,IAAI,QAAQ,EAAE,CAAC,CAAC;QACpE,CAAC;IACH,CAAC;CACF,CAAC"}
@@ -1,2 +0,0 @@
1
- import type { AgentHandler } from "./types.js";
2
- export declare const cursorHandler: AgentHandler;
@@ -1,11 +0,0 @@
1
- import { Agent } from "./types.js";
2
- export const cursorHandler = {
3
- id: Agent.Cursor,
4
- label: "Cursor",
5
- supported: false,
6
- hint: "coming soon",
7
- async installMethod(_ctx) {
8
- throw new Error("Cursor is not supported yet.");
9
- },
10
- };
11
- //# sourceMappingURL=cursor.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"cursor.js","sourceRoot":"","sources":["../../src/agents/cursor.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AAEnC,MAAM,CAAC,MAAM,aAAa,GAAiB;IACzC,EAAE,EAAE,KAAK,CAAC,MAAM;IAChB,KAAK,EAAE,QAAQ;IACf,SAAS,EAAE,KAAK;IAChB,IAAI,EAAE,aAAa;IAEnB,KAAK,CAAC,aAAa,CAAC,IAAoB;QACtC,MAAM,IAAI,KAAK,CAAC,8BAA8B,CAAC,CAAC;IAClD,CAAC;CACF,CAAC"}
@@ -1,2 +0,0 @@
1
- import type { AgentHandler } from "./types.js";
2
- export declare const githubCopilotHandler: AgentHandler;
@@ -1,11 +0,0 @@
1
- import { Agent } from "./types.js";
2
- export const githubCopilotHandler = {
3
- id: Agent.GithubCopilot,
4
- label: "GitHub Copilot",
5
- supported: false,
6
- hint: "coming soon",
7
- async installMethod(_ctx) {
8
- throw new Error("GitHub Copilot is not supported yet.");
9
- },
10
- };
11
- //# sourceMappingURL=github-copilot.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"github-copilot.js","sourceRoot":"","sources":["../../src/agents/github-copilot.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AAEnC,MAAM,CAAC,MAAM,oBAAoB,GAAiB;IAChD,EAAE,EAAE,KAAK,CAAC,aAAa;IACvB,KAAK,EAAE,gBAAgB;IACvB,SAAS,EAAE,KAAK;IAChB,IAAI,EAAE,aAAa;IAEnB,KAAK,CAAC,aAAa,CAAC,IAAoB;QACtC,MAAM,IAAI,KAAK,CAAC,sCAAsC,CAAC,CAAC;IAC1D,CAAC;CACF,CAAC"}
@@ -1,4 +0,0 @@
1
- import type { Agent, AgentHandler } from "./types.js";
2
- export declare function getAgentHandler(agent: Agent): AgentHandler;
3
- export declare function getAllAgents(): readonly AgentHandler[];
4
- export declare function getSupportedAgents(): readonly AgentHandler[];
@@ -1,24 +0,0 @@
1
- import { claudeCodeHandler } from "./claude-code.js";
2
- import { cursorHandler } from "./cursor.js";
3
- import { windsurfHandler } from "./windsurf.js";
4
- import { githubCopilotHandler } from "./github-copilot.js";
5
- const handlers = new Map([
6
- [claudeCodeHandler.id, claudeCodeHandler],
7
- [cursorHandler.id, cursorHandler],
8
- [windsurfHandler.id, windsurfHandler],
9
- [githubCopilotHandler.id, githubCopilotHandler],
10
- ]);
11
- export function getAgentHandler(agent) {
12
- const handler = handlers.get(agent);
13
- if (!handler) {
14
- throw new Error(`No handler registered for agent: ${agent}`);
15
- }
16
- return handler;
17
- }
18
- export function getAllAgents() {
19
- return [...handlers.values()];
20
- }
21
- export function getSupportedAgents() {
22
- return getAllAgents().filter((h) => h.supported);
23
- }
24
- //# sourceMappingURL=registry.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"registry.js","sourceRoot":"","sources":["../../src/agents/registry.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AACrD,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAChD,OAAO,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AAE3D,MAAM,QAAQ,GAAqC,IAAI,GAAG,CAAC;IACzD,CAAC,iBAAiB,CAAC,EAAE,EAAE,iBAAiB,CAAC;IACzC,CAAC,aAAa,CAAC,EAAE,EAAE,aAAa,CAAC;IACjC,CAAC,eAAe,CAAC,EAAE,EAAE,eAAe,CAAC;IACrC,CAAC,oBAAoB,CAAC,EAAE,EAAE,oBAAoB,CAAC;CAChD,CAAC,CAAC;AAEH,MAAM,UAAU,eAAe,CAAC,KAAY;IAC1C,MAAM,OAAO,GAAG,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;IACpC,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,MAAM,IAAI,KAAK,CAAC,oCAAoC,KAAK,EAAE,CAAC,CAAC;IAC/D,CAAC;IACD,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,MAAM,UAAU,YAAY;IAC1B,OAAO,CAAC,GAAG,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC;AAChC,CAAC;AAED,MAAM,UAAU,kBAAkB;IAChC,OAAO,YAAY,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;AACnD,CAAC"}
@@ -1,25 +0,0 @@
1
- export declare const Agent: {
2
- readonly ClaudeCode: "claude-code";
3
- readonly Cursor: "cursor";
4
- readonly Windsurf: "windsurf";
5
- readonly GithubCopilot: "github-copilot";
6
- };
7
- export type Agent = (typeof Agent)[keyof typeof Agent];
8
- export declare const InstallLocation: {
9
- readonly Local: "local";
10
- readonly Global: "global";
11
- };
12
- export type InstallLocation = (typeof InstallLocation)[keyof typeof InstallLocation];
13
- export interface InstallContext {
14
- readonly repo: import("../resolver/types.js").ResolvedRepo;
15
- readonly agent: Agent;
16
- readonly location: InstallLocation;
17
- readonly targetDir: string;
18
- }
19
- export interface AgentHandler {
20
- readonly id: Agent;
21
- readonly label: string;
22
- readonly supported: boolean;
23
- readonly hint?: string;
24
- installMethod(ctx: InstallContext): Promise<void>;
25
- }
@@ -1,11 +0,0 @@
1
- export const Agent = {
2
- ClaudeCode: "claude-code",
3
- Cursor: "cursor",
4
- Windsurf: "windsurf",
5
- GithubCopilot: "github-copilot",
6
- };
7
- export const InstallLocation = {
8
- Local: "local",
9
- Global: "global",
10
- };
11
- //# sourceMappingURL=types.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/agents/types.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,KAAK,GAAG;IACnB,UAAU,EAAE,aAAa;IACzB,MAAM,EAAE,QAAQ;IAChB,QAAQ,EAAE,UAAU;IACpB,aAAa,EAAE,gBAAgB;CACvB,CAAC;AAIX,MAAM,CAAC,MAAM,eAAe,GAAG;IAC7B,KAAK,EAAE,OAAO;IACd,MAAM,EAAE,QAAQ;CACR,CAAC"}
@@ -1,2 +0,0 @@
1
- import type { AgentHandler } from "./types.js";
2
- export declare const windsurfHandler: AgentHandler;
@@ -1,11 +0,0 @@
1
- import { Agent } from "./types.js";
2
- export const windsurfHandler = {
3
- id: Agent.Windsurf,
4
- label: "Windsurf",
5
- supported: false,
6
- hint: "coming soon",
7
- async installMethod(_ctx) {
8
- throw new Error("Windsurf is not supported yet.");
9
- },
10
- };
11
- //# sourceMappingURL=windsurf.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"windsurf.js","sourceRoot":"","sources":["../../src/agents/windsurf.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AAEnC,MAAM,CAAC,MAAM,eAAe,GAAiB;IAC3C,EAAE,EAAE,KAAK,CAAC,QAAQ;IAClB,KAAK,EAAE,UAAU;IACjB,SAAS,EAAE,KAAK;IAChB,IAAI,EAAE,aAAa;IAEnB,KAAK,CAAC,aAAa,CAAC,IAAoB;QACtC,MAAM,IAAI,KAAK,CAAC,gCAAgC,CAAC,CAAC;IACpD,CAAC;CACF,CAAC"}