memax-cli 0.1.0-alpha.2 → 0.1.0-alpha.21

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 (97) hide show
  1. package/assets/skills/memax-memory/SKILL.md +154 -0
  2. package/dist/commands/auth.d.ts +1 -0
  3. package/dist/commands/auth.d.ts.map +1 -1
  4. package/dist/commands/auth.js +14 -7
  5. package/dist/commands/auth.js.map +1 -1
  6. package/dist/commands/capture.d.ts +17 -0
  7. package/dist/commands/capture.d.ts.map +1 -0
  8. package/dist/commands/capture.js +60 -0
  9. package/dist/commands/capture.js.map +1 -0
  10. package/dist/commands/delete.d.ts +1 -1
  11. package/dist/commands/delete.d.ts.map +1 -1
  12. package/dist/commands/delete.js +22 -5
  13. package/dist/commands/delete.js.map +1 -1
  14. package/dist/commands/hub.d.ts +4 -0
  15. package/dist/commands/hub.d.ts.map +1 -0
  16. package/dist/commands/hub.js +53 -0
  17. package/dist/commands/hub.js.map +1 -0
  18. package/dist/commands/list.d.ts +2 -1
  19. package/dist/commands/list.d.ts.map +1 -1
  20. package/dist/commands/list.js +35 -8
  21. package/dist/commands/list.js.map +1 -1
  22. package/dist/commands/login.d.ts.map +1 -1
  23. package/dist/commands/login.js +32 -7
  24. package/dist/commands/login.js.map +1 -1
  25. package/dist/commands/mcp.d.ts.map +1 -1
  26. package/dist/commands/mcp.js +226 -26
  27. package/dist/commands/mcp.js.map +1 -1
  28. package/dist/commands/push.d.ts +2 -1
  29. package/dist/commands/push.d.ts.map +1 -1
  30. package/dist/commands/push.js +49 -11
  31. package/dist/commands/push.js.map +1 -1
  32. package/dist/commands/recall.d.ts +1 -0
  33. package/dist/commands/recall.d.ts.map +1 -1
  34. package/dist/commands/recall.js +30 -27
  35. package/dist/commands/recall.js.map +1 -1
  36. package/dist/commands/setup-hooks.d.ts +12 -0
  37. package/dist/commands/setup-hooks.d.ts.map +1 -0
  38. package/dist/commands/setup-hooks.js +184 -0
  39. package/dist/commands/setup-hooks.js.map +1 -0
  40. package/dist/commands/setup-instructions.d.ts +21 -0
  41. package/dist/commands/setup-instructions.d.ts.map +1 -0
  42. package/dist/commands/setup-instructions.js +172 -0
  43. package/dist/commands/setup-instructions.js.map +1 -0
  44. package/dist/commands/setup-mcp.d.ts +14 -0
  45. package/dist/commands/setup-mcp.d.ts.map +1 -0
  46. package/dist/commands/setup-mcp.js +276 -0
  47. package/dist/commands/setup-mcp.js.map +1 -0
  48. package/dist/commands/setup-types.d.ts +20 -0
  49. package/dist/commands/setup-types.d.ts.map +1 -0
  50. package/dist/commands/setup-types.js +60 -0
  51. package/dist/commands/setup-types.js.map +1 -0
  52. package/dist/commands/setup.d.ts +18 -0
  53. package/dist/commands/setup.d.ts.map +1 -0
  54. package/dist/commands/setup.js +371 -0
  55. package/dist/commands/setup.js.map +1 -0
  56. package/dist/commands/show.d.ts.map +1 -1
  57. package/dist/commands/show.js +10 -13
  58. package/dist/commands/show.js.map +1 -1
  59. package/dist/commands/sync.d.ts +7 -2
  60. package/dist/commands/sync.d.ts.map +1 -1
  61. package/dist/commands/sync.js +614 -107
  62. package/dist/commands/sync.js.map +1 -1
  63. package/dist/index.js +85 -14
  64. package/dist/index.js.map +1 -1
  65. package/dist/lib/client.d.ts +6 -0
  66. package/dist/lib/client.d.ts.map +1 -0
  67. package/dist/lib/client.js +69 -0
  68. package/dist/lib/client.js.map +1 -0
  69. package/dist/lib/project-context.d.ts +40 -0
  70. package/dist/lib/project-context.d.ts.map +1 -0
  71. package/dist/lib/project-context.js +157 -0
  72. package/dist/lib/project-context.js.map +1 -0
  73. package/dist/lib/prompt.d.ts +7 -0
  74. package/dist/lib/prompt.d.ts.map +1 -0
  75. package/dist/lib/prompt.js +41 -0
  76. package/dist/lib/prompt.js.map +1 -0
  77. package/package.json +17 -13
  78. package/dist/lib/api.d.ts +0 -4
  79. package/dist/lib/api.d.ts.map +0 -1
  80. package/dist/lib/api.js +0 -95
  81. package/dist/lib/api.js.map +0 -1
  82. package/src/commands/auth.ts +0 -92
  83. package/src/commands/config.ts +0 -27
  84. package/src/commands/delete.ts +0 -20
  85. package/src/commands/hook.ts +0 -243
  86. package/src/commands/list.ts +0 -38
  87. package/src/commands/login.ts +0 -159
  88. package/src/commands/mcp.ts +0 -282
  89. package/src/commands/push.ts +0 -82
  90. package/src/commands/recall.ts +0 -160
  91. package/src/commands/show.ts +0 -35
  92. package/src/commands/sync.ts +0 -403
  93. package/src/index.ts +0 -167
  94. package/src/lib/api.ts +0 -110
  95. package/src/lib/config.ts +0 -61
  96. package/src/lib/credentials.ts +0 -42
  97. package/tsconfig.json +0 -9
@@ -0,0 +1,276 @@
1
+ import chalk from "chalk";
2
+ import { readFileSync, writeFileSync, mkdirSync, existsSync } from "node:fs";
3
+ import { dirname } from "node:path";
4
+ import { execSync } from "node:child_process";
5
+ import { loadConfig } from "../lib/config.js";
6
+ import { commandExists, resolveMemaxBin, } from "./setup-types.js";
7
+ // --- Remote MCP setup ---
8
+ export function getApiUrl() {
9
+ return loadConfig().api_url;
10
+ }
11
+ export async function ensureApiKey(hubId) {
12
+ try {
13
+ const { getClient } = await import("../lib/client.js");
14
+ const name = hubId ? `mcp-setup-hub-${hubId.slice(0, 8)}` : "mcp-setup";
15
+ const result = await getClient().auth.createKey({
16
+ name,
17
+ hubId: hubId || undefined,
18
+ expiresInDays: 0,
19
+ });
20
+ return result.key;
21
+ }
22
+ catch {
23
+ return undefined;
24
+ }
25
+ }
26
+ export function setupMcpRemote(agent, apiKey) {
27
+ const mcpUrl = `${getApiUrl()}/mcp`;
28
+ // Claude Code uses its own CLI
29
+ if (agent.id === "claude-code") {
30
+ if (!commandExists("claude")) {
31
+ throw new Error("claude CLI not found in PATH");
32
+ }
33
+ try {
34
+ execSync("claude mcp remove memax", { stdio: "pipe" });
35
+ }
36
+ catch {
37
+ // Not installed yet
38
+ }
39
+ // Claude Code HTTP transport
40
+ execSync(`claude mcp add memax --transport http ${mcpUrl} --header "Authorization: Bearer ${apiKey}"`, { stdio: "pipe" });
41
+ return;
42
+ }
43
+ // Codex TOML
44
+ if (agent.format === "toml") {
45
+ mkdirSync(dirname(agent.configPath), { recursive: true });
46
+ let content = "";
47
+ if (existsSync(agent.configPath)) {
48
+ content = readFileSync(agent.configPath, "utf-8");
49
+ }
50
+ content = content.replace(/\[mcp_servers\.memax\][\s\S]*?(?=\n\[|$)/, "");
51
+ content = content.trim();
52
+ if (content)
53
+ content += "\n\n";
54
+ content += `[mcp_servers.memax]\ntype = "url"\nurl = "${mcpUrl}"\n\n[mcp_servers.memax.headers]\nAuthorization = "Bearer ${apiKey}"\n`;
55
+ writeFileSync(agent.configPath, content);
56
+ return;
57
+ }
58
+ // JSON-based agents
59
+ mkdirSync(dirname(agent.configPath), { recursive: true });
60
+ let config = {};
61
+ if (existsSync(agent.configPath)) {
62
+ try {
63
+ config = JSON.parse(readFileSync(agent.configPath, "utf-8"));
64
+ }
65
+ catch {
66
+ // Start fresh
67
+ }
68
+ }
69
+ const servers = (getNestedKey(config, agent.mcpKey) ?? {});
70
+ // Copilot CLI uses "http", others use "url" or no type field
71
+ const mcpType = agent.id === "copilot" ? "http" : "url";
72
+ servers.memax = {
73
+ type: mcpType,
74
+ url: mcpUrl,
75
+ headers: {
76
+ Authorization: `Bearer ${apiKey}`,
77
+ },
78
+ };
79
+ setNestedKey(config, agent.mcpKey, servers);
80
+ writeFileSync(agent.configPath, JSON.stringify(config, null, 2) + "\n");
81
+ }
82
+ // --- Local MCP setup per agent ---
83
+ export function setupMcp(agent, bin) {
84
+ // Claude Code has its own CLI for MCP management
85
+ if (agent.id === "claude-code") {
86
+ setupMcpClaudeCode(bin);
87
+ return;
88
+ }
89
+ mkdirSync(dirname(agent.configPath), { recursive: true });
90
+ if (agent.format === "toml") {
91
+ setupMcpToml(agent, bin);
92
+ return;
93
+ }
94
+ // JSON-based agents
95
+ let config = {};
96
+ if (existsSync(agent.configPath)) {
97
+ try {
98
+ config = JSON.parse(readFileSync(agent.configPath, "utf-8"));
99
+ }
100
+ catch {
101
+ // Start fresh
102
+ }
103
+ }
104
+ const servers = (getNestedKey(config, agent.mcpKey) ?? {});
105
+ servers.memax = {
106
+ command: bin.command,
107
+ args: [...bin.args, "mcp", "serve"],
108
+ };
109
+ setNestedKey(config, agent.mcpKey, servers);
110
+ writeFileSync(agent.configPath, JSON.stringify(config, null, 2) + "\n");
111
+ }
112
+ export function setupMcpClaudeCode(bin) {
113
+ // Claude Code uses its own CLI for MCP — settings.json mcpServers is ignored
114
+ if (!commandExists("claude")) {
115
+ throw new Error("claude CLI not found in PATH");
116
+ }
117
+ // Remove existing first (idempotent)
118
+ try {
119
+ execSync("claude mcp remove memax", { stdio: "pipe" });
120
+ }
121
+ catch {
122
+ // Not installed yet — fine
123
+ }
124
+ // claude mcp add <name> -- <command> [args...]
125
+ const allArgs = [...bin.args, "mcp", "serve"];
126
+ const cmd = `claude mcp add memax -- ${bin.command} ${allArgs.join(" ")}`;
127
+ try {
128
+ execSync(cmd, { stdio: "pipe" });
129
+ }
130
+ catch (err) {
131
+ throw new Error(`claude mcp add failed: ${err.message}`);
132
+ }
133
+ }
134
+ export function setupMcpToml(agent, bin) {
135
+ // Codex uses TOML — append or update the memax section
136
+ let content = "";
137
+ if (existsSync(agent.configPath)) {
138
+ content = readFileSync(agent.configPath, "utf-8");
139
+ }
140
+ // Remove existing memax section if present
141
+ content = content.replace(/\[mcp_servers\.memax\][\s\S]*?(?=\n\[|$)/, "");
142
+ const args = [...bin.args, "mcp", "serve"].map((a) => `"${a}"`).join(", ");
143
+ content = content.trim();
144
+ if (content)
145
+ content += "\n\n";
146
+ content += `[mcp_servers.memax]\ncommand = "${bin.command}"\nargs = [${args}]\n`;
147
+ writeFileSync(agent.configPath, content);
148
+ }
149
+ export async function printMcpConfigs(local) {
150
+ const apiUrl = getApiUrl();
151
+ console.log(chalk.bold("\n Memax MCP Configuration\n"));
152
+ if (local) {
153
+ const bin = resolveMemaxBin();
154
+ const cmd = bin ? bin.command : "memax";
155
+ const args = bin ? [...bin.args, "mcp", "serve"] : ["mcp", "serve"];
156
+ console.log(chalk.gray(" Mode: local (stdio)\n"));
157
+ console.log(chalk.white(" For most agents (Claude Code, Cursor, Gemini, etc.):\n"));
158
+ console.log(JSON.stringify({
159
+ mcpServers: {
160
+ memax: { command: cmd, args },
161
+ },
162
+ }, null, 2)
163
+ .split("\n")
164
+ .map((l) => " " + l)
165
+ .join("\n"));
166
+ }
167
+ else {
168
+ let apiKey;
169
+ try {
170
+ apiKey = await ensureApiKey();
171
+ }
172
+ catch {
173
+ // Not logged in
174
+ }
175
+ const keyDisplay = apiKey ?? "mxk_your_api_key_here";
176
+ const mcpUrl = `${apiUrl}/mcp`;
177
+ console.log(chalk.gray(" Mode: remote server (recommended)\n"));
178
+ console.log(chalk.white(" For Claude Code:\n"));
179
+ console.log(chalk.gray(` claude mcp add memax --transport http ${mcpUrl} --header "Authorization: Bearer ${keyDisplay}"`));
180
+ console.log(chalk.white("\n For Cursor, Copilot, Gemini, Windsurf:\n"));
181
+ console.log(JSON.stringify({
182
+ mcpServers: {
183
+ memax: {
184
+ type: "url",
185
+ url: mcpUrl,
186
+ headers: {
187
+ Authorization: `Bearer ${keyDisplay}`,
188
+ },
189
+ },
190
+ },
191
+ }, null, 2)
192
+ .split("\n")
193
+ .map((l) => " " + l)
194
+ .join("\n"));
195
+ console.log(chalk.white("\n For Codex CLI (~/.codex/config.toml):\n"));
196
+ console.log(chalk.gray(` [mcp_servers.memax]`));
197
+ console.log(chalk.gray(` type = "url"`));
198
+ console.log(chalk.gray(` url = "${mcpUrl}"`));
199
+ console.log(chalk.gray(`\n [mcp_servers.memax.headers]`));
200
+ console.log(chalk.gray(` Authorization = "Bearer ${keyDisplay}"`));
201
+ if (apiKey) {
202
+ console.log(chalk.yellow("\n API key created: mcp-setup"));
203
+ console.log(chalk.gray(" Manage keys: memax auth list-keys"));
204
+ }
205
+ else {
206
+ console.log(chalk.yellow("\n Not logged in — replace mxk_your_api_key_here with a real key."));
207
+ console.log(chalk.gray(" Run: memax login && memax auth create-key --name mcp"));
208
+ }
209
+ }
210
+ console.log();
211
+ }
212
+ // --- Teardown helpers ---
213
+ export function removeMcpJson(agent) {
214
+ if (!existsSync(agent.configPath))
215
+ return false;
216
+ try {
217
+ const config = JSON.parse(readFileSync(agent.configPath, "utf-8"));
218
+ const servers = getNestedKey(config, agent.mcpKey);
219
+ if (!servers?.memax)
220
+ return false;
221
+ delete servers.memax;
222
+ if (Object.keys(servers).length === 0)
223
+ deleteNestedKey(config, agent.mcpKey);
224
+ writeFileSync(agent.configPath, JSON.stringify(config, null, 2) + "\n");
225
+ console.log(chalk.gray(` Removed MCP from ${agent.name}`));
226
+ return true;
227
+ }
228
+ catch {
229
+ return false;
230
+ }
231
+ }
232
+ export function removeMcpToml(agent) {
233
+ if (!existsSync(agent.configPath))
234
+ return false;
235
+ let content = readFileSync(agent.configPath, "utf-8");
236
+ const before = content;
237
+ content = content.replace(/\[mcp_servers\.memax\][\s\S]*?(?=\n\[|$)/, "");
238
+ if (content === before)
239
+ return false;
240
+ writeFileSync(agent.configPath, content.trim() + "\n");
241
+ console.log(chalk.gray(` Removed MCP from ${agent.name}`));
242
+ return true;
243
+ }
244
+ // --- Nested key helpers for configs like openclaw's "mcp.servers" ---
245
+ export function getNestedKey(obj, key) {
246
+ const parts = key.split(".");
247
+ let current = obj;
248
+ for (const part of parts) {
249
+ if (current == null || typeof current !== "object")
250
+ return undefined;
251
+ current = current[part];
252
+ }
253
+ return current;
254
+ }
255
+ export function setNestedKey(obj, key, value) {
256
+ const parts = key.split(".");
257
+ let current = obj;
258
+ for (let i = 0; i < parts.length - 1; i++) {
259
+ if (!(parts[i] in current) || typeof current[parts[i]] !== "object") {
260
+ current[parts[i]] = {};
261
+ }
262
+ current = current[parts[i]];
263
+ }
264
+ current[parts[parts.length - 1]] = value;
265
+ }
266
+ export function deleteNestedKey(obj, key) {
267
+ const parts = key.split(".");
268
+ let current = obj;
269
+ for (let i = 0; i < parts.length - 1; i++) {
270
+ if (!(parts[i] in current) || typeof current[parts[i]] !== "object")
271
+ return;
272
+ current = current[parts[i]];
273
+ }
274
+ delete current[parts[parts.length - 1]];
275
+ }
276
+ //# sourceMappingURL=setup-mcp.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"setup-mcp.js","sourceRoot":"","sources":["../../src/commands/setup-mcp.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,20 @@
1
+ export interface AgentDef {
2
+ name: string;
3
+ id: string;
4
+ configPath: string;
5
+ format: "json-mcpServers" | "json-servers" | "toml";
6
+ /** Key under which MCP servers live */
7
+ mcpKey: string;
8
+ hasHooks: boolean;
9
+ /** Global instruction file path (e.g. ~/.claude/CLAUDE.md) — null if none */
10
+ globalInstructionFile: string | null;
11
+ detect: () => boolean;
12
+ }
13
+ export interface MemaxBin {
14
+ command: string;
15
+ args: string[];
16
+ shell: string;
17
+ }
18
+ export declare function commandExists(cmd: string): boolean;
19
+ export declare function resolveMemaxBin(): MemaxBin | null;
20
+ //# sourceMappingURL=setup-types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"setup-types.d.ts","sourceRoot":"","sources":["../../src/commands/setup-types.ts"],"names":[],"mappings":"AAOA,MAAM,WAAW,QAAQ;IACvB,IAAI,EAAE,MAAM,CAAC;IACb,EAAE,EAAE,MAAM,CAAC;IACX,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,iBAAiB,GAAG,cAAc,GAAG,MAAM,CAAC;IACpD,uCAAuC;IACvC,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,OAAO,CAAC;IAClB,6EAA6E;IAC7E,qBAAqB,EAAE,MAAM,GAAG,IAAI,CAAC;IACrC,MAAM,EAAE,MAAM,OAAO,CAAC;CACvB;AAED,MAAM,WAAW,QAAQ;IACvB,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,MAAM,EAAE,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;CACf;AAID,wBAAgB,aAAa,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAQlD;AAED,wBAAgB,eAAe,IAAI,QAAQ,GAAG,IAAI,CA4CjD"}
@@ -0,0 +1,60 @@
1
+ import { existsSync } from "node:fs";
2
+ import { join } from "node:path";
3
+ import { platform } from "node:os";
4
+ import { execSync } from "node:child_process";
5
+ // --- Shared utilities ---
6
+ export function commandExists(cmd) {
7
+ try {
8
+ const which = platform() === "win32" ? "where" : "which";
9
+ execSync(`${which} ${cmd}`, { stdio: "pipe" });
10
+ return true;
11
+ }
12
+ catch {
13
+ return false;
14
+ }
15
+ }
16
+ export function resolveMemaxBin() {
17
+ // 1. Global install — use absolute path so agents find it without shell PATH
18
+ if (commandExists("memax")) {
19
+ try {
20
+ const which = platform() === "win32" ? "where memax" : "which memax";
21
+ const absPath = execSync(which, { encoding: "utf-8", stdio: "pipe" })
22
+ .trim()
23
+ .split("\n")[0];
24
+ if (absPath) {
25
+ return { command: absPath, args: [], shell: absPath };
26
+ }
27
+ }
28
+ catch {
29
+ // fall through
30
+ }
31
+ return { command: "memax", args: [], shell: "memax" };
32
+ }
33
+ // 2. Local repo build (faster than npx, always up-to-date during dev)
34
+ const localBuild = join(process.cwd(), "packages", "cli", "dist", "index.js");
35
+ if (existsSync(localBuild)) {
36
+ return {
37
+ command: "node",
38
+ args: [localBuild],
39
+ shell: `node ${localBuild}`,
40
+ };
41
+ }
42
+ // 3. npx as last resort (slow startup — agents may timeout on first run)
43
+ try {
44
+ execSync("npx --yes memax-cli --version", {
45
+ encoding: "utf-8",
46
+ timeout: 15000,
47
+ stdio: "pipe",
48
+ });
49
+ return {
50
+ command: "npx",
51
+ args: ["-y", "memax-cli"],
52
+ shell: "npx -y memax-cli",
53
+ };
54
+ }
55
+ catch {
56
+ // npx failed
57
+ }
58
+ return null;
59
+ }
60
+ //# sourceMappingURL=setup-types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"setup-types.js","sourceRoot":"","sources":["../../src/commands/setup-types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AACrC,OAAO,EAAE,IAAI,EAAW,MAAM,WAAW,CAAC;AAC1C,OAAO,EAAW,QAAQ,EAAE,MAAM,SAAS,CAAC;AAC5C,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAuB9C,2BAA2B;AAE3B,MAAM,UAAU,aAAa,CAAC,GAAW;IACvC,IAAI,CAAC;QACH,MAAM,KAAK,GAAG,QAAQ,EAAE,KAAK,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC;QACzD,QAAQ,CAAC,GAAG,KAAK,IAAI,GAAG,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC;QAC/C,OAAO,IAAI,CAAC;IACd,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC;AAED,MAAM,UAAU,eAAe;IAC7B,6EAA6E;IAC7E,IAAI,aAAa,CAAC,OAAO,CAAC,EAAE,CAAC;QAC3B,IAAI,CAAC;YACH,MAAM,KAAK,GAAG,QAAQ,EAAE,KAAK,OAAO,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,aAAa,CAAC;YACrE,MAAM,OAAO,GAAG,QAAQ,CAAC,KAAK,EAAE,EAAE,QAAQ,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC;iBAClE,IAAI,EAAE;iBACN,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;YAClB,IAAI,OAAO,EAAE,CAAC;gBACZ,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC;YACxD,CAAC;QACH,CAAC;QAAC,MAAM,CAAC;YACP,eAAe;QACjB,CAAC;QACD,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC;IACxD,CAAC;IAED,sEAAsE;IACtE,MAAM,UAAU,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,UAAU,EAAE,KAAK,EAAE,MAAM,EAAE,UAAU,CAAC,CAAC;IAC9E,IAAI,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;QAC3B,OAAO;YACL,OAAO,EAAE,MAAM;YACf,IAAI,EAAE,CAAC,UAAU,CAAC;YAClB,KAAK,EAAE,QAAQ,UAAU,EAAE;SAC5B,CAAC;IACJ,CAAC;IAED,yEAAyE;IACzE,IAAI,CAAC;QACH,QAAQ,CAAC,+BAA+B,EAAE;YACxC,QAAQ,EAAE,OAAO;YACjB,OAAO,EAAE,KAAK;YACd,KAAK,EAAE,MAAM;SACd,CAAC,CAAC;QACH,OAAO;YACL,OAAO,EAAE,KAAK;YACd,IAAI,EAAE,CAAC,IAAI,EAAE,WAAW,CAAC;YACzB,KAAK,EAAE,kBAAkB;SAC1B,CAAC;IACJ,CAAC;IAAC,MAAM,CAAC;QACP,aAAa;IACf,CAAC;IAED,OAAO,IAAI,CAAC;AACd,CAAC"}
@@ -0,0 +1,18 @@
1
+ import { type AgentDef, type MemaxBin } from "./setup-types.js";
2
+ export type { AgentDef, MemaxBin };
3
+ interface SetupOptions {
4
+ mcp?: boolean;
5
+ hooks?: boolean;
6
+ instructions?: boolean;
7
+ all?: boolean;
8
+ local?: boolean;
9
+ print?: boolean;
10
+ only?: string;
11
+ skip?: string;
12
+ hub?: string;
13
+ }
14
+ export declare function setupCommand(options: SetupOptions): Promise<void>;
15
+ export declare function teardownCommand(options: {
16
+ only?: string;
17
+ }): Promise<void>;
18
+ //# sourceMappingURL=setup.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"setup.d.ts","sourceRoot":"","sources":["../../src/commands/setup.ts"],"names":[],"mappings":"AAMA,OAAO,EACL,KAAK,QAAQ,EACb,KAAK,QAAQ,EAGd,MAAM,kBAAkB,CAAC;AAkB1B,YAAY,EAAE,QAAQ,EAAE,QAAQ,EAAE,CAAC;AAgHnC,UAAU,YAAY;IACpB,GAAG,CAAC,EAAE,OAAO,CAAC;IACd,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,GAAG,CAAC,EAAE,OAAO,CAAC;IACd,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,GAAG,CAAC,EAAE,MAAM,CAAC;CACd;AAED,wBAAsB,YAAY,CAAC,OAAO,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC,CA+NvE;AAID,wBAAsB,eAAe,CAAC,OAAO,EAAE;IAC7C,IAAI,CAAC,EAAE,MAAM,CAAC;CACf,GAAG,OAAO,CAAC,IAAI,CAAC,CAwEhB"}