aicodeman 1.0.0 → 1.1.1

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 (169) hide show
  1. package/README.md +2 -1
  2. package/dist/cli.d.ts.map +1 -1
  3. package/dist/cli.js +27 -0
  4. package/dist/cli.js.map +1 -1
  5. package/dist/config/dependency-registry.d.ts +42 -0
  6. package/dist/config/dependency-registry.d.ts.map +1 -0
  7. package/dist/config/dependency-registry.js +104 -0
  8. package/dist/config/dependency-registry.js.map +1 -0
  9. package/dist/document-conversion-limiter.d.ts +27 -0
  10. package/dist/document-conversion-limiter.d.ts.map +1 -0
  11. package/dist/document-conversion-limiter.js +64 -0
  12. package/dist/document-conversion-limiter.js.map +1 -0
  13. package/dist/document-preview-cache.d.ts +15 -0
  14. package/dist/document-preview-cache.d.ts.map +1 -0
  15. package/dist/document-preview-cache.js +261 -0
  16. package/dist/document-preview-cache.js.map +1 -0
  17. package/dist/document-thumbnailer.d.ts +9 -0
  18. package/dist/document-thumbnailer.d.ts.map +1 -0
  19. package/dist/document-thumbnailer.js +70 -0
  20. package/dist/document-thumbnailer.js.map +1 -0
  21. package/dist/hooks-config.d.ts +34 -0
  22. package/dist/hooks-config.d.ts.map +1 -1
  23. package/dist/hooks-config.js +203 -73
  24. package/dist/hooks-config.js.map +1 -1
  25. package/dist/image-watcher.d.ts.map +1 -1
  26. package/dist/image-watcher.js +2 -6
  27. package/dist/image-watcher.js.map +1 -1
  28. package/dist/session-attachment-history.d.ts +19 -0
  29. package/dist/session-attachment-history.d.ts.map +1 -0
  30. package/dist/session-attachment-history.js +63 -0
  31. package/dist/session-attachment-history.js.map +1 -0
  32. package/dist/session.d.ts +10 -0
  33. package/dist/session.d.ts.map +1 -1
  34. package/dist/session.js +27 -0
  35. package/dist/session.js.map +1 -1
  36. package/dist/types/session.d.ts +35 -0
  37. package/dist/types/session.d.ts.map +1 -1
  38. package/dist/types/session.js.map +1 -1
  39. package/dist/usage-telemetry.d.ts +102 -0
  40. package/dist/usage-telemetry.d.ts.map +1 -0
  41. package/dist/usage-telemetry.js +130 -0
  42. package/dist/usage-telemetry.js.map +1 -0
  43. package/dist/utils/dependency-checker.d.ts +42 -0
  44. package/dist/utils/dependency-checker.d.ts.map +1 -0
  45. package/dist/utils/dependency-checker.js +167 -0
  46. package/dist/utils/dependency-checker.js.map +1 -0
  47. package/dist/utils/dependency-report.d.ts +26 -0
  48. package/dist/utils/dependency-report.d.ts.map +1 -0
  49. package/dist/utils/dependency-report.js +68 -0
  50. package/dist/utils/dependency-report.js.map +1 -0
  51. package/dist/web/middleware/auth.d.ts +4 -8
  52. package/dist/web/middleware/auth.d.ts.map +1 -1
  53. package/dist/web/middleware/auth.js +18 -25
  54. package/dist/web/middleware/auth.js.map +1 -1
  55. package/dist/web/plan-usage-latest.d.ts +15 -0
  56. package/dist/web/plan-usage-latest.d.ts.map +1 -0
  57. package/dist/web/plan-usage-latest.js +20 -0
  58. package/dist/web/plan-usage-latest.js.map +1 -0
  59. package/dist/web/public/api-client.c9b1cddc.js.gz +0 -0
  60. package/dist/web/public/app.92f49a9d.js +37 -0
  61. package/dist/web/public/app.92f49a9d.js.br +0 -0
  62. package/dist/web/public/app.92f49a9d.js.gz +0 -0
  63. package/dist/web/public/{constants.aa510a4d.js → constants.59faac65.js} +16 -0
  64. package/dist/web/public/constants.59faac65.js.br +0 -0
  65. package/dist/web/public/constants.59faac65.js.gz +0 -0
  66. package/dist/web/public/image-input.0ea86695.js.gz +0 -0
  67. package/dist/web/public/index.html +40 -27
  68. package/dist/web/public/index.html.br +0 -0
  69. package/dist/web/public/index.html.gz +0 -0
  70. package/dist/web/public/input-cjk.b8686b5e.js.gz +0 -0
  71. package/dist/web/public/keyboard-accessory.bc753cc7.js.gz +0 -0
  72. package/dist/web/public/{mobile-handlers.763a7439.js → mobile-handlers.db3dc3c8.js} +3 -0
  73. package/dist/web/public/mobile-handlers.db3dc3c8.js.br +0 -0
  74. package/dist/web/public/mobile-handlers.db3dc3c8.js.gz +0 -0
  75. package/dist/web/public/mobile.06b38d3a.css +1 -0
  76. package/dist/web/public/mobile.06b38d3a.css.br +0 -0
  77. package/dist/web/public/mobile.06b38d3a.css.gz +0 -0
  78. package/dist/web/public/notification-manager.9c984ac2.js.gz +0 -0
  79. package/dist/web/public/orchestrator-panel.js.gz +0 -0
  80. package/dist/web/public/{panels-ui.ba0b0f1a.js → panels-ui.2f467969.js} +141 -87
  81. package/dist/web/public/panels-ui.2f467969.js.br +0 -0
  82. package/dist/web/public/panels-ui.2f467969.js.gz +0 -0
  83. package/dist/web/public/ralph-panel.6de2d0f8.js.gz +0 -0
  84. package/dist/web/public/ralph-wizard.13a1831e.js.gz +0 -0
  85. package/dist/web/public/respawn-ui.2d249da9.js.gz +0 -0
  86. package/dist/web/public/sanitize-html.bc7078d6.js +1 -0
  87. package/dist/web/public/sanitize-html.bc7078d6.js.br +0 -0
  88. package/dist/web/public/sanitize-html.bc7078d6.js.gz +0 -0
  89. package/dist/web/public/session-ui.1463b824.js +36 -0
  90. package/dist/web/public/session-ui.1463b824.js.br +0 -0
  91. package/dist/web/public/session-ui.1463b824.js.gz +0 -0
  92. package/dist/web/public/settings-ui.44b99ce0.js +55 -0
  93. package/dist/web/public/settings-ui.44b99ce0.js.br +0 -0
  94. package/dist/web/public/settings-ui.44b99ce0.js.gz +0 -0
  95. package/dist/web/public/styles.8e1ea0c6.css +1 -0
  96. package/dist/web/public/styles.8e1ea0c6.css.br +0 -0
  97. package/dist/web/public/styles.8e1ea0c6.css.gz +0 -0
  98. package/dist/web/public/subagent-windows.a366a4ad.js.gz +0 -0
  99. package/dist/web/public/sw.js.gz +0 -0
  100. package/dist/web/public/terminal-ui.a7e046da.js +3 -0
  101. package/dist/web/public/terminal-ui.a7e046da.js.br +0 -0
  102. package/dist/web/public/terminal-ui.a7e046da.js.gz +0 -0
  103. package/dist/web/public/upload.html.gz +0 -0
  104. package/dist/web/public/vendor/dompurify.min.js +3 -0
  105. package/dist/web/public/vendor/dompurify.min.js.br +0 -0
  106. package/dist/web/public/vendor/dompurify.min.js.gz +0 -0
  107. package/dist/web/public/vendor/marked.min.js.gz +0 -0
  108. package/dist/web/public/vendor/xterm-addon-fit.min.js.gz +0 -0
  109. package/dist/web/public/vendor/xterm-addon-serialize.min.js.gz +0 -0
  110. package/dist/web/public/vendor/xterm-addon-unicode11.min.js.gz +0 -0
  111. package/dist/web/public/vendor/xterm-addon-webgl.min.js.gz +0 -0
  112. package/dist/web/public/vendor/xterm-zerolag-input.137ad9f0.js.gz +0 -0
  113. package/dist/web/public/vendor/xterm.css.gz +0 -0
  114. package/dist/web/public/vendor/xterm.min.js.gz +0 -0
  115. package/dist/web/public/voice-input.085e9e73.js.gz +0 -0
  116. package/dist/web/routes/file-routes.d.ts +2 -2
  117. package/dist/web/routes/file-routes.d.ts.map +1 -1
  118. package/dist/web/routes/file-routes.js +298 -1
  119. package/dist/web/routes/file-routes.js.map +1 -1
  120. package/dist/web/routes/index.d.ts +1 -0
  121. package/dist/web/routes/index.d.ts.map +1 -1
  122. package/dist/web/routes/index.js +1 -0
  123. package/dist/web/routes/index.js.map +1 -1
  124. package/dist/web/routes/session-routes.d.ts.map +1 -1
  125. package/dist/web/routes/session-routes.js +27 -1
  126. package/dist/web/routes/session-routes.js.map +1 -1
  127. package/dist/web/routes/status-telemetry-routes.d.ts +17 -0
  128. package/dist/web/routes/status-telemetry-routes.d.ts.map +1 -0
  129. package/dist/web/routes/status-telemetry-routes.js +57 -0
  130. package/dist/web/routes/status-telemetry-routes.js.map +1 -0
  131. package/dist/web/routes/system-routes.d.ts.map +1 -1
  132. package/dist/web/routes/system-routes.js +21 -1
  133. package/dist/web/routes/system-routes.js.map +1 -1
  134. package/dist/web/schemas.d.ts +30 -1
  135. package/dist/web/schemas.d.ts.map +1 -1
  136. package/dist/web/schemas.js +52 -0
  137. package/dist/web/schemas.js.map +1 -1
  138. package/dist/web/server.d.ts.map +1 -1
  139. package/dist/web/server.js +51 -5
  140. package/dist/web/server.js.map +1 -1
  141. package/dist/web/sse-events.d.ts +3 -0
  142. package/dist/web/sse-events.d.ts.map +1 -1
  143. package/dist/web/sse-events.js +3 -0
  144. package/dist/web/sse-events.js.map +1 -1
  145. package/package.json +1 -1
  146. package/dist/web/public/app.95e6e231.js +0 -35
  147. package/dist/web/public/app.95e6e231.js.br +0 -0
  148. package/dist/web/public/app.95e6e231.js.gz +0 -0
  149. package/dist/web/public/constants.aa510a4d.js.br +0 -0
  150. package/dist/web/public/constants.aa510a4d.js.gz +0 -0
  151. package/dist/web/public/mobile-handlers.763a7439.js.br +0 -0
  152. package/dist/web/public/mobile-handlers.763a7439.js.gz +0 -0
  153. package/dist/web/public/mobile.c7513aed.css +0 -1
  154. package/dist/web/public/mobile.c7513aed.css.br +0 -0
  155. package/dist/web/public/mobile.c7513aed.css.gz +0 -0
  156. package/dist/web/public/panels-ui.ba0b0f1a.js.br +0 -0
  157. package/dist/web/public/panels-ui.ba0b0f1a.js.gz +0 -0
  158. package/dist/web/public/session-ui.34f25fdf.js +0 -36
  159. package/dist/web/public/session-ui.34f25fdf.js.br +0 -0
  160. package/dist/web/public/session-ui.34f25fdf.js.gz +0 -0
  161. package/dist/web/public/settings-ui.bf79c4c0.js +0 -55
  162. package/dist/web/public/settings-ui.bf79c4c0.js.br +0 -0
  163. package/dist/web/public/settings-ui.bf79c4c0.js.gz +0 -0
  164. package/dist/web/public/styles.f3cc9833.css +0 -1
  165. package/dist/web/public/styles.f3cc9833.css.br +0 -0
  166. package/dist/web/public/styles.f3cc9833.css.gz +0 -0
  167. package/dist/web/public/terminal-ui.5bf97f7e.js +0 -3
  168. package/dist/web/public/terminal-ui.5bf97f7e.js.br +0 -0
  169. package/dist/web/public/terminal-ui.5bf97f7e.js.gz +0 -0
@@ -27,6 +27,27 @@ import { existsSync } from 'node:fs';
27
27
  import { readFile, writeFile, mkdir } from 'node:fs/promises';
28
28
  import { join } from 'node:path';
29
29
  import { HOOK_TIMEOUT_MS } from './config/auth-config.js';
30
+ /**
31
+ * Serializes read-modify-write access to a `settings.local.json` path. Every
32
+ * writer in this module (hooks, env, model, statusLine) shares this map, so
33
+ * concurrent updates to the SAME file — e.g. session-create writing hooks/model
34
+ * while an App-Settings toggle injects the statusLine into the same repo — can't
35
+ * lose each other's changes through interleaved read-then-write. Per-path chains
36
+ * are independent; the map self-prunes when a path's chain goes idle.
37
+ */
38
+ const settingsWriteLocks = new Map();
39
+ function withSettingsLock(path, fn) {
40
+ const prev = settingsWriteLocks.get(path) ?? Promise.resolve();
41
+ const run = prev.then(fn, fn); // run after the prior writer, regardless of its outcome
42
+ // Tail never rejects, so a failed write doesn't poison subsequent writers.
43
+ const tail = run.then(() => { }, () => { });
44
+ settingsWriteLocks.set(path, tail);
45
+ void tail.then(() => {
46
+ if (settingsWriteLocks.get(path) === tail)
47
+ settingsWriteLocks.delete(path);
48
+ });
49
+ return run;
50
+ }
30
51
  /**
31
52
  * Generates the hooks section for .claude/settings.local.json
32
53
  *
@@ -96,29 +117,31 @@ export async function stripCaseEnvKeys(casePath, keysToRemove) {
96
117
  if (keysToRemove.length === 0)
97
118
  return;
98
119
  const settingsPath = join(casePath, '.claude', 'settings.local.json');
99
- if (!existsSync(settingsPath))
100
- return;
101
- let existing;
102
- try {
103
- existing = JSON.parse(await readFile(settingsPath, 'utf-8'));
104
- }
105
- catch {
106
- return; // Malformed — don't rewrite it
107
- }
108
- const env = existing.env;
109
- if (!env)
110
- return;
111
- let changed = false;
112
- for (const key of keysToRemove) {
113
- if (key in env) {
114
- delete env[key];
115
- changed = true;
116
- }
117
- }
118
- if (!changed)
119
- return;
120
- existing.env = env;
121
- await writeFile(settingsPath, JSON.stringify(existing, null, 2) + '\n');
120
+ await withSettingsLock(settingsPath, async () => {
121
+ if (!existsSync(settingsPath))
122
+ return;
123
+ let existing;
124
+ try {
125
+ existing = JSON.parse(await readFile(settingsPath, 'utf-8'));
126
+ }
127
+ catch {
128
+ return; // Malformed — don't rewrite it
129
+ }
130
+ const env = existing.env;
131
+ if (!env)
132
+ return;
133
+ let changed = false;
134
+ for (const key of keysToRemove) {
135
+ if (key in env) {
136
+ delete env[key];
137
+ changed = true;
138
+ }
139
+ }
140
+ if (!changed)
141
+ return;
142
+ existing.env = env;
143
+ await writeFile(settingsPath, JSON.stringify(existing, null, 2) + '\n');
144
+ });
122
145
  }
123
146
  /**
124
147
  * Updates env vars in .claude/settings.local.json for the given case path.
@@ -126,28 +149,30 @@ export async function stripCaseEnvKeys(casePath, keysToRemove) {
126
149
  */
127
150
  export async function updateCaseEnvVars(casePath, envVars) {
128
151
  const claudeDir = join(casePath, '.claude');
129
- if (!existsSync(claudeDir)) {
130
- await mkdir(claudeDir, { recursive: true });
131
- }
132
152
  const settingsPath = join(claudeDir, 'settings.local.json');
133
- let existing = {};
134
- try {
135
- existing = JSON.parse(await readFile(settingsPath, 'utf-8'));
136
- }
137
- catch {
138
- existing = {};
139
- }
140
- const currentEnv = existing.env || {};
141
- for (const [key, value] of Object.entries(envVars)) {
142
- if (value) {
143
- currentEnv[key] = value;
153
+ await withSettingsLock(settingsPath, async () => {
154
+ if (!existsSync(claudeDir)) {
155
+ await mkdir(claudeDir, { recursive: true });
144
156
  }
145
- else {
146
- delete currentEnv[key];
157
+ let existing = {};
158
+ try {
159
+ existing = JSON.parse(await readFile(settingsPath, 'utf-8'));
160
+ }
161
+ catch {
162
+ existing = {};
147
163
  }
148
- }
149
- existing.env = currentEnv;
150
- await writeFile(settingsPath, JSON.stringify(existing, null, 2) + '\n');
164
+ const currentEnv = existing.env || {};
165
+ for (const [key, value] of Object.entries(envVars)) {
166
+ if (value) {
167
+ currentEnv[key] = value;
168
+ }
169
+ else {
170
+ delete currentEnv[key];
171
+ }
172
+ }
173
+ existing.env = currentEnv;
174
+ await writeFile(settingsPath, JSON.stringify(existing, null, 2) + '\n');
175
+ });
151
176
  }
152
177
  /**
153
178
  * Updates the `model` field in .claude/settings.local.json for the given case path.
@@ -155,24 +180,26 @@ export async function updateCaseEnvVars(casePath, envVars) {
155
180
  */
156
181
  export async function updateCaseModel(casePath, model) {
157
182
  const claudeDir = join(casePath, '.claude');
158
- if (!existsSync(claudeDir)) {
159
- await mkdir(claudeDir, { recursive: true });
160
- }
161
183
  const settingsPath = join(claudeDir, 'settings.local.json');
162
- let existing = {};
163
- try {
164
- existing = JSON.parse(await readFile(settingsPath, 'utf-8'));
165
- }
166
- catch {
167
- existing = {};
168
- }
169
- if (model) {
170
- existing.model = model;
171
- }
172
- else {
173
- delete existing.model;
174
- }
175
- await writeFile(settingsPath, JSON.stringify(existing, null, 2) + '\n');
184
+ await withSettingsLock(settingsPath, async () => {
185
+ if (!existsSync(claudeDir)) {
186
+ await mkdir(claudeDir, { recursive: true });
187
+ }
188
+ let existing = {};
189
+ try {
190
+ existing = JSON.parse(await readFile(settingsPath, 'utf-8'));
191
+ }
192
+ catch {
193
+ existing = {};
194
+ }
195
+ if (model) {
196
+ existing.model = model;
197
+ }
198
+ else {
199
+ delete existing.model;
200
+ }
201
+ await writeFile(settingsPath, JSON.stringify(existing, null, 2) + '\n');
202
+ });
176
203
  }
177
204
  /**
178
205
  * Writes hooks config to .claude/settings.local.json in the given case path.
@@ -180,20 +207,123 @@ export async function updateCaseModel(casePath, model) {
180
207
  */
181
208
  export async function writeHooksConfig(casePath) {
182
209
  const claudeDir = join(casePath, '.claude');
183
- if (!existsSync(claudeDir)) {
184
- await mkdir(claudeDir, { recursive: true });
185
- }
186
210
  const settingsPath = join(claudeDir, 'settings.local.json');
187
- let existing = {};
188
- try {
189
- existing = JSON.parse(await readFile(settingsPath, 'utf-8'));
190
- }
191
- catch {
192
- // If file is malformed or doesn't exist, start fresh
193
- existing = {};
194
- }
195
- const hooksConfig = generateHooksConfig();
196
- const merged = { ...existing, ...hooksConfig };
197
- await writeFile(settingsPath, JSON.stringify(merged, null, 2) + '\n');
211
+ await withSettingsLock(settingsPath, async () => {
212
+ if (!existsSync(claudeDir)) {
213
+ await mkdir(claudeDir, { recursive: true });
214
+ }
215
+ let existing = {};
216
+ try {
217
+ existing = JSON.parse(await readFile(settingsPath, 'utf-8'));
218
+ }
219
+ catch {
220
+ // If file is malformed or doesn't exist, start fresh
221
+ existing = {};
222
+ }
223
+ const hooksConfig = generateHooksConfig();
224
+ const merged = { ...existing, ...hooksConfig };
225
+ await writeFile(settingsPath, JSON.stringify(merged, null, 2) + '\n');
226
+ });
227
+ }
228
+ /**
229
+ * Self-heal a case's hooks block so the COD-91 unconditional hook-secret gate keeps
230
+ * accepting its hook events.
231
+ *
232
+ * `writeHooksConfig` only runs when a case is first CREATED. Cases created before the
233
+ * X-Codeman-Hook-Secret header was added (COD-54, 2026-06-10) keep hook curls in their
234
+ * settings.local.json that POST to /api/hook-event WITHOUT the secret — which, once the
235
+ * gate requires it unconditionally (COD-91), silently 401 on a password-protected
236
+ * install. This refreshes the hooks block so those stale curls regain the header.
237
+ *
238
+ * Deliberately surgical: regenerates ONLY when settings.local.json already contains
239
+ * Codeman's own hook curls (they target `/api/hook-event`) that lack the secret header.
240
+ * No-op when the file/hooks are absent (we never impose hooks on a user who removed
241
+ * them), when the hooks aren't ours, or when the secret is already present — so it never
242
+ * clobbers a user's customizations and is cheap enough to call on every Claude spawn.
243
+ */
244
+ export async function refreshStaleHookSecret(casePath) {
245
+ const settingsPath = join(casePath, '.claude', 'settings.local.json');
246
+ if (!existsSync(settingsPath))
247
+ return;
248
+ await withSettingsLock(settingsPath, async () => {
249
+ let existing;
250
+ try {
251
+ existing = JSON.parse(await readFile(settingsPath, 'utf-8'));
252
+ }
253
+ catch {
254
+ return; // malformed — leave it untouched (case-create owns the happy path)
255
+ }
256
+ const hooksJson = JSON.stringify(existing.hooks ?? null);
257
+ const isOurs = hooksJson.includes('/api/hook-event');
258
+ // The generated curl carries this header literal (see generateHooksConfig); its
259
+ // absence on our own hooks means they predate COD-54 and need regenerating.
260
+ const hasSecret = hooksJson.includes('X-Codeman-Hook-Secret');
261
+ if (!isOurs || hasSecret)
262
+ return;
263
+ const merged = { ...existing, ...generateHooksConfig() };
264
+ await writeFile(settingsPath, JSON.stringify(merged, null, 2) + '\n');
265
+ });
266
+ }
267
+ /** Unique marker identifying Codeman's own statusLine command (vs a user's). */
268
+ const STATUSLINE_MARKER = '/api/status-telemetry';
269
+ /**
270
+ * The plan-usage statusLine exporter command. Mirrors the hook `curlCmd` pattern:
271
+ * reads Claude Code's statusline stdin JSON, POSTs `{sessionId,data}` to Codeman,
272
+ * and prints the response body (a compact "⟳ 5h 15% · 7d 34%" footer) back to
273
+ * stdout so the in-terminal statusline stays useful. Env vars resolve at runtime
274
+ * (present in every managed session via tmux setenv), so the config is static.
275
+ */
276
+ export function generateStatusLineCommand() {
277
+ // `curl -sk`: CODEMAN_API_URL is loopback HTTPS with a self-signed cert in the
278
+ // production setup; without -k curl returns 000 and the statusline shows
279
+ // nothing. -k is safe here (loopback only). Falls back to a brand string so the
280
+ // footer is never blank if Codeman is unreachable.
281
+ return (`INPUT=$(cat 2>/dev/null || echo '{}'); ` +
282
+ `printf '{"sessionId":"%s","data":%s}' "$CODEMAN_SESSION_ID" "$INPUT" | ` +
283
+ `curl -sk -X POST "$CODEMAN_API_URL${STATUSLINE_MARKER}" ` +
284
+ `-H 'Content-Type: application/json' ` +
285
+ `-H "X-Codeman-Hook-Secret: $(cat "$CODEMAN_HOOK_SECRET_FILE" 2>/dev/null)" ` +
286
+ `--data @- 2>/dev/null || echo codeman`);
287
+ }
288
+ /**
289
+ * Add or remove Codeman's plan-usage statusLine exporter in
290
+ * `.claude/settings.local.json`. Only ever touches a statusLine that is OURS
291
+ * (command targets `/api/status-telemetry`), so a user's hand-authored
292
+ * statusLine is never removed OR overwritten — on both the enable and disable
293
+ * paths we bail out when an existing statusLine isn't ours. Callers gate on
294
+ * Claude mode. Merges, preserving all other keys (hooks, env, model).
295
+ */
296
+ export async function applyStatusLineConfig(casePath, enabled) {
297
+ const claudeDir = join(casePath, '.claude');
298
+ const settingsPath = join(claudeDir, 'settings.local.json');
299
+ await withSettingsLock(settingsPath, async () => {
300
+ let existing = {};
301
+ if (existsSync(settingsPath)) {
302
+ try {
303
+ existing = JSON.parse(await readFile(settingsPath, 'utf-8'));
304
+ }
305
+ catch {
306
+ return; // Malformed — don't rewrite it
307
+ }
308
+ }
309
+ const current = existing.statusLine;
310
+ const isOurs = !!current && typeof current.command === 'string' && current.command.includes(STATUSLINE_MARKER);
311
+ if (enabled) {
312
+ const desired = generateStatusLineCommand();
313
+ if (isOurs && current?.command === desired)
314
+ return; // already current — skip rewrite
315
+ if (current && !isOurs)
316
+ return; // user has their OWN statusLine — never clobber it
317
+ if (!existsSync(claudeDir))
318
+ await mkdir(claudeDir, { recursive: true });
319
+ existing.statusLine = { type: 'command', command: desired }; // add, or update an out-of-date ours
320
+ }
321
+ else {
322
+ if (!isOurs)
323
+ return; // nothing of ours to remove (leave a user's own statusLine alone)
324
+ delete existing.statusLine;
325
+ }
326
+ await writeFile(settingsPath, JSON.stringify(existing, null, 2) + '\n');
327
+ });
198
328
  }
199
329
  //# sourceMappingURL=hooks-config.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"hooks-config.js","sourceRoot":"","sources":["../src/hooks-config.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"hooks-config.js","sourceRoot":"","sources":["../src/hooks-config.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"image-watcher.d.ts","sourceRoot":"","sources":["../src/image-watcher.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAqC3C;;;;;;;;;;;;;;GAcG;AACH,qBAAa,YAAa,SAAQ,YAAY;IAC5C,uEAAuE;IACvE,OAAO,CAAC,eAAe,CAAgC;IAEvD,iDAAiD;IACjD,OAAO,CAAC,WAAW,CAA6B;IAEhD,kDAAkD;IAClD,OAAO,CAAC,OAAO,CAAyC;IAExD,iEAAiE;IACjE,OAAO,CAAC,aAAa,CAA6B;IAElD,sEAAsE;IACtE,OAAO,CAAC,aAAa,CAA6D;IAElF,+CAA+C;IAC/C,OAAO,CAAC,UAAU,CAAS;;IAS3B;;OAEG;IACH,SAAS,IAAI,OAAO;IAIpB;;;OAGG;IACH,KAAK,IAAI,IAAI;IAKb;;OAEG;IACH,IAAI,IAAI,IAAI;IAoBZ;;;;;OAKG;IACH,YAAY,CAAC,SAAS,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,IAAI;IA8DzD;;;;OAIG;IACH,cAAc,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI;IA0BvC;;OAEG;IACH,kBAAkB,IAAI,MAAM,EAAE;IAM9B;;;OAGG;IACH,OAAO,CAAC,aAAa;IA0CrB;;OAEG;IACH,OAAO,CAAC,iBAAiB;IAwBzB;;OAEG;IACH,OAAO,CAAC,sBAAsB;IAyB9B,OAAO,CAAC,iBAAiB;CAO1B;AAGD,eAAO,MAAM,YAAY,cAAqB,CAAC"}
1
+ {"version":3,"file":"image-watcher.d.ts","sourceRoot":"","sources":["../src/image-watcher.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAiC3C;;;;;;;;;;;;;;GAcG;AACH,qBAAa,YAAa,SAAQ,YAAY;IAC5C,uEAAuE;IACvE,OAAO,CAAC,eAAe,CAAgC;IAEvD,iDAAiD;IACjD,OAAO,CAAC,WAAW,CAA6B;IAEhD,kDAAkD;IAClD,OAAO,CAAC,OAAO,CAAyC;IAExD,iEAAiE;IACjE,OAAO,CAAC,aAAa,CAA6B;IAElD,sEAAsE;IACtE,OAAO,CAAC,aAAa,CAA6D;IAElF,+CAA+C;IAC/C,OAAO,CAAC,UAAU,CAAS;;IAS3B;;OAEG;IACH,SAAS,IAAI,OAAO;IAIpB;;;OAGG;IACH,KAAK,IAAI,IAAI;IAKb;;OAEG;IACH,IAAI,IAAI,IAAI;IAoBZ;;;;;OAKG;IACH,YAAY,CAAC,SAAS,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,IAAI;IA8DzD;;;;OAIG;IACH,cAAc,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI;IA0BvC;;OAEG;IACH,kBAAkB,IAAI,MAAM,EAAE;IAM9B;;;OAGG;IACH,OAAO,CAAC,aAAa;IA0CrB;;OAEG;IACH,OAAO,CAAC,iBAAiB;IAwBzB;;OAEG;IACH,OAAO,CAAC,sBAAsB;IAyB9B,OAAO,CAAC,iBAAiB;CAO1B;AAGD,eAAO,MAAM,YAAY,cAAqB,CAAC"}
@@ -15,12 +15,8 @@ import { KeyedDebouncer } from './utils/index.js';
15
15
  // ========== Types ==========
16
16
  // ========== Constants ==========
17
17
  /** Supported image file extensions (lowercase) */
18
- // PNG stays on the image-popup path: it's the dominant screenshot format and the
19
- // frontend only wires the `image:detected` popup today. The attachment-card UI
20
- // that would consume `attachment:detected` for images is out of scope for this
21
- // PR, so routing PNG to it would silently break the dropped-screenshot popup.
22
- const IMAGE_POPUP_EXTENSIONS = new Set(['.png', '.jpg', '.jpeg', '.gif', '.webp', '.bmp', '.svg']);
23
- const ATTACHMENT_EXTENSIONS = new Set(['.pdf', '.docx', '.pptx']);
18
+ const IMAGE_POPUP_EXTENSIONS = new Set(['.jpg', '.jpeg', '.gif', '.webp', '.bmp', '.svg']);
19
+ const ATTACHMENT_EXTENSIONS = new Set(['.png', '.pdf', '.docx', '.pptx']);
24
20
  const DETECTED_FILE_EXTENSIONS = new Set([...IMAGE_POPUP_EXTENSIONS, ...ATTACHMENT_EXTENSIONS]);
25
21
  /** Time to wait for file writes to stabilize (ms) */
26
22
  const STABILITY_THRESHOLD_MS = 500;
@@ -1 +1 @@
1
- {"version":3,"file":"image-watcher.js","sourceRoot":"","sources":["../src/image-watcher.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"image-watcher.js","sourceRoot":"","sources":["../src/image-watcher.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,19 @@
1
+ import type { SessionAttachmentHistoryItem } from './types/session.js';
2
+ import type { AttachmentDetectedEvent } from './types/tools.js';
3
+ export declare const ATTACHMENT_HISTORY_LIMIT = 100;
4
+ export interface ExternalAttachmentHistoryInput {
5
+ sessionId: string;
6
+ externalPath: string;
7
+ fileName?: string;
8
+ extension?: string;
9
+ size: number;
10
+ mtimeMs?: number;
11
+ timestamp?: number;
12
+ }
13
+ export declare function normalizeAttachmentExtension(extensionOrPath: string): string;
14
+ export declare function sanitizeAttachmentHistoryItem(item: SessionAttachmentHistoryItem): SessionAttachmentHistoryItem;
15
+ export declare function sanitizeAttachmentHistory(history: readonly SessionAttachmentHistoryItem[]): SessionAttachmentHistoryItem[];
16
+ export declare function upsertAttachmentHistory(history: readonly SessionAttachmentHistoryItem[], item: SessionAttachmentHistoryItem): SessionAttachmentHistoryItem[];
17
+ export declare function buildDetectedAttachmentHistoryItem(event: AttachmentDetectedEvent): SessionAttachmentHistoryItem;
18
+ export declare function buildExternalAttachmentHistoryItem(input: ExternalAttachmentHistoryInput): SessionAttachmentHistoryItem;
19
+ //# sourceMappingURL=session-attachment-history.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"session-attachment-history.d.ts","sourceRoot":"","sources":["../src/session-attachment-history.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,4BAA4B,EAAE,MAAM,oBAAoB,CAAC;AACvE,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,kBAAkB,CAAC;AAGhE,eAAO,MAAM,wBAAwB,MAAM,CAAC;AAE5C,MAAM,WAAW,8BAA8B;IAC7C,SAAS,EAAE,MAAM,CAAC;IAClB,YAAY,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,wBAAgB,4BAA4B,CAAC,eAAe,EAAE,MAAM,GAAG,MAAM,CAG5E;AAeD,wBAAgB,6BAA6B,CAAC,IAAI,EAAE,4BAA4B,GAAG,4BAA4B,CAM9G;AAED,wBAAgB,yBAAyB,CACvC,OAAO,EAAE,SAAS,4BAA4B,EAAE,GAC/C,4BAA4B,EAAE,CAEhC;AAED,wBAAgB,uBAAuB,CACrC,OAAO,EAAE,SAAS,4BAA4B,EAAE,EAChD,IAAI,EAAE,4BAA4B,GACjC,4BAA4B,EAAE,CAGhC;AAED,wBAAgB,kCAAkC,CAAC,KAAK,EAAE,uBAAuB,GAAG,4BAA4B,CAa/G;AAED,wBAAgB,kCAAkC,CAChD,KAAK,EAAE,8BAA8B,GACpC,4BAA4B,CAgB9B"}
@@ -0,0 +1,63 @@
1
+ import { createHash } from 'node:crypto';
2
+ import { basename, extname } from 'node:path';
3
+ import { getAttachmentType } from './attachment-registry.js';
4
+ export const ATTACHMENT_HISTORY_LIMIT = 100;
5
+ export function normalizeAttachmentExtension(extensionOrPath) {
6
+ const value = extensionOrPath.startsWith('.') ? extensionOrPath : extname(extensionOrPath) || extensionOrPath;
7
+ return value.toLowerCase().replace(/^\./, '');
8
+ }
9
+ function historyKey(item) {
10
+ if (item.source === 'external' && item.externalPath) {
11
+ return `external:${item.externalPath}`;
12
+ }
13
+ return `detected:${item.relativePath || item.fileName}`;
14
+ }
15
+ function safeExternalHistoryId(item) {
16
+ const source = item.externalPath || item.id || item.fileName;
17
+ const digest = createHash('sha256').update(source).digest('hex').slice(0, 16);
18
+ return `external:${digest}:${item.fileName}`;
19
+ }
20
+ export function sanitizeAttachmentHistoryItem(item) {
21
+ const { externalPath: _externalPath, ...safe } = item;
22
+ return {
23
+ ...safe,
24
+ id: item.source === 'external' ? safeExternalHistoryId(item) : item.id,
25
+ };
26
+ }
27
+ export function sanitizeAttachmentHistory(history) {
28
+ return history.map(sanitizeAttachmentHistoryItem);
29
+ }
30
+ export function upsertAttachmentHistory(history, item) {
31
+ const nextKey = historyKey(item);
32
+ return [item, ...history.filter((existing) => historyKey(existing) !== nextKey)].slice(0, ATTACHMENT_HISTORY_LIMIT);
33
+ }
34
+ export function buildDetectedAttachmentHistoryItem(event) {
35
+ return {
36
+ id: `detected:${event.relativePath || event.fileName}`,
37
+ sessionId: event.sessionId,
38
+ fileName: event.fileName,
39
+ extension: normalizeAttachmentExtension(event.extension),
40
+ attachmentType: event.attachmentType,
41
+ size: event.size,
42
+ mtimeMs: 0,
43
+ timestamp: event.timestamp,
44
+ source: 'detected',
45
+ relativePath: event.relativePath,
46
+ };
47
+ }
48
+ export function buildExternalAttachmentHistoryItem(input) {
49
+ const extension = normalizeAttachmentExtension(input.extension || input.fileName || input.externalPath);
50
+ return {
51
+ id: `external:${createHash('sha256').update(input.externalPath).digest('hex').slice(0, 16)}:${input.fileName || basename(input.externalPath)}`,
52
+ sessionId: input.sessionId,
53
+ fileName: input.fileName || basename(input.externalPath),
54
+ extension,
55
+ attachmentType: getAttachmentType(extension),
56
+ size: input.size,
57
+ mtimeMs: input.mtimeMs ?? 0,
58
+ timestamp: input.timestamp ?? Date.now(),
59
+ source: 'external',
60
+ externalPath: input.externalPath,
61
+ };
62
+ }
63
+ //# sourceMappingURL=session-attachment-history.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"session-attachment-history.js","sourceRoot":"","sources":["../src/session-attachment-history.ts"],"names":[],"mappings":"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"}
package/dist/session.d.ts CHANGED
@@ -33,6 +33,7 @@ import type { TerminalMultiplexer, MuxSession } from './mux-interface.js';
33
33
  import { TaskTracker, type BackgroundTask } from './task-tracker.js';
34
34
  import { RalphTracker } from './ralph-tracker.js';
35
35
  import { BashToolParser } from './bash-tool-parser.js';
36
+ import type { SessionAttachmentHistoryItem } from './types/session.js';
36
37
  export type { BackgroundTask } from './task-tracker.js';
37
38
  export type { RalphTrackerState, RalphTodoItem, ActiveBashTool } from './types.js';
38
39
  export type ResizeViewportType = 'mobile' | 'tablet' | 'desktop';
@@ -172,6 +173,7 @@ export declare class Session extends EventEmitter {
172
173
  private _parentAgentId;
173
174
  private _childAgentIds;
174
175
  private _attachmentMagicSeen;
176
+ private _attachmentHistory;
175
177
  private _niceConfig;
176
178
  private _model;
177
179
  private _claudeMode;
@@ -217,6 +219,8 @@ export declare class Session extends EventEmitter {
217
219
  envOverrides?: Record<string, string>;
218
220
  /** Claude CLI effort level (soft default via --settings, switchable in-session via /effort) */
219
221
  effort?: EffortLevel;
222
+ /** Restored per-session attachment history. May include server-private external paths. */
223
+ attachmentHistory?: SessionAttachmentHistoryItem[];
220
224
  });
221
225
  get status(): SessionStatus;
222
226
  get currentTaskId(): string | null;
@@ -321,6 +325,10 @@ export declare class Session extends EventEmitter {
321
325
  isIdle(): boolean;
322
326
  isBusy(): boolean;
323
327
  isRunning(): boolean;
328
+ get attachmentHistory(): SessionAttachmentHistoryItem[];
329
+ upsertAttachmentHistory(item: SessionAttachmentHistoryItem): void;
330
+ restoreAttachmentHistory(history: SessionAttachmentHistoryItem[] | undefined): void;
331
+ getAttachmentHistoryForPersist(): SessionAttachmentHistoryItem[] | undefined;
324
332
  toState(): SessionState;
325
333
  /**
326
334
  * Returns a subset of env overrides safe for disk persistence (state.json).
@@ -414,6 +422,7 @@ export declare class Session extends EventEmitter {
414
422
  codexConfig?: CodexConfig;
415
423
  resumeSessionId?: string;
416
424
  effort?: EffortLevel;
425
+ attachmentHistory?: SessionAttachmentHistoryItem[];
417
426
  };
418
427
  /**
419
428
  * Lightweight detailed state that excludes heavy buffers (textOutput, terminalBuffer).
@@ -502,6 +511,7 @@ export declare class Session extends EventEmitter {
502
511
  codexConfig?: CodexConfig;
503
512
  resumeSessionId?: string;
504
513
  effort?: EffortLevel;
514
+ attachmentHistory?: SessionAttachmentHistoryItem[];
505
515
  };
506
516
  /**
507
517
  * Starts an interactive Claude CLI session with full terminal support.
@@ -1 +1 @@
1
- {"version":3,"file":"session.d.ts","sourceRoot":"","sources":["../src/session.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"session.d.ts","sourceRoot":"","sources":["../src/session.ts"],"names":[],"mappings":"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"}