@gramatr/mcp 0.7.17 → 0.7.20

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (64) hide show
  1. package/dist/bin/hook-dispatcher.d.ts.map +1 -1
  2. package/dist/bin/hook-dispatcher.js +20 -0
  3. package/dist/bin/hook-dispatcher.js.map +1 -1
  4. package/dist/bin/setup.d.ts +11 -0
  5. package/dist/bin/setup.d.ts.map +1 -1
  6. package/dist/bin/setup.js +35 -1
  7. package/dist/bin/setup.js.map +1 -1
  8. package/dist/gramatr +0 -0
  9. package/dist/hooks/agent-gate.d.ts +14 -0
  10. package/dist/hooks/agent-gate.d.ts.map +1 -0
  11. package/dist/hooks/agent-gate.js +75 -0
  12. package/dist/hooks/agent-gate.js.map +1 -0
  13. package/dist/hooks/agent-verify.d.ts +9 -0
  14. package/dist/hooks/agent-verify.d.ts.map +1 -0
  15. package/dist/hooks/agent-verify.js +53 -0
  16. package/dist/hooks/agent-verify.js.map +1 -0
  17. package/dist/hooks/edit-tracker.d.ts +10 -0
  18. package/dist/hooks/edit-tracker.d.ts.map +1 -0
  19. package/dist/hooks/edit-tracker.js +65 -0
  20. package/dist/hooks/edit-tracker.js.map +1 -0
  21. package/dist/hooks/git-gate.d.ts +20 -0
  22. package/dist/hooks/git-gate.d.ts.map +1 -0
  23. package/dist/hooks/git-gate.js +109 -0
  24. package/dist/hooks/git-gate.js.map +1 -0
  25. package/dist/hooks/index.d.ts +4 -0
  26. package/dist/hooks/index.d.ts.map +1 -1
  27. package/dist/hooks/index.js +4 -0
  28. package/dist/hooks/index.js.map +1 -1
  29. package/dist/hooks/lib/feedback.d.ts.map +1 -1
  30. package/dist/hooks/lib/feedback.js +4 -2
  31. package/dist/hooks/lib/feedback.js.map +1 -1
  32. package/dist/hooks/lib/intelligence.d.ts.map +1 -1
  33. package/dist/hooks/lib/intelligence.js +4 -1
  34. package/dist/hooks/lib/intelligence.js.map +1 -1
  35. package/dist/hooks/manifest.d.ts +12 -0
  36. package/dist/hooks/manifest.d.ts.map +1 -1
  37. package/dist/hooks/manifest.js +16 -0
  38. package/dist/hooks/manifest.js.map +1 -1
  39. package/dist/hooks/rating-capture.d.ts.map +1 -1
  40. package/dist/hooks/rating-capture.js +23 -2
  41. package/dist/hooks/rating-capture.js.map +1 -1
  42. package/dist/hooks/session-end.d.ts.map +1 -1
  43. package/dist/hooks/session-end.js +11 -1
  44. package/dist/hooks/session-end.js.map +1 -1
  45. package/dist/hooks/stop.d.ts.map +1 -1
  46. package/dist/hooks/stop.js +3 -2
  47. package/dist/hooks/stop.js.map +1 -1
  48. package/dist/setup/instructions.js +9 -0
  49. package/dist/setup/instructions.js.map +1 -1
  50. package/dist/setup/integrations.d.ts.map +1 -1
  51. package/dist/setup/integrations.js +5 -0
  52. package/dist/setup/integrations.js.map +1 -1
  53. package/dist/setup/platform.d.ts +47 -0
  54. package/dist/setup/platform.d.ts.map +1 -0
  55. package/dist/setup/platform.js +96 -0
  56. package/dist/setup/platform.js.map +1 -0
  57. package/dist/setup/targets.d.ts +2 -2
  58. package/dist/setup/targets.d.ts.map +1 -1
  59. package/dist/setup/targets.js +6 -4
  60. package/dist/setup/targets.js.map +1 -1
  61. package/dist/setup/web-connector.d.ts.map +1 -1
  62. package/dist/setup/web-connector.js +3 -0
  63. package/dist/setup/web-connector.js.map +1 -1
  64. package/package.json +1 -1
@@ -0,0 +1,20 @@
1
+ /**
2
+ * git-gate.ts — PreToolUse hook for the Bash tool.
3
+ *
4
+ * Enforces behavioral gates on dangerous git operations:
5
+ * 1. git push to main/master — denied (use a PR)
6
+ * 2. git tag — denied unless binaries are built for current version
7
+ * 3. git push --force / git reset --hard — denied (requires explicit user approval)
8
+ *
9
+ * All other Bash commands are allowed unconditionally.
10
+ */
11
+ /**
12
+ * Check whether a Bash command triggers any git behavioral gate.
13
+ * Exported for direct unit testing.
14
+ */
15
+ export declare function checkGitCommand(command: string, cwd?: string): {
16
+ allow: boolean;
17
+ reason?: string;
18
+ };
19
+ export declare function runGitGateHook(_args?: string[]): Promise<number>;
20
+ //# sourceMappingURL=git-gate.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"git-gate.d.ts","sourceRoot":"","sources":["../../src/hooks/git-gate.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAiDH;;;GAGG;AACH,wBAAgB,eAAe,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,MAAM,GAAG;IAAE,KAAK,EAAE,OAAO,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAA;CAAE,CA2ClG;AAID,wBAAsB,cAAc,CAAC,KAAK,GAAE,MAAM,EAAO,GAAG,OAAO,CAAC,MAAM,CAAC,CAyB1E"}
@@ -0,0 +1,109 @@
1
+ /**
2
+ * git-gate.ts — PreToolUse hook for the Bash tool.
3
+ *
4
+ * Enforces behavioral gates on dangerous git operations:
5
+ * 1. git push to main/master — denied (use a PR)
6
+ * 2. git tag — denied unless binaries are built for current version
7
+ * 3. git push --force / git reset --hard — denied (requires explicit user approval)
8
+ *
9
+ * All other Bash commands are allowed unconditionally.
10
+ */
11
+ import { existsSync, readFileSync } from 'node:fs';
12
+ import { join } from 'node:path';
13
+ // ── Stdin ──
14
+ function readStdin(timeoutMs) {
15
+ return new Promise((resolve) => {
16
+ let data = '';
17
+ const timer = setTimeout(() => resolve(data), timeoutMs);
18
+ process.stdin.setEncoding('utf-8');
19
+ process.stdin.on('data', (chunk) => { data += chunk; });
20
+ process.stdin.on('end', () => { clearTimeout(timer); resolve(data); });
21
+ process.stdin.on('error', () => { clearTimeout(timer); resolve(data); });
22
+ process.stdin.resume();
23
+ });
24
+ }
25
+ // ── Decision helpers ──
26
+ function buildPreToolUseOutput(allow, reason) {
27
+ if (allow) {
28
+ return { hookSpecificOutput: { hookEventName: 'PreToolUse', permissionDecision: 'allow' } };
29
+ }
30
+ return {
31
+ hookSpecificOutput: {
32
+ hookEventName: 'PreToolUse',
33
+ permissionDecision: 'deny',
34
+ permissionDecisionReason: reason || 'Bash command blocked by gramatr git gate.',
35
+ },
36
+ };
37
+ }
38
+ /**
39
+ * Check whether a Bash command triggers any git behavioral gate.
40
+ * Exported for direct unit testing.
41
+ */
42
+ export function checkGitCommand(command, cwd) {
43
+ const trimmed = command.trim();
44
+ // Gate 1: destructive git commands
45
+ if (/git\s+push\s+.*--force/.test(trimmed) || /git\s+push\s+-f\b/.test(trimmed)) {
46
+ return { allow: false, reason: 'Destructive git command requires explicit user approval. Do not use --force push.' };
47
+ }
48
+ if (/git\s+reset\s+--hard/.test(trimmed)) {
49
+ return { allow: false, reason: 'Destructive git command requires explicit user approval. Do not use git reset --hard.' };
50
+ }
51
+ // Gate 2: push to main/master
52
+ if (/git\s+push\b/.test(trimmed)) {
53
+ // Check if pushing to main or master — look for explicit branch ref
54
+ if (/git\s+push\s+\S+\s+(main|master)\b/.test(trimmed)) {
55
+ return { allow: false, reason: 'Use a PR to push to main. Direct pushes to main/master are not allowed.' };
56
+ }
57
+ // Also catch `git push origin HEAD:main` or `git push origin HEAD:master`
58
+ if (/git\s+push\s+\S+\s+\S+:(main|master)\b/.test(trimmed)) {
59
+ return { allow: false, reason: 'Use a PR to push to main. Direct pushes to main/master are not allowed.' };
60
+ }
61
+ }
62
+ // Gate 3: git tag — require binaries built for current version
63
+ if (/git\s+tag\b/.test(trimmed)) {
64
+ const workDir = cwd || process.cwd();
65
+ try {
66
+ const pkgPath = join(workDir, 'package.json');
67
+ const pkg = JSON.parse(readFileSync(pkgPath, 'utf8'));
68
+ const version = pkg.version;
69
+ if (!version) {
70
+ return { allow: false, reason: 'Cannot read version from package.json. Run pnpm build before tagging.' };
71
+ }
72
+ const distDir = join(workDir, 'dist');
73
+ if (!existsSync(distDir)) {
74
+ return { allow: false, reason: `Run pnpm build and build-all-targets before tagging v${version}. No dist/ directory found.` };
75
+ }
76
+ }
77
+ catch {
78
+ return { allow: false, reason: 'Run pnpm build and build-all-targets before tagging. Could not verify build artifacts.' };
79
+ }
80
+ }
81
+ return { allow: true };
82
+ }
83
+ // ── Hook runner ──
84
+ export async function runGitGateHook(_args = []) {
85
+ const raw = await readStdin(2000);
86
+ if (!raw.trim()) {
87
+ process.stdout.write(JSON.stringify(buildPreToolUseOutput(true)));
88
+ return 0;
89
+ }
90
+ try {
91
+ const input = JSON.parse(raw);
92
+ if (!input.tool_name || input.tool_name !== 'Bash') {
93
+ process.stdout.write(JSON.stringify(buildPreToolUseOutput(true)));
94
+ return 0;
95
+ }
96
+ const command = input.tool_input?.command || '';
97
+ if (!command) {
98
+ process.stdout.write(JSON.stringify(buildPreToolUseOutput(true)));
99
+ return 0;
100
+ }
101
+ const result = checkGitCommand(command);
102
+ process.stdout.write(JSON.stringify(buildPreToolUseOutput(result.allow, result.reason)));
103
+ }
104
+ catch {
105
+ process.stdout.write(JSON.stringify(buildPreToolUseOutput(true)));
106
+ }
107
+ return 0;
108
+ }
109
+ //# sourceMappingURL=git-gate.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"git-gate.js","sourceRoot":"","sources":["../../src/hooks/git-gate.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AACnD,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAiBjC,cAAc;AAEd,SAAS,SAAS,CAAC,SAAiB;IAClC,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;QAC7B,IAAI,IAAI,GAAG,EAAE,CAAC;QACd,MAAM,KAAK,GAAG,UAAU,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,SAAS,CAAC,CAAC;QACzD,OAAO,CAAC,KAAK,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;QACnC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,KAAa,EAAE,EAAE,GAAG,IAAI,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;QAChE,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,EAAE,GAAG,EAAE,GAAG,YAAY,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACvE,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,OAAO,EAAE,GAAG,EAAE,GAAG,YAAY,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACzE,OAAO,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC;IACzB,CAAC,CAAC,CAAC;AACL,CAAC;AAED,yBAAyB;AAEzB,SAAS,qBAAqB,CAAC,KAAc,EAAE,MAAe;IAC5D,IAAI,KAAK,EAAE,CAAC;QACV,OAAO,EAAE,kBAAkB,EAAE,EAAE,aAAa,EAAE,YAAY,EAAE,kBAAkB,EAAE,OAAO,EAAE,EAAE,CAAC;IAC9F,CAAC;IACD,OAAO;QACL,kBAAkB,EAAE;YAClB,aAAa,EAAE,YAAY;YAC3B,kBAAkB,EAAE,MAAM;YAC1B,wBAAwB,EAAE,MAAM,IAAI,2CAA2C;SAChF;KACF,CAAC;AACJ,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,eAAe,CAAC,OAAe,EAAE,GAAY;IAC3D,MAAM,OAAO,GAAG,OAAO,CAAC,IAAI,EAAE,CAAC;IAE/B,mCAAmC;IACnC,IAAI,wBAAwB,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,mBAAmB,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;QAChF,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,mFAAmF,EAAE,CAAC;IACvH,CAAC;IACD,IAAI,sBAAsB,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;QACzC,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,uFAAuF,EAAE,CAAC;IAC3H,CAAC;IAED,8BAA8B;IAC9B,IAAI,cAAc,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;QACjC,oEAAoE;QACpE,IAAI,oCAAoC,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;YACvD,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,yEAAyE,EAAE,CAAC;QAC7G,CAAC;QACD,0EAA0E;QAC1E,IAAI,wCAAwC,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;YAC3D,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,yEAAyE,EAAE,CAAC;QAC7G,CAAC;IACH,CAAC;IAED,+DAA+D;IAC/D,IAAI,aAAa,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;QAChC,MAAM,OAAO,GAAG,GAAG,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC;QACrC,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,EAAE,cAAc,CAAC,CAAC;YAC9C,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,OAAO,EAAE,MAAM,CAAC,CAAyB,CAAC;YAC9E,MAAM,OAAO,GAAG,GAAG,CAAC,OAAO,CAAC;YAC5B,IAAI,CAAC,OAAO,EAAE,CAAC;gBACb,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,uEAAuE,EAAE,CAAC;YAC3G,CAAC;YACD,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;YACtC,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;gBACzB,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,wDAAwD,OAAO,6BAA6B,EAAE,CAAC;YAChI,CAAC;QACH,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,wFAAwF,EAAE,CAAC;QAC5H,CAAC;IACH,CAAC;IAED,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;AACzB,CAAC;AAED,oBAAoB;AAEpB,MAAM,CAAC,KAAK,UAAU,cAAc,CAAC,QAAkB,EAAE;IACvD,MAAM,GAAG,GAAG,MAAM,SAAS,CAAC,IAAI,CAAC,CAAC;IAClC,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,EAAE,CAAC;QAChB,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,qBAAqB,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClE,OAAO,CAAC,CAAC;IACX,CAAC;IACD,IAAI,CAAC;QACH,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAc,CAAC;QAC3C,IAAI,CAAC,KAAK,CAAC,SAAS,IAAI,KAAK,CAAC,SAAS,KAAK,MAAM,EAAE,CAAC;YACnD,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,qBAAqB,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAClE,OAAO,CAAC,CAAC;QACX,CAAC;QAED,MAAM,OAAO,GAAI,KAAK,CAAC,UAAU,EAAE,OAAkB,IAAI,EAAE,CAAC;QAC5D,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,qBAAqB,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAClE,OAAO,CAAC,CAAC;QACX,CAAC;QAED,MAAM,MAAM,GAAG,eAAe,CAAC,OAAO,CAAC,CAAC;QACxC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,qBAAqB,CAAC,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;IAC3F,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,qBAAqB,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACpE,CAAC;IACD,OAAO,CAAC,CAAC;AACX,CAAC"}
@@ -9,6 +9,10 @@
9
9
  * in Phase 2.
10
10
  */
11
11
  export type HookRunner = (args: string[]) => Promise<number>;
12
+ export { runAgentGateHook } from './agent-gate.js';
13
+ export { runAgentVerifyHook } from './agent-verify.js';
14
+ export { runEditTrackerHook } from './edit-tracker.js';
15
+ export { runGitGateHook } from './git-gate.js';
12
16
  export { runSessionStartHook } from './session-start.js';
13
17
  export { runSessionEndHook } from './session-end.js';
14
18
  export { runStopHook } from './stop.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/hooks/index.ts"],"names":[],"mappings":"AACA;;;;;;;;;GASG;AAEH,MAAM,MAAM,UAAU,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,OAAO,CAAC,MAAM,CAAC,CAAC;AAE7D,OAAO,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AACzD,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AACrD,OAAO,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AACxC,OAAO,EAAE,qBAAqB,EAAE,MAAM,sBAAsB,CAAC;AAC7D,OAAO,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AACvD,OAAO,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AAC3D,OAAO,EAAE,uBAAuB,EAAE,MAAM,yBAAyB,CAAC;AAClE,OAAO,EAAE,aAAa,EAAE,UAAU,EAAE,KAAK,QAAQ,EAAE,MAAM,eAAe,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/hooks/index.ts"],"names":[],"mappings":"AACA;;;;;;;;;GASG;AAEH,MAAM,MAAM,UAAU,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,OAAO,CAAC,MAAM,CAAC,CAAC;AAE7D,OAAO,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AACnD,OAAO,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AACvD,OAAO,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AACvD,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAC/C,OAAO,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AACzD,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AACrD,OAAO,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AACxC,OAAO,EAAE,qBAAqB,EAAE,MAAM,sBAAsB,CAAC;AAC7D,OAAO,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AACvD,OAAO,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AAC3D,OAAO,EAAE,uBAAuB,EAAE,MAAM,yBAAyB,CAAC;AAClE,OAAO,EAAE,aAAa,EAAE,UAAU,EAAE,KAAK,QAAQ,EAAE,MAAM,eAAe,CAAC"}
@@ -9,6 +9,10 @@
9
9
  * Phase 1 (#652): only session-start is migrated. Remaining 7 hooks migrate
10
10
  * in Phase 2.
11
11
  */
12
+ export { runAgentGateHook } from './agent-gate.js';
13
+ export { runAgentVerifyHook } from './agent-verify.js';
14
+ export { runEditTrackerHook } from './edit-tracker.js';
15
+ export { runGitGateHook } from './git-gate.js';
12
16
  export { runSessionStartHook } from './session-start.js';
13
17
  export { runSessionEndHook } from './session-end.js';
14
18
  export { runStopHook } from './stop.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/hooks/index.ts"],"names":[],"mappings":"AAAA,6CAA6C;AAC7C;;;;;;;;;GASG;AAIH,OAAO,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AACzD,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AACrD,OAAO,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AACxC,OAAO,EAAE,qBAAqB,EAAE,MAAM,sBAAsB,CAAC;AAC7D,OAAO,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AACvD,OAAO,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AAC3D,OAAO,EAAE,uBAAuB,EAAE,MAAM,yBAAyB,CAAC;AAClE,OAAO,EAAE,aAAa,EAAE,UAAU,EAAiB,MAAM,eAAe,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/hooks/index.ts"],"names":[],"mappings":"AAAA,6CAA6C;AAC7C;;;;;;;;;GASG;AAIH,OAAO,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AACnD,OAAO,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AACvD,OAAO,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AACvD,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAC/C,OAAO,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AACzD,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AACrD,OAAO,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AACxC,OAAO,EAAE,qBAAqB,EAAE,MAAM,sBAAsB,CAAC;AAC7D,OAAO,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AACvD,OAAO,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AAC3D,OAAO,EAAE,uBAAuB,EAAE,MAAM,yBAAyB,CAAC;AAClE,OAAO,EAAE,aAAa,EAAE,UAAU,EAAiB,MAAM,eAAe,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"feedback.d.ts","sourceRoot":"","sources":["../../../src/hooks/lib/feedback.ts"],"names":[],"mappings":"AAGA,MAAM,WAAW,mCAAmC;IAClD,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,kBAAkB,CAAC,EAAE,MAAM,CAAC;CAC7B;AAED,wBAAsB,mCAAmC,CACvD,OAAO,EAAE,mCAAmC,GAC3C,OAAO,CAAC;IAAE,SAAS,EAAE,OAAO,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAAC,CA2BjD"}
1
+ {"version":3,"file":"feedback.d.ts","sourceRoot":"","sources":["../../../src/hooks/lib/feedback.ts"],"names":[],"mappings":"AAGA,MAAM,WAAW,mCAAmC;IAClD,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,kBAAkB,CAAC,EAAE,MAAM,CAAC;CAC7B;AAED,wBAAsB,mCAAmC,CACvD,OAAO,EAAE,mCAAmC,GAC3C,OAAO,CAAC;IAAE,SAAS,EAAE,OAAO,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAAC,CA6BjD"}
@@ -22,8 +22,10 @@ export async function submitPendingClassificationFeedback(options) {
22
22
  markClassificationFeedbackSubmitted(options.sessionId);
23
23
  return { submitted: true, reason: 'submitted' };
24
24
  }
25
- catch {
26
- return { submitted: false, reason: 'unknown_error' };
25
+ catch (err) {
26
+ const detail = err instanceof Error ? err.message : String(err);
27
+ process.stderr.write(`[gramatr] feedback submission failed: ${detail}\n`);
28
+ return { submitted: false, reason: 'call_tool_error' };
27
29
  }
28
30
  }
29
31
  //# sourceMappingURL=feedback.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"feedback.js","sourceRoot":"","sources":["../../../src/hooks/lib/feedback.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,6BAA6B,CAAC;AACvD,OAAO,EAAE,uBAAuB,EAAE,mCAAmC,EAAE,MAAM,iBAAiB,CAAC;AAS/F,MAAM,CAAC,KAAK,UAAU,mCAAmC,CACvD,OAA4C;IAE5C,MAAM,IAAI,GAAG,uBAAuB,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;IAExD,IAAI,CAAC,IAAI,EAAE,gBAAgB,EAAE,CAAC;QAC5B,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,EAAE,qBAAqB,EAAE,CAAC;IAC7D,CAAC;IAED,MAAM,cAAc,GAAG,CAAC,IAAI,CAAC,eAAe,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;IAC3D,IAAI,CAAC,cAAc,EAAE,CAAC;QACpB,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,EAAE,yBAAyB,EAAE,CAAC;IACjE,CAAC;IAED,IAAI,CAAC;QACH,MAAM,QAAQ,CAAC,iCAAiC,EAAE;YAChD,SAAS,EAAE,IAAI,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,WAAW,EAAE;YACnD,WAAW,EAAE,IAAI;YACjB,eAAe,EAAE,cAAc;YAC/B,gBAAgB,EAAE,IAAI,CAAC,gBAAgB,IAAI,SAAS;YACpD,mBAAmB,EAAE,OAAO,CAAC,kBAAkB;YAC/C,WAAW,EAAE,OAAO,CAAC,UAAU;YAC/B,UAAU,EAAE,OAAO,CAAC,SAAS;SAC9B,CAAC,CAAC;QACH,mCAAmC,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;QACvD,OAAO,EAAE,SAAS,EAAE,IAAI,EAAE,MAAM,EAAE,WAAW,EAAE,CAAC;IAClD,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,EAAE,eAAe,EAAE,CAAC;IACvD,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"feedback.js","sourceRoot":"","sources":["../../../src/hooks/lib/feedback.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,6BAA6B,CAAC;AACvD,OAAO,EAAE,uBAAuB,EAAE,mCAAmC,EAAE,MAAM,iBAAiB,CAAC;AAS/F,MAAM,CAAC,KAAK,UAAU,mCAAmC,CACvD,OAA4C;IAE5C,MAAM,IAAI,GAAG,uBAAuB,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;IAExD,IAAI,CAAC,IAAI,EAAE,gBAAgB,EAAE,CAAC;QAC5B,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,EAAE,qBAAqB,EAAE,CAAC;IAC7D,CAAC;IAED,MAAM,cAAc,GAAG,CAAC,IAAI,CAAC,eAAe,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;IAC3D,IAAI,CAAC,cAAc,EAAE,CAAC;QACpB,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,EAAE,yBAAyB,EAAE,CAAC;IACjE,CAAC;IAED,IAAI,CAAC;QACH,MAAM,QAAQ,CAAC,iCAAiC,EAAE;YAChD,SAAS,EAAE,IAAI,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,WAAW,EAAE;YACnD,WAAW,EAAE,IAAI;YACjB,eAAe,EAAE,cAAc;YAC/B,gBAAgB,EAAE,IAAI,CAAC,gBAAgB,IAAI,SAAS;YACpD,mBAAmB,EAAE,OAAO,CAAC,kBAAkB;YAC/C,WAAW,EAAE,OAAO,CAAC,UAAU;YAC/B,UAAU,EAAE,OAAO,CAAC,SAAS;SAC9B,CAAC,CAAC;QACH,mCAAmC,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;QACvD,OAAO,EAAE,SAAS,EAAE,IAAI,EAAE,MAAM,EAAE,WAAW,EAAE,CAAC;IAClD,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,MAAM,MAAM,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QAChE,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,yCAAyC,MAAM,IAAI,CAAC,CAAC;QAC1E,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,EAAE,iBAAiB,EAAE,CAAC;IACzD,CAAC;AACH,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"intelligence.d.ts","sourceRoot":"","sources":["../../../src/hooks/lib/intelligence.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAwC,aAAa,EAAE,MAAM,YAAY,CAAC;AAEtF,MAAM,MAAM,aAAa,GAAG;IAC1B,MAAM,EAAE,MAAM,GAAG,SAAS,GAAG,aAAa,GAAG,cAAc,GAAG,aAAa,GAAG,SAAS,CAAC;IACxF,MAAM,EAAE,MAAM,CAAC;CAChB,CAAC;AAgHF,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,aAAa,GAAG,MAAM,CAuBnE;AAED,wBAAgB,wBAAwB,CACtC,KAAK,EAAE,aAAa,EACpB,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,GACzC,IAAI,CAmBN;AA4ID,wBAAgB,kBAAkB,CAChC,IAAI,EAAE,aAAa,EACnB,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,GAC1C,MAAM,CAuGR;AAED,wBAAgB,UAAU,CACxB,IAAI,EAAE,aAAa,GAAG,IAAI,EAC1B,OAAO,EAAE,MAAM,EACf,WAAW,EAAE,aAAa,GAAG,IAAI,GAChC,IAAI,CA8BN"}
1
+ {"version":3,"file":"intelligence.d.ts","sourceRoot":"","sources":["../../../src/hooks/lib/intelligence.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAwC,aAAa,EAAE,MAAM,YAAY,CAAC;AAEtF,MAAM,MAAM,aAAa,GAAG;IAC1B,MAAM,EAAE,MAAM,GAAG,SAAS,GAAG,aAAa,GAAG,cAAc,GAAG,aAAa,GAAG,SAAS,CAAC;IACxF,MAAM,EAAE,MAAM,CAAC;CAChB,CAAC;AAgHF,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,aAAa,GAAG,MAAM,CAuBnE;AAED,wBAAgB,wBAAwB,CACtC,KAAK,EAAE,aAAa,EACpB,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,GACzC,IAAI,CAmBN;AA4ID,wBAAgB,kBAAkB,CAChC,IAAI,EAAE,aAAa,EACnB,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,GAC1C,MAAM,CAuGR;AAED,wBAAgB,UAAU,CACxB,IAAI,EAAE,aAAa,GAAG,IAAI,EAC1B,OAAO,EAAE,MAAM,EACf,WAAW,EAAE,aAAa,GAAG,IAAI,GAChC,IAAI,CAgCN"}
@@ -333,7 +333,10 @@ export function emitStatus(data, elapsed, lastFailure) {
333
333
  const confidence = c.confidence ? `${Math.round(c.confidence * 100)}%` : '';
334
334
  process.stderr.write(`[grāmatr${version ? ' ' + version : ''}] ✓ ${c.effort_level || '?'}/${c.intent_type || '?'} ${confidence} (${classifier}, ${elapsed}ms)\n`);
335
335
  const stages = [];
336
- if (st.distilbert_ms !== undefined)
336
+ if (st.classifier_ms !== undefined)
337
+ stages.push(`classify:${st.classifier_ms}ms`);
338
+ // Backward compat: accept legacy key from older servers
339
+ else if (st.distilbert_ms !== undefined)
337
340
  stages.push(`classify:${st.distilbert_ms}ms`);
338
341
  if (st.mistral_classify_ms !== undefined)
339
342
  stages.push(`classify:${st.mistral_classify_ms}ms`);
@@ -1 +1 @@
1
- {"version":3,"file":"intelligence.js","sourceRoot":"","sources":["../../../src/hooks/lib/intelligence.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"intelligence.js","sourceRoot":"","sources":["../../../src/hooks/lib/intelligence.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,16 @@
1
1
  export declare const HOOK_MANIFEST: readonly [{
2
+ readonly name: "agent-gate";
3
+ readonly description: "Deny Agent launches without a fresh gramatr_route_request classification.";
4
+ }, {
5
+ readonly name: "agent-verify";
6
+ readonly description: "Emit ISC verification reminder after sub-agent completion.";
7
+ }, {
8
+ readonly name: "edit-tracker";
9
+ readonly description: "Track modified files for lint awareness.";
10
+ }, {
11
+ readonly name: "git-gate";
12
+ readonly description: "Enforce behavioral gates on dangerous git operations.";
13
+ }, {
2
14
  readonly name: "input-validator";
3
15
  readonly description: "Validate MCP tool inputs before they are sent.";
4
16
  }, {
@@ -1 +1 @@
1
- {"version":3,"file":"manifest.d.ts","sourceRoot":"","sources":["../../src/hooks/manifest.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,aAAa;;;;;;;;;;;;;;;;;;;;;EA6BhB,CAAC;AAEX,eAAO,MAAM,UAAU,EAA6C,SAAS,MAAM,EAAE,CAAC;AAEtF,MAAM,MAAM,QAAQ,GAAG,CAAC,OAAO,aAAa,CAAC,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,CAAC"}
1
+ {"version":3,"file":"manifest.d.ts","sourceRoot":"","sources":["../../src/hooks/manifest.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,aAAa;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA6ChB,CAAC;AAEX,eAAO,MAAM,UAAU,EAA6C,SAAS,MAAM,EAAE,CAAC;AAEtF,MAAM,MAAM,QAAQ,GAAG,CAAC,OAAO,aAAa,CAAC,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,CAAC"}
@@ -1,4 +1,20 @@
1
1
  export const HOOK_MANIFEST = [
2
+ {
3
+ name: 'agent-gate',
4
+ description: 'Deny Agent launches without a fresh gramatr_route_request classification.',
5
+ },
6
+ {
7
+ name: 'agent-verify',
8
+ description: 'Emit ISC verification reminder after sub-agent completion.',
9
+ },
10
+ {
11
+ name: 'edit-tracker',
12
+ description: 'Track modified files for lint awareness.',
13
+ },
14
+ {
15
+ name: 'git-gate',
16
+ description: 'Enforce behavioral gates on dangerous git operations.',
17
+ },
2
18
  {
3
19
  name: 'input-validator',
4
20
  description: 'Validate MCP tool inputs before they are sent.',
@@ -1 +1 @@
1
- {"version":3,"file":"manifest.js","sourceRoot":"","sources":["../../src/hooks/manifest.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,aAAa,GAAG;IAC3B;QACE,IAAI,EAAE,iBAAiB;QACvB,WAAW,EAAE,gDAAgD;KAC9D;IACD;QACE,IAAI,EAAE,gBAAgB;QACtB,WAAW,EAAE,kDAAkD;KAChE;IACD;QACE,IAAI,EAAE,eAAe;QACrB,WAAW,EAAE,wDAAwD;KACtE;IACD;QACE,IAAI,EAAE,aAAa;QACnB,WAAW,EAAE,oDAAoD;KAClE;IACD;QACE,IAAI,EAAE,MAAM;QACZ,WAAW,EAAE,sDAAsD;KACpE;IACD;QACE,IAAI,EAAE,cAAc;QACpB,WAAW,EAAE,oDAAoD;KAClE;IACD;QACE,IAAI,EAAE,oBAAoB;QAC1B,WAAW,EAAE,2DAA2D;KACzE;CACO,CAAC;AAEX,MAAM,CAAC,MAAM,UAAU,GAAG,aAAa,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAsB,CAAC"}
1
+ {"version":3,"file":"manifest.js","sourceRoot":"","sources":["../../src/hooks/manifest.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,aAAa,GAAG;IAC3B;QACE,IAAI,EAAE,YAAY;QAClB,WAAW,EAAE,2EAA2E;KACzF;IACD;QACE,IAAI,EAAE,cAAc;QACpB,WAAW,EAAE,4DAA4D;KAC1E;IACD;QACE,IAAI,EAAE,cAAc;QACpB,WAAW,EAAE,0CAA0C;KACxD;IACD;QACE,IAAI,EAAE,UAAU;QAChB,WAAW,EAAE,uDAAuD;KACrE;IACD;QACE,IAAI,EAAE,iBAAiB;QACvB,WAAW,EAAE,gDAAgD;KAC9D;IACD;QACE,IAAI,EAAE,gBAAgB;QACtB,WAAW,EAAE,kDAAkD;KAChE;IACD;QACE,IAAI,EAAE,eAAe;QACrB,WAAW,EAAE,wDAAwD;KACtE;IACD;QACE,IAAI,EAAE,aAAa;QACnB,WAAW,EAAE,oDAAoD;KAClE;IACD;QACE,IAAI,EAAE,MAAM;QACZ,WAAW,EAAE,sDAAsD;KACpE;IACD;QACE,IAAI,EAAE,cAAc;QACpB,WAAW,EAAE,oDAAoD;KAClE;IACD;QACE,IAAI,EAAE,oBAAoB;QAC1B,WAAW,EAAE,2DAA2D;KACzE;CACO,CAAC;AAEX,MAAM,CAAC,MAAM,UAAU,GAAG,aAAa,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAsB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"rating-capture.d.ts","sourceRoot":"","sources":["../../src/hooks/rating-capture.ts"],"names":[],"mappings":"AAqBA,wBAAsB,oBAAoB,CAAC,KAAK,GAAE,MAAM,EAAO,GAAG,OAAO,CAAC,MAAM,CAAC,CA2DhF"}
1
+ {"version":3,"file":"rating-capture.d.ts","sourceRoot":"","sources":["../../src/hooks/rating-capture.ts"],"names":[],"mappings":"AAyBA,wBAAsB,oBAAoB,CAAC,KAAK,GAAE,MAAM,EAAO,GAAG,OAAO,CAAC,MAAM,CAAC,CA8EhF"}
@@ -3,6 +3,8 @@ import { spawn } from 'node:child_process';
3
3
  import { join } from 'node:path';
4
4
  import { getGramatrDirFromEnv, getHomeDir } from '../config-runtime.js';
5
5
  import { readHookInput } from './lib/gramatr-hook-utils.js';
6
+ import { submitPendingClassificationFeedback } from './lib/feedback.js';
7
+ import { resolveHookClientRuntime } from './lib/client-runtime.js';
6
8
  function parseExplicitRating(prompt) {
7
9
  const trimmed = prompt.trim();
8
10
  const match = trimmed.match(/^(10|[1-9])(?:\s*[-:]\s*|\s+)?(.*)$/);
@@ -19,9 +21,27 @@ function parseExplicitRating(prompt) {
19
21
  }
20
22
  return { rating, comment };
21
23
  }
24
+ const FEEDBACK_TIMEOUT_MS = 5000;
22
25
  export async function runRatingCaptureHook(_args = []) {
26
+ const runtime = resolveHookClientRuntime(_args);
23
27
  try {
24
28
  const data = await readHookInput();
29
+ const sessionId = data.session_id || 'unknown';
30
+ // Submit classification feedback for the PREVIOUS turn before processing this prompt.
31
+ try {
32
+ await Promise.race([
33
+ submitPendingClassificationFeedback({
34
+ sessionId,
35
+ clientType: runtime.clientType,
36
+ agentName: runtime.agentName,
37
+ }),
38
+ new Promise((resolve) => setTimeout(() => resolve(null), FEEDBACK_TIMEOUT_MS)),
39
+ ]);
40
+ }
41
+ catch (err) {
42
+ const detail = err instanceof Error ? err.message : String(err);
43
+ process.stderr.write(`[gramatr] rating-capture feedback error: ${detail}\n`);
44
+ }
25
45
  const prompt = data.prompt || data.message || '';
26
46
  if (!prompt.trim()) {
27
47
  process.stdout.write(JSON.stringify({}));
@@ -72,8 +92,9 @@ export async function runRatingCaptureHook(_args = []) {
72
92
  catch { }
73
93
  }
74
94
  }
75
- catch {
76
- // best effort
95
+ catch (err) {
96
+ const detail = err instanceof Error ? err.message : String(err);
97
+ process.stderr.write(`[gramatr] rating-capture hook error: ${detail}\n`);
77
98
  }
78
99
  process.stdout.write(JSON.stringify({}));
79
100
  return 0;
@@ -1 +1 @@
1
- {"version":3,"file":"rating-capture.js","sourceRoot":"","sources":["../../src/hooks/rating-capture.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"rating-capture.js","sourceRoot":"","sources":["../../src/hooks/rating-capture.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"session-end.d.ts","sourceRoot":"","sources":["../../src/hooks/session-end.ts"],"names":[],"mappings":"AA2BA,wBAAsB,iBAAiB,CAAC,KAAK,GAAE,MAAM,EAAO,GAAG,OAAO,CAAC,MAAM,CAAC,CA2I7E"}
1
+ {"version":3,"file":"session-end.d.ts","sourceRoot":"","sources":["../../src/hooks/session-end.ts"],"names":[],"mappings":"AA4BA,wBAAsB,iBAAiB,CAAC,KAAK,GAAE,MAAM,EAAO,GAAG,OAAO,CAAC,MAAM,CAAC,CAqJ7E"}
@@ -1,7 +1,7 @@
1
1
  import { deriveProjectId, getCommitCountSince, getCommitLogSince, getCommitsSince, getFilesChanged, getGitContext, log, now, readGmtrConfig, readHookInput, resolveAuthToken, writeGmtrConfig, } from './lib/gramatr-hook-utils.js';
2
2
  import { endRemoteSession, flushTurns } from './lib/session-end.js';
3
3
  import { isLocalHooksServerAvailable } from '../proxy/local-client.js';
4
- import { appendSessionLog, flushOpHistory, flushTurns as flushTurnsDb, getSessionContext, hydrateSessionContextFromServer, isFilesystemAvailable, markSessionSynced, } from './lib/hook-state.js';
4
+ import { appendSessionLog, flushOpHistory, flushTurns as flushTurnsDb, getLatestClassification, getSessionContext, hydrateSessionContextFromServer, isFilesystemAvailable, markSessionSynced, } from './lib/hook-state.js';
5
5
  import { resolveHookClientRuntime } from './lib/client-runtime.js';
6
6
  export async function runSessionEndHook(_args = []) {
7
7
  const runtime = resolveHookClientRuntime(_args);
@@ -96,6 +96,16 @@ export async function runSessionEndHook(_args = []) {
96
96
  if (topTools)
97
97
  summary += ` Top tools: ${topTools}.`;
98
98
  }
99
+ // Check feedback loop health — warn if classifier feedback was never submitted
100
+ try {
101
+ const lastClassification = getLatestClassification(sessionId);
102
+ if (lastClassification?.pending_feedback) {
103
+ process.stderr.write('[gramatr] WARNING: classification feedback was never submitted this session. The classifier flywheel is not receiving training signal.\n');
104
+ }
105
+ }
106
+ catch {
107
+ // Non-critical
108
+ }
99
109
  // Persist session log entry to SQLite (replaces session-history.log + last-session-commits.txt)
100
110
  try {
101
111
  appendSessionLog({
@@ -1 +1 @@
1
- {"version":3,"file":"session-end.js","sourceRoot":"","sources":["../../src/hooks/session-end.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"session-end.js","sourceRoot":"","sources":["../../src/hooks/session-end.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"stop.d.ts","sourceRoot":"","sources":["../../src/hooks/stop.ts"],"names":[],"mappings":"AAeA,wBAAsB,WAAW,CAAC,KAAK,GAAE,MAAM,EAAO,GAAG,OAAO,CAAC,MAAM,CAAC,CAcvE"}
1
+ {"version":3,"file":"stop.d.ts","sourceRoot":"","sources":["../../src/hooks/stop.ts"],"names":[],"mappings":"AAeA,wBAAsB,WAAW,CAAC,KAAK,GAAE,MAAM,EAAO,GAAG,OAAO,CAAC,MAAM,CAAC,CAevE"}
@@ -20,8 +20,9 @@ export async function runStopHook(_args = []) {
20
20
  agentName: runtime.agentName,
21
21
  }), STOP_FEEDBACK_TIMEOUT_MS);
22
22
  }
23
- catch {
24
- // best effort
23
+ catch (err) {
24
+ const detail = err instanceof Error ? err.message : String(err);
25
+ process.stderr.write(`[gramatr] stop hook error: ${detail}\n`);
25
26
  }
26
27
  process.stdout.write(JSON.stringify({}));
27
28
  return 0;
@@ -1 +1 @@
1
- {"version":3,"file":"stop.js","sourceRoot":"","sources":["../../src/hooks/stop.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;AAC5D,OAAO,EAAE,mCAAmC,EAAE,MAAM,mBAAmB,CAAC;AACxE,OAAO,EAAE,wBAAwB,EAAE,MAAM,yBAAyB,CAAC;AAEnE,MAAM,wBAAwB,GAAG,IAAI,CAAC;AAEtC,SAAS,WAAW,CAAI,OAAmB,EAAE,SAAiB;IAC5D,OAAO,OAAO,CAAC,IAAI,CAAC;QAClB,OAAO;QACP,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,EAAE;YAC5B,UAAU,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,SAAS,CAAC,CAAC;QAC7C,CAAC,CAAC;KACH,CAAC,CAAC;AACL,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,WAAW,CAAC,QAAkB,EAAE;IACpD,MAAM,OAAO,GAAG,wBAAwB,CAAC,KAAK,CAAC,CAAC;IAChD,IAAI,CAAC;QACH,MAAM,KAAK,GAAG,MAAM,aAAa,EAAE,CAAC;QACpC,MAAM,WAAW,CAAC,mCAAmC,CAAC;YACpD,SAAS,EAAE,KAAK,CAAC,UAAU,IAAI,SAAS;YACxC,UAAU,EAAE,OAAO,CAAC,UAAU;YAC9B,SAAS,EAAE,OAAO,CAAC,SAAS;SAC7B,CAAC,EAAE,wBAAwB,CAAC,CAAC;IAChC,CAAC;IAAC,MAAM,CAAC;QACP,cAAc;IAChB,CAAC;IACD,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC,CAAC;IACzC,OAAO,CAAC,CAAC;AACX,CAAC"}
1
+ {"version":3,"file":"stop.js","sourceRoot":"","sources":["../../src/hooks/stop.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;AAC5D,OAAO,EAAE,mCAAmC,EAAE,MAAM,mBAAmB,CAAC;AACxE,OAAO,EAAE,wBAAwB,EAAE,MAAM,yBAAyB,CAAC;AAEnE,MAAM,wBAAwB,GAAG,IAAI,CAAC;AAEtC,SAAS,WAAW,CAAI,OAAmB,EAAE,SAAiB;IAC5D,OAAO,OAAO,CAAC,IAAI,CAAC;QAClB,OAAO;QACP,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,EAAE;YAC5B,UAAU,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,SAAS,CAAC,CAAC;QAC7C,CAAC,CAAC;KACH,CAAC,CAAC;AACL,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,WAAW,CAAC,QAAkB,EAAE;IACpD,MAAM,OAAO,GAAG,wBAAwB,CAAC,KAAK,CAAC,CAAC;IAChD,IAAI,CAAC;QACH,MAAM,KAAK,GAAG,MAAM,aAAa,EAAE,CAAC;QACpC,MAAM,WAAW,CAAC,mCAAmC,CAAC;YACpD,SAAS,EAAE,KAAK,CAAC,UAAU,IAAI,SAAS;YACxC,UAAU,EAAE,OAAO,CAAC,UAAU;YAC9B,SAAS,EAAE,OAAO,CAAC,SAAS;SAC7B,CAAC,EAAE,wBAAwB,CAAC,CAAC;IAChC,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,MAAM,MAAM,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QAChE,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,8BAA8B,MAAM,IAAI,CAAC,CAAC;IACjE,CAAC;IACD,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC,CAAC;IACzC,OAAO,CAAC,CAAC;AACX,CAAC"}
@@ -114,6 +114,10 @@ If responses are wrapped with \`schema: "gmtr.tool.result.v1"\`, parse the
114
114
  For continuity questions like "what were we doing?" or "what changed?",
115
115
  call \`gramatr_load_handoff\` first, then \`search_semantic\` for detail.
116
116
 
117
+ **Feedback loop (MANDATORY):** After completing non-trivial work, you MUST:
118
+ 1. Call \`gramatr_classification_feedback\` — trains the classifier.
119
+ 2. Call \`gramatr_save_reflection\` — feeds the learning pipeline.
120
+
117
121
  Use gramatr tools for memory and project state. Do not maintain separate
118
122
  notes when gramatr state is available.`;
119
123
  }
@@ -155,6 +159,11 @@ agent suggestions, and enrichment (RE + ISC scaffold).
155
159
  If responses are wrapped with \`schema: "gmtr.tool.result.v1"\`, use
156
160
  \`data\` as the canonical payload.
157
161
 
162
+ **Feedback loop (MANDATORY):** After completing non-trivial work, you MUST:
163
+ 1. Call \`gramatr_classification_feedback\` with the original prompt — evaluates if effort, intent, and skills were classified correctly. This trains the classifier.
164
+ 2. Call \`gramatr_save_reflection\` — captures what worked, what didn't, what a smarter AI would do differently. This feeds the learning pipeline.
165
+ Skipping these breaks the training flywheel. Without feedback, the classifier never improves.
166
+
158
167
  For continuity questions ("what were we doing?", "what changed?"),
159
168
  call \`gramatr_load_handoff\` before answering, then \`search_semantic\`.`;
160
169
  }
@@ -1 +1 @@
1
- {"version":3,"file":"instructions.js","sourceRoot":"","sources":["../../src/setup/instructions.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,kBAAkB,GAAG,wBAAwB,CAAC;AAC3D,MAAM,CAAC,MAAM,gBAAgB,GAAG,sBAAsB,CAAC;AACvD,MAAM,CAAC,MAAM,iBAAiB,GAAG,8BAA8B,CAAC;AAChE,MAAM,CAAC,MAAM,eAAe,GAAG,4BAA4B,CAAC;AAY5D,MAAM,CAAC,MAAM,oBAAoB,GAAG,GAAG,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAqCvD,gBAAgB;CACjB,CAAC;AAEF,MAAM,CAAC,MAAM,cAAc,GAAG,GAAG,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;EAyBhD,eAAe;CAChB,CAAC;AAEF,MAAM,UAAU,4BAA4B,CAAC,MAA2B;IACtE,QAAQ,MAAM,EAAE,CAAC;QACf,KAAK,aAAa,CAAC;QACnB,KAAK,OAAO,CAAC;QACb,KAAK,YAAY;YACf,OAAO,2BAA2B,CAAC,MAAM,CAAC,CAAC;QAC7C,KAAK,gBAAgB,CAAC;QACtB,KAAK,iBAAiB,CAAC;QACvB,KAAK,QAAQ,CAAC;QACd,KAAK,UAAU,CAAC;QAChB,KAAK,QAAQ;YACX,OAAO,kCAAkC,CAAC,MAAM,CAAC,CAAC;QACpD;YACE,OAAO,2BAA2B,CAAC,OAAO,CAAC,CAAC;IAChD,CAAC;AACH,CAAC;AAED,SAAS,2BAA2B,CAAC,MAA8C;IACjF,MAAM,QAAQ,GAAG,MAAM,KAAK,aAAa;QACvC,CAAC,CAAC,aAAa;QACf,CAAC,CAAC,MAAM,KAAK,YAAY;YACvB,CAAC,CAAC,YAAY;YACd,CAAC,CAAC,OAAO,CAAC;IAEd,OAAO,cAAc,QAAQ;;;;;;;;;;;;;;;;;;;;;;;;;uCAyBQ,CAAC;AACxC,CAAC;AAED,SAAS,kCAAkC,CACzC,MAA+E;IAE/E,MAAM,WAAW,GAAkC;QACjD,gBAAgB,EAAE,gBAAgB;QAClC,iBAAiB,EAAE,iBAAiB;QACpC,MAAM,EAAE,QAAQ;QAChB,QAAQ,EAAE,UAAU;QACpB,MAAM,EAAE,SAAS;KAClB,CAAC;IAEF,OAAO,cAAc,WAAW,CAAC,MAAM,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;0EA+BgC,CAAC;AAC3E,CAAC"}
1
+ {"version":3,"file":"instructions.js","sourceRoot":"","sources":["../../src/setup/instructions.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,kBAAkB,GAAG,wBAAwB,CAAC;AAC3D,MAAM,CAAC,MAAM,gBAAgB,GAAG,sBAAsB,CAAC;AACvD,MAAM,CAAC,MAAM,iBAAiB,GAAG,8BAA8B,CAAC;AAChE,MAAM,CAAC,MAAM,eAAe,GAAG,4BAA4B,CAAC;AAY5D,MAAM,CAAC,MAAM,oBAAoB,GAAG,GAAG,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAqCvD,gBAAgB;CACjB,CAAC;AAEF,MAAM,CAAC,MAAM,cAAc,GAAG,GAAG,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;EAyBhD,eAAe;CAChB,CAAC;AAEF,MAAM,UAAU,4BAA4B,CAAC,MAA2B;IACtE,QAAQ,MAAM,EAAE,CAAC;QACf,KAAK,aAAa,CAAC;QACnB,KAAK,OAAO,CAAC;QACb,KAAK,YAAY;YACf,OAAO,2BAA2B,CAAC,MAAM,CAAC,CAAC;QAC7C,KAAK,gBAAgB,CAAC;QACtB,KAAK,iBAAiB,CAAC;QACvB,KAAK,QAAQ,CAAC;QACd,KAAK,UAAU,CAAC;QAChB,KAAK,QAAQ;YACX,OAAO,kCAAkC,CAAC,MAAM,CAAC,CAAC;QACpD;YACE,OAAO,2BAA2B,CAAC,OAAO,CAAC,CAAC;IAChD,CAAC;AACH,CAAC;AAED,SAAS,2BAA2B,CAAC,MAA8C;IACjF,MAAM,QAAQ,GAAG,MAAM,KAAK,aAAa;QACvC,CAAC,CAAC,aAAa;QACf,CAAC,CAAC,MAAM,KAAK,YAAY;YACvB,CAAC,CAAC,YAAY;YACd,CAAC,CAAC,OAAO,CAAC;IAEd,OAAO,cAAc,QAAQ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;uCA6BQ,CAAC;AACxC,CAAC;AAED,SAAS,kCAAkC,CACzC,MAA+E;IAE/E,MAAM,WAAW,GAAkC;QACjD,gBAAgB,EAAE,gBAAgB;QAClC,iBAAiB,EAAE,iBAAiB;QACpC,MAAM,EAAE,QAAQ;QAChB,QAAQ,EAAE,UAAU;QACpB,MAAM,EAAE,SAAS;KAClB,CAAC;IAEF,OAAO,cAAc,WAAW,CAAC,MAAM,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;0EAoCgC,CAAC;AAC3E,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"integrations.d.ts","sourceRoot":"","sources":["../../src/setup/integrations.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,kBAAkB;IACjC,IAAI,EAAE,SAAS,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,uBAAuB;IACtC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,kBAAkB,EAAE,CAAC;CAC7B;AAED,MAAM,WAAW,gBAAgB;IAC/B,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,uBAAuB,EAAE,CAAC,CAAC;CAClD;AAYD,eAAO,MAAM,qBAAqB,gBAAgB,CAAC;AAwEnD,wBAAgB,oBAAoB,CAAC,SAAS,EAAE,MAAM,GAAG,gBAAgB,CAExE;AAED,wBAAgB,mBAAmB,CAAC,SAAS,EAAE,MAAM,GAAG,gBAAgB,CAEvE;AAED,wBAAgB,iBAAiB,CAC/B,QAAQ,EAAE,gBAAgB,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACpD,OAAO,EAAE,gBAAgB,GACxB,gBAAgB,CAyBlB;AAED,wBAAgB,uBAAuB,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,CAalE;AAED,wBAAgB,yBAAyB,IAAI;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,EAAE,CAAA;CAAE,CAIhF"}
1
+ {"version":3,"file":"integrations.d.ts","sourceRoot":"","sources":["../../src/setup/integrations.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,kBAAkB;IACjC,IAAI,EAAE,SAAS,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,uBAAuB;IACtC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,kBAAkB,EAAE,CAAC;CAC7B;AAED,MAAM,WAAW,gBAAgB;IAC/B,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,uBAAuB,EAAE,CAAC,CAAC;CAClD;AAYD,eAAO,MAAM,qBAAqB,gBAAgB,CAAC;AA6EnD,wBAAgB,oBAAoB,CAAC,SAAS,EAAE,MAAM,GAAG,gBAAgB,CAExE;AAED,wBAAgB,mBAAmB,CAAC,SAAS,EAAE,MAAM,GAAG,gBAAgB,CAEvE;AAED,wBAAgB,iBAAiB,CAC/B,QAAQ,EAAE,gBAAgB,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACpD,OAAO,EAAE,gBAAgB,GACxB,gBAAgB,CAyBlB;AAED,wBAAgB,uBAAuB,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,CAalE;AAED,wBAAgB,yBAAyB,IAAI;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,EAAE,CAAA;CAAE,CAIhF"}
@@ -1,11 +1,16 @@
1
1
  export const MCP_HOOK_BIN_RELATIVE = 'bin/gramatr';
2
2
  const TS_RUNNER = 'npx tsx';
3
3
  const CLAUDE_HOOKS = [
4
+ { event: 'PreToolUse', matcher: 'Agent', mcpHookName: 'agent-gate', hookArgs: ['--claude-code'] },
5
+ { event: 'PreToolUse', matcher: 'Bash', mcpHookName: 'git-gate', hookArgs: ['--claude-code'] },
4
6
  { event: 'PreToolUse', matcher: 'Bash', mcpHookName: 'input-validator', hookArgs: ['--claude-code'] },
5
7
  { event: 'PreToolUse', matcher: 'Edit', mcpHookName: 'input-validator', hookArgs: ['--claude-code'] },
8
+ { event: 'PreToolUse', matcher: 'Edit', mcpHookName: 'edit-tracker', hookArgs: ['--claude-code'] },
6
9
  { event: 'PreToolUse', matcher: 'Write', mcpHookName: 'input-validator', hookArgs: ['--claude-code'] },
10
+ { event: 'PreToolUse', matcher: 'Write', mcpHookName: 'edit-tracker', hookArgs: ['--claude-code'] },
7
11
  { event: 'PreToolUse', matcher: 'Read', mcpHookName: 'input-validator', hookArgs: ['--claude-code'] },
8
12
  { event: 'PreToolUse', matcher: 'mcp__.*gramatr.*__', mcpHookName: 'input-validator', hookArgs: ['--claude-code'] },
13
+ { event: 'PostToolUse', matcher: 'Agent', mcpHookName: 'agent-verify', hookArgs: ['--claude-code'] },
9
14
  { event: 'PostToolUse', matcher: 'mcp__.*gramatr.*__', mcpHookName: 'tool-tracker', hookArgs: ['--claude-code'] },
10
15
  { event: 'UserPromptSubmit', mcpHookName: 'rating-capture', hookArgs: ['--claude-code'] },
11
16
  { event: 'UserPromptSubmit', mcpHookName: 'user-prompt-submit', hookArgs: ['--claude-code'] },
@@ -1 +1 @@
1
- {"version":3,"file":"integrations.js","sourceRoot":"","sources":["../../src/setup/integrations.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"integrations.js","sourceRoot":"","sources":["../../src/setup/integrations.ts"],"names":[],"mappings":"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"}