mulch-cli 0.2.0 → 0.2.2
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 +15 -8
- package/dist/cli.js +1 -1
- package/dist/commands/compact.d.ts.map +1 -1
- package/dist/commands/compact.js +20 -32
- package/dist/commands/compact.js.map +1 -1
- package/dist/commands/delete.d.ts.map +1 -1
- package/dist/commands/delete.js +13 -44
- package/dist/commands/delete.js.map +1 -1
- package/dist/commands/doctor.js +3 -3
- package/dist/commands/edit.d.ts.map +1 -1
- package/dist/commands/edit.js +13 -44
- package/dist/commands/edit.js.map +1 -1
- package/dist/commands/onboard.d.ts.map +1 -1
- package/dist/commands/onboard.js +14 -58
- package/dist/commands/onboard.js.map +1 -1
- package/dist/commands/prune.js +3 -3
- package/dist/commands/prune.js.map +1 -1
- package/dist/commands/ready.js +5 -5
- package/dist/commands/record.js +1 -1
- package/dist/commands/record.js.map +1 -1
- package/dist/commands/setup.d.ts +2 -2
- package/dist/commands/setup.d.ts.map +1 -1
- package/dist/commands/setup.js +19 -7
- package/dist/commands/setup.js.map +1 -1
- package/dist/utils/config.d.ts +1 -1
- package/dist/utils/config.d.ts.map +1 -1
- package/dist/utils/config.js +4 -4
- package/dist/utils/expertise.d.ts +14 -0
- package/dist/utils/expertise.d.ts.map +1 -1
- package/dist/utils/expertise.js +38 -0
- package/dist/utils/expertise.js.map +1 -1
- package/dist/utils/format.d.ts.map +1 -1
- package/dist/utils/format.js +39 -25
- package/dist/utils/format.js.map +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -38,11 +38,11 @@ mulch prime database # Get context for one doma
|
|
|
38
38
|
1. mulch init → Creates .mulch/ with domain JSONL files
|
|
39
39
|
2. Agent reads expertise → Grounded in everything the project has learned
|
|
40
40
|
3. Agent does work → Normal task execution
|
|
41
|
-
4. Agent
|
|
41
|
+
4. Agent records insights → Before finishing, writes learnings back to .mulch/
|
|
42
42
|
5. git push → Teammates' agents get smarter too
|
|
43
43
|
```
|
|
44
44
|
|
|
45
|
-
The critical insight: step 4 is **agent-driven**.
|
|
45
|
+
The critical insight: step 4 is **agent-driven**. Before completing a task, the agent reviews its work for insights worth preserving and calls `mulch record`. Mulch provides the schema and file structure so those learnings land in a consistent, queryable format.
|
|
46
46
|
|
|
47
47
|
## What's in `.mulch/`
|
|
48
48
|
|
|
@@ -63,15 +63,22 @@ Everything is git-tracked. Clone a repo and your agents immediately have the pro
|
|
|
63
63
|
|---------|-------------|
|
|
64
64
|
| `mulch init` | Initialize `.mulch/` in the current project |
|
|
65
65
|
| `mulch add <domain>` | Add a new expertise domain |
|
|
66
|
-
| `mulch record <domain> --type <type>` | Record an expertise
|
|
66
|
+
| `mulch record <domain> --type <type>` | Record an expertise record (`--tags`, `--force`, `--relates-to`, `--supersedes`) |
|
|
67
|
+
| `mulch edit <domain> <id>` | Edit an existing record by ID or 1-based index |
|
|
68
|
+
| `mulch delete <domain> <id>` | Delete a record by ID or 1-based index |
|
|
67
69
|
| `mulch query [domain]` | Query expertise (use `--all` for all domains) |
|
|
68
|
-
| `mulch prime [
|
|
69
|
-
| `mulch search
|
|
70
|
+
| `mulch prime [domains...]` | Output AI-optimized expertise context (multi-domain, `--context`, `--format`, `--export`) |
|
|
71
|
+
| `mulch search [query]` | Search records across domains (`--domain`, `--type`, `--tag` filters) |
|
|
72
|
+
| `mulch compact [domain]` | Analyze compaction candidates or apply a compaction (`--analyze`, `--apply`) |
|
|
70
73
|
| `mulch status` | Show expertise freshness and counts |
|
|
71
74
|
| `mulch validate` | Schema validation across all files |
|
|
72
|
-
| `mulch
|
|
75
|
+
| `mulch doctor` | Run health checks on expertise records (`--fix` to auto-fix) |
|
|
76
|
+
| `mulch setup [provider]` | Install provider-specific hooks (claude, cursor, codex, gemini, windsurf, aider) |
|
|
73
77
|
| `mulch onboard` | Generate AGENTS.md/CLAUDE.md snippet |
|
|
74
|
-
| `mulch prune` | Remove stale tactical entries |
|
|
78
|
+
| `mulch prune` | Remove stale tactical/observational entries |
|
|
79
|
+
| `mulch ready` | Show recently added or updated records (`--since`, `--domain`, `--limit`) |
|
|
80
|
+
| `mulch sync` | Validate, stage, and commit `.mulch/` changes |
|
|
81
|
+
| `mulch learn` | Show changed files and suggest domains for recording learnings |
|
|
75
82
|
|
|
76
83
|
## Record Types
|
|
77
84
|
|
|
@@ -84,7 +91,7 @@ Everything is git-tracked. Clone a repo and your agents immediately have the pro
|
|
|
84
91
|
| `reference` | name, description | Key files, endpoints, or resources worth remembering |
|
|
85
92
|
| `guide` | name, description | Step-by-step procedures for recurring tasks |
|
|
86
93
|
|
|
87
|
-
All records support optional `--classification` (foundational / tactical / observational)
|
|
94
|
+
All records support optional `--classification` (foundational / tactical / observational), evidence flags (`--evidence-commit`, `--evidence-issue`, `--evidence-file`), `--tags`, `--relates-to`, and `--supersedes` for linking.
|
|
88
95
|
|
|
89
96
|
## Example Output
|
|
90
97
|
|
package/dist/cli.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"compact.d.ts","sourceRoot":"","sources":["../../src/commands/compact.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"compact.d.ts","sourceRoot":"","sources":["../../src/commands/compact.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAsFpC,wBAAgB,sBAAsB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CA+C7D"}
|
package/dist/commands/compact.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import chalk from "chalk";
|
|
2
2
|
import { readConfig, getExpertisePath } from "../utils/config.js";
|
|
3
|
-
import { readExpertiseFile, writeExpertiseFile, generateRecordId, } from "../utils/expertise.js";
|
|
3
|
+
import { readExpertiseFile, writeExpertiseFile, generateRecordId, resolveRecordId, } from "../utils/expertise.js";
|
|
4
4
|
import { recordSchema } from "../schemas/record-schema.js";
|
|
5
5
|
import { outputJson, outputJsonError } from "../utils/json-output.js";
|
|
6
6
|
import { getRecordSummary } from "../utils/format.js";
|
|
@@ -9,26 +9,25 @@ const Ajv = _Ajv.default ?? _Ajv;
|
|
|
9
9
|
function findCandidates(domain, records, now, shelfLife) {
|
|
10
10
|
// Group records by type
|
|
11
11
|
const byType = new Map();
|
|
12
|
-
for (
|
|
13
|
-
const r = records[i];
|
|
12
|
+
for (const r of records) {
|
|
14
13
|
if (!byType.has(r.type)) {
|
|
15
14
|
byType.set(r.type, []);
|
|
16
15
|
}
|
|
17
|
-
byType.get(r.type).push(
|
|
16
|
+
byType.get(r.type).push(r);
|
|
18
17
|
}
|
|
19
18
|
const candidates = [];
|
|
20
19
|
for (const [type, group] of byType) {
|
|
21
20
|
if (group.length < 2)
|
|
22
21
|
continue;
|
|
23
22
|
// Include groups where at least one record is stale or the group is large (3+)
|
|
24
|
-
const hasStale = group.some((
|
|
25
|
-
if (
|
|
23
|
+
const hasStale = group.some((r) => {
|
|
24
|
+
if (r.classification === "foundational")
|
|
26
25
|
return false;
|
|
27
|
-
const ageMs = now.getTime() - new Date(
|
|
26
|
+
const ageMs = now.getTime() - new Date(r.recorded_at).getTime();
|
|
28
27
|
const ageDays = Math.floor(ageMs / (1000 * 60 * 60 * 24));
|
|
29
|
-
if (
|
|
28
|
+
if (r.classification === "tactical")
|
|
30
29
|
return ageDays > shelfLife.tactical;
|
|
31
|
-
if (
|
|
30
|
+
if (r.classification === "observational")
|
|
32
31
|
return ageDays > shelfLife.observational;
|
|
33
32
|
return false;
|
|
34
33
|
});
|
|
@@ -36,34 +35,24 @@ function findCandidates(domain, records, now, shelfLife) {
|
|
|
36
35
|
candidates.push({
|
|
37
36
|
domain,
|
|
38
37
|
type,
|
|
39
|
-
records: group.map((
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
recorded_at: g.record.recorded_at,
|
|
38
|
+
records: group.map((r) => ({
|
|
39
|
+
id: r.id,
|
|
40
|
+
summary: getRecordSummary(r),
|
|
41
|
+
recorded_at: r.recorded_at,
|
|
44
42
|
})),
|
|
45
43
|
});
|
|
46
44
|
}
|
|
47
45
|
}
|
|
48
46
|
return candidates;
|
|
49
47
|
}
|
|
50
|
-
function
|
|
48
|
+
function resolveRecordIds(records, identifiers) {
|
|
51
49
|
const indices = [];
|
|
52
50
|
for (const id of identifiers) {
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
throw new Error(`Record with ID "${id}" not found.`);
|
|
57
|
-
}
|
|
58
|
-
indices.push(found);
|
|
59
|
-
}
|
|
60
|
-
else {
|
|
61
|
-
const idx = parseInt(id, 10);
|
|
62
|
-
if (isNaN(idx) || idx < 1 || idx > records.length) {
|
|
63
|
-
throw new Error(`Invalid index "${id}". Must be 1-${records.length}.`);
|
|
64
|
-
}
|
|
65
|
-
indices.push(idx - 1);
|
|
51
|
+
const result = resolveRecordId(records, id);
|
|
52
|
+
if (!result.ok) {
|
|
53
|
+
throw new Error(result.error);
|
|
66
54
|
}
|
|
55
|
+
indices.push(result.index);
|
|
67
56
|
}
|
|
68
57
|
return indices;
|
|
69
58
|
}
|
|
@@ -74,7 +63,7 @@ export function registerCompactCommand(program) {
|
|
|
74
63
|
.description("Compact records: analyze candidates or apply a compaction")
|
|
75
64
|
.option("--analyze", "show compaction candidates")
|
|
76
65
|
.option("--apply", "apply a compaction (replace records with summary)")
|
|
77
|
-
.option("--records <ids>", "comma-separated record IDs
|
|
66
|
+
.option("--records <ids>", "comma-separated record IDs to compact")
|
|
78
67
|
.option("--type <type>", "record type for the replacement")
|
|
79
68
|
.option("--name <name>", "name for replacement (pattern/reference/guide)")
|
|
80
69
|
.option("--title <title>", "title for replacement (decision)")
|
|
@@ -143,8 +132,7 @@ async function handleAnalyze(jsonMode) {
|
|
|
143
132
|
for (const c of allCandidates) {
|
|
144
133
|
console.log(chalk.cyan(`${c.domain}/${c.type}`) + ` (${c.records.length} records)`);
|
|
145
134
|
for (const r of c.records) {
|
|
146
|
-
|
|
147
|
-
console.log(` #${r.index}${idLabel}: ${r.summary}`);
|
|
135
|
+
console.log(` ${r.id ?? "(no id)"}: ${r.summary}`);
|
|
148
136
|
}
|
|
149
137
|
console.log();
|
|
150
138
|
}
|
|
@@ -179,7 +167,7 @@ async function handleApply(domain, options, jsonMode) {
|
|
|
179
167
|
const identifiers = options.records.split(",").map((s) => s.trim()).filter(Boolean);
|
|
180
168
|
let indicesToRemove;
|
|
181
169
|
try {
|
|
182
|
-
indicesToRemove =
|
|
170
|
+
indicesToRemove = resolveRecordIds(records, identifiers);
|
|
183
171
|
}
|
|
184
172
|
catch (err) {
|
|
185
173
|
const msg = err.message;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"compact.js","sourceRoot":"","sources":["../../src/commands/compact.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,UAAU,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAClE,OAAO,EACL,iBAAiB,EACjB,kBAAkB,EAClB,gBAAgB,GACjB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAK3D,OAAO,EAAE,UAAU,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AACtE,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,IAAI,MAAM,KAAK,CAAC;AACvB,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC;AAQjC,SAAS,cAAc,CACrB,MAAc,EACd,OAA0B,EAC1B,GAAS,EACT,SAAsD;IAEtD,wBAAwB;IACxB,MAAM,MAAM,GAAG,IAAI,GAAG,EAAiE,CAAC;IACxF,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACxC,MAAM,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;QACrB,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC;YACxB,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;QACzB,CAAC;QACD,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAE,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,CAAC,GAAG,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC,CAAC;IACxD,CAAC;IAED,MAAM,UAAU,GAAuB,EAAE,CAAC;IAE1C,KAAK,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,MAAM,EAAE,CAAC;QACnC,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC;YAAE,SAAS;QAE/B,+EAA+E;QAC/E,MAAM,QAAQ,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE;YAChC,IAAI,CAAC,CAAC,MAAM,CAAC,cAAc,KAAK,cAAc;gBAAE,OAAO,KAAK,CAAC;YAC7D,MAAM,KAAK,GAAG,GAAG,CAAC,OAAO,EAAE,GAAG,IAAI,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,OAAO,EAAE,CAAC;YACvE,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,GAAG,CAAC,IAAI,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC;YAC1D,IAAI,CAAC,CAAC,MAAM,CAAC,cAAc,KAAK,UAAU;gBAAE,OAAO,OAAO,GAAG,SAAS,CAAC,QAAQ,CAAC;YAChF,IAAI,CAAC,CAAC,MAAM,CAAC,cAAc,KAAK,eAAe;gBAAE,OAAO,OAAO,GAAG,SAAS,CAAC,aAAa,CAAC;YAC1F,OAAO,KAAK,CAAC;QACf,CAAC,CAAC,CAAC;QAEH,IAAI,QAAQ,IAAI,KAAK,CAAC,MAAM,IAAI,CAAC,EAAE,CAAC;YAClC,UAAU,CAAC,IAAI,CAAC;gBACd,MAAM;gBACN,IAAI;gBACJ,OAAO,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;oBACzB,KAAK,EAAE,CAAC,CAAC,KAAK;oBACd,EAAE,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE;oBACf,OAAO,EAAE,gBAAgB,CAAC,CAAC,CAAC,MAAM,CAAC;oBACnC,WAAW,EAAE,CAAC,CAAC,MAAM,CAAC,WAAW;iBAClC,CAAC,CAAC;aACJ,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IAED,OAAO,UAAU,CAAC;AACpB,CAAC;AAED,SAAS,oBAAoB,CAC3B,OAA0B,EAC1B,WAAqB;IAErB,MAAM,OAAO,GAAa,EAAE,CAAC;IAC7B,KAAK,MAAM,EAAE,IAAI,WAAW,EAAE,CAAC;QAC7B,IAAI,EAAE,CAAC,UAAU,CAAC,KAAK,CAAC,EAAE,CAAC;YACzB,MAAM,KAAK,GAAG,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC;YACpD,IAAI,KAAK,KAAK,CAAC,CAAC,EAAE,CAAC;gBACjB,MAAM,IAAI,KAAK,CAAC,mBAAmB,EAAE,cAAc,CAAC,CAAC;YACvD,CAAC;YACD,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACtB,CAAC;aAAM,CAAC;YACN,MAAM,GAAG,GAAG,QAAQ,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;YAC7B,IAAI,KAAK,CAAC,GAAG,CAAC,IAAI,GAAG,GAAG,CAAC,IAAI,GAAG,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;gBAClD,MAAM,IAAI,KAAK,CAAC,kBAAkB,EAAE,gBAAgB,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC;YACzE,CAAC;YACD,OAAO,CAAC,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC;QACxB,CAAC;IACH,CAAC;IACD,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,MAAM,UAAU,sBAAsB,CAAC,OAAgB;IACrD,OAAO;SACJ,OAAO,CAAC,SAAS,CAAC;SAClB,QAAQ,CAAC,UAAU,EAAE,yCAAyC,CAAC;SAC/D,WAAW,CAAC,2DAA2D,CAAC;SACxE,MAAM,CAAC,WAAW,EAAE,4BAA4B,CAAC;SACjD,MAAM,CAAC,SAAS,EAAE,mDAAmD,CAAC;SACtE,MAAM,CAAC,iBAAiB,EAAE,kDAAkD,CAAC;SAC7E,MAAM,CAAC,eAAe,EAAE,iCAAiC,CAAC;SAC1D,MAAM,CAAC,eAAe,EAAE,gDAAgD,CAAC;SACzE,MAAM,CAAC,iBAAiB,EAAE,kCAAkC,CAAC;SAC7D,MAAM,CAAC,6BAA6B,EAAE,6BAA6B,CAAC;SACpE,MAAM,CAAC,qBAAqB,EAAE,sCAAsC,CAAC;SACrE,MAAM,CAAC,2BAA2B,EAAE,sCAAsC,CAAC;SAC3E,MAAM,CAAC,yBAAyB,EAAE,sCAAsC,CAAC;SACzE,MAAM,CACL,KAAK,EACH,MAA0B,EAC1B,OAAgC,EAChC,EAAE;QACF,MAAM,QAAQ,GAAG,OAAO,CAAC,IAAI,EAAE,CAAC,IAAI,KAAK,IAAI,CAAC;QAE9C,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;YACpB,MAAM,aAAa,CAAC,QAAQ,CAAC,CAAC;QAChC,CAAC;aAAM,IAAI,OAAO,CAAC,KAAK,EAAE,CAAC;YACzB,IAAI,CAAC,MAAM,EAAE,CAAC;gBACZ,MAAM,GAAG,GAAG,iCAAiC,CAAC;gBAC9C,IAAI,QAAQ,EAAE,CAAC;oBACb,eAAe,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC;gBAClC,CAAC;qBAAM,CAAC;oBACN,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,UAAU,GAAG,EAAE,CAAC,CAAC,CAAC;gBAC5C,CAAC;gBACD,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAC;gBACrB,OAAO;YACT,CAAC;YACD,MAAM,WAAW,CAAC,MAAM,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAC;QAC/C,CAAC;aAAM,CAAC;YACN,MAAM,GAAG,GAAG,+BAA+B,CAAC;YAC5C,IAAI,QAAQ,EAAE,CAAC;gBACb,eAAe,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC;YAClC,CAAC;iBAAM,CAAC;gBACN,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,UAAU,GAAG,EAAE,CAAC,CAAC,CAAC;YAC5C,CAAC;YACD,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAC;QACvB,CAAC;IACH,CAAC,CACF,CAAC;AACN,CAAC;AAED,KAAK,UAAU,aAAa,CAAC,QAAiB;IAC5C,MAAM,MAAM,GAAG,MAAM,UAAU,EAAE,CAAC;IAClC,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAC;IACvB,MAAM,SAAS,GAAG,MAAM,CAAC,uBAAuB,CAAC,UAAU,CAAC;IAC5D,MAAM,aAAa,GAAuB,EAAE,CAAC;IAE7C,KAAK,MAAM,MAAM,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;QACpC,MAAM,QAAQ,GAAG,gBAAgB,CAAC,MAAM,CAAC,CAAC;QAC1C,MAAM,OAAO,GAAG,MAAM,iBAAiB,CAAC,QAAQ,CAAC,CAAC;QAClD,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC;YAAE,SAAS;QACjC,MAAM,UAAU,GAAG,cAAc,CAAC,MAAM,EAAE,OAAO,EAAE,GAAG,EAAE,SAAS,CAAC,CAAC;QACnE,aAAa,CAAC,IAAI,CAAC,GAAG,UAAU,CAAC,CAAC;IACpC,CAAC;IAED,IAAI,QAAQ,EAAE,CAAC;QACb,UAAU,CAAC;YACT,OAAO,EAAE,IAAI;YACb,OAAO,EAAE,SAAS;YAClB,MAAM,EAAE,SAAS;YACjB,UAAU,EAAE,aAAa;SAC1B,CAAC,CAAC;QACH,OAAO;IACT,CAAC;IAED,IAAI,aAAa,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC/B,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,iCAAiC,CAAC,CAAC,CAAC;QAC5D,OAAO;IACT,CAAC;IAED,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,0BAA0B,CAAC,CAAC,CAAC;IACpD,KAAK,MAAM,CAAC,IAAI,aAAa,EAAE,CAAC;QAC9B,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,MAAM,IAAI,CAAC,CAAC,IAAI,EAAE,CAAC,GAAG,KAAK,CAAC,CAAC,OAAO,CAAC,MAAM,WAAW,CAAC,CAAC;QACpF,KAAK,MAAM,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,CAAC;YAC1B,MAAM,OAAO,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACvC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,KAAK,GAAG,OAAO,KAAK,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC;QACvD,CAAC;QACD,OAAO,CAAC,GAAG,EAAE,CAAC;IAChB,CAAC;IAED,OAAO,CAAC,GAAG,CACT,KAAK,CAAC,GAAG,CAAC,2FAA2F,CAAC,CACvG,CAAC;AACJ,CAAC;AAED,KAAK,UAAU,WAAW,CACxB,MAAc,EACd,OAAgC,EAChC,QAAiB;IAEjB,MAAM,MAAM,GAAG,MAAM,UAAU,EAAE,CAAC;IAElC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;QACrC,MAAM,GAAG,GAAG,WAAW,MAAM,wBAAwB,CAAC;QACtD,IAAI,QAAQ,EAAE,CAAC;YACb,eAAe,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC;QAClC,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,UAAU,GAAG,EAAE,CAAC,CAAC,CAAC;QAC5C,CAAC;QACD,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAC;QACrB,OAAO;IACT,CAAC;IAED,IAAI,OAAO,OAAO,CAAC,OAAO,KAAK,QAAQ,EAAE,CAAC;QACxC,MAAM,GAAG,GAAG,oCAAoC,CAAC;QACjD,IAAI,QAAQ,EAAE,CAAC;YACb,eAAe,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC;QAClC,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,UAAU,GAAG,EAAE,CAAC,CAAC,CAAC;QAC5C,CAAC;QACD,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAC;QACrB,OAAO;IACT,CAAC;IAED,MAAM,QAAQ,GAAG,gBAAgB,CAAC,MAAM,CAAC,CAAC;IAC1C,MAAM,OAAO,GAAG,MAAM,iBAAiB,CAAC,QAAQ,CAAC,CAAC;IAClD,MAAM,WAAW,GAAI,OAAO,CAAC,OAAkB,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IAEhG,IAAI,eAAyB,CAAC;IAC9B,IAAI,CAAC;QACH,eAAe,GAAG,oBAAoB,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC;IAC/D,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,MAAM,GAAG,GAAI,GAAa,CAAC,OAAO,CAAC;QACnC,IAAI,QAAQ,EAAE,CAAC;YACb,eAAe,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC;QAClC,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,UAAU,GAAG,EAAE,CAAC,CAAC,CAAC;QAC5C,CAAC;QACD,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAC;QACrB,OAAO;IACT,CAAC;IAED,IAAI,eAAe,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC/B,MAAM,GAAG,GAAG,yCAAyC,CAAC;QACtD,IAAI,QAAQ,EAAE,CAAC;YACb,eAAe,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC;QAClC,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,UAAU,GAAG,EAAE,CAAC,CAAC,CAAC;QAC5C,CAAC;QACD,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAC;QACrB,OAAO;IACT,CAAC;IAED,2BAA2B;IAC3B,MAAM,UAAU,GAAI,OAAO,CAAC,IAA+B,IAAI,OAAO,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IAChG,MAAM,UAAU,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;IAC5C,MAAM,aAAa,GAAG,eAAe,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,OAAO,CAAa,CAAC;IAE5F,IAAI,WAA4B,CAAC;IAEjC,QAAQ,UAAU,EAAE,CAAC;QACnB,KAAK,YAAY,CAAC,CAAC,CAAC;YAClB,MAAM,OAAO,GAAI,OAAO,CAAC,OAA8B,IAAK,OAAO,CAAC,WAAkC,CAAC;YACvG,IAAI,CAAC,OAAO,EAAE,CAAC;gBACb,MAAM,GAAG,GAAG,6DAA6D,CAAC;gBAC1E,IAAI,QAAQ,EAAE,CAAC;oBAAC,eAAe,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC;gBAAC,CAAC;qBAAM,CAAC;oBAAC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,UAAU,GAAG,EAAE,CAAC,CAAC,CAAC;gBAAC,CAAC;gBACtG,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAC;gBACrB,OAAO;YACT,CAAC;YACD,WAAW,GAAG,EAAE,IAAI,EAAE,YAAY,EAAE,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,WAAW,EAAE,UAAU,EAAE,CAAC;YACvG,MAAM;QACR,CAAC;QACD,KAAK,SAAS,CAAC,CAAC,CAAC;YACf,MAAM,IAAI,GAAG,OAAO,CAAC,IAA0B,CAAC;YAChD,MAAM,WAAW,GAAG,OAAO,CAAC,WAAiC,CAAC;YAC9D,IAAI,CAAC,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC;gBAC1B,MAAM,GAAG,GAAG,wDAAwD,CAAC;gBACrE,IAAI,QAAQ,EAAE,CAAC;oBAAC,eAAe,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC;gBAAC,CAAC;qBAAM,CAAC;oBAAC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,UAAU,GAAG,EAAE,CAAC,CAAC,CAAC;gBAAC,CAAC;gBACtG,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAC;gBACrB,OAAO;YACT,CAAC;YACD,WAAW,GAAG,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,WAAW,EAAE,cAAc,EAAE,cAAc,EAAE,WAAW,EAAE,UAAU,EAAE,CAAC;YAC9G,MAAM;QACR,CAAC;QACD,KAAK,SAAS,CAAC,CAAC,CAAC;YACf,MAAM,WAAW,GAAG,OAAO,CAAC,WAAiC,CAAC;YAC9D,MAAM,UAAU,GAAG,OAAO,CAAC,UAAgC,CAAC;YAC5D,IAAI,CAAC,WAAW,IAAI,CAAC,UAAU,EAAE,CAAC;gBAChC,MAAM,GAAG,GAAG,8DAA8D,CAAC;gBAC3E,IAAI,QAAQ,EAAE,CAAC;oBAAC,eAAe,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC;gBAAC,CAAC;qBAAM,CAAC;oBAAC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,UAAU,GAAG,EAAE,CAAC,CAAC,CAAC;gBAAC,CAAC;gBACtG,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAC;gBACrB,OAAO;YACT,CAAC;YACD,WAAW,GAAG,EAAE,IAAI,EAAE,SAAS,EAAE,WAAW,EAAE,UAAU,EAAE,cAAc,EAAE,cAAc,EAAE,WAAW,EAAE,UAAU,EAAE,CAAC;YACpH,MAAM;QACR,CAAC;QACD,KAAK,UAAU,CAAC,CAAC,CAAC;YAChB,MAAM,KAAK,GAAG,OAAO,CAAC,KAA2B,CAAC;YAClD,MAAM,SAAS,GAAG,OAAO,CAAC,SAA+B,CAAC;YAC1D,IAAI,CAAC,KAAK,IAAI,CAAC,SAAS,EAAE,CAAC;gBACzB,MAAM,GAAG,GAAG,wDAAwD,CAAC;gBACrE,IAAI,QAAQ,EAAE,CAAC;oBAAC,eAAe,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC;gBAAC,CAAC;qBAAM,CAAC;oBAAC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,UAAU,GAAG,EAAE,CAAC,CAAC,CAAC;gBAAC,CAAC;gBACtG,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAC;gBACrB,OAAO;YACT,CAAC;YACD,WAAW,GAAG,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,SAAS,EAAE,cAAc,EAAE,cAAc,EAAE,WAAW,EAAE,UAAU,EAAE,CAAC;YAC9G,MAAM;QACR,CAAC;QACD,KAAK,WAAW,CAAC,CAAC,CAAC;YACjB,MAAM,IAAI,GAAG,OAAO,CAAC,IAA0B,CAAC;YAChD,MAAM,WAAW,GAAG,OAAO,CAAC,WAAiC,CAAC;YAC9D,IAAI,CAAC,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC;gBAC1B,MAAM,GAAG,GAAG,0DAA0D,CAAC;gBACvE,IAAI,QAAQ,EAAE,CAAC;oBAAC,eAAe,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC;gBAAC,CAAC;qBAAM,CAAC;oBAAC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,UAAU,GAAG,EAAE,CAAC,CAAC,CAAC;gBAAC,CAAC;gBACtG,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAC;gBACrB,OAAO;YACT,CAAC;YACD,WAAW,GAAG,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,WAAW,EAAE,cAAc,EAAE,cAAc,EAAE,WAAW,EAAE,UAAU,EAAE,CAAC;YAChH,MAAM;QACR,CAAC;QACD,KAAK,OAAO,CAAC,CAAC,CAAC;YACb,MAAM,IAAI,GAAG,OAAO,CAAC,IAA0B,CAAC;YAChD,MAAM,WAAW,GAAG,OAAO,CAAC,WAAiC,CAAC;YAC9D,IAAI,CAAC,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC;gBAC1B,MAAM,GAAG,GAAG,sDAAsD,CAAC;gBACnE,IAAI,QAAQ,EAAE,CAAC;oBAAC,eAAe,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC;gBAAC,CAAC;qBAAM,CAAC;oBAAC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,UAAU,GAAG,EAAE,CAAC,CAAC,CAAC;gBAAC,CAAC;gBACtG,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAC;gBACrB,OAAO;YACT,CAAC;YACD,WAAW,GAAG,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,WAAW,EAAE,cAAc,EAAE,cAAc,EAAE,WAAW,EAAE,UAAU,EAAE,CAAC;YAC5G,MAAM;QACR,CAAC;QACD,OAAO,CAAC,CAAC,CAAC;YACR,MAAM,GAAG,GAAG,wBAAwB,UAAU,IAAI,CAAC;YACnD,IAAI,QAAQ,EAAE,CAAC;gBAAC,eAAe,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC;YAAC,CAAC;iBAAM,CAAC;gBAAC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,UAAU,GAAG,EAAE,CAAC,CAAC,CAAC;YAAC,CAAC;YACtG,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAC;YACrB,OAAO;QACT,CAAC;IACH,CAAC;IAED,qDAAqD;IACrD,IAAI,aAAa,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC7B,WAAW,CAAC,UAAU,GAAG,aAAa,CAAC;IACzC,CAAC;IAED,uBAAuB;IACvB,MAAM,GAAG,GAAG,IAAI,GAAG,EAAE,CAAC;IACtB,MAAM,QAAQ,GAAG,GAAG,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC;IAC3C,WAAW,CAAC,EAAE,GAAG,gBAAgB,CAAC,WAAW,CAAC,CAAC;IAC/C,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,EAAE,CAAC;QAC3B,MAAM,MAAM,GAAG,CAAC,QAAQ,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,GAAG,CAAC,YAAY,IAAI,GAAG,CAAC,OAAO,EAAE,CAAC,CAAC;QAC1F,MAAM,GAAG,GAAG,yCAAyC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;QACzE,IAAI,QAAQ,EAAE,CAAC;YAAC,eAAe,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC;QAAC,CAAC;aAAM,CAAC;YAAC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,UAAU,GAAG,EAAE,CAAC,CAAC,CAAC;QAAC,CAAC;QACtG,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAC;QACrB,OAAO;IACT,CAAC;IAED,4CAA4C;IAC5C,MAAM,SAAS,GAAG,IAAI,GAAG,CAAC,eAAe,CAAC,CAAC;IAC3C,MAAM,SAAS,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IAC9D,SAAS,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IAC5B,MAAM,kBAAkB,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC;IAE9C,IAAI,QAAQ,EAAE,CAAC;QACb,UAAU,CAAC;YACT,OAAO,EAAE,IAAI;YACb,OAAO,EAAE,SAAS;YAClB,MAAM,EAAE,SAAS;YACjB,MAAM;YACN,OAAO,EAAE,eAAe,CAAC,MAAM;YAC/B,WAAW;SACZ,CAAC,CAAC;IACL,CAAC;SAAM,CAAC;QACN,OAAO,CAAC,GAAG,CACT,KAAK,CAAC,KAAK,CAAC,oBAAoB,eAAe,CAAC,MAAM,IAAI,UAAU,sBAAsB,MAAM,EAAE,CAAC,CACpG,CAAC;IACJ,CAAC;AACH,CAAC"}
|
|
1
|
+
{"version":3,"file":"compact.js","sourceRoot":"","sources":["../../src/commands/compact.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"delete.d.ts","sourceRoot":"","sources":["../../src/commands/delete.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"delete.d.ts","sourceRoot":"","sources":["../../src/commands/delete.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAWpC,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAoF5D"}
|
package/dist/commands/delete.js
CHANGED
|
@@ -1,15 +1,15 @@
|
|
|
1
1
|
import chalk from "chalk";
|
|
2
2
|
import { readConfig, getExpertisePath } from "../utils/config.js";
|
|
3
|
-
import { readExpertiseFile, writeExpertiseFile, } from "../utils/expertise.js";
|
|
3
|
+
import { readExpertiseFile, writeExpertiseFile, resolveRecordId, } from "../utils/expertise.js";
|
|
4
4
|
import { getRecordSummary } from "../utils/format.js";
|
|
5
5
|
import { outputJson, outputJsonError } from "../utils/json-output.js";
|
|
6
6
|
export function registerDeleteCommand(program) {
|
|
7
7
|
program
|
|
8
8
|
.command("delete")
|
|
9
9
|
.argument("<domain>", "expertise domain")
|
|
10
|
-
.argument("<
|
|
10
|
+
.argument("<id>", "record ID (e.g. mx-abc123, abc123, or abc)")
|
|
11
11
|
.description("Delete an expertise record")
|
|
12
|
-
.action(async (domain,
|
|
12
|
+
.action(async (domain, id) => {
|
|
13
13
|
const jsonMode = program.opts().json === true;
|
|
14
14
|
try {
|
|
15
15
|
const config = await readConfig();
|
|
@@ -26,47 +26,18 @@ export function registerDeleteCommand(program) {
|
|
|
26
26
|
}
|
|
27
27
|
const filePath = getExpertisePath(domain);
|
|
28
28
|
const records = await readExpertiseFile(filePath);
|
|
29
|
-
|
|
30
|
-
if (
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
if (found === -1) {
|
|
34
|
-
if (jsonMode) {
|
|
35
|
-
outputJsonError("delete", `Record with ID "${identifier}" not found in domain "${domain}".`);
|
|
36
|
-
}
|
|
37
|
-
else {
|
|
38
|
-
console.error(chalk.red(`Error: record with ID "${identifier}" not found in domain "${domain}".`));
|
|
39
|
-
}
|
|
40
|
-
process.exitCode = 1;
|
|
41
|
-
return;
|
|
42
|
-
}
|
|
43
|
-
targetIndex = found;
|
|
44
|
-
}
|
|
45
|
-
else {
|
|
46
|
-
// Legacy 1-based index
|
|
47
|
-
const index = parseInt(identifier, 10);
|
|
48
|
-
if (isNaN(index) || index < 1) {
|
|
49
|
-
if (jsonMode) {
|
|
50
|
-
outputJsonError("delete", "Identifier must be a record ID (mx-XXXXXX) or a positive integer (1-based index).");
|
|
51
|
-
}
|
|
52
|
-
else {
|
|
53
|
-
console.error(chalk.red("Error: identifier must be a record ID (mx-XXXXXX) or a positive integer (1-based index)."));
|
|
54
|
-
}
|
|
55
|
-
process.exitCode = 1;
|
|
56
|
-
return;
|
|
29
|
+
const resolved = resolveRecordId(records, id);
|
|
30
|
+
if (!resolved.ok) {
|
|
31
|
+
if (jsonMode) {
|
|
32
|
+
outputJsonError("delete", resolved.error);
|
|
57
33
|
}
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
outputJsonError("delete", `Index ${index} out of range. Domain "${domain}" has ${records.length} record(s).`);
|
|
61
|
-
}
|
|
62
|
-
else {
|
|
63
|
-
console.error(chalk.red(`Error: index ${index} out of range. Domain "${domain}" has ${records.length} record(s).`));
|
|
64
|
-
}
|
|
65
|
-
process.exitCode = 1;
|
|
66
|
-
return;
|
|
34
|
+
else {
|
|
35
|
+
console.error(chalk.red(`Error: ${resolved.error}`));
|
|
67
36
|
}
|
|
68
|
-
|
|
37
|
+
process.exitCode = 1;
|
|
38
|
+
return;
|
|
69
39
|
}
|
|
40
|
+
const targetIndex = resolved.index;
|
|
70
41
|
const deleted = records[targetIndex];
|
|
71
42
|
records.splice(targetIndex, 1);
|
|
72
43
|
await writeExpertiseFile(filePath, records);
|
|
@@ -76,14 +47,12 @@ export function registerDeleteCommand(program) {
|
|
|
76
47
|
command: "delete",
|
|
77
48
|
domain,
|
|
78
49
|
id: deleted.id ?? null,
|
|
79
|
-
index: targetIndex + 1,
|
|
80
50
|
type: deleted.type,
|
|
81
51
|
summary: getRecordSummary(deleted),
|
|
82
52
|
});
|
|
83
53
|
}
|
|
84
54
|
else {
|
|
85
|
-
|
|
86
|
-
console.log(chalk.green(`✔ Deleted ${deleted.type} #${targetIndex + 1}${idLabel} from ${domain}: ${getRecordSummary(deleted)}`));
|
|
55
|
+
console.log(chalk.green(`✔ Deleted ${deleted.type} ${deleted.id ?? ""} from ${domain}: ${getRecordSummary(deleted)}`));
|
|
87
56
|
}
|
|
88
57
|
}
|
|
89
58
|
catch (err) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"delete.js","sourceRoot":"","sources":["../../src/commands/delete.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,UAAU,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAClE,OAAO,EACL,iBAAiB,EACjB,kBAAkB,
|
|
1
|
+
{"version":3,"file":"delete.js","sourceRoot":"","sources":["../../src/commands/delete.ts"],"names":[],"mappings":"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"}
|
package/dist/commands/doctor.js
CHANGED
|
@@ -163,16 +163,16 @@ async function checkGovernance(config, cwd) {
|
|
|
163
163
|
const records = await readExpertiseFile(filePath);
|
|
164
164
|
const count = records.length;
|
|
165
165
|
if (count >= config.governance.hard_limit) {
|
|
166
|
-
details.push(`${domain}: ${count}
|
|
166
|
+
details.push(`${domain}: ${count} records (over hard limit of ${config.governance.hard_limit})`);
|
|
167
167
|
worstStatus = "fail";
|
|
168
168
|
}
|
|
169
169
|
else if (count >= config.governance.warn_entries) {
|
|
170
|
-
details.push(`${domain}: ${count}
|
|
170
|
+
details.push(`${domain}: ${count} records (over warn threshold of ${config.governance.warn_entries})`);
|
|
171
171
|
if (worstStatus !== "fail")
|
|
172
172
|
worstStatus = "warn";
|
|
173
173
|
}
|
|
174
174
|
else if (count >= config.governance.max_entries) {
|
|
175
|
-
details.push(`${domain}: ${count}
|
|
175
|
+
details.push(`${domain}: ${count} records (approaching limit of ${config.governance.max_entries})`);
|
|
176
176
|
if (worstStatus !== "fail")
|
|
177
177
|
worstStatus = "warn";
|
|
178
178
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"edit.d.ts","sourceRoot":"","sources":["../../src/commands/edit.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAU,MAAM,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"edit.d.ts","sourceRoot":"","sources":["../../src/commands/edit.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAU,MAAM,WAAW,CAAC;AAc5C,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAoM1D"}
|
package/dist/commands/edit.js
CHANGED
|
@@ -3,14 +3,14 @@ import _Ajv from "ajv";
|
|
|
3
3
|
const Ajv = _Ajv.default ?? _Ajv;
|
|
4
4
|
import chalk from "chalk";
|
|
5
5
|
import { readConfig, getExpertisePath } from "../utils/config.js";
|
|
6
|
-
import { readExpertiseFile, writeExpertiseFile, } from "../utils/expertise.js";
|
|
6
|
+
import { readExpertiseFile, writeExpertiseFile, resolveRecordId, } from "../utils/expertise.js";
|
|
7
7
|
import { recordSchema } from "../schemas/record-schema.js";
|
|
8
8
|
import { outputJson, outputJsonError } from "../utils/json-output.js";
|
|
9
9
|
export function registerEditCommand(program) {
|
|
10
10
|
program
|
|
11
11
|
.command("edit")
|
|
12
12
|
.argument("<domain>", "expertise domain")
|
|
13
|
-
.argument("<
|
|
13
|
+
.argument("<id>", "record ID (e.g. mx-abc123, abc123, or abc)")
|
|
14
14
|
.description("Edit an existing expertise record")
|
|
15
15
|
.addOption(new Option("--classification <classification>", "update classification").choices(["foundational", "tactical", "observational"]))
|
|
16
16
|
.option("--content <content>", "update content (convention)")
|
|
@@ -22,7 +22,7 @@ export function registerEditCommand(program) {
|
|
|
22
22
|
.option("--files <files>", "update related files (comma-separated)")
|
|
23
23
|
.option("--relates-to <ids>", "update linked record IDs (comma-separated)")
|
|
24
24
|
.option("--supersedes <ids>", "update superseded record IDs (comma-separated)")
|
|
25
|
-
.action(async (domain,
|
|
25
|
+
.action(async (domain, id, options) => {
|
|
26
26
|
const jsonMode = program.opts().json === true;
|
|
27
27
|
try {
|
|
28
28
|
const config = await readConfig();
|
|
@@ -39,47 +39,18 @@ export function registerEditCommand(program) {
|
|
|
39
39
|
}
|
|
40
40
|
const filePath = getExpertisePath(domain);
|
|
41
41
|
const records = await readExpertiseFile(filePath);
|
|
42
|
-
|
|
43
|
-
if (
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
if (found === -1) {
|
|
47
|
-
if (jsonMode) {
|
|
48
|
-
outputJsonError("edit", `Record with ID "${identifier}" not found in domain "${domain}".`);
|
|
49
|
-
}
|
|
50
|
-
else {
|
|
51
|
-
console.error(chalk.red(`Error: record with ID "${identifier}" not found in domain "${domain}".`));
|
|
52
|
-
}
|
|
53
|
-
process.exitCode = 1;
|
|
54
|
-
return;
|
|
55
|
-
}
|
|
56
|
-
targetIndex = found;
|
|
57
|
-
}
|
|
58
|
-
else {
|
|
59
|
-
// Legacy 1-based index
|
|
60
|
-
const index = parseInt(identifier, 10);
|
|
61
|
-
if (isNaN(index) || index < 1) {
|
|
62
|
-
if (jsonMode) {
|
|
63
|
-
outputJsonError("edit", "Identifier must be a record ID (mx-XXXXXX) or a positive integer (1-based index).");
|
|
64
|
-
}
|
|
65
|
-
else {
|
|
66
|
-
console.error(chalk.red("Error: identifier must be a record ID (mx-XXXXXX) or a positive integer (1-based index)."));
|
|
67
|
-
}
|
|
68
|
-
process.exitCode = 1;
|
|
69
|
-
return;
|
|
42
|
+
const resolved = resolveRecordId(records, id);
|
|
43
|
+
if (!resolved.ok) {
|
|
44
|
+
if (jsonMode) {
|
|
45
|
+
outputJsonError("edit", resolved.error);
|
|
70
46
|
}
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
outputJsonError("edit", `Index ${index} out of range. Domain "${domain}" has ${records.length} record(s).`);
|
|
74
|
-
}
|
|
75
|
-
else {
|
|
76
|
-
console.error(chalk.red(`Error: index ${index} out of range. Domain "${domain}" has ${records.length} record(s).`));
|
|
77
|
-
}
|
|
78
|
-
process.exitCode = 1;
|
|
79
|
-
return;
|
|
47
|
+
else {
|
|
48
|
+
console.error(chalk.red(`Error: ${resolved.error}`));
|
|
80
49
|
}
|
|
81
|
-
|
|
50
|
+
process.exitCode = 1;
|
|
51
|
+
return;
|
|
82
52
|
}
|
|
53
|
+
const targetIndex = resolved.index;
|
|
83
54
|
const record = { ...records[targetIndex] };
|
|
84
55
|
// Apply updates based on record type
|
|
85
56
|
if (options.classification) {
|
|
@@ -175,14 +146,12 @@ export function registerEditCommand(program) {
|
|
|
175
146
|
command: "edit",
|
|
176
147
|
domain,
|
|
177
148
|
id: record.id ?? null,
|
|
178
|
-
index: targetIndex + 1,
|
|
179
149
|
type: record.type,
|
|
180
150
|
record,
|
|
181
151
|
});
|
|
182
152
|
}
|
|
183
153
|
else {
|
|
184
|
-
|
|
185
|
-
console.log(chalk.green(`\u2714 Updated ${record.type} #${targetIndex + 1}${idLabel} in ${domain}`));
|
|
154
|
+
console.log(chalk.green(`\u2714 Updated ${record.type} ${record.id ?? ""} in ${domain}`));
|
|
186
155
|
}
|
|
187
156
|
}
|
|
188
157
|
catch (err) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"edit.js","sourceRoot":"","sources":["../../src/commands/edit.ts"],"names":[],"mappings":"AAAA,OAAO,EAAW,MAAM,EAAE,MAAM,WAAW,CAAC;AAC5C,OAAO,IAAI,MAAM,KAAK,CAAC;AACvB,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC;AACjC,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,UAAU,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAClE,OAAO,EACL,iBAAiB,EACjB,kBAAkB,
|
|
1
|
+
{"version":3,"file":"edit.js","sourceRoot":"","sources":["../../src/commands/edit.ts"],"names":[],"mappings":"AAAA,OAAO,EAAW,MAAM,EAAE,MAAM,WAAW,CAAC;AAC5C,OAAO,IAAI,MAAM,KAAK,CAAC;AACvB,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC;AACjC,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,UAAU,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAClE,OAAO,EACL,iBAAiB,EACjB,kBAAkB,EAClB,eAAe,GAChB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAE3D,OAAO,EAAE,UAAU,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAEtE,MAAM,UAAU,mBAAmB,CAAC,OAAgB;IAClD,OAAO;SACJ,OAAO,CAAC,MAAM,CAAC;SACf,QAAQ,CAAC,UAAU,EAAE,kBAAkB,CAAC;SACxC,QAAQ,CAAC,MAAM,EAAE,4CAA4C,CAAC;SAC9D,WAAW,CAAC,mCAAmC,CAAC;SAChD,SAAS,CACR,IAAI,MAAM,CACR,mCAAmC,EACnC,uBAAuB,CACxB,CAAC,OAAO,CAAC,CAAC,cAAc,EAAE,UAAU,EAAE,eAAe,CAAC,CAAC,CACzD;SACA,MAAM,CAAC,qBAAqB,EAAE,6BAA6B,CAAC;SAC5D,MAAM,CAAC,eAAe,EAAE,uBAAuB,CAAC;SAChD,MAAM,CAAC,6BAA6B,EAAE,oBAAoB,CAAC;SAC3D,MAAM,CAAC,2BAA2B,EAAE,6BAA6B,CAAC;SAClE,MAAM,CAAC,iBAAiB,EAAE,yBAAyB,CAAC;SACpD,MAAM,CAAC,yBAAyB,EAAE,6BAA6B,CAAC;SAChE,MAAM,CAAC,iBAAiB,EAAE,wCAAwC,CAAC;SACnE,MAAM,CAAC,oBAAoB,EAAE,4CAA4C,CAAC;SAC1E,MAAM,CAAC,oBAAoB,EAAE,gDAAgD,CAAC;SAC9E,MAAM,CACL,KAAK,EACH,MAAc,EACd,EAAU,EACV,OAAgC,EAChC,EAAE;QACF,MAAM,QAAQ,GAAG,OAAO,CAAC,IAAI,EAAE,CAAC,IAAI,KAAK,IAAI,CAAC;QAC9C,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,UAAU,EAAE,CAAC;YAElC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;gBACrC,IAAI,QAAQ,EAAE,CAAC;oBACb,eAAe,CAAC,MAAM,EAAE,WAAW,MAAM,6CAA6C,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,QAAQ,EAAE,CAAC,CAAC;gBACjI,CAAC;qBAAM,CAAC;oBACN,OAAO,CAAC,KAAK,CACX,KAAK,CAAC,GAAG,CAAC,kBAAkB,MAAM,wBAAwB,CAAC,CAC5D,CAAC;oBACF,OAAO,CAAC,KAAK,CACX,KAAK,CAAC,GAAG,CACP,sBAAsB,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,QAAQ,EAAE,CAC9D,CACF,CAAC;gBACJ,CAAC;gBACD,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAC;gBACrB,OAAO;YACT,CAAC;YAED,MAAM,QAAQ,GAAG,gBAAgB,CAAC,MAAM,CAAC,CAAC;YAC1C,MAAM,OAAO,GAAG,MAAM,iBAAiB,CAAC,QAAQ,CAAC,CAAC;YAElD,MAAM,QAAQ,GAAG,eAAe,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;YAC9C,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;gBACjB,IAAI,QAAQ,EAAE,CAAC;oBACb,eAAe,CAAC,MAAM,EAAE,QAAQ,CAAC,KAAK,CAAC,CAAC;gBAC1C,CAAC;qBAAM,CAAC;oBACN,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,UAAU,QAAQ,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;gBACvD,CAAC;gBACD,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAC;gBACrB,OAAO;YACT,CAAC;YACD,MAAM,WAAW,GAAG,QAAQ,CAAC,KAAK,CAAC;YAEnC,MAAM,MAAM,GAAG,EAAE,GAAG,OAAO,CAAC,WAAW,CAAC,EAAE,CAAC;YAE3C,qCAAqC;YACrC,IAAI,OAAO,CAAC,cAAc,EAAE,CAAC;gBAC3B,MAAM,CAAC,cAAc,GAAG,OAAO,CAAC,cAAgC,CAAC;YACnE,CAAC;YACD,IAAI,OAAO,OAAO,CAAC,SAAS,KAAK,QAAQ,EAAE,CAAC;gBAC1C,MAAM,CAAC,UAAU,GAAG,OAAO,CAAC,SAAS;qBAClC,KAAK,CAAC,GAAG,CAAC;qBACV,GAAG,CAAC,CAAC,EAAU,EAAE,EAAE,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC;qBAC9B,MAAM,CAAC,OAAO,CAAC,CAAC;YACrB,CAAC;YACD,IAAI,OAAO,OAAO,CAAC,UAAU,KAAK,QAAQ,EAAE,CAAC;gBAC3C,MAAM,CAAC,UAAU,GAAG,OAAO,CAAC,UAAU;qBACnC,KAAK,CAAC,GAAG,CAAC;qBACV,GAAG,CAAC,CAAC,EAAU,EAAE,EAAE,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC;qBAC9B,MAAM,CAAC,OAAO,CAAC,CAAC;YACrB,CAAC;YAED,QAAQ,MAAM,CAAC,IAAI,EAAE,CAAC;gBACpB,KAAK,YAAY;oBACf,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;wBACpB,MAAM,CAAC,OAAO,GAAG,OAAO,CAAC,OAAiB,CAAC;oBAC7C,CAAC;oBACD,MAAM;gBACR,KAAK,SAAS;oBACZ,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC;wBACjB,MAAM,CAAC,IAAI,GAAG,OAAO,CAAC,IAAc,CAAC;oBACvC,CAAC;oBACD,IAAI,OAAO,CAAC,WAAW,EAAE,CAAC;wBACxB,MAAM,CAAC,WAAW,GAAG,OAAO,CAAC,WAAqB,CAAC;oBACrD,CAAC;oBACD,IAAI,OAAO,OAAO,CAAC,KAAK,KAAK,QAAQ,EAAE,CAAC;wBACtC,MAAM,CAAC,KAAK,GAAI,OAAO,CAAC,KAAgB,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;oBACtD,CAAC;oBACD,MAAM;gBACR,KAAK,SAAS;oBACZ,IAAI,OAAO,CAAC,WAAW,EAAE,CAAC;wBACxB,MAAM,CAAC,WAAW,GAAG,OAAO,CAAC,WAAqB,CAAC;oBACrD,CAAC;oBACD,IAAI,OAAO,CAAC,UAAU,EAAE,CAAC;wBACvB,MAAM,CAAC,UAAU,GAAG,OAAO,CAAC,UAAoB,CAAC;oBACnD,CAAC;oBACD,MAAM;gBACR,KAAK,UAAU;oBACb,IAAI,OAAO,CAAC,KAAK,EAAE,CAAC;wBAClB,MAAM,CAAC,KAAK,GAAG,OAAO,CAAC,KAAe,CAAC;oBACzC,CAAC;oBACD,IAAI,OAAO,CAAC,SAAS,EAAE,CAAC;wBACtB,MAAM,CAAC,SAAS,GAAG,OAAO,CAAC,SAAmB,CAAC;oBACjD,CAAC;oBACD,MAAM;gBACR,KAAK,WAAW;oBACd,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC;wBACjB,MAAM,CAAC,IAAI,GAAG,OAAO,CAAC,IAAc,CAAC;oBACvC,CAAC;oBACD,IAAI,OAAO,CAAC,WAAW,EAAE,CAAC;wBACxB,MAAM,CAAC,WAAW,GAAG,OAAO,CAAC,WAAqB,CAAC;oBACrD,CAAC;oBACD,IAAI,OAAO,OAAO,CAAC,KAAK,KAAK,QAAQ,EAAE,CAAC;wBACtC,MAAM,CAAC,KAAK,GAAI,OAAO,CAAC,KAAgB,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;oBACtD,CAAC;oBACD,MAAM;gBACR,KAAK,OAAO;oBACV,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC;wBACjB,MAAM,CAAC,IAAI,GAAG,OAAO,CAAC,IAAc,CAAC;oBACvC,CAAC;oBACD,IAAI,OAAO,CAAC,WAAW,EAAE,CAAC;wBACxB,MAAM,CAAC,WAAW,GAAG,OAAO,CAAC,WAAqB,CAAC;oBACrD,CAAC;oBACD,MAAM;YACV,CAAC;YAED,8BAA8B;YAC9B,MAAM,GAAG,GAAG,IAAI,GAAG,EAAE,CAAC;YACtB,MAAM,QAAQ,GAAG,GAAG,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC;YAC3C,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;gBACtB,MAAM,MAAM,GAAG,CAAC,QAAQ,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,GAAG,CAAC,YAAY,IAAI,GAAG,CAAC,OAAO,EAAE,CAAC,CAAC;gBAC1F,IAAI,QAAQ,EAAE,CAAC;oBACb,eAAe,CAAC,MAAM,EAAE,4CAA4C,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;gBAC3F,CAAC;qBAAM,CAAC;oBACN,OAAO,CAAC,KAAK,CACX,KAAK,CAAC,GAAG,CAAC,iDAAiD,CAAC,CAC7D,CAAC;oBACF,KAAK,MAAM,GAAG,IAAI,QAAQ,CAAC,MAAM,IAAI,EAAE,EAAE,CAAC;wBACxC,OAAO,CAAC,KAAK,CACX,KAAK,CAAC,GAAG,CAAC,KAAK,GAAG,CAAC,YAAY,IAAI,GAAG,CAAC,OAAO,EAAE,CAAC,CAClD,CAAC;oBACJ,CAAC;gBACH,CAAC;gBACD,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAC;gBACrB,OAAO;YACT,CAAC;YAED,OAAO,CAAC,WAAW,CAAC,GAAG,MAAM,CAAC;YAC9B,MAAM,kBAAkB,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;YAE5C,IAAI,QAAQ,EAAE,CAAC;gBACb,UAAU,CAAC;oBACT,OAAO,EAAE,IAAI;oBACb,OAAO,EAAE,MAAM;oBACf,MAAM;oBACN,EAAE,EAAE,MAAM,CAAC,EAAE,IAAI,IAAI;oBACrB,IAAI,EAAE,MAAM,CAAC,IAAI;oBACjB,MAAM;iBACP,CAAC,CAAC;YACL,CAAC;iBAAM,CAAC;gBACN,OAAO,CAAC,GAAG,CACT,KAAK,CAAC,KAAK,CACT,kBAAkB,MAAM,CAAC,IAAI,IAAI,MAAM,CAAC,EAAE,IAAI,EAAE,OAAO,MAAM,EAAE,CAChE,CACF,CAAC;YACJ,CAAC;QACH,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,IAAK,GAA6B,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;gBACrD,IAAI,QAAQ,EAAE,CAAC;oBACb,eAAe,CAAC,MAAM,EAAE,qDAAqD,CAAC,CAAC;gBACjF,CAAC;qBAAM,CAAC;oBACN,OAAO,CAAC,KAAK,CACX,4DAA4D,CAC7D,CAAC;gBACJ,CAAC;YACH,CAAC;iBAAM,CAAC;gBACN,IAAI,QAAQ,EAAE,CAAC;oBACb,eAAe,CAAC,MAAM,EAAG,GAAa,CAAC,OAAO,CAAC,CAAC;gBAClD,CAAC;qBAAM,CAAC;oBACN,OAAO,CAAC,KAAK,CAAC,UAAW,GAAa,CAAC,OAAO,EAAE,CAAC,CAAC;gBACpD,CAAC;YACH,CAAC;YACD,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAC;QACvB,CAAC;IACH,CAAC,CACF,CAAC;AACN,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"onboard.d.ts","sourceRoot":"","sources":["../../src/commands/onboard.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"onboard.d.ts","sourceRoot":"","sources":["../../src/commands/onboard.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAiEpC,wBAAsB,UAAU,CAAC,OAAO,EAAE;IACxC,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB,GAAG,OAAO,CAAC,IAAI,CAAC,CA+ChB;AAED,wBAAgB,sBAAsB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAwB7D"}
|
package/dist/commands/onboard.js
CHANGED
|
@@ -6,82 +6,38 @@ const SNIPPET_DEFAULT = `## Project Expertise (Mulch)
|
|
|
6
6
|
|
|
7
7
|
This project uses [Mulch](https://github.com/jayminwest/mulch) for structured expertise management.
|
|
8
8
|
|
|
9
|
-
**Before starting work**, run:
|
|
10
|
-
\`\`\`bash
|
|
11
|
-
mulch prime
|
|
12
|
-
\`\`\`
|
|
13
|
-
|
|
14
|
-
**After completing work**, record learnings:
|
|
15
|
-
\`\`\`bash
|
|
16
|
-
mulch record <domain> --type <convention|pattern|failure|decision> --description "..."
|
|
17
|
-
\`\`\`
|
|
18
|
-
|
|
19
|
-
Run \`mulch status\` to see available domains and expertise health.
|
|
20
|
-
|
|
21
|
-
### Session Completion Checklist
|
|
22
|
-
|
|
23
|
-
1. Record learnings:
|
|
24
|
-
\`\`\`bash
|
|
25
|
-
mulch record <domain> --type <convention|pattern|failure|decision> --description "..."
|
|
26
|
-
\`\`\`
|
|
27
|
-
2. Validate records:
|
|
28
|
-
\`\`\`bash
|
|
29
|
-
mulch validate
|
|
30
|
-
\`\`\`
|
|
31
|
-
3. Commit changes:
|
|
32
|
-
\`\`\`bash
|
|
33
|
-
git add .mulch/ && git commit -m "Update expertise"
|
|
34
|
-
\`\`\`
|
|
35
|
-
4. Push to share:
|
|
36
|
-
\`\`\`bash
|
|
37
|
-
git push
|
|
38
|
-
\`\`\`
|
|
39
|
-
`;
|
|
40
|
-
function getSnippet(provider) {
|
|
41
|
-
if (!provider || provider === "default") {
|
|
42
|
-
return SNIPPET_DEFAULT;
|
|
43
|
-
}
|
|
44
|
-
// Provider-specific snippets customize the phrasing slightly
|
|
45
|
-
if (provider === "claude") {
|
|
46
|
-
return `## Project Expertise (Mulch)
|
|
47
|
-
|
|
48
|
-
This project uses [Mulch](https://github.com/jayminwest/mulch) for structured expertise management.
|
|
49
|
-
|
|
50
9
|
**At the start of every session**, run:
|
|
51
10
|
\`\`\`bash
|
|
52
11
|
mulch prime
|
|
53
12
|
\`\`\`
|
|
54
13
|
|
|
55
|
-
This injects project-specific conventions, patterns, and
|
|
14
|
+
This injects project-specific conventions, patterns, decisions, and other learnings into your context.
|
|
56
15
|
|
|
57
|
-
**
|
|
16
|
+
**Before completing your task**, review your work for insights worth preserving — conventions discovered,
|
|
17
|
+
patterns applied, failures encountered, or decisions made — and record them:
|
|
58
18
|
\`\`\`bash
|
|
59
|
-
mulch record <domain> --type <convention|pattern|failure|decision> --description "..."
|
|
19
|
+
mulch record <domain> --type <convention|pattern|failure|decision|reference|guide> --description "..."
|
|
60
20
|
\`\`\`
|
|
61
21
|
|
|
62
22
|
Run \`mulch status\` to check domain health and entry counts.
|
|
23
|
+
Run \`mulch --help\` for full usage.
|
|
63
24
|
|
|
64
|
-
###
|
|
25
|
+
### Before You Finish
|
|
65
26
|
|
|
66
|
-
1.
|
|
67
|
-
\`\`\`bash
|
|
68
|
-
mulch record <domain> --type <convention|pattern|failure|decision> --description "..."
|
|
69
|
-
\`\`\`
|
|
70
|
-
2. Validate records:
|
|
71
|
-
\`\`\`bash
|
|
72
|
-
mulch validate
|
|
73
|
-
\`\`\`
|
|
74
|
-
3. Commit changes:
|
|
27
|
+
1. Store insights from this work session:
|
|
75
28
|
\`\`\`bash
|
|
76
|
-
|
|
29
|
+
mulch record <domain> --type <convention|pattern|failure|decision|reference|guide> --description "..."
|
|
77
30
|
\`\`\`
|
|
78
|
-
|
|
31
|
+
2. Validate and commit:
|
|
79
32
|
\`\`\`bash
|
|
80
|
-
git
|
|
33
|
+
mulch validate && git add .mulch/ && git commit -m "mulch: record learnings"
|
|
81
34
|
\`\`\`
|
|
82
35
|
`;
|
|
36
|
+
function getSnippet(provider) {
|
|
37
|
+
if (!provider || provider === "default") {
|
|
38
|
+
return SNIPPET_DEFAULT;
|
|
83
39
|
}
|
|
84
|
-
//
|
|
40
|
+
// All providers use the same standardized snippet
|
|
85
41
|
return SNIPPET_DEFAULT;
|
|
86
42
|
}
|
|
87
43
|
async function fileExists(filePath) {
|