@codemap-ai/core 0.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (114) hide show
  1. package/LICENSE +21 -0
  2. package/dist/config.d.ts +40 -0
  3. package/dist/config.d.ts.map +1 -0
  4. package/dist/config.js +229 -0
  5. package/dist/config.js.map +1 -0
  6. package/dist/index.d.ts +27 -0
  7. package/dist/index.d.ts.map +1 -0
  8. package/dist/index.js +29 -0
  9. package/dist/index.js.map +1 -0
  10. package/dist/lib/agent-pack-doctor.d.ts +36 -0
  11. package/dist/lib/agent-pack-doctor.d.ts.map +1 -0
  12. package/dist/lib/agent-pack-doctor.js +325 -0
  13. package/dist/lib/agent-pack-doctor.js.map +1 -0
  14. package/dist/lib/agent-pack-installer.d.ts +35 -0
  15. package/dist/lib/agent-pack-installer.d.ts.map +1 -0
  16. package/dist/lib/agent-pack-installer.js +371 -0
  17. package/dist/lib/agent-pack-installer.js.map +1 -0
  18. package/dist/lib/agent-pack.d.ts +36 -0
  19. package/dist/lib/agent-pack.d.ts.map +1 -0
  20. package/dist/lib/agent-pack.js +119 -0
  21. package/dist/lib/agent-pack.js.map +1 -0
  22. package/dist/lib/agent-workflow.d.ts +37 -0
  23. package/dist/lib/agent-workflow.d.ts.map +1 -0
  24. package/dist/lib/agent-workflow.js +329 -0
  25. package/dist/lib/agent-workflow.js.map +1 -0
  26. package/dist/lib/api-types.d.ts +32 -0
  27. package/dist/lib/api-types.d.ts.map +1 -0
  28. package/dist/lib/api-types.js +3 -0
  29. package/dist/lib/api-types.js.map +1 -0
  30. package/dist/lib/auto-inject.d.ts +16 -0
  31. package/dist/lib/auto-inject.d.ts.map +1 -0
  32. package/dist/lib/auto-inject.js +80 -0
  33. package/dist/lib/auto-inject.js.map +1 -0
  34. package/dist/lib/bundled-runtime.d.ts +9 -0
  35. package/dist/lib/bundled-runtime.d.ts.map +1 -0
  36. package/dist/lib/bundled-runtime.js +20 -0
  37. package/dist/lib/bundled-runtime.js.map +1 -0
  38. package/dist/lib/codemap-api.d.ts +22 -0
  39. package/dist/lib/codemap-api.d.ts.map +1 -0
  40. package/dist/lib/codemap-api.js +74 -0
  41. package/dist/lib/codemap-api.js.map +1 -0
  42. package/dist/lib/import-health.d.ts +38 -0
  43. package/dist/lib/import-health.d.ts.map +1 -0
  44. package/dist/lib/import-health.js +186 -0
  45. package/dist/lib/import-health.js.map +1 -0
  46. package/dist/lib/local-index.d.ts +52 -0
  47. package/dist/lib/local-index.d.ts.map +1 -0
  48. package/dist/lib/local-index.js +262 -0
  49. package/dist/lib/local-index.js.map +1 -0
  50. package/dist/lib/markdown-fence.d.ts +8 -0
  51. package/dist/lib/markdown-fence.d.ts.map +1 -0
  52. package/dist/lib/markdown-fence.js +98 -0
  53. package/dist/lib/markdown-fence.js.map +1 -0
  54. package/dist/lib/mcp-auth.d.ts +39 -0
  55. package/dist/lib/mcp-auth.d.ts.map +1 -0
  56. package/dist/lib/mcp-auth.js +184 -0
  57. package/dist/lib/mcp-auth.js.map +1 -0
  58. package/dist/lib/monorepo-root.d.ts +7 -0
  59. package/dist/lib/monorepo-root.d.ts.map +1 -0
  60. package/dist/lib/monorepo-root.js +23 -0
  61. package/dist/lib/monorepo-root.js.map +1 -0
  62. package/dist/lib/onboarding.d.ts +5 -0
  63. package/dist/lib/onboarding.d.ts.map +1 -0
  64. package/dist/lib/onboarding.js +96 -0
  65. package/dist/lib/onboarding.js.map +1 -0
  66. package/dist/lib/open-url.d.ts +7 -0
  67. package/dist/lib/open-url.d.ts.map +1 -0
  68. package/dist/lib/open-url.js +38 -0
  69. package/dist/lib/open-url.js.map +1 -0
  70. package/dist/lib/regex-utils.d.ts +2 -0
  71. package/dist/lib/regex-utils.d.ts.map +1 -0
  72. package/dist/lib/regex-utils.js +4 -0
  73. package/dist/lib/regex-utils.js.map +1 -0
  74. package/dist/lib/server-instructions.d.ts +2 -0
  75. package/dist/lib/server-instructions.d.ts.map +1 -0
  76. package/dist/lib/server-instructions.js +34 -0
  77. package/dist/lib/server-instructions.js.map +1 -0
  78. package/dist/lib/session-context.d.ts +2 -0
  79. package/dist/lib/session-context.d.ts.map +1 -0
  80. package/dist/lib/session-context.js +40 -0
  81. package/dist/lib/session-context.js.map +1 -0
  82. package/dist/lib/session-tracker.d.ts +16 -0
  83. package/dist/lib/session-tracker.d.ts.map +1 -0
  84. package/dist/lib/session-tracker.js +32 -0
  85. package/dist/lib/session-tracker.js.map +1 -0
  86. package/dist/lib/sqlite-index-store.d.ts +165 -0
  87. package/dist/lib/sqlite-index-store.d.ts.map +1 -0
  88. package/dist/lib/sqlite-index-store.js +609 -0
  89. package/dist/lib/sqlite-index-store.js.map +1 -0
  90. package/dist/lib/tool-response.d.ts +97 -0
  91. package/dist/lib/tool-response.d.ts.map +1 -0
  92. package/dist/lib/tool-response.js +127 -0
  93. package/dist/lib/tool-response.js.map +1 -0
  94. package/dist/lib/uuid-schema.d.ts +8 -0
  95. package/dist/lib/uuid-schema.d.ts.map +1 -0
  96. package/dist/lib/uuid-schema.js +10 -0
  97. package/dist/lib/uuid-schema.js.map +1 -0
  98. package/dist/lib/workspace-git.d.ts +16 -0
  99. package/dist/lib/workspace-git.d.ts.map +1 -0
  100. package/dist/lib/workspace-git.js +53 -0
  101. package/dist/lib/workspace-git.js.map +1 -0
  102. package/dist/lib/workspace-project.d.ts +61 -0
  103. package/dist/lib/workspace-project.d.ts.map +1 -0
  104. package/dist/lib/workspace-project.js +231 -0
  105. package/dist/lib/workspace-project.js.map +1 -0
  106. package/dist/lib/workspace-resolver.d.ts +16 -0
  107. package/dist/lib/workspace-resolver.d.ts.map +1 -0
  108. package/dist/lib/workspace-resolver.js +59 -0
  109. package/dist/lib/workspace-resolver.js.map +1 -0
  110. package/dist/lib/workspace-zip.d.ts +12 -0
  111. package/dist/lib/workspace-zip.d.ts.map +1 -0
  112. package/dist/lib/workspace-zip.js +126 -0
  113. package/dist/lib/workspace-zip.js.map +1 -0
  114. package/package.json +44 -0
@@ -0,0 +1,371 @@
1
+ import { constants } from "node:fs";
2
+ import { access, copyFile, mkdir, readFile, readdir, rename, unlink, writeFile } from "node:fs/promises";
3
+ import path from "node:path";
4
+ import { AGENT_PACK_SKILLS, getPluginRoot, getAgentPackRoot, readAgentPackFile, readAgentPackSkill, } from "./agent-pack.js";
5
+ function parseTarget(value) {
6
+ if (value === "codex" ||
7
+ value === "claude" ||
8
+ value === "cursor" ||
9
+ value === "gemini" ||
10
+ value === "opencode" ||
11
+ value === "copilot" ||
12
+ value === "marketplace" ||
13
+ value === "all") {
14
+ return value;
15
+ }
16
+ return "all";
17
+ }
18
+ export function parseAgentPackInstallArgs(args) {
19
+ let target = "all";
20
+ let dryRun = false;
21
+ let force = false;
22
+ let pluginPath;
23
+ let cwd;
24
+ for (let index = 0; index < args.length; index += 1) {
25
+ const arg = args[index];
26
+ if (arg === "--dry-run") {
27
+ dryRun = true;
28
+ continue;
29
+ }
30
+ if (arg === "--force") {
31
+ force = true;
32
+ continue;
33
+ }
34
+ if (arg === "--target") {
35
+ target = parseTarget(args[index + 1]);
36
+ index += 1;
37
+ continue;
38
+ }
39
+ if (arg === "--plugin-path" || arg === "--path") {
40
+ pluginPath = args[index + 1];
41
+ index += 1;
42
+ continue;
43
+ }
44
+ if (arg === "--root" || arg === "--cwd") {
45
+ cwd = args[index + 1];
46
+ index += 1;
47
+ continue;
48
+ }
49
+ if (arg.startsWith("--target=")) {
50
+ target = parseTarget(arg.slice("--target=".length));
51
+ continue;
52
+ }
53
+ if (arg.startsWith("--plugin-path=")) {
54
+ pluginPath = arg.slice("--plugin-path=".length);
55
+ continue;
56
+ }
57
+ if (arg.startsWith("--path=")) {
58
+ pluginPath = arg.slice("--path=".length);
59
+ continue;
60
+ }
61
+ if (arg.startsWith("--root=")) {
62
+ cwd = arg.slice("--root=".length);
63
+ continue;
64
+ }
65
+ if (arg.startsWith("--cwd=")) {
66
+ cwd = arg.slice("--cwd=".length);
67
+ }
68
+ }
69
+ return { target, dryRun, force, pluginPath, cwd };
70
+ }
71
+ function targetsFor(target) {
72
+ return target === "all"
73
+ ? ["codex", "claude", "cursor", "gemini", "opencode", "copilot"]
74
+ : [target];
75
+ }
76
+ async function exists(filePath) {
77
+ try {
78
+ await access(filePath, constants.F_OK);
79
+ return true;
80
+ }
81
+ catch {
82
+ return false;
83
+ }
84
+ }
85
+ async function listSkillWrites(root, harness) {
86
+ return Promise.all(AGENT_PACK_SKILLS.map(async (skill) => ({
87
+ path: path.join(root, `.${harness}`, "skills", `codemap-${skill}`, "SKILL.md"),
88
+ content: await readAgentPackSkill(skill),
89
+ })));
90
+ }
91
+ async function planCodex(root) {
92
+ return [
93
+ {
94
+ path: path.join(root, "AGENTS.md"),
95
+ content: await readAgentPackFile("templates/AGENTS.md"),
96
+ },
97
+ {
98
+ path: path.join(root, ".codex", "codemap-agent-pack.md"),
99
+ content: await readAgentPackFile("README.md"),
100
+ },
101
+ ...(await listSkillWrites(root, "codex")),
102
+ ];
103
+ }
104
+ async function mergeClaudeSettings(root) {
105
+ const settingsPath = path.join(root, ".claude", "settings.json");
106
+ let settings = {};
107
+ try {
108
+ settings = JSON.parse(await readFile(settingsPath, "utf8"));
109
+ }
110
+ catch (error) {
111
+ if (!(error && typeof error === "object" && "code" in error && error.code === "ENOENT"))
112
+ throw error;
113
+ }
114
+ // Ensure hooks key exists (empty) for forward compatibility
115
+ if (!settings.hooks) {
116
+ settings.hooks = {};
117
+ }
118
+ return { path: settingsPath, content: JSON.stringify(settings, null, 2), overwrite: true };
119
+ }
120
+ async function planClaude(root) {
121
+ return [
122
+ {
123
+ path: path.join(root, "CLAUDE.md"),
124
+ content: await readAgentPackFile("templates/CLAUDE.md"),
125
+ },
126
+ {
127
+ path: path.join(root, ".claude", "rules", "codemap-mcp-first.md"),
128
+ content: await readAgentPackFile("rules/mcp-first.md"),
129
+ },
130
+ {
131
+ path: path.join(root, ".claude", "rules", "codemap-task-lifecycle.md"),
132
+ content: await readAgentPackFile("rules/task-lifecycle.md"),
133
+ },
134
+ await mergeClaudeSettings(root),
135
+ ...(await listSkillWrites(root, "claude")),
136
+ ];
137
+ }
138
+ async function planCursor(root) {
139
+ const mcpFirst = await readAgentPackFile("rules/mcp-first.md");
140
+ const lifecycle = await readAgentPackFile("rules/task-lifecycle.md");
141
+ const workflowSkills = await readAgentPackFile("rules/workflow-skills.md");
142
+ return [
143
+ {
144
+ path: path.join(root, ".cursor", "rules", "codemap.mdc"),
145
+ content: [
146
+ "---",
147
+ "description: CodeMap MCP-first workflow",
148
+ "alwaysApply: true",
149
+ "---",
150
+ "",
151
+ mcpFirst,
152
+ "",
153
+ lifecycle,
154
+ "",
155
+ workflowSkills,
156
+ ].join("\n"),
157
+ },
158
+ ];
159
+ }
160
+ async function planGemini(root) {
161
+ return [
162
+ {
163
+ path: path.join(root, "GEMINI.md"),
164
+ content: await readAgentPackFile("templates/GEMINI.md"),
165
+ },
166
+ ];
167
+ }
168
+ async function planOpenCode(root) {
169
+ return [
170
+ {
171
+ path: path.join(root, ".opencode", "AGENTS.md"),
172
+ content: await readAgentPackFile("templates/opencode-AGENTS.md"),
173
+ },
174
+ {
175
+ path: path.join(root, ".opencode", "INSTALL.md"),
176
+ content: await readAgentPackFile("templates/opencode-INSTALL.md"),
177
+ },
178
+ ];
179
+ }
180
+ async function planCopilot(root) {
181
+ return [
182
+ {
183
+ path: path.join(root, "COPILOT.md"),
184
+ content: await readAgentPackFile("templates/COPILOT.md"),
185
+ },
186
+ ];
187
+ }
188
+ function defaultMarketplace(pluginPath) {
189
+ return {
190
+ name: "codemap-agent-pack-marketplace",
191
+ interface: {
192
+ displayName: "CodeMap Agent Pack",
193
+ },
194
+ plugins: [
195
+ {
196
+ name: "codemap-agent-pack",
197
+ source: {
198
+ source: "local",
199
+ path: pluginPath ?? "./packages/mcp-server",
200
+ },
201
+ policy: {
202
+ installation: "AVAILABLE",
203
+ authentication: "ON_INSTALL",
204
+ },
205
+ category: "Coding",
206
+ },
207
+ ],
208
+ };
209
+ }
210
+ async function planMarketplace(root, pluginPath) {
211
+ const marketplacePath = path.join(root, ".agents", "plugins", "marketplace.json");
212
+ let marketplace = defaultMarketplace(pluginPath);
213
+ try {
214
+ const raw = await readFile(marketplacePath, "utf8");
215
+ const parsed = JSON.parse(raw);
216
+ const plugins = Array.isArray(parsed.plugins) ? parsed.plugins : [];
217
+ const nextEntry = defaultMarketplace(pluginPath).plugins[0];
218
+ const existingIndex = plugins.findIndex((plugin) => plugin.name === "codemap-agent-pack");
219
+ if (existingIndex >= 0) {
220
+ plugins[existingIndex] = nextEntry;
221
+ }
222
+ else {
223
+ plugins.push(nextEntry);
224
+ }
225
+ marketplace = {
226
+ name: parsed.name ?? marketplace.name,
227
+ interface: {
228
+ displayName: parsed.interface?.displayName ?? marketplace.interface.displayName,
229
+ },
230
+ plugins: plugins,
231
+ };
232
+ }
233
+ catch (error) {
234
+ if (!(error && typeof error === "object" && "code" in error && error.code === "ENOENT")) {
235
+ throw error;
236
+ }
237
+ }
238
+ return [
239
+ {
240
+ path: marketplacePath,
241
+ content: JSON.stringify(marketplace, null, 2),
242
+ },
243
+ ];
244
+ }
245
+ async function planWrites(root, target, pluginPath) {
246
+ if (target === "codex")
247
+ return planCodex(root);
248
+ if (target === "claude")
249
+ return planClaude(root);
250
+ if (target === "cursor")
251
+ return planCursor(root);
252
+ if (target === "gemini")
253
+ return planGemini(root);
254
+ if (target === "opencode")
255
+ return planOpenCode(root);
256
+ if (target === "copilot")
257
+ return planCopilot(root);
258
+ return planMarketplace(root, pluginPath);
259
+ }
260
+ async function applyWrite(write, options) {
261
+ const alreadyExists = await exists(write.path);
262
+ const action = alreadyExists
263
+ ? options.force || write.overwrite
264
+ ? "overwrite"
265
+ : "backup"
266
+ : "create";
267
+ if (options.dryRun) {
268
+ return { path: write.path, action: `would ${action}` };
269
+ }
270
+ await mkdir(path.dirname(write.path), { recursive: true });
271
+ if (alreadyExists && !options.force && !write.overwrite) {
272
+ const backupPath = `${write.path}.codemap-backup-${Date.now()}`;
273
+ await rename(write.path, backupPath);
274
+ }
275
+ if (write.sourcePath) {
276
+ await copyFile(write.sourcePath, write.path);
277
+ }
278
+ else {
279
+ await writeFile(write.path, `${write.content ?? ""}\n`, "utf8");
280
+ }
281
+ return { path: write.path, action };
282
+ }
283
+ export async function installAgentPack(options) {
284
+ const root = options.cwd ?? process.cwd();
285
+ const dryRun = options.dryRun ?? false;
286
+ const force = options.force ?? false;
287
+ const pluginPath = options.pluginPath;
288
+ const installed = [];
289
+ for (const target of targetsFor(options.target)) {
290
+ const writes = target === "marketplace"
291
+ ? await planMarketplace(root, pluginPath)
292
+ : await planWrites(root, target, pluginPath);
293
+ for (const write of writes) {
294
+ installed.push(await applyWrite(write, { dryRun, force }));
295
+ }
296
+ }
297
+ return {
298
+ target: options.target,
299
+ dryRun,
300
+ force,
301
+ root,
302
+ installed,
303
+ packRoot: getAgentPackRoot(),
304
+ pluginRoot: getPluginRoot(),
305
+ };
306
+ }
307
+ export async function ensureClaudeHooks(cwd) {
308
+ try {
309
+ const write = await mergeClaudeSettings(cwd);
310
+ await mkdir(path.dirname(write.path), { recursive: true });
311
+ await writeFile(write.path, `${write.content ?? ""}\n`, "utf8");
312
+ }
313
+ catch {
314
+ // silently ignore — hooks are best-effort on startup
315
+ }
316
+ }
317
+ export async function listAgentPackFiles() {
318
+ const root = getAgentPackRoot();
319
+ const entries = await readdir(root, { recursive: true });
320
+ return entries.map((entry) => path.join(root, entry.toString()));
321
+ }
322
+ const BACKUP_SUFFIX = ".codemap-backup-";
323
+ async function findBackupFiles(dir) {
324
+ const results = [];
325
+ let entries;
326
+ try {
327
+ entries = await readdir(dir, { withFileTypes: true });
328
+ }
329
+ catch {
330
+ return results;
331
+ }
332
+ for (const entry of entries) {
333
+ const full = path.join(dir, entry.name);
334
+ if (entry.isDirectory()) {
335
+ if (entry.name === "node_modules" || entry.name === ".git")
336
+ continue;
337
+ results.push(...(await findBackupFiles(full)));
338
+ }
339
+ else if (entry.name.includes(BACKUP_SUFFIX)) {
340
+ results.push(full);
341
+ }
342
+ }
343
+ return results;
344
+ }
345
+ export async function cleanAgentPackBackups(root, dryRun) {
346
+ const files = await findBackupFiles(root);
347
+ if (files.length === 0) {
348
+ console.log(`No .codemap-backup-* files found in ${root}`);
349
+ return { deleted: 0, files: [] };
350
+ }
351
+ if (dryRun) {
352
+ console.log(`Found ${files.length} backup file(s):`);
353
+ for (const f of files)
354
+ console.log(` ${f}`);
355
+ console.log("\nRun without --dry-run to delete.");
356
+ return { deleted: 0, files };
357
+ }
358
+ let deleted = 0;
359
+ for (const f of files) {
360
+ try {
361
+ await unlink(f);
362
+ deleted++;
363
+ }
364
+ catch {
365
+ // skip files that can't be deleted
366
+ }
367
+ }
368
+ console.log(`Deleted ${deleted} backup file(s).`);
369
+ return { deleted, files };
370
+ }
371
+ //# sourceMappingURL=agent-pack-installer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"agent-pack-installer.js","sourceRoot":"","sources":["../../src/lib/agent-pack-installer.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,36 @@
1
+ export declare const AGENT_PACK_INDEX_URI = "codemap://agent-pack/index";
2
+ export declare const AGENT_PACK_INSTALL_URI = "codemap://agent-pack/install";
3
+ export declare const AGENT_PACK_CODEX_URI = "codemap://agent-pack/codex";
4
+ export declare const AGENT_PACK_CLAUDE_URI = "codemap://agent-pack/claude";
5
+ export declare const AGENT_PACK_CURSOR_URI = "codemap://agent-pack/cursor";
6
+ export declare const AGENT_PACK_GEMINI_URI = "codemap://agent-pack/gemini";
7
+ export declare const AGENT_PACK_OPENCODE_URI = "codemap://agent-pack/opencode";
8
+ export declare const AGENT_PACK_COPILOT_URI = "codemap://agent-pack/copilot";
9
+ export declare const AGENT_PACK_TEMPLATE_BASE_URI = "codemap://agent-pack/templates";
10
+ export declare const AGENT_PACK_SKILLS: readonly ["mcp-first-exploration", "feature-area-investigation", "symbol-level-debugging", "interpreting-codemap-output", "safe-edit-and-reimport", "token-efficient-code-review", "brainstorming", "writing-plans", "executing-plans", "test-driven-development", "verification-before-completion"];
11
+ export type AgentPackSkillName = (typeof AGENT_PACK_SKILLS)[number];
12
+ export declare const AGENT_PACK_TEMPLATES: readonly [{
13
+ readonly id: "design-spec";
14
+ readonly title: "Design spec template";
15
+ readonly path: "templates/design-spec.md";
16
+ readonly uri: "codemap://agent-pack/templates/design-spec";
17
+ }, {
18
+ readonly id: "implementation-plan";
19
+ readonly title: "Implementation plan template";
20
+ readonly path: "templates/implementation-plan.md";
21
+ readonly uri: "codemap://agent-pack/templates/implementation-plan";
22
+ }, {
23
+ readonly id: "verification-report";
24
+ readonly title: "Verification report template";
25
+ readonly path: "templates/verification-report.md";
26
+ readonly uri: "codemap://agent-pack/templates/verification-report";
27
+ }];
28
+ export type AgentPackTemplate = (typeof AGENT_PACK_TEMPLATES)[number];
29
+ export declare function skillResourceUri(skillName: AgentPackSkillName): string;
30
+ export declare function getAgentPackRoot(): string;
31
+ export declare function getPluginRoot(): string;
32
+ export declare function readAgentPackFile(relativePath: string): Promise<string>;
33
+ export declare function readAgentPackSkill(skillName: AgentPackSkillName): Promise<string>;
34
+ export declare function buildAgentPackIndexMarkdown(): string;
35
+ export declare function buildHarnessMarkdown(harness: "codex" | "claude" | "cursor" | "gemini" | "opencode" | "copilot"): string;
36
+ //# sourceMappingURL=agent-pack.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"agent-pack.d.ts","sourceRoot":"","sources":["../../src/lib/agent-pack.ts"],"names":[],"mappings":"AAKA,eAAO,MAAM,oBAAoB,+BAA+B,CAAC;AACjE,eAAO,MAAM,sBAAsB,iCAAiC,CAAC;AACrE,eAAO,MAAM,oBAAoB,+BAA+B,CAAC;AACjE,eAAO,MAAM,qBAAqB,gCAAgC,CAAC;AACnE,eAAO,MAAM,qBAAqB,gCAAgC,CAAC;AACnE,eAAO,MAAM,qBAAqB,gCAAgC,CAAC;AACnE,eAAO,MAAM,uBAAuB,kCAAkC,CAAC;AACvE,eAAO,MAAM,sBAAsB,iCAAiC,CAAC;AACrE,eAAO,MAAM,4BAA4B,mCAAmC,CAAC;AAE7E,eAAO,MAAM,iBAAiB,sSAYpB,CAAC;AAEX,MAAM,MAAM,kBAAkB,GAAG,CAAC,OAAO,iBAAiB,CAAC,CAAC,MAAM,CAAC,CAAC;AAEpE,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;EAmBvB,CAAC;AAEX,MAAM,MAAM,iBAAiB,GAAG,CAAC,OAAO,oBAAoB,CAAC,CAAC,MAAM,CAAC,CAAC;AAEtE,wBAAgB,gBAAgB,CAAC,SAAS,EAAE,kBAAkB,UAE7D;AAED,wBAAgB,gBAAgB,WAE/B;AAED,wBAAgB,aAAa,WAE5B;AAED,wBAAsB,iBAAiB,CAAC,YAAY,EAAE,MAAM,mBAE3D;AAED,wBAAsB,kBAAkB,CAAC,SAAS,EAAE,kBAAkB,mBAErE;AAED,wBAAgB,2BAA2B,WA+B1C;AAED,wBAAgB,oBAAoB,CAClC,OAAO,EAAE,OAAO,GAAG,QAAQ,GAAG,QAAQ,GAAG,QAAQ,GAAG,UAAU,GAAG,SAAS,UA4B3E"}
@@ -0,0 +1,119 @@
1
+ import path from "node:path";
2
+ import { readFile } from "node:fs/promises";
3
+ import { getPackageRoot } from "./bundled-runtime.js";
4
+ export const AGENT_PACK_INDEX_URI = "codemap://agent-pack/index";
5
+ export const AGENT_PACK_INSTALL_URI = "codemap://agent-pack/install";
6
+ export const AGENT_PACK_CODEX_URI = "codemap://agent-pack/codex";
7
+ export const AGENT_PACK_CLAUDE_URI = "codemap://agent-pack/claude";
8
+ export const AGENT_PACK_CURSOR_URI = "codemap://agent-pack/cursor";
9
+ export const AGENT_PACK_GEMINI_URI = "codemap://agent-pack/gemini";
10
+ export const AGENT_PACK_OPENCODE_URI = "codemap://agent-pack/opencode";
11
+ export const AGENT_PACK_COPILOT_URI = "codemap://agent-pack/copilot";
12
+ export const AGENT_PACK_TEMPLATE_BASE_URI = "codemap://agent-pack/templates";
13
+ export const AGENT_PACK_SKILLS = [
14
+ "mcp-first-exploration",
15
+ "feature-area-investigation",
16
+ "symbol-level-debugging",
17
+ "interpreting-codemap-output",
18
+ "safe-edit-and-reimport",
19
+ "token-efficient-code-review",
20
+ "brainstorming",
21
+ "writing-plans",
22
+ "executing-plans",
23
+ "test-driven-development",
24
+ "verification-before-completion",
25
+ ];
26
+ export const AGENT_PACK_TEMPLATES = [
27
+ {
28
+ id: "design-spec",
29
+ title: "Design spec template",
30
+ path: "templates/design-spec.md",
31
+ uri: `${AGENT_PACK_TEMPLATE_BASE_URI}/design-spec`,
32
+ },
33
+ {
34
+ id: "implementation-plan",
35
+ title: "Implementation plan template",
36
+ path: "templates/implementation-plan.md",
37
+ uri: `${AGENT_PACK_TEMPLATE_BASE_URI}/implementation-plan`,
38
+ },
39
+ {
40
+ id: "verification-report",
41
+ title: "Verification report template",
42
+ path: "templates/verification-report.md",
43
+ uri: `${AGENT_PACK_TEMPLATE_BASE_URI}/verification-report`,
44
+ },
45
+ ];
46
+ export function skillResourceUri(skillName) {
47
+ return `codemap://skills/${skillName}`;
48
+ }
49
+ export function getAgentPackRoot() {
50
+ return path.join(getPackageRoot(import.meta.url), "agent-pack");
51
+ }
52
+ export function getPluginRoot() {
53
+ return getPackageRoot(import.meta.url);
54
+ }
55
+ export async function readAgentPackFile(relativePath) {
56
+ return readFile(path.join(getAgentPackRoot(), relativePath), "utf8");
57
+ }
58
+ export async function readAgentPackSkill(skillName) {
59
+ return readAgentPackFile(`skills/${skillName}/SKILL.md`);
60
+ }
61
+ export function buildAgentPackIndexMarkdown() {
62
+ return [
63
+ "# CodeMap Agent Pack",
64
+ "",
65
+ "CodeMap Agent Pack is the workflow layer for CodeMap MCP. It teaches agents to use CodeMap as a context engine before raw file reads.",
66
+ "",
67
+ "## Resources",
68
+ `- ${AGENT_PACK_INSTALL_URI}`,
69
+ `- ${AGENT_PACK_CODEX_URI}`,
70
+ `- ${AGENT_PACK_CLAUDE_URI}`,
71
+ `- ${AGENT_PACK_CURSOR_URI}`,
72
+ `- ${AGENT_PACK_GEMINI_URI}`,
73
+ `- ${AGENT_PACK_OPENCODE_URI}`,
74
+ `- ${AGENT_PACK_COPILOT_URI}`,
75
+ "",
76
+ "## Skills",
77
+ ...AGENT_PACK_SKILLS.map((skill) => `- ${skillResourceUri(skill)}`),
78
+ "",
79
+ "## Artifact Templates",
80
+ ...AGENT_PACK_TEMPLATES.map((template) => `- ${template.uri} — ${template.title}`),
81
+ "",
82
+ "## Local Install",
83
+ "",
84
+ "```bash",
85
+ "codemap init-agent-pack --target all",
86
+ "codemap doctor-agent-pack --target auto",
87
+ "```",
88
+ "",
89
+ "Use `codemap doctor-agent-pack` to verify local rules and skills after install.",
90
+ "Use `codemap agent-pack-path` to print the local plugin root path.",
91
+ ].join("\n");
92
+ }
93
+ export function buildHarnessMarkdown(harness) {
94
+ const title = harness === "codex"
95
+ ? "Codex"
96
+ : harness === "claude"
97
+ ? "Claude"
98
+ : harness === "cursor"
99
+ ? "Cursor"
100
+ : harness === "gemini"
101
+ ? "Gemini"
102
+ : harness === "opencode"
103
+ ? "OpenCode"
104
+ : "GitHub Copilot CLI";
105
+ return [
106
+ `# CodeMap Agent Pack for ${title}`,
107
+ "",
108
+ "Install local rules and skills with:",
109
+ "",
110
+ "```bash",
111
+ `codemap init-agent-pack --target ${harness}`,
112
+ `codemap doctor-agent-pack --target ${harness}`,
113
+ "```",
114
+ "",
115
+ "The doctor command verifies the installed rules and skills contain the required workflow gates.",
116
+ "The installed guidance tells the agent to use CodeMap MCP tools for broad work, choose exploration tools based on task clarity, and finish with verification plus index refresh/reimport decisions.",
117
+ ].join("\n");
118
+ }
119
+ //# sourceMappingURL=agent-pack.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"agent-pack.js","sourceRoot":"","sources":["../../src/lib/agent-pack.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,37 @@
1
+ import { type AgentPackSkillName } from "./agent-pack.js";
2
+ export declare const MCP_FIRST_RULE_URI = "codemap://rules/mcp-first";
3
+ export declare const TASK_LIFECYCLE_RULE_URI = "codemap://rules/task-lifecycle";
4
+ export declare const SKILL_ROUTING_RULE_URI = "codemap://rules/skill-routing";
5
+ export declare const WORKFLOW_GATES_RULE_URI = "codemap://rules/workflow-gates";
6
+ export declare const VERIFICATION_BEFORE_COMPLETION_RULE_URI = "codemap://rules/verification-before-completion";
7
+ export declare const TASK_TYPES: readonly ["feature", "bugfix", "debugging", "review", "refactor", "test", "research"];
8
+ export type AgentTaskType = (typeof TASK_TYPES)[number];
9
+ export declare const WORKFLOW_PHASES: readonly ["orient", "design", "plan", "implement", "verify", "finish"];
10
+ export type AgentWorkflowPhase = (typeof WORKFLOW_PHASES)[number];
11
+ export interface WorkflowRoute {
12
+ taskType: AgentTaskType;
13
+ description: string;
14
+ requiredSkills: AgentPackSkillName[];
15
+ firstTools: string[];
16
+ hardGates: string[];
17
+ requiredOutputs: string[];
18
+ completionChecks: string[];
19
+ phases: AgentWorkflowPhase[];
20
+ }
21
+ export declare const DEFAULT_VERIFICATION_CHECKLIST: string[];
22
+ export declare const WORKFLOW_ROUTES: Record<AgentTaskType, WorkflowRoute>;
23
+ export declare const ARTIFACT_TEMPLATES: {
24
+ id: "design-spec" | "implementation-plan" | "verification-report";
25
+ title: "Design spec template" | "Implementation plan template" | "Verification report template";
26
+ path: "templates/design-spec.md" | "templates/implementation-plan.md" | "templates/verification-report.md";
27
+ resourceUri: "codemap://agent-pack/templates/design-spec" | "codemap://agent-pack/templates/implementation-plan" | "codemap://agent-pack/templates/verification-report";
28
+ }[];
29
+ export declare const AGENT_WORKFLOW_SUMMARY: string[];
30
+ export declare const AGENT_WORKFLOW_SEQUENCE: string[];
31
+ export declare const SKILL_ROUTING_RULE_MARKDOWN: string;
32
+ export declare const WORKFLOW_GATES_RULE_MARKDOWN = "# CodeMap Workflow Gates\n\nCodeMap Agent Pack uses Superpowers-style gates to keep agents from jumping into edits too early.\n\n## Gates\n\n1. **Orient** \u2014 The project-context resource is already loaded in your context \u2014 do NOT call `get_project` or `list_projects` unless the user explicitly asks for project or account info. If no local index exists yet, call `refresh_local_index` (no auth required). Then choose the narrowest CodeMap context tool: `explore_task` for broad unclear work, `search_codebase` for known names, `find_related_files` for related-file questions, or `get_file`/`get_file` for known paths.\n2. **Design** \u2014 for features or vague tasks, complete brainstorming and get design approval before editing production files.\n3. **Plan** \u2014 after design approval, write an implementation plan with exact files, steps, and verification commands.\n4. **Implement** \u2014 follow the plan or TDD loop; keep changes scoped.\n5. **Verify** \u2014 inspect diff, run relevant checks, refresh local index, and decide cloud reimport.\n6. **Finish** \u2014 summarize changed behavior, verification, skipped checks, and residual risk.\n\nLow-risk one-line fixes may use a lightweight design summary instead of a full spec, but they still require verification.\n";
33
+ export declare const VERIFICATION_BEFORE_COMPLETION_RULE_MARKDOWN: string;
34
+ export declare const MCP_FIRST_RULE_MARKDOWN = "# MCP-First Code Exploration\n\nWhen working in a CodeMap-indexed repository, prefer CodeMap MCP tools before raw file reads or grep.\n\n## Tool Selection\n\nChoose the tool based on the shape of the question:\n\n1. `explore_task` \u2014 use first for broad tasks such as \"fix bug X\", \"implement Y\", or \"investigate Z\". It returns likely files, entrypoints, symbols, risks, recommended reads, and suggested next tools.\n3. `find_related_files` \u2014 use when you already have an anchor file/symbol, or when the user asks \"which files should I read?\", \"what is related to X?\", or \"what is the scope around X?\".\n4. `search_codebase` \u2014 use for known keywords, filenames, exports, or symbols. Pass `semantic=true` for conceptual queries where you do not know the exact symbol name (e.g. \"authentication flow\", \"error handling logic\").\n5. `get_file` \u2014 fetch outlines for several candidate files in one call. Use after `explore_task`, `find_related_files`, or `search_codebase`.\n6. `get_file` \u2014 read exact content only after you know what you need. Prefer `include=[\"outline\"]` for map context and `include=[\"symbols\"]` with `symbol_names` for function/class bodies.\n7. `symbol` / `symbol` \u2014 use for symbol impact analysis. Use `symbol` when the symbol's file is known.\n8. `get_project_map` \u2014 inspect folder structure when module layout is unclear.\n9. `diff` \u2014 inspect uncommitted local changes (mode=working) or committed ref diffs (mode=ref).\n10. Raw Read / grep \u2014 fallback only when MCP cannot answer, such as unindexed files, dynamic string access, or complex regex searches.\n\n## Quick Decisions\n\n- \"Fix/investigate/implement\" with unclear files -> `explore_task` (semantic runs automatically).\n- \"Which files are related?\" -> `find_related_files` (semantic signal built in).\n- Known symbol or filename -> `search_codebase`.\n- Conceptual query, no exact name -> `search_codebase(semantic=true)`.\n- Several candidate files -> `get_file`.\n- Specific symbol body -> `get_file(include=[\"symbols\"], symbol_names=[...])`.\n- Who calls/imports this? -> `symbol` or `symbol`.\n- After edits -> `diff`, build/test, then `refresh_local_index` when the local MCP index should refresh.\n";
35
+ export declare const TASK_LIFECYCLE_RULE_MARKDOWN = "# CodeMap Agent Task Lifecycle\n\n## 1. Orient\n\n- The project-context resource is already loaded in your context \u2014 skip `get_project` and `list_projects` unless the user explicitly asks for project or account info.\n- Use `explore_task`, `find_related_files`, or `search_codebase` according to the task shape.\n\n## 2. Read Deliberately\n\n- Use `get_file` to survey multiple outlines.\n- Use `get_file(include=[\"outline\"])` before full content for large/unknown files.\n- Use `get_file(include=[\"symbols\"], symbol_names=[...])` for exact function/class bodies.\n\n## 3. Edit Safely\n\n- Keep changes scoped to the task.\n- Follow local repo patterns.\n- Do not rewrite unrelated files or revert user changes.\n- For database changes, prefer schema-first workflows and generated migrations.\n\n## 4. Verify\n\n- Run the smallest sufficient build/test.\n- Build shared packages before dependents when applicable.\n- Use `diff` to confirm changed files.\n\n## 5. Refresh Index\n\n- Use `refresh_local_index` after local edits to refresh the MCP SQLite index without cloud access.\n- Use `reimport` only when the cloud index, web graph, or insights should refresh.\n\n## 6. Final Response\n\n- Summarize what changed.\n- Mention verification results.\n- Call out blockers, skipped tests, or unrelated dirty files.\n";
36
+ export declare function buildAgentWorkflowMarkdown(): string;
37
+ //# sourceMappingURL=agent-workflow.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"agent-workflow.d.ts","sourceRoot":"","sources":["../../src/lib/agent-workflow.ts"],"names":[],"mappings":"AAAA,OAAO,EAKL,KAAK,kBAAkB,EAExB,MAAM,iBAAiB,CAAC;AAEzB,eAAO,MAAM,kBAAkB,8BAA8B,CAAC;AAC9D,eAAO,MAAM,uBAAuB,mCAAmC,CAAC;AACxE,eAAO,MAAM,sBAAsB,kCAAkC,CAAC;AACtE,eAAO,MAAM,uBAAuB,mCAAmC,CAAC;AACxE,eAAO,MAAM,uCAAuC,mDACF,CAAC;AAEnD,eAAO,MAAM,UAAU,uFAQb,CAAC;AAEX,MAAM,MAAM,aAAa,GAAG,CAAC,OAAO,UAAU,CAAC,CAAC,MAAM,CAAC,CAAC;AAExD,eAAO,MAAM,eAAe,wEAOlB,CAAC;AAEX,MAAM,MAAM,kBAAkB,GAAG,CAAC,OAAO,eAAe,CAAC,CAAC,MAAM,CAAC,CAAC;AAElE,MAAM,WAAW,aAAa;IAC5B,QAAQ,EAAE,aAAa,CAAC;IACxB,WAAW,EAAE,MAAM,CAAC;IACpB,cAAc,EAAE,kBAAkB,EAAE,CAAC;IACrC,UAAU,EAAE,MAAM,EAAE,CAAC;IACrB,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,eAAe,EAAE,MAAM,EAAE,CAAC;IAC1B,gBAAgB,EAAE,MAAM,EAAE,CAAC;IAC3B,MAAM,EAAE,kBAAkB,EAAE,CAAC;CAC9B;AAED,eAAO,MAAM,8BAA8B,UAM1C,CAAC;AAEF,eAAO,MAAM,eAAe,EAAE,MAAM,CAAC,aAAa,EAAE,aAAa,CAiHhE,CAAC;AAEF,eAAO,MAAM,kBAAkB;;;;;GAK5B,CAAC;AAEJ,eAAO,MAAM,sBAAsB,UAWlC,CAAC;AAEF,eAAO,MAAM,uBAAuB,UASnC,CAAC;AAEF,eAAO,MAAM,2BAA2B,QAsBvC,CAAC;AAEF,eAAO,MAAM,4BAA4B,6wCAcxC,CAAC;AAEF,eAAO,MAAM,4CAA4C,QAWxD,CAAC;AAEF,eAAO,MAAM,uBAAuB,gtEA4BnC,CAAC;AAEF,eAAO,MAAM,4BAA4B,gzCAoCxC,CAAC;AAEF,wBAAgB,0BAA0B,WA6CzC"}