@cstart/coldstart 2.0.2 → 2.1.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.
- package/README.md +21 -14
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +9 -0
- package/dist/index.js.map +1 -1
- package/dist/indexer/extractors/cpp.d.ts.map +1 -1
- package/dist/indexer/extractors/cpp.js +1 -5
- package/dist/indexer/extractors/cpp.js.map +1 -1
- package/dist/indexer/extractors/csharp.d.ts.map +1 -1
- package/dist/indexer/extractors/csharp.js +1 -5
- package/dist/indexer/extractors/csharp.js.map +1 -1
- package/dist/indexer/extractors/go.d.ts.map +1 -1
- package/dist/indexer/extractors/go.js +1 -5
- package/dist/indexer/extractors/go.js.map +1 -1
- package/dist/indexer/extractors/groovy.d.ts.map +1 -1
- package/dist/indexer/extractors/groovy.js +1 -5
- package/dist/indexer/extractors/groovy.js.map +1 -1
- package/dist/indexer/extractors/java.d.ts +16 -0
- package/dist/indexer/extractors/java.d.ts.map +1 -1
- package/dist/indexer/extractors/java.js +10 -12
- package/dist/indexer/extractors/java.js.map +1 -1
- package/dist/indexer/extractors/kotlin.d.ts.map +1 -1
- package/dist/indexer/extractors/kotlin.js +1 -5
- package/dist/indexer/extractors/kotlin.js.map +1 -1
- package/dist/indexer/extractors/node-helpers.d.ts +11 -0
- package/dist/indexer/extractors/node-helpers.d.ts.map +1 -1
- package/dist/indexer/extractors/node-helpers.js +13 -0
- package/dist/indexer/extractors/node-helpers.js.map +1 -1
- package/dist/indexer/extractors/parser-factory.d.ts +25 -1
- package/dist/indexer/extractors/parser-factory.d.ts.map +1 -1
- package/dist/indexer/extractors/parser-factory.js +126 -16
- package/dist/indexer/extractors/parser-factory.js.map +1 -1
- package/dist/indexer/extractors/php.d.ts.map +1 -1
- package/dist/indexer/extractors/php.js +2 -7
- package/dist/indexer/extractors/php.js.map +1 -1
- package/dist/indexer/extractors/python.d.ts.map +1 -1
- package/dist/indexer/extractors/python.js +3 -7
- package/dist/indexer/extractors/python.js.map +1 -1
- package/dist/indexer/extractors/ruby.d.ts +23 -0
- package/dist/indexer/extractors/ruby.d.ts.map +1 -1
- package/dist/indexer/extractors/ruby.js +6 -17
- package/dist/indexer/extractors/ruby.js.map +1 -1
- package/dist/indexer/extractors/rust.d.ts.map +1 -1
- package/dist/indexer/extractors/rust.js +1 -5
- package/dist/indexer/extractors/rust.js.map +1 -1
- package/dist/indexer/extractors/toml.d.ts.map +1 -1
- package/dist/indexer/extractors/toml.js +1 -5
- package/dist/indexer/extractors/toml.js.map +1 -1
- package/dist/indexer/extractors/xml.d.ts.map +1 -1
- package/dist/indexer/extractors/xml.js +2 -6
- package/dist/indexer/extractors/xml.js.map +1 -1
- package/dist/indexer/extractors/yaml.d.ts.map +1 -1
- package/dist/indexer/extractors/yaml.js +1 -5
- package/dist/indexer/extractors/yaml.js.map +1 -1
- package/dist/indexer/parser.d.ts.map +1 -1
- package/dist/indexer/parser.js +2 -0
- package/dist/indexer/parser.js.map +1 -1
- package/dist/indexer/resolvers/ruby.d.ts.map +1 -1
- package/dist/indexer/resolvers/ruby.js +7 -1
- package/dist/indexer/resolvers/ruby.js.map +1 -1
- package/dist/indexer/ts-parser.d.ts +7 -0
- package/dist/indexer/ts-parser.d.ts.map +1 -1
- package/dist/indexer/ts-parser.js +6 -31
- package/dist/indexer/ts-parser.js.map +1 -1
- package/dist/init.d.ts +39 -12
- package/dist/init.d.ts.map +1 -1
- package/dist/init.js +38 -33
- package/dist/init.js.map +1 -1
- package/dist/unwire.d.ts +20 -0
- package/dist/unwire.d.ts.map +1 -0
- package/dist/unwire.js +304 -0
- package/dist/unwire.js.map +1 -0
- package/hooks/codex-kb-elicit.mjs +26 -16
- package/hooks/codex-nudge-handler.mjs +79 -11
- package/hooks/kb-elicit.mjs +42 -17
- package/hooks/nudge-handler.mjs +79 -11
- package/package.json +4 -17
- package/vendor/wasm/tree-sitter-c-sharp.wasm +0 -0
- package/vendor/wasm/tree-sitter-cpp.wasm +0 -0
- package/vendor/wasm/tree-sitter-go.wasm +0 -0
- package/vendor/wasm/tree-sitter-groovy.wasm +0 -0
- package/vendor/wasm/tree-sitter-java.wasm +0 -0
- package/vendor/wasm/tree-sitter-kotlin.wasm +0 -0
- package/vendor/wasm/tree-sitter-php.wasm +0 -0
- package/vendor/wasm/tree-sitter-python.wasm +0 -0
- package/vendor/wasm/tree-sitter-ruby.wasm +0 -0
- package/vendor/wasm/tree-sitter-rust.wasm +0 -0
- package/vendor/wasm/tree-sitter-toml.wasm +0 -0
- package/vendor/wasm/tree-sitter-tsx.wasm +0 -0
- package/vendor/wasm/tree-sitter-typescript.wasm +0 -0
- package/vendor/wasm/tree-sitter-xml.wasm +0 -0
- package/vendor/wasm/tree-sitter-yaml.wasm +0 -0
package/dist/init.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"init.js","sourceRoot":"","sources":["../src/init.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"init.js","sourceRoot":"","sources":["../src/init.ts"],"names":[],"mappings":"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"}
|
package/dist/unwire.d.ts
ADDED
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* coldstart unwire — the reverse of `coldstart init`.
|
|
3
|
+
*
|
|
4
|
+
* `npm uninstall` cannot clean the per-repo artifacts init wrote (npm fires no
|
|
5
|
+
* pre/postuninstall reliably, and a global uninstall has no registry of which
|
|
6
|
+
* repos were inited). So, like husky, coldstart ships an explicit reverse
|
|
7
|
+
* command. It removes ONLY coldstart-owned markers from the files init touched —
|
|
8
|
+
* never clobbering user content in shared files — using the SAME detectors init
|
|
9
|
+
* uses for idempotent re-runs (isColdstartHookEntry / isKbHookEntry /
|
|
10
|
+
* isCodexHookEntry / isCursorHookEntry / stripCodexColdstartTable). Symmetry:
|
|
11
|
+
* init writes → unwire removes.
|
|
12
|
+
*
|
|
13
|
+
* Scope: all four clients are swept unconditionally (init doesn't record which
|
|
14
|
+
* client was wired), so unwire cleans whatever it finds and reports "absent" for
|
|
15
|
+
* the rest. The notebook (`.coldstart/notebook/`) is KEPT by default — it's
|
|
16
|
+
* committed/shared user data; `--purge` opts in to deleting it plus its git
|
|
17
|
+
* plumbing (the `.coldstart/` gitignore line + the merge=union gitattribute).
|
|
18
|
+
*/
|
|
19
|
+
export declare function runUnwire(): Promise<void>;
|
|
20
|
+
//# sourceMappingURL=unwire.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"unwire.d.ts","sourceRoot":"","sources":["../src/unwire.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AA0OH,wBAAsB,SAAS,IAAI,OAAO,CAAC,IAAI,CAAC,CA6D/C"}
|
package/dist/unwire.js
ADDED
|
@@ -0,0 +1,304 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* coldstart unwire — the reverse of `coldstart init`.
|
|
3
|
+
*
|
|
4
|
+
* `npm uninstall` cannot clean the per-repo artifacts init wrote (npm fires no
|
|
5
|
+
* pre/postuninstall reliably, and a global uninstall has no registry of which
|
|
6
|
+
* repos were inited). So, like husky, coldstart ships an explicit reverse
|
|
7
|
+
* command. It removes ONLY coldstart-owned markers from the files init touched —
|
|
8
|
+
* never clobbering user content in shared files — using the SAME detectors init
|
|
9
|
+
* uses for idempotent re-runs (isColdstartHookEntry / isKbHookEntry /
|
|
10
|
+
* isCodexHookEntry / isCursorHookEntry / stripCodexColdstartTable). Symmetry:
|
|
11
|
+
* init writes → unwire removes.
|
|
12
|
+
*
|
|
13
|
+
* Scope: all four clients are swept unconditionally (init doesn't record which
|
|
14
|
+
* client was wired), so unwire cleans whatever it finds and reports "absent" for
|
|
15
|
+
* the rest. The notebook (`.coldstart/notebook/`) is KEPT by default — it's
|
|
16
|
+
* committed/shared user data; `--purge` opts in to deleting it plus its git
|
|
17
|
+
* plumbing (the `.coldstart/` gitignore line + the merge=union gitattribute).
|
|
18
|
+
*/
|
|
19
|
+
import * as fs from 'node:fs';
|
|
20
|
+
import * as path from 'node:path';
|
|
21
|
+
import { IMPORT_LINE, AGENTS_START, AGENTS_END, isColdstartHookEntry, isKbHookEntry, isCodexHookEntry, isCursorHookEntry, stripCodexColdstartTable, } from './init.js';
|
|
22
|
+
const DIVIDER = '─'.repeat(60);
|
|
23
|
+
function out(msg) {
|
|
24
|
+
process.stderr.write(msg + '\n');
|
|
25
|
+
}
|
|
26
|
+
function label(res) {
|
|
27
|
+
if (typeof res === 'object')
|
|
28
|
+
return `NOT changed: ${res.error}`;
|
|
29
|
+
return res;
|
|
30
|
+
}
|
|
31
|
+
// ---------------------------------------------------------------------------
|
|
32
|
+
// Small filesystem helpers
|
|
33
|
+
// ---------------------------------------------------------------------------
|
|
34
|
+
/** Delete a file if it exists. */
|
|
35
|
+
function removeFile(filePath) {
|
|
36
|
+
if (!fs.existsSync(filePath))
|
|
37
|
+
return 'absent';
|
|
38
|
+
fs.unlinkSync(filePath);
|
|
39
|
+
return 'removed';
|
|
40
|
+
}
|
|
41
|
+
/** Best-effort remove a directory only if it is now empty. Walks up the given
|
|
42
|
+
* chain (child → parent) so `.cursor/rules` then `.cursor` both go if empty. */
|
|
43
|
+
function rmEmptyDirs(...dirs) {
|
|
44
|
+
for (const dir of dirs) {
|
|
45
|
+
try {
|
|
46
|
+
if (fs.existsSync(dir) && fs.readdirSync(dir).length === 0)
|
|
47
|
+
fs.rmdirSync(dir);
|
|
48
|
+
}
|
|
49
|
+
catch {
|
|
50
|
+
/* best-effort — a non-empty or busy dir just stays */
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
/** Read a JSON config file. Distinguishes missing (existed:false) from invalid
|
|
55
|
+
* (error set) so we can leave a user-owned malformed file untouched. */
|
|
56
|
+
function readJson(filePath) {
|
|
57
|
+
if (!fs.existsSync(filePath))
|
|
58
|
+
return { config: {}, existed: false };
|
|
59
|
+
try {
|
|
60
|
+
const parsed = JSON.parse(fs.readFileSync(filePath, 'utf8'));
|
|
61
|
+
if (parsed && typeof parsed === 'object')
|
|
62
|
+
return { config: parsed, existed: true };
|
|
63
|
+
return { config: {}, existed: true };
|
|
64
|
+
}
|
|
65
|
+
catch {
|
|
66
|
+
return { config: {}, existed: true, error: `${filePath} is not valid JSON — left untouched` };
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
/**
|
|
70
|
+
* Strip coldstart-owned entries from a hooks-map config (Claude settings.json,
|
|
71
|
+
* Codex/Cursor hooks.json). For each listed event key, filter out entries `isOurs`
|
|
72
|
+
* matches; drop keys that become empty. Prune the hooks map, then any leftover
|
|
73
|
+
* keys named in `ownedTopKeys` (e.g. Cursor's `version`, which init sets) once the
|
|
74
|
+
* map is empty; delete the file if the whole config is then empty.
|
|
75
|
+
*
|
|
76
|
+
* Returns 'stripped' if we removed anything, 'absent' if there was nothing of
|
|
77
|
+
* ours, or an error for invalid JSON.
|
|
78
|
+
*/
|
|
79
|
+
function stripHooksConfig(filePath, hooksKey, events, isOurs, ownedTopKeys = []) {
|
|
80
|
+
const { config, existed, error } = readJson(filePath);
|
|
81
|
+
if (!existed)
|
|
82
|
+
return 'absent';
|
|
83
|
+
if (error)
|
|
84
|
+
return { error };
|
|
85
|
+
const hooksCfg = config[hooksKey] && typeof config[hooksKey] === 'object'
|
|
86
|
+
? config[hooksKey]
|
|
87
|
+
: null;
|
|
88
|
+
if (!hooksCfg)
|
|
89
|
+
return 'absent';
|
|
90
|
+
let changed = false;
|
|
91
|
+
for (const ev of events) {
|
|
92
|
+
const arr = hooksCfg[ev];
|
|
93
|
+
if (!Array.isArray(arr))
|
|
94
|
+
continue;
|
|
95
|
+
const kept = arr.filter((e) => !isOurs(e));
|
|
96
|
+
if (kept.length === arr.length)
|
|
97
|
+
continue;
|
|
98
|
+
changed = true;
|
|
99
|
+
if (kept.length === 0)
|
|
100
|
+
delete hooksCfg[ev];
|
|
101
|
+
else
|
|
102
|
+
hooksCfg[ev] = kept;
|
|
103
|
+
}
|
|
104
|
+
if (!changed)
|
|
105
|
+
return 'absent';
|
|
106
|
+
// Prune the now-empty hooks map, then any coldstart-owned top-level keys that
|
|
107
|
+
// only exist because we wrote the hooks (Cursor's `version`).
|
|
108
|
+
if (Object.keys(hooksCfg).length === 0) {
|
|
109
|
+
delete config[hooksKey];
|
|
110
|
+
for (const k of ownedTopKeys)
|
|
111
|
+
delete config[k];
|
|
112
|
+
}
|
|
113
|
+
else {
|
|
114
|
+
config[hooksKey] = hooksCfg;
|
|
115
|
+
}
|
|
116
|
+
if (Object.keys(config).length === 0) {
|
|
117
|
+
fs.unlinkSync(filePath);
|
|
118
|
+
}
|
|
119
|
+
else {
|
|
120
|
+
fs.writeFileSync(filePath, JSON.stringify(config, null, 2) + '\n');
|
|
121
|
+
}
|
|
122
|
+
return 'stripped';
|
|
123
|
+
}
|
|
124
|
+
/** Remove `mcpServers.coldstart` from a JSON MCP config, pruning empties and
|
|
125
|
+
* deleting the file if it becomes empty. */
|
|
126
|
+
function unwireJsonMcp(cwd, relFile) {
|
|
127
|
+
const filePath = path.join(cwd, relFile);
|
|
128
|
+
const { config, existed, error } = readJson(filePath);
|
|
129
|
+
if (!existed)
|
|
130
|
+
return 'absent';
|
|
131
|
+
if (error)
|
|
132
|
+
return { error };
|
|
133
|
+
const servers = config.mcpServers && typeof config.mcpServers === 'object'
|
|
134
|
+
? config.mcpServers
|
|
135
|
+
: null;
|
|
136
|
+
if (!servers || !('coldstart' in servers))
|
|
137
|
+
return 'absent';
|
|
138
|
+
delete servers.coldstart;
|
|
139
|
+
if (Object.keys(servers).length === 0)
|
|
140
|
+
delete config.mcpServers;
|
|
141
|
+
else
|
|
142
|
+
config.mcpServers = servers;
|
|
143
|
+
if (Object.keys(config).length === 0)
|
|
144
|
+
fs.unlinkSync(filePath);
|
|
145
|
+
else
|
|
146
|
+
fs.writeFileSync(filePath, JSON.stringify(config, null, 2) + '\n');
|
|
147
|
+
return 'stripped';
|
|
148
|
+
}
|
|
149
|
+
// ---------------------------------------------------------------------------
|
|
150
|
+
// Per-artifact reversers
|
|
151
|
+
// ---------------------------------------------------------------------------
|
|
152
|
+
/** Remove the `@coldstart.md` import line from CLAUDE.md (leave the rest). */
|
|
153
|
+
function unwireClaudeImport(cwd) {
|
|
154
|
+
const filePath = path.join(cwd, 'CLAUDE.md');
|
|
155
|
+
if (!fs.existsSync(filePath))
|
|
156
|
+
return 'absent';
|
|
157
|
+
const text = fs.readFileSync(filePath, 'utf8');
|
|
158
|
+
const lines = text.split('\n');
|
|
159
|
+
const kept = lines.filter((l) => l.trim() !== IMPORT_LINE);
|
|
160
|
+
if (kept.length === lines.length)
|
|
161
|
+
return 'absent';
|
|
162
|
+
// Collapse a blank-line run left behind, then trim trailing blanks.
|
|
163
|
+
const collapsed = [];
|
|
164
|
+
for (const l of kept) {
|
|
165
|
+
if (l.trim() === '' && collapsed.length > 0 && collapsed[collapsed.length - 1].trim() === '')
|
|
166
|
+
continue;
|
|
167
|
+
collapsed.push(l);
|
|
168
|
+
}
|
|
169
|
+
while (collapsed.length && collapsed[collapsed.length - 1].trim() === '')
|
|
170
|
+
collapsed.pop();
|
|
171
|
+
const next = collapsed.join('\n');
|
|
172
|
+
// If only init's own scaffold heading is left, init created the file — remove it.
|
|
173
|
+
if (next.trim() === '' || next.trim() === '# Project guidance')
|
|
174
|
+
fs.unlinkSync(filePath);
|
|
175
|
+
else
|
|
176
|
+
fs.writeFileSync(filePath, next + '\n');
|
|
177
|
+
return 'stripped';
|
|
178
|
+
}
|
|
179
|
+
/** Excise the `<!-- coldstart:start -->…<!-- coldstart:end -->` block from
|
|
180
|
+
* AGENTS.md, preserving the rest of the user's file. */
|
|
181
|
+
function unwireCodexAgents(cwd) {
|
|
182
|
+
const filePath = path.join(cwd, 'AGENTS.md');
|
|
183
|
+
if (!fs.existsSync(filePath))
|
|
184
|
+
return 'absent';
|
|
185
|
+
const text = fs.readFileSync(filePath, 'utf8');
|
|
186
|
+
const start = text.indexOf(AGENTS_START);
|
|
187
|
+
if (start === -1)
|
|
188
|
+
return 'absent';
|
|
189
|
+
const end = text.indexOf(AGENTS_END, start);
|
|
190
|
+
if (end === -1)
|
|
191
|
+
return 'absent';
|
|
192
|
+
const before = text.slice(0, start).replace(/\n+$/, '\n');
|
|
193
|
+
const after = text.slice(end + AGENTS_END.length).replace(/^\n+/, '');
|
|
194
|
+
let next = before + (after ? '\n' + after : '');
|
|
195
|
+
if (next.trim() === '# AGENTS.md')
|
|
196
|
+
next = ''; // only our scaffold remained
|
|
197
|
+
if (next.trim() === '')
|
|
198
|
+
fs.unlinkSync(filePath);
|
|
199
|
+
else
|
|
200
|
+
fs.writeFileSync(filePath, next.endsWith('\n') ? next : next + '\n');
|
|
201
|
+
return 'stripped';
|
|
202
|
+
}
|
|
203
|
+
/** Strip `[mcp_servers.coldstart]` from .codex/config.toml. */
|
|
204
|
+
function unwireCodexMcp(cwd) {
|
|
205
|
+
const filePath = path.join(cwd, '.codex', 'config.toml');
|
|
206
|
+
if (!fs.existsSync(filePath))
|
|
207
|
+
return 'absent';
|
|
208
|
+
const before = fs.readFileSync(filePath, 'utf8');
|
|
209
|
+
const after = stripCodexColdstartTable(before).replace(/\n{3,}/g, '\n\n').replace(/^\n+/, '');
|
|
210
|
+
if (after.replace(/\s+/g, '') === before.replace(/\s+/g, ''))
|
|
211
|
+
return 'absent';
|
|
212
|
+
const trimmed = after.replace(/\n+$/, '');
|
|
213
|
+
if (trimmed === '')
|
|
214
|
+
fs.unlinkSync(filePath);
|
|
215
|
+
else
|
|
216
|
+
fs.writeFileSync(filePath, trimmed + '\n');
|
|
217
|
+
return 'stripped';
|
|
218
|
+
}
|
|
219
|
+
/** Drop the `.coldstart/` line from .gitignore (added by init's private default). */
|
|
220
|
+
function removeNotebookGitignore(cwd) {
|
|
221
|
+
const giPath = path.join(cwd, '.gitignore');
|
|
222
|
+
if (!fs.existsSync(giPath))
|
|
223
|
+
return 'absent';
|
|
224
|
+
const lines = fs.readFileSync(giPath, 'utf8').split('\n');
|
|
225
|
+
const kept = lines.filter((l) => { const t = l.trim(); return t !== '.coldstart/' && t !== '.coldstart'; });
|
|
226
|
+
if (kept.length === lines.length)
|
|
227
|
+
return 'absent';
|
|
228
|
+
fs.writeFileSync(giPath, kept.join('\n'));
|
|
229
|
+
return 'stripped';
|
|
230
|
+
}
|
|
231
|
+
/** Drop the notebook merge=union line from .gitattributes. */
|
|
232
|
+
function removeNotebookGitattributes(cwd) {
|
|
233
|
+
const gaPath = path.join(cwd, '.gitattributes');
|
|
234
|
+
if (!fs.existsSync(gaPath))
|
|
235
|
+
return 'absent';
|
|
236
|
+
const line = '.coldstart/notebook/.raw/*.jsonl merge=union';
|
|
237
|
+
const lines = fs.readFileSync(gaPath, 'utf8').split('\n');
|
|
238
|
+
const kept = lines.filter((l) => l.trim() !== line);
|
|
239
|
+
if (kept.length === lines.length)
|
|
240
|
+
return 'absent';
|
|
241
|
+
const next = kept.join('\n').replace(/\n+$/, '');
|
|
242
|
+
if (next.trim() === '')
|
|
243
|
+
fs.unlinkSync(gaPath);
|
|
244
|
+
else
|
|
245
|
+
fs.writeFileSync(gaPath, next + '\n');
|
|
246
|
+
return 'stripped';
|
|
247
|
+
}
|
|
248
|
+
// ---------------------------------------------------------------------------
|
|
249
|
+
// Entry point
|
|
250
|
+
// ---------------------------------------------------------------------------
|
|
251
|
+
const CLAUDE_HOOK_EVENTS = ['PreToolUse', 'PostToolUse', 'UserPromptSubmit', 'Stop', 'SubagentStop'];
|
|
252
|
+
const CURSOR_HOOK_EVENTS = ['preToolUse', 'postToolUse', 'beforeSubmitPrompt', 'stop', 'subagentStop'];
|
|
253
|
+
export async function runUnwire() {
|
|
254
|
+
const cwd = process.cwd();
|
|
255
|
+
const argv = process.argv.slice(3); // tokens after `unwire`
|
|
256
|
+
const purge = argv.includes('--purge');
|
|
257
|
+
out('');
|
|
258
|
+
out('coldstart unwire');
|
|
259
|
+
out(DIVIDER);
|
|
260
|
+
out(` Removing coldstart-owned wiring from ${cwd}`);
|
|
261
|
+
out('');
|
|
262
|
+
// Claude Code
|
|
263
|
+
out(' Claude Code');
|
|
264
|
+
out(` coldstart.md — ${label(removeFile(path.join(cwd, 'coldstart.md')))}`);
|
|
265
|
+
out(` CLAUDE.md — ${label(unwireClaudeImport(cwd))} @coldstart.md import`);
|
|
266
|
+
out(` settings.json — ${label(stripHooksConfig(path.join(cwd, '.claude', 'settings.json'), 'hooks', CLAUDE_HOOK_EVENTS, (e) => isColdstartHookEntry(e) || isKbHookEntry(e)))} find/gs + notebook hooks`);
|
|
267
|
+
out(` .mcp.json — ${label(unwireJsonMcp(cwd, '.mcp.json'))} MCP server`);
|
|
268
|
+
// Codex
|
|
269
|
+
out(' Codex');
|
|
270
|
+
out(` AGENTS.md — ${label(unwireCodexAgents(cwd))} coldstart block`);
|
|
271
|
+
out(` hooks.json — ${label(stripHooksConfig(path.join(cwd, '.codex', 'hooks.json'), 'hooks', CLAUDE_HOOK_EVENTS, isCodexHookEntry))} Codex hooks`);
|
|
272
|
+
out(` config.toml — ${label(unwireCodexMcp(cwd))} [mcp_servers.coldstart]`);
|
|
273
|
+
// Cursor
|
|
274
|
+
out(' Cursor');
|
|
275
|
+
out(` coldstart.mdc — ${label(removeFile(path.join(cwd, '.cursor', 'rules', 'coldstart.mdc')))}`);
|
|
276
|
+
out(` hooks.json — ${label(stripHooksConfig(path.join(cwd, '.cursor', 'hooks.json'), 'hooks', CURSOR_HOOK_EVENTS, isCursorHookEntry, ['version']))} Cursor hooks`);
|
|
277
|
+
out(` mcp.json — ${label(unwireJsonMcp(cwd, path.join('.cursor', 'mcp.json')))} MCP server`);
|
|
278
|
+
// Notebook
|
|
279
|
+
out(' Notebook');
|
|
280
|
+
if (purge) {
|
|
281
|
+
const nb = path.join(cwd, '.coldstart', 'notebook');
|
|
282
|
+
let nbRes = 'absent';
|
|
283
|
+
if (fs.existsSync(nb)) {
|
|
284
|
+
fs.rmSync(nb, { recursive: true, force: true });
|
|
285
|
+
nbRes = 'removed';
|
|
286
|
+
}
|
|
287
|
+
out(` .coldstart/notebook — ${label(nbRes)} (--purge: notes deleted)`);
|
|
288
|
+
out(` .gitignore — ${label(removeNotebookGitignore(cwd))} .coldstart/ line`);
|
|
289
|
+
out(` .gitattributes — ${label(removeNotebookGitattributes(cwd))} merge=union line`);
|
|
290
|
+
rmEmptyDirs(path.join(cwd, '.coldstart'));
|
|
291
|
+
}
|
|
292
|
+
else {
|
|
293
|
+
out(' .coldstart/notebook — KEPT (committed/shared notes; use --purge to delete)');
|
|
294
|
+
}
|
|
295
|
+
// Tidy up now-empty coldstart dirs (best-effort).
|
|
296
|
+
rmEmptyDirs(path.join(cwd, '.cursor', 'rules'), path.join(cwd, '.cursor'), path.join(cwd, '.claude'), path.join(cwd, '.codex'));
|
|
297
|
+
out('');
|
|
298
|
+
out(DIVIDER);
|
|
299
|
+
out('Unwired. Re-add anytime with: coldstart init');
|
|
300
|
+
if (!purge)
|
|
301
|
+
out('The notebook was kept — `coldstart unwire --purge` also deletes it.');
|
|
302
|
+
out('');
|
|
303
|
+
}
|
|
304
|
+
//# sourceMappingURL=unwire.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"unwire.js","sourceRoot":"","sources":["../src/unwire.ts"],"names":[],"mappings":"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"}
|
|
@@ -295,17 +295,20 @@ process.on("unhandledRejection", (e) => { log(`unhandled ${e?.stack || e}`); pro
|
|
|
295
295
|
if (input.stop_hook_active === true) { log("SKIP stop_hook_active"); process.exit(0); }
|
|
296
296
|
|
|
297
297
|
// Codex session_id identifies a thread; turn_id identifies one user turn.
|
|
298
|
-
// Capture
|
|
298
|
+
// Capture across the whole thread, incrementally — a resumed thread keeps
|
|
299
|
+
// contributing new knowledge.
|
|
299
300
|
const sid = String(input.session_id || "").replace(/[^A-Za-z0-9_-]/g, "");
|
|
300
301
|
if (!sid) { log("SKIP no-session-id"); process.exit(0); }
|
|
301
|
-
const tid = String(input.turn_id || sid).replace(/[^A-Za-z0-9_-]/g, "") || sid;
|
|
302
302
|
|
|
303
|
-
// Guard 2:
|
|
304
|
-
//
|
|
303
|
+
// Guard 2: capture across the session, but only files not yet offered. The
|
|
304
|
+
// old per-turn marker re-offered EVERY touched file on every turn; instead we
|
|
305
|
+
// remember which files were already offered and elicit only the new ones (the
|
|
306
|
+
// delta is computed below). Subagents share the parent session_id, so the
|
|
307
|
+
// record is scoped by agent too.
|
|
305
308
|
const aid = String(input.agent_id || "main").replace(/[^A-Za-z0-9_-]/g, "") || "main";
|
|
306
|
-
const marker = join(tmpdir(), `coldstart-codex-kb-${
|
|
307
|
-
|
|
308
|
-
try {
|
|
309
|
+
const marker = join(tmpdir(), `coldstart-codex-kb-${sid}-${aid}.json`);
|
|
310
|
+
let offered = new Set();
|
|
311
|
+
try { offered = new Set(JSON.parse(readFileSync(marker, "utf8")).files || []); } catch { /* first Stop of this session */ }
|
|
309
312
|
|
|
310
313
|
// Codex supplies the child's own rollout as agent_transcript_path on
|
|
311
314
|
// SubagentStop. Its transcript_path is the parent's rollout at that event.
|
|
@@ -321,18 +324,25 @@ process.on("unhandledRejection", (e) => { log(`unhandled ${e?.stack || e}`); pro
|
|
|
321
324
|
// Ephemeral Codex runs deliberately expose no transcript path. Fail open:
|
|
322
325
|
// navigation/recall still work, but capture has no trustworthy evidence.
|
|
323
326
|
const files = transcriptPath ? touchedFiles(transcriptPath, root) : [];
|
|
324
|
-
|
|
325
|
-
|
|
326
|
-
|
|
327
|
-
//
|
|
328
|
-
|
|
329
|
-
|
|
327
|
+
// Delta: only files not already offered on an earlier Stop this session.
|
|
328
|
+
const newFiles = files.filter((f) => !offered.has(f));
|
|
329
|
+
|
|
330
|
+
// FAST-EXIT when there is nothing NEW to capture — either no repo file was
|
|
331
|
+
// touched at all (pure orchestration / Q&A) or every touched file was already
|
|
332
|
+
// offered on a previous Stop. No record is written on this path, so an early
|
|
333
|
+
// no-op Stop can never burn the session's capture.
|
|
334
|
+
if (!newFiles.length) {
|
|
335
|
+
log(`FAST-EXIT no-new-files session=${sid} agent=${aid} touched=${files.length} event=${input.hook_event_name || "?"}`);
|
|
330
336
|
process.exit(0);
|
|
331
337
|
}
|
|
332
338
|
|
|
333
|
-
|
|
334
|
-
|
|
335
|
-
|
|
339
|
+
// Record everything now offered BEFORE returning the block, so the post-write
|
|
340
|
+
// re-Stop and every later Stop skip these files.
|
|
341
|
+
try { writeFileSync(marker, JSON.stringify({ files: [...offered, ...newFiles], ts: Date.now() })); } catch { /* best effort */ }
|
|
342
|
+
|
|
343
|
+
const prompt = buildCapturePrompt(root, filesBlock(root, newFiles), sid, input.hook_event_name === "SubagentStop");
|
|
344
|
+
logCaptureEvent(root, { event: "elicit", session: sid, agent: aid, touched: files.length, new: newFiles.length, hook: input.hook_event_name });
|
|
345
|
+
log(`ELICIT session=${sid} agent=${aid} new=${newFiles.length} touched=${files.length} promptBytes=${prompt.length} event=${input.hook_event_name || "?"}`);
|
|
336
346
|
process.stdout.write(JSON.stringify({ decision: "block", reason: prompt }));
|
|
337
347
|
} catch (e) {
|
|
338
348
|
log(`handler ${e?.stack || e}`); // fail-open: no stdout → stop allowed
|