youmd 0.3.2 → 0.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (63) hide show
  1. package/dist/commands/chat.d.ts.map +1 -1
  2. package/dist/commands/chat.js +718 -52
  3. package/dist/commands/chat.js.map +1 -1
  4. package/dist/commands/diff.d.ts +1 -1
  5. package/dist/commands/diff.d.ts.map +1 -1
  6. package/dist/commands/diff.js +261 -8
  7. package/dist/commands/diff.js.map +1 -1
  8. package/dist/commands/export.d.ts +8 -0
  9. package/dist/commands/export.d.ts.map +1 -0
  10. package/dist/commands/export.js +97 -0
  11. package/dist/commands/export.js.map +1 -0
  12. package/dist/commands/init.d.ts.map +1 -1
  13. package/dist/commands/init.js +38 -0
  14. package/dist/commands/init.js.map +1 -1
  15. package/dist/commands/keys.d.ts +2 -1
  16. package/dist/commands/keys.d.ts.map +1 -1
  17. package/dist/commands/keys.js +176 -40
  18. package/dist/commands/keys.js.map +1 -1
  19. package/dist/commands/link.d.ts +7 -0
  20. package/dist/commands/link.d.ts.map +1 -1
  21. package/dist/commands/link.js +235 -59
  22. package/dist/commands/link.js.map +1 -1
  23. package/dist/commands/memories.d.ts +2 -0
  24. package/dist/commands/memories.d.ts.map +1 -0
  25. package/dist/commands/memories.js +113 -0
  26. package/dist/commands/memories.js.map +1 -0
  27. package/dist/commands/private.d.ts +5 -0
  28. package/dist/commands/private.d.ts.map +1 -0
  29. package/dist/commands/private.js +554 -0
  30. package/dist/commands/private.js.map +1 -0
  31. package/dist/commands/project.d.ts +2 -0
  32. package/dist/commands/project.d.ts.map +1 -0
  33. package/dist/commands/project.js +435 -0
  34. package/dist/commands/project.js.map +1 -0
  35. package/dist/commands/pull.d.ts.map +1 -1
  36. package/dist/commands/pull.js +23 -0
  37. package/dist/commands/pull.js.map +1 -1
  38. package/dist/commands/push.d.ts.map +1 -1
  39. package/dist/commands/push.js +21 -0
  40. package/dist/commands/push.js.map +1 -1
  41. package/dist/index.js +37 -7
  42. package/dist/index.js.map +1 -1
  43. package/dist/lib/api.d.ts +85 -0
  44. package/dist/lib/api.d.ts.map +1 -1
  45. package/dist/lib/api.js +83 -0
  46. package/dist/lib/api.js.map +1 -1
  47. package/dist/lib/config.d.ts +51 -0
  48. package/dist/lib/config.d.ts.map +1 -1
  49. package/dist/lib/config.js +182 -0
  50. package/dist/lib/config.js.map +1 -1
  51. package/dist/lib/onboarding.d.ts +2 -1
  52. package/dist/lib/onboarding.d.ts.map +1 -1
  53. package/dist/lib/onboarding.js +18 -11
  54. package/dist/lib/onboarding.js.map +1 -1
  55. package/dist/lib/project.d.ts +87 -0
  56. package/dist/lib/project.d.ts.map +1 -0
  57. package/dist/lib/project.js +345 -0
  58. package/dist/lib/project.js.map +1 -0
  59. package/dist/lib/render.d.ts +71 -0
  60. package/dist/lib/render.d.ts.map +1 -0
  61. package/dist/lib/render.js +286 -0
  62. package/dist/lib/render.js.map +1 -0
  63. package/package.json +1 -1
@@ -364,24 +364,33 @@ function displayScrapeResult(label, data) {
364
364
  class Spinner {
365
365
  constructor(label) {
366
366
  this.interval = null;
367
- this.frames = [" ", ". ", ".. ", "..."];
367
+ this.frames = ["\u280B", "\u2819", "\u2839", "\u2838", "\u283C", "\u2834", "\u2826", "\u2827", "\u2807", "\u280F"];
368
368
  this.frameIndex = 0;
369
+ this.startTime = 0;
369
370
  this.label = label || randomThinking();
370
371
  }
371
372
  start() {
372
- process.stdout.write(chalk_1.default.dim(` ${this.label}...`));
373
+ this.startTime = Date.now();
373
374
  this.interval = setInterval(() => {
374
375
  this.frameIndex = (this.frameIndex + 1) % this.frames.length;
375
- const f = this.frames[this.frameIndex];
376
- process.stdout.write(`\r${chalk_1.default.dim(` ${this.label}${f}`)}`);
377
- }, 300);
376
+ const elapsed = Math.floor((Date.now() - this.startTime) / 1000);
377
+ const time = elapsed >= 2 ? chalk_1.default.dim(` ${elapsed}s`) : "";
378
+ process.stdout.write(`\r ${chalk_1.default.hex("#C46A3A")(this.frames[this.frameIndex])} ${chalk_1.default.dim(this.label)}${time} `);
379
+ }, 80);
378
380
  }
379
- stop() {
381
+ stop(result) {
380
382
  if (this.interval) {
381
383
  clearInterval(this.interval);
382
384
  this.interval = null;
383
385
  }
384
- process.stdout.write("\r" + " ".repeat(80) + "\r");
386
+ const elapsed = Math.floor((Date.now() - this.startTime) / 1000);
387
+ const time = elapsed >= 1 ? chalk_1.default.dim(` ${elapsed}s`) : "";
388
+ if (result) {
389
+ process.stdout.write(`\r ${chalk_1.default.green("\u2713")} ${chalk_1.default.dim(this.label)}${time} ${chalk_1.default.dim(result)}\n`);
390
+ }
391
+ else {
392
+ process.stdout.write("\r" + " ".repeat(80) + "\r");
393
+ }
385
394
  }
386
395
  }
387
396
  exports.Spinner = Spinner;
@@ -823,10 +832,8 @@ generate initial profile sections from what you know, show a brief summary, and
823
832
  function printAgentMessage(text) {
824
833
  if (!text)
825
834
  return;
826
- const lines = text.split("\n");
827
- for (const line of lines) {
828
- console.log(" " + line);
829
- }
835
+ const { renderRichResponse } = require("./render");
836
+ console.log(renderRichResponse(text));
830
837
  console.log("");
831
838
  }
832
839
  // ─── Finish and compile ───────────────────────────────────────────────
@@ -1 +1 @@
1
- {"version":3,"file":"onboarding.js","sourceRoot":"","sources":["../../src/lib/onboarding.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"onboarding.js","sourceRoot":"","sources":["../../src/lib/onboarding.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,87 @@
1
+ export interface ProjectMeta {
2
+ name: string;
3
+ description: string;
4
+ created_at: string;
5
+ updated_at: string;
6
+ }
7
+ export interface ProjectMemory {
8
+ category: string;
9
+ content: string;
10
+ created_at: string;
11
+ }
12
+ export interface ProjectPreferences {
13
+ tone: string;
14
+ stack: string;
15
+ focus: string;
16
+ [key: string]: string;
17
+ }
18
+ export interface ProjectContext {
19
+ meta: ProjectMeta;
20
+ instructions: string;
21
+ preferences: ProjectPreferences;
22
+ prd: string;
23
+ todo: string;
24
+ features: string;
25
+ changelog: string;
26
+ decisions: string;
27
+ memories: ProjectMemory[];
28
+ privateNotes: string;
29
+ }
30
+ /**
31
+ * Creates the full project directory structure with default template files.
32
+ */
33
+ export declare function initProjectFiles(projectDir: string, projectName: string, description?: string): void;
34
+ /**
35
+ * Reads all project context files and returns a structured object.
36
+ * Returns null if the project directory doesn't exist or has no project.json.
37
+ */
38
+ export declare function readProjectContext(projectDir: string): ProjectContext | null;
39
+ /**
40
+ * Writes content to a specific file within the project directory.
41
+ * Creates parent directories if needed.
42
+ */
43
+ export declare function updateProjectFile(projectDir: string, filePath: string, content: string): void;
44
+ /**
45
+ * Reads the project memory.json file.
46
+ */
47
+ export declare function getProjectMemories(projectDir: string): ProjectMemory[];
48
+ /**
49
+ * Appends a memory entry to the project's memory.json.
50
+ */
51
+ export declare function addProjectMemory(projectDir: string, memory: {
52
+ category: string;
53
+ content: string;
54
+ }): void;
55
+ /**
56
+ * Finds the .youmd/projects directory, searching upward from cwd.
57
+ * Returns the path to the projects dir, or null if not found.
58
+ */
59
+ export declare function findProjectsRoot(startDir?: string): string | null;
60
+ /**
61
+ * Lists all project names under .youmd/projects/.
62
+ */
63
+ export declare function listProjects(projectsRoot: string): string[];
64
+ /**
65
+ * Gets the project directory for a given project name.
66
+ */
67
+ export declare function getProjectDir(projectsRoot: string, projectName: string): string;
68
+ /**
69
+ * Detects current project based on cwd or git repo name.
70
+ */
71
+ export declare function detectCurrentProject(projectsRoot: string): string | null;
72
+ /**
73
+ * Builds the project context injection string for the LLM system prompt.
74
+ */
75
+ export declare function buildProjectContextInjection(projectDir: string): string | null;
76
+ /**
77
+ * Parses project_updates JSON blocks from LLM response text.
78
+ * Expected format in the response:
79
+ * ```json
80
+ * {"project_updates": [{"file": "context/todo.md", "content": "..."}]}
81
+ * ```
82
+ */
83
+ export declare function parseProjectUpdates(text: string): Array<{
84
+ file: string;
85
+ content: string;
86
+ }>;
87
+ //# sourceMappingURL=project.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"project.d.ts","sourceRoot":"","sources":["../../src/lib/project.ts"],"names":[],"mappings":"AAKA,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,aAAa;IAC5B,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,kBAAkB;IACjC,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,WAAW,CAAC;IAClB,YAAY,EAAE,MAAM,CAAC;IACrB,WAAW,EAAE,kBAAkB,CAAC;IAChC,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,aAAa,EAAE,CAAC;IAC1B,YAAY,EAAE,MAAM,CAAC;CACtB;AA4CD;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,UAAU,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,WAAW,SAAK,GAAG,IAAI,CAoChG;AAED;;;GAGG;AACH,wBAAgB,kBAAkB,CAAC,UAAU,EAAE,MAAM,GAAG,cAAc,GAAG,IAAI,CAuB5E;AAED;;;GAGG;AACH,wBAAgB,iBAAiB,CAAC,UAAU,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,IAAI,CAmB7F;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,UAAU,EAAE,MAAM,GAAG,aAAa,EAAE,CAEtE;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,UAAU,EAAE,MAAM,EAAE,MAAM,EAAE;IAAE,QAAQ,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,GAAG,IAAI,CAexG;AAID;;;GAGG;AACH,wBAAgB,gBAAgB,CAAC,QAAQ,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAajE;AAED;;GAEG;AACH,wBAAgB,YAAY,CAAC,YAAY,EAAE,MAAM,GAAG,MAAM,EAAE,CAS3D;AAED;;GAEG;AACH,wBAAgB,aAAa,CAAC,YAAY,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,MAAM,CAE/E;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,YAAY,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAYxE;AAED;;GAEG;AACH,wBAAgB,4BAA4B,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAsC9E;AAED;;;;;;GAMG;AACH,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,MAAM,GAAG,KAAK,CAAC;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAAC,CAqB1F"}
@@ -0,0 +1,345 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
35
+ Object.defineProperty(exports, "__esModule", { value: true });
36
+ exports.initProjectFiles = initProjectFiles;
37
+ exports.readProjectContext = readProjectContext;
38
+ exports.updateProjectFile = updateProjectFile;
39
+ exports.getProjectMemories = getProjectMemories;
40
+ exports.addProjectMemory = addProjectMemory;
41
+ exports.findProjectsRoot = findProjectsRoot;
42
+ exports.listProjects = listProjects;
43
+ exports.getProjectDir = getProjectDir;
44
+ exports.detectCurrentProject = detectCurrentProject;
45
+ exports.buildProjectContextInjection = buildProjectContextInjection;
46
+ exports.parseProjectUpdates = parseProjectUpdates;
47
+ const fs = __importStar(require("fs"));
48
+ const path = __importStar(require("path"));
49
+ // ─── Templates ────────────────────────────────────────────────────────
50
+ function prdTemplate(name) {
51
+ return `# ${name}\n\n## Overview\n\n## Goals\n\n## Requirements\n\n## Non-Goals\n`;
52
+ }
53
+ function todoTemplate() {
54
+ return `# TODO\n\n## In Progress\n\n## Backlog\n\n## Done\n`;
55
+ }
56
+ function featuresTemplate() {
57
+ return `# Features\n\n## Requested\n\n## In Progress\n\n## Shipped\n`;
58
+ }
59
+ function changelogTemplate() {
60
+ return `# Changelog\n\n`;
61
+ }
62
+ function decisionsTemplate() {
63
+ return `# Decisions\n\n`;
64
+ }
65
+ function instructionsTemplate() {
66
+ return `# Agent Instructions\n\nProject-specific instructions for AI agents working on this project.\n`;
67
+ }
68
+ function preferencesTemplate() {
69
+ return { tone: "direct", stack: "", focus: "" };
70
+ }
71
+ function projectMetaTemplate(name, description) {
72
+ const now = new Date().toISOString();
73
+ return {
74
+ name,
75
+ description,
76
+ created_at: now,
77
+ updated_at: now,
78
+ };
79
+ }
80
+ // ─── Core functions ───────────────────────────────────────────────────
81
+ /**
82
+ * Creates the full project directory structure with default template files.
83
+ */
84
+ function initProjectFiles(projectDir, projectName, description = "") {
85
+ const dirs = [
86
+ projectDir,
87
+ path.join(projectDir, "private"),
88
+ path.join(projectDir, "context"),
89
+ path.join(projectDir, "agent"),
90
+ ];
91
+ for (const dir of dirs) {
92
+ if (!fs.existsSync(dir)) {
93
+ fs.mkdirSync(dir, { recursive: true });
94
+ }
95
+ }
96
+ // project.json
97
+ const metaPath = path.join(projectDir, "project.json");
98
+ if (!fs.existsSync(metaPath)) {
99
+ fs.writeFileSync(metaPath, JSON.stringify(projectMetaTemplate(projectName, description), null, 2) + "\n");
100
+ }
101
+ // private/
102
+ writeIfMissing(path.join(projectDir, "private", "notes.md"), "# Private Notes\n\n");
103
+ writeIfMissing(path.join(projectDir, "private", "links.json"), JSON.stringify([], null, 2) + "\n");
104
+ writeIfMissing(path.join(projectDir, "private", "projects.json"), JSON.stringify([], null, 2) + "\n");
105
+ // context/
106
+ writeIfMissing(path.join(projectDir, "context", "prd.md"), prdTemplate(projectName));
107
+ writeIfMissing(path.join(projectDir, "context", "todo.md"), todoTemplate());
108
+ writeIfMissing(path.join(projectDir, "context", "features.md"), featuresTemplate());
109
+ writeIfMissing(path.join(projectDir, "context", "changelog.md"), changelogTemplate());
110
+ writeIfMissing(path.join(projectDir, "context", "decisions.md"), decisionsTemplate());
111
+ // agent/
112
+ writeIfMissing(path.join(projectDir, "agent", "instructions.md"), instructionsTemplate());
113
+ writeIfMissing(path.join(projectDir, "agent", "preferences.json"), JSON.stringify(preferencesTemplate(), null, 2) + "\n");
114
+ writeIfMissing(path.join(projectDir, "agent", "memory.json"), JSON.stringify([], null, 2) + "\n");
115
+ }
116
+ /**
117
+ * Reads all project context files and returns a structured object.
118
+ * Returns null if the project directory doesn't exist or has no project.json.
119
+ */
120
+ function readProjectContext(projectDir) {
121
+ const metaPath = path.join(projectDir, "project.json");
122
+ if (!fs.existsSync(metaPath))
123
+ return null;
124
+ let meta;
125
+ try {
126
+ meta = JSON.parse(fs.readFileSync(metaPath, "utf-8"));
127
+ }
128
+ catch {
129
+ return null;
130
+ }
131
+ return {
132
+ meta,
133
+ instructions: readFileOrDefault(path.join(projectDir, "agent", "instructions.md"), ""),
134
+ preferences: readJsonOrDefault(path.join(projectDir, "agent", "preferences.json"), preferencesTemplate()),
135
+ prd: readFileOrDefault(path.join(projectDir, "context", "prd.md"), ""),
136
+ todo: readFileOrDefault(path.join(projectDir, "context", "todo.md"), ""),
137
+ features: readFileOrDefault(path.join(projectDir, "context", "features.md"), ""),
138
+ changelog: readFileOrDefault(path.join(projectDir, "context", "changelog.md"), ""),
139
+ decisions: readFileOrDefault(path.join(projectDir, "context", "decisions.md"), ""),
140
+ memories: readJsonOrDefault(path.join(projectDir, "agent", "memory.json"), []),
141
+ privateNotes: readFileOrDefault(path.join(projectDir, "private", "notes.md"), ""),
142
+ };
143
+ }
144
+ /**
145
+ * Writes content to a specific file within the project directory.
146
+ * Creates parent directories if needed.
147
+ */
148
+ function updateProjectFile(projectDir, filePath, content) {
149
+ const fullPath = path.join(projectDir, filePath);
150
+ const dir = path.dirname(fullPath);
151
+ if (!fs.existsSync(dir)) {
152
+ fs.mkdirSync(dir, { recursive: true });
153
+ }
154
+ fs.writeFileSync(fullPath, content);
155
+ // Touch updated_at in project.json
156
+ const metaPath = path.join(projectDir, "project.json");
157
+ if (fs.existsSync(metaPath)) {
158
+ try {
159
+ const meta = JSON.parse(fs.readFileSync(metaPath, "utf-8"));
160
+ meta.updated_at = new Date().toISOString();
161
+ fs.writeFileSync(metaPath, JSON.stringify(meta, null, 2) + "\n");
162
+ }
163
+ catch {
164
+ // non-fatal
165
+ }
166
+ }
167
+ }
168
+ /**
169
+ * Reads the project memory.json file.
170
+ */
171
+ function getProjectMemories(projectDir) {
172
+ return readJsonOrDefault(path.join(projectDir, "agent", "memory.json"), []);
173
+ }
174
+ /**
175
+ * Appends a memory entry to the project's memory.json.
176
+ */
177
+ function addProjectMemory(projectDir, memory) {
178
+ const memPath = path.join(projectDir, "agent", "memory.json");
179
+ const existing = readJsonOrDefault(memPath, []);
180
+ existing.push({
181
+ category: memory.category,
182
+ content: memory.content,
183
+ created_at: new Date().toISOString(),
184
+ });
185
+ const dir = path.dirname(memPath);
186
+ if (!fs.existsSync(dir)) {
187
+ fs.mkdirSync(dir, { recursive: true });
188
+ }
189
+ fs.writeFileSync(memPath, JSON.stringify(existing, null, 2) + "\n");
190
+ }
191
+ // ─── Project detection ────────────────────────────────────────────────
192
+ /**
193
+ * Finds the .youmd/projects directory, searching upward from cwd.
194
+ * Returns the path to the projects dir, or null if not found.
195
+ */
196
+ function findProjectsRoot(startDir) {
197
+ let dir = startDir || process.cwd();
198
+ const root = path.parse(dir).root;
199
+ while (dir !== root) {
200
+ const candidate = path.join(dir, ".youmd", "projects");
201
+ if (fs.existsSync(candidate)) {
202
+ return candidate;
203
+ }
204
+ dir = path.dirname(dir);
205
+ }
206
+ return null;
207
+ }
208
+ /**
209
+ * Lists all project names under .youmd/projects/.
210
+ */
211
+ function listProjects(projectsRoot) {
212
+ if (!fs.existsSync(projectsRoot))
213
+ return [];
214
+ return fs
215
+ .readdirSync(projectsRoot)
216
+ .filter((name) => {
217
+ const projectJson = path.join(projectsRoot, name, "project.json");
218
+ return fs.existsSync(projectJson);
219
+ })
220
+ .sort();
221
+ }
222
+ /**
223
+ * Gets the project directory for a given project name.
224
+ */
225
+ function getProjectDir(projectsRoot, projectName) {
226
+ return path.join(projectsRoot, slugify(projectName));
227
+ }
228
+ /**
229
+ * Detects current project based on cwd or git repo name.
230
+ */
231
+ function detectCurrentProject(projectsRoot) {
232
+ const cwd = process.cwd();
233
+ const dirName = path.basename(cwd);
234
+ const slug = slugify(dirName);
235
+ // Check if a project matching the current directory name exists
236
+ const candidatePath = path.join(projectsRoot, slug, "project.json");
237
+ if (fs.existsSync(candidatePath)) {
238
+ return slug;
239
+ }
240
+ return null;
241
+ }
242
+ /**
243
+ * Builds the project context injection string for the LLM system prompt.
244
+ */
245
+ function buildProjectContextInjection(projectDir) {
246
+ const ctx = readProjectContext(projectDir);
247
+ if (!ctx)
248
+ return null;
249
+ const parts = [];
250
+ parts.push(`[PROJECT CONTEXT — the user is working in project "${ctx.meta.name}"]`);
251
+ if (ctx.meta.description) {
252
+ parts.push(`description: ${ctx.meta.description}`);
253
+ }
254
+ if (ctx.instructions.trim() && ctx.instructions !== instructionsTemplate()) {
255
+ parts.push(`agent instructions: ${ctx.instructions}`);
256
+ }
257
+ const prefs = ctx.preferences;
258
+ const prefParts = [];
259
+ if (prefs.tone)
260
+ prefParts.push(`tone=${prefs.tone}`);
261
+ if (prefs.stack)
262
+ prefParts.push(`stack=${prefs.stack}`);
263
+ if (prefs.focus)
264
+ prefParts.push(`focus=${prefs.focus}`);
265
+ if (prefParts.length > 0) {
266
+ parts.push(`preferences: ${prefParts.join(", ")}`);
267
+ }
268
+ if (ctx.prd.trim() && ctx.prd !== prdTemplate(ctx.meta.name)) {
269
+ parts.push(`current PRD summary: ${ctx.prd.slice(0, 500)}`);
270
+ }
271
+ if (ctx.todo.trim() && ctx.todo !== todoTemplate()) {
272
+ parts.push(`current tasks:\n${ctx.todo}`);
273
+ }
274
+ // Only return something if there's meaningful content beyond the name
275
+ if (parts.length <= 1) {
276
+ parts.push("(project context is mostly empty — help the user fill it in if relevant)");
277
+ }
278
+ return parts.join("\n");
279
+ }
280
+ /**
281
+ * Parses project_updates JSON blocks from LLM response text.
282
+ * Expected format in the response:
283
+ * ```json
284
+ * {"project_updates": [{"file": "context/todo.md", "content": "..."}]}
285
+ * ```
286
+ */
287
+ function parseProjectUpdates(text) {
288
+ const updates = [];
289
+ const blocks = text.matchAll(/```json\s*\n([\s\S]*?)\n```/g);
290
+ for (const match of blocks) {
291
+ try {
292
+ const parsed = JSON.parse(match[1]);
293
+ if (parsed.project_updates && Array.isArray(parsed.project_updates)) {
294
+ for (const pu of parsed.project_updates) {
295
+ if (pu?.file && typeof pu.file === "string" && pu?.content && typeof pu.content === "string") {
296
+ // Validate file path is within allowed directories
297
+ if (pu.file.startsWith("context/") || pu.file.startsWith("agent/") || pu.file.startsWith("private/")) {
298
+ updates.push({ file: pu.file, content: pu.content });
299
+ }
300
+ }
301
+ }
302
+ }
303
+ }
304
+ catch {
305
+ // skip malformed JSON blocks
306
+ }
307
+ }
308
+ return updates;
309
+ }
310
+ // ─── Utilities ────────────────────────────────────────────────────────
311
+ function slugify(name) {
312
+ return name
313
+ .toLowerCase()
314
+ .replace(/[^a-z0-9]+/g, "-")
315
+ .replace(/^-+|-+$/g, "")
316
+ .slice(0, 64);
317
+ }
318
+ function writeIfMissing(filePath, content) {
319
+ if (!fs.existsSync(filePath)) {
320
+ fs.writeFileSync(filePath, content);
321
+ }
322
+ }
323
+ function readFileOrDefault(filePath, fallback) {
324
+ try {
325
+ if (fs.existsSync(filePath)) {
326
+ return fs.readFileSync(filePath, "utf-8");
327
+ }
328
+ }
329
+ catch {
330
+ // fall through
331
+ }
332
+ return fallback;
333
+ }
334
+ function readJsonOrDefault(filePath, fallback) {
335
+ try {
336
+ if (fs.existsSync(filePath)) {
337
+ return JSON.parse(fs.readFileSync(filePath, "utf-8"));
338
+ }
339
+ }
340
+ catch {
341
+ // fall through
342
+ }
343
+ return fallback;
344
+ }
345
+ //# sourceMappingURL=project.js.map