greprag 5.10.1 → 5.11.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.
@@ -127,21 +127,38 @@ async function runInit(opts) {
127
127
  // Step 5: Global anchor — catches Cowork + any session without a repo anchor.
128
128
  const globalAnchor = (0, project_anchor_1.ensureGlobalAnchor)();
129
129
  changes.push(`Global anchor: ${globalAnchor.projectName} (${globalAnchor.projectId.slice(0, 8)})`);
130
- // Step 6: Bundled skills every subdir of packages/cli/skill/<name>/ becomes
131
- // ~/.claude/skills/<name>/. Greprag's CLI is the carrier for the advisor
132
- // skill family (content-advisor, future business-advisor, etc.) same
133
- // pattern openwriter uses to ship x-writer + book-writer alongside itself.
130
+ // Step 5b: Local repo path registry. Chip-spawn convention reads this to
131
+ // resolve project-name cwd for cross-project chips. Per-machine, never
132
+ // synced to the API paths only make sense locally.
133
+ writeProjectPath(anchor.projectName, process.cwd());
134
+ changes.push(`Registered repo path for ${anchor.projectName} → ~/.greprag/projects.json`);
135
+ // Step 6: Bundled skills. Only the `greprag/` front-door skill auto-installs
136
+ // — it's the operator's manual for the CLI and is treated as part of the
137
+ // package's identity. Other bundled advisors (`discord/`, `content-advisor/`,
138
+ // `lore-advisor/`, future ones) are opt-in via `greprag skill install <name>`.
139
+ // Auto-installing every bundled advisor crowds the agent's skill registry
140
+ // with capabilities the operator may not want. Postinstall mirrors this
141
+ // policy (sync greprag/ always, refresh-only for opted-in advisors).
134
142
  // adr: adr/skill-bundle-shape.md
135
143
  const skillRoot = path.join(__dirname, '../../skill');
136
144
  const skillsTargetRoot = path.join(os.homedir(), '.claude', 'skills');
145
+ const CORE_SKILL = 'greprag';
146
+ const optionalSkills = [];
137
147
  if (fs.existsSync(skillRoot)) {
138
148
  for (const entry of fs.readdirSync(skillRoot, { withFileTypes: true })) {
139
149
  if (!entry.isDirectory())
140
150
  continue;
141
- const srcDir = path.join(skillRoot, entry.name);
142
- const destDir = path.join(skillsTargetRoot, entry.name);
143
- copySkillDir(srcDir, destDir);
144
- changes.push(`Skill: installed → ${destDir}`);
151
+ if (entry.name === 'templates')
152
+ continue;
153
+ if (entry.name === CORE_SKILL) {
154
+ const srcDir = path.join(skillRoot, entry.name);
155
+ const destDir = path.join(skillsTargetRoot, entry.name);
156
+ copySkillDir(srcDir, destDir);
157
+ changes.push(`Skill: installed → ${destDir}`);
158
+ }
159
+ else {
160
+ optionalSkills.push(entry.name);
161
+ }
145
162
  }
146
163
  }
147
164
  // Step 6b: Install the chip-spawn doc to ~/.claude/docs/chip-spawn.md. The
@@ -169,7 +186,12 @@ async function runInit(opts) {
169
186
  console.log(`\n Settings file: ${settingsPath}`);
170
187
  console.log(` Project anchor: ${anchor.anchorPath}`);
171
188
  console.log(' Run /greprag in any Claude Code session to surface project memory.');
172
- console.log(' Memory hooks will activate on your next Claude Code session.\n');
189
+ console.log(' Memory hooks will activate on your next Claude Code session.');
190
+ if (optionalSkills.length > 0) {
191
+ console.log(`\n Optional advisor skills bundled: ${optionalSkills.join(', ')}`);
192
+ console.log(' Install one with `greprag skill install <name>` (or `greprag skill list` to see all).');
193
+ }
194
+ console.log('');
173
195
  }
174
196
  /** greprag init --opencode
175
197
  * Configures GrepRAG for OpenCode. Resolves the canonical project anchor
@@ -249,6 +271,9 @@ async function runOpenCodeInit(opts) {
249
271
  // sessions share one project_id across all clients.
250
272
  const globalAnchor = (0, project_anchor_1.ensureGlobalAnchor)();
251
273
  console.log(` Global anchor: ${globalAnchor.projectName} (${globalAnchor.projectId.slice(0, 8)})`);
274
+ // Step 5b: Local repo path registry (same as Claude Code init).
275
+ writeProjectPath(anchor.projectName, process.cwd());
276
+ console.log(` Registered repo path: ${anchor.projectName} → ~/.greprag/projects.json`);
252
277
  // Step 6: Register the canonical project_id with the inbox endpoint.
253
278
  try {
254
279
  const res = await fetch(`${API_URL}/v1/inbox/projects/register`, {
@@ -310,6 +335,30 @@ async function runGlobalInit(name) {
310
335
  console.log('\n All unanchored sessions (Cowork, ad-hoc cwd) will now use this project_id.');
311
336
  console.log(' Memory will accumulate across sessions under a single stable bucket.\n');
312
337
  }
338
+ // -- Project path registry --------------------------------------------------
339
+ /** Append/overwrite the entry for `projectName` in `~/.greprag/projects.json`.
340
+ * Flat object keyed by project name → absolute repo path. Read by the
341
+ * chip-spawn convention to resolve cross-project `cwd:` without baking
342
+ * paths into prompts. Per-machine only. Latest write wins on name collision. */
343
+ function writeProjectPath(projectName, repoPath) {
344
+ const home = process.env.HOME || process.env.USERPROFILE || '';
345
+ if (!home)
346
+ return;
347
+ const dir = path.join(home, '.greprag');
348
+ const file = path.join(dir, 'projects.json');
349
+ let registry = {};
350
+ try {
351
+ registry = JSON.parse(fs.readFileSync(file, 'utf-8'));
352
+ if (typeof registry !== 'object' || registry === null || Array.isArray(registry)) {
353
+ registry = {};
354
+ }
355
+ }
356
+ catch { /* missing or corrupt — start fresh */ }
357
+ registry[projectName] = repoPath;
358
+ if (!fs.existsSync(dir))
359
+ fs.mkdirSync(dir, { recursive: true });
360
+ fs.writeFileSync(file, JSON.stringify(registry, null, 2) + '\n');
361
+ }
313
362
  // -- Provisioning -----------------------------------------------------------
314
363
  async function provision(tenantId) {
315
364
  const res = await fetch(`${API_URL}/v1/keys/provision`, {
@@ -1 +1 @@
1
- {"version":3,"file":"init.js","sourceRoot":"","sources":["../../src/commands/init.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"init.js","sourceRoot":"","sources":["../../src/commands/init.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ export declare function runSkill(args: string[]): Promise<void>;
@@ -0,0 +1,172 @@
1
+ "use strict";
2
+ // `greprag skill` — opt-in management for bundled advisor skills.
3
+ //
4
+ // The package bundles `greprag/` (the front-door, auto-installed by init)
5
+ // alongside opt-in advisor skills (`discord/`, `content-advisor/`,
6
+ // `lore-advisor/`, future ones). Operators choose which advisors to add
7
+ // to their Claude Code skill registry via this verb instead of having
8
+ // them force-installed on every `npm i -g greprag@<new>`.
9
+ //
10
+ // Verbs:
11
+ // greprag skill list — show bundled skills + install status
12
+ // greprag skill install <name> — copy bundle/<name>/ → ~/.claude/skills/<name>/
13
+ // greprag skill uninstall <name> — remove ~/.claude/skills/<name>/ (greprag/ refused)
14
+ //
15
+ // adr: adr/skill-bundle-shape.md
16
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
17
+ if (k2 === undefined) k2 = k;
18
+ var desc = Object.getOwnPropertyDescriptor(m, k);
19
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
20
+ desc = { enumerable: true, get: function() { return m[k]; } };
21
+ }
22
+ Object.defineProperty(o, k2, desc);
23
+ }) : (function(o, m, k, k2) {
24
+ if (k2 === undefined) k2 = k;
25
+ o[k2] = m[k];
26
+ }));
27
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
28
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
29
+ }) : function(o, v) {
30
+ o["default"] = v;
31
+ });
32
+ var __importStar = (this && this.__importStar) || (function () {
33
+ var ownKeys = function(o) {
34
+ ownKeys = Object.getOwnPropertyNames || function (o) {
35
+ var ar = [];
36
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
37
+ return ar;
38
+ };
39
+ return ownKeys(o);
40
+ };
41
+ return function (mod) {
42
+ if (mod && mod.__esModule) return mod;
43
+ var result = {};
44
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
45
+ __setModuleDefault(result, mod);
46
+ return result;
47
+ };
48
+ })();
49
+ Object.defineProperty(exports, "__esModule", { value: true });
50
+ exports.runSkill = runSkill;
51
+ const fs = __importStar(require("fs"));
52
+ const os = __importStar(require("os"));
53
+ const path = __importStar(require("path"));
54
+ const CORE_SKILL = 'greprag';
55
+ const SKILL_HELP = `greprag skill — manage bundled advisor skills
56
+
57
+ USAGE
58
+ greprag skill list Show bundled skills and install status
59
+ greprag skill install <name> Install a bundled advisor skill
60
+ greprag skill uninstall <name> Remove a previously-installed advisor
61
+
62
+ NOTES
63
+ • The 'greprag' skill is auto-installed and refreshed on every upgrade.
64
+ It cannot be uninstalled via this verb (delete the dir manually if
65
+ you really want it gone — postinstall will reinstall on next upgrade).
66
+ • Other bundled skills are opt-in and refresh-only on upgrade: once
67
+ installed, they stay current with the bundle; if never installed,
68
+ upgrades leave them out of your skill registry.`;
69
+ function bundleRoot() {
70
+ // Same resolution as init.ts Step 6 + postinstall.js
71
+ return path.join(__dirname, '..', '..', 'skill');
72
+ }
73
+ function targetRoot() {
74
+ return path.join(os.homedir(), '.claude', 'skills');
75
+ }
76
+ function listBundled() {
77
+ const root = bundleRoot();
78
+ if (!fs.existsSync(root))
79
+ return [];
80
+ return fs.readdirSync(root, { withFileTypes: true })
81
+ .filter(e => e.isDirectory() && e.name !== 'templates')
82
+ .map(e => e.name)
83
+ .sort();
84
+ }
85
+ function copyDir(src, dest) {
86
+ fs.mkdirSync(dest, { recursive: true });
87
+ for (const entry of fs.readdirSync(src, { withFileTypes: true })) {
88
+ const s = path.join(src, entry.name);
89
+ const d = path.join(dest, entry.name);
90
+ if (entry.isDirectory())
91
+ copyDir(s, d);
92
+ else
93
+ fs.copyFileSync(s, d);
94
+ }
95
+ }
96
+ function rmDir(p) {
97
+ // Node 14+ fs.rmSync; ours is Node 18+ per package.json engines.
98
+ fs.rmSync(p, { recursive: true, force: true });
99
+ }
100
+ async function runSkill(args) {
101
+ const sub = args[0];
102
+ if (!sub || sub === '--help' || sub === '-h' || sub === 'help') {
103
+ console.log(SKILL_HELP);
104
+ return;
105
+ }
106
+ const bundled = listBundled();
107
+ switch (sub) {
108
+ case 'list': {
109
+ if (bundled.length === 0) {
110
+ console.log('No bundled skills found in this CLI install.');
111
+ return;
112
+ }
113
+ const tRoot = targetRoot();
114
+ console.log('Bundled skills (★ = installed, • = available):\n');
115
+ for (const name of bundled) {
116
+ const installed = fs.existsSync(path.join(tRoot, name));
117
+ const core = name === CORE_SKILL ? ' [core]' : '';
118
+ console.log(` ${installed ? '★' : '•'} ${name}${core}`);
119
+ }
120
+ console.log('\nInstall an advisor with `greprag skill install <name>`.');
121
+ return;
122
+ }
123
+ case 'install': {
124
+ const name = args[1];
125
+ if (!name) {
126
+ console.error('Usage: greprag skill install <name>');
127
+ console.error(`Available: ${bundled.join(', ')}`);
128
+ process.exit(1);
129
+ }
130
+ if (!bundled.includes(name)) {
131
+ console.error(`Unknown skill: ${name}`);
132
+ console.error(`Available: ${bundled.join(', ')}`);
133
+ process.exit(1);
134
+ }
135
+ const src = path.join(bundleRoot(), name);
136
+ const dest = path.join(targetRoot(), name);
137
+ const existed = fs.existsSync(dest);
138
+ copyDir(src, dest);
139
+ console.log(`${existed ? 'Refreshed' : 'Installed'} skill: ${name} → ${dest}`);
140
+ if (!existed) {
141
+ console.log('Restart any open Claude Code session to pick up the new skill.');
142
+ }
143
+ return;
144
+ }
145
+ case 'uninstall':
146
+ case 'remove': {
147
+ const name = args[1];
148
+ if (!name) {
149
+ console.error('Usage: greprag skill uninstall <name>');
150
+ process.exit(1);
151
+ }
152
+ if (name === CORE_SKILL) {
153
+ console.error(`The '${CORE_SKILL}' skill is part of the CLI package and cannot be removed via this verb.`);
154
+ console.error(`(It will be reinstalled by postinstall on the next upgrade anyway.)`);
155
+ process.exit(1);
156
+ }
157
+ const dest = path.join(targetRoot(), name);
158
+ if (!fs.existsSync(dest)) {
159
+ console.log(`Skill '${name}' is not installed (${dest} does not exist).`);
160
+ return;
161
+ }
162
+ rmDir(dest);
163
+ console.log(`Removed skill: ${name} (${dest})`);
164
+ return;
165
+ }
166
+ default:
167
+ console.error(`Unknown subcommand: ${sub}\n`);
168
+ console.log(SKILL_HELP);
169
+ process.exit(1);
170
+ }
171
+ }
172
+ //# sourceMappingURL=skill.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"skill.js","sourceRoot":"","sources":["../../src/commands/skill.ts"],"names":[],"mappings":"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"}
package/dist/hook.d.ts CHANGED
@@ -5,20 +5,4 @@
5
5
  * /v1/memory/turn. No LLM, no enrichment — the API just inserts the row.
6
6
  * See C:/greprag/docs/odyssey.md.
7
7
  */
8
- /** Derive a chip slug from the title. Strip the `Chip: ` prefix, lowercase,
9
- * replace non-alphanumeric runs with `-`, trim leading/trailing dashes.
10
- * `Chip: Fix synthesis loop` → `fix-synthesis-loop`. */
11
- export declare function deriveSlugFromTitle(title: string): string;
12
- /** Returns true when the prompt is "new-style" — neither Block 1 nor Block 2
13
- * evidence is present, so the hook should auto-inject both. Old-style
14
- * prompts (anything containing `git worktree add` or `greprag send`) pass
15
- * through unchanged for back-compat. */
16
- export declare function isNewStylePrompt(prompt: string): boolean;
17
- /** Augment a new-style prompt: prepend Block 1, append Block 2.
18
- * Returns the same prompt when slug derivation produces an empty string
19
- * (e.g. title is just `Chip: ` with no verb phrase) — validation then
20
- * rejects with a clean "missing worktree" message. */
21
- export declare function augmentPrompt(title: string, prompt: string): string;
22
- /** Substitute Tier 1 placeholders in the prompt. Best-effort: missing
23
- * values leave the placeholder in for loud chip-runtime failure. */
24
- export declare function substitutePlaceholders(prompt: string, sessionId: string | undefined, alias: string | null): string;
8
+ export {};
package/dist/hook.js CHANGED
@@ -40,10 +40,6 @@ var __importStar = (this && this.__importStar) || (function () {
40
40
  };
41
41
  })();
42
42
  Object.defineProperty(exports, "__esModule", { value: true });
43
- exports.deriveSlugFromTitle = deriveSlugFromTitle;
44
- exports.isNewStylePrompt = isNewStylePrompt;
45
- exports.augmentPrompt = augmentPrompt;
46
- exports.substitutePlaceholders = substitutePlaceholders;
47
43
  const path = __importStar(require("path"));
48
44
  const fs = __importStar(require("fs"));
49
45
  const crypto = __importStar(require("crypto"));
@@ -1014,103 +1010,6 @@ async function notify(_input) {
1014
1010
  // Intentional no-op. See docstring above.
1015
1011
  return;
1016
1012
  }
1017
- /** Derive a chip slug from the title. Strip the `Chip: ` prefix, lowercase,
1018
- * replace non-alphanumeric runs with `-`, trim leading/trailing dashes.
1019
- * `Chip: Fix synthesis loop` → `fix-synthesis-loop`. */
1020
- function deriveSlugFromTitle(title) {
1021
- return title
1022
- .replace(/^Chip:\s*/, '')
1023
- .toLowerCase()
1024
- .replace(/[^a-z0-9]+/g, '-')
1025
- .replace(/^-+|-+$/g, '');
1026
- }
1027
- /** Read the cached identity handle. Returns the alias part (before `@`) so
1028
- * it can be substituted in `<handle>@greprag.com/<id>` templates without
1029
- * doubling the domain. Returns null on any read/parse error — caller leaves
1030
- * the placeholder in for loud runtime failure. */
1031
- function readIdentityAlias() {
1032
- try {
1033
- const home = process.env.HOME || process.env.USERPROFILE || '';
1034
- if (!home)
1035
- return null;
1036
- const cachePath = path.join(home, '.greprag', 'identity.json');
1037
- const raw = fs.readFileSync(cachePath, 'utf-8');
1038
- const data = JSON.parse(raw);
1039
- if (typeof data?.handle !== 'string' || !data.handle)
1040
- return null;
1041
- const at = data.handle.indexOf('@');
1042
- return at > 0 ? data.handle.slice(0, at) : data.handle;
1043
- }
1044
- catch {
1045
- return null;
1046
- }
1047
- }
1048
- /** Build Block 1 (escape-to-root + worktree-add + parent-session-id ref).
1049
- * Uses literal `<parent-session-id>` so Tier 1 substitution can replace it
1050
- * later in a single uniform pass. */
1051
- function buildBlock1(slug) {
1052
- return ('**Setup — do this FIRST:**\n' +
1053
- '\n' +
1054
- '```bash\n' +
1055
- 'main_root=$(git rev-parse --git-common-dir | xargs dirname)\n' +
1056
- 'cd "$main_root"\n' +
1057
- `git worktree add .claude/worktrees/${slug} -b chip/${slug}\n` +
1058
- `cd .claude/worktrees/${slug}\n` +
1059
- '```\n' +
1060
- '\n' +
1061
- 'Your parent\'s session id is `<parent-session-id>`.\n' +
1062
- '\n' +
1063
- '---\n');
1064
- }
1065
- /** Build Block 2 (greprag send report-back + cleanup discipline).
1066
- * Uses literal `<handle>` and `<parent-session-id>` for Tier 1 substitution. */
1067
- function buildBlock2(slug) {
1068
- return ('---\n' +
1069
- '\n' +
1070
- '**Block 2 — Report back via greprag inbox:**\n' +
1071
- '\n' +
1072
- '```bash\n' +
1073
- `greprag send "<status>: <commit hash> on chip/${slug} — <one-line>" \\\n` +
1074
- ' --to <handle>@greprag.com/<parent-session-id> \\\n' +
1075
- ' --from-session <own-session-id> \\\n' +
1076
- ' --artifact commit:<hash>\n' +
1077
- '```\n' +
1078
- '\n' +
1079
- 'Substitute `<own-session-id>` from your SessionStart hook output.\n' +
1080
- '\n' +
1081
- '**Cleanup discipline (HARD RULE):** chip prompts forbid `git clean`, ' +
1082
- '`git reset --hard`, `git worktree remove`, `git checkout <other>`, ' +
1083
- 'raw `rm -rf` outside the worktree\'s tracked files.\n');
1084
- }
1085
- /** Returns true when the prompt is "new-style" — neither Block 1 nor Block 2
1086
- * evidence is present, so the hook should auto-inject both. Old-style
1087
- * prompts (anything containing `git worktree add` or `greprag send`) pass
1088
- * through unchanged for back-compat. */
1089
- function isNewStylePrompt(prompt) {
1090
- return !/\bgit\s+worktree\s+add\b/.test(prompt) &&
1091
- !/\bgreprag\s+send\b/.test(prompt);
1092
- }
1093
- /** Augment a new-style prompt: prepend Block 1, append Block 2.
1094
- * Returns the same prompt when slug derivation produces an empty string
1095
- * (e.g. title is just `Chip: ` with no verb phrase) — validation then
1096
- * rejects with a clean "missing worktree" message. */
1097
- function augmentPrompt(title, prompt) {
1098
- const slug = deriveSlugFromTitle(title);
1099
- if (!slug)
1100
- return prompt;
1101
- return buildBlock1(slug) + '\n' + prompt + '\n\n' + buildBlock2(slug);
1102
- }
1103
- /** Substitute Tier 1 placeholders in the prompt. Best-effort: missing
1104
- * values leave the placeholder in for loud chip-runtime failure. */
1105
- function substitutePlaceholders(prompt, sessionId, alias) {
1106
- let out = prompt;
1107
- const short = (0, session_id_1.truncateSessionId)(sessionId);
1108
- if (short)
1109
- out = out.split('<parent-session-id>').join(short);
1110
- if (alias)
1111
- out = out.split('<handle>').join(alias);
1112
- return out;
1113
- }
1114
1013
  function validateChip(title, prompt) {
1115
1014
  const violations = [];
1116
1015
  if (!title.startsWith('Chip: ')) {
@@ -1131,54 +1030,31 @@ function validateChip(title, prompt) {
1131
1030
  }
1132
1031
  return violations;
1133
1032
  }
1033
+ /** Validate the chip prompt at the PreToolUse boundary. Validation-only —
1034
+ * the hook does NOT mutate the prompt because `modifiedInput` is silently
1035
+ * dropped by the CCD harness for MCP `spawn_task` calls (see
1036
+ * adr/spawn-task-hook-mode.md 2026-05-27 entry — Tier 2 augmentation
1037
+ * attempt). `permissionDecision: deny` IS honored, so the validator
1038
+ * catches missing Block 1 / Block 2 markers; the agent re-composes the
1039
+ * call with the templates from `~/.claude/docs/chip-spawn.md`. */
1134
1040
  function handlePreSpawnCheck(input) {
1135
1041
  if (input.tool_name !== 'mcp__ccd_session__spawn_task')
1136
1042
  return;
1137
1043
  const title = input.tool_input?.title ?? '';
1138
- const originalPrompt = input.tool_input?.prompt ?? '';
1139
- // Tier 2 — augment new-style minimal prompts.
1140
- let prompt = isNewStylePrompt(originalPrompt)
1141
- ? augmentPrompt(title, originalPrompt)
1142
- : originalPrompt;
1143
- // Tier 1 — substitute placeholders (applies to augmented body AND any
1144
- // placeholders the agent included in an old-style prompt).
1145
- const alias = readIdentityAlias();
1146
- prompt = substitutePlaceholders(prompt, input.session_id, alias);
1147
- // Validate the final prompt. Augmented prompts should pass; old-style
1148
- // prompts missing Block 1/2 still get a clean deny.
1044
+ const prompt = input.tool_input?.prompt ?? '';
1149
1045
  const violations = validateChip(title, prompt);
1150
- if (violations.length > 0) {
1151
- const reason = `Chip prompt rejected by greprag PreToolUse validator. Fix the following and re-call spawn_task:\n - ` +
1152
- violations.join('\n - ') +
1153
- `\n\nFull conventions: ~/.claude/docs/chip-spawn.md.`;
1154
- process.stdout.write(JSON.stringify({
1155
- hookSpecificOutput: {
1156
- hookEventName: 'PreToolUse',
1157
- permissionDecision: 'deny',
1158
- permissionDecisionReason: reason,
1159
- },
1160
- }) + '\n');
1046
+ if (violations.length === 0)
1161
1047
  return;
1162
- }
1163
- // Augmented or substituted — emit modifiedInput so the harness picks up
1164
- // the rewritten prompt. Otherwise stay silent.
1165
- if (prompt !== originalPrompt) {
1166
- const modifiedInput = {
1167
- title,
1168
- prompt,
1169
- };
1170
- if (input.tool_input?.tldr !== undefined)
1171
- modifiedInput.tldr = input.tool_input.tldr;
1172
- if (input.tool_input?.cwd !== undefined)
1173
- modifiedInput.cwd = input.tool_input.cwd;
1174
- process.stdout.write(JSON.stringify({
1175
- hookSpecificOutput: {
1176
- hookEventName: 'PreToolUse',
1177
- permissionDecision: 'allow',
1178
- modifiedInput,
1179
- },
1180
- }) + '\n');
1181
- }
1048
+ const reason = `Chip prompt rejected by greprag PreToolUse validator. Fix the following and re-call spawn_task:\n - ` +
1049
+ violations.join('\n - ') +
1050
+ `\n\nFull conventions: ~/.claude/docs/chip-spawn.md.`;
1051
+ process.stdout.write(JSON.stringify({
1052
+ hookSpecificOutput: {
1053
+ hookEventName: 'PreToolUse',
1054
+ permissionDecision: 'deny',
1055
+ permissionDecisionReason: reason,
1056
+ },
1057
+ }) + '\n');
1182
1058
  }
1183
1059
  async function main() {
1184
1060
  const subcommand = process.argv[2];