@jigyasudham/veto 2.6.0 → 2.7.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/.dockerignore ADDED
@@ -0,0 +1,7 @@
1
+ node_modules
2
+ dist
3
+ .git
4
+ .antigravitycli
5
+ .claude
6
+ tests
7
+ *.md
package/Dockerfile ADDED
@@ -0,0 +1,21 @@
1
+ FROM node:22-slim
2
+
3
+ WORKDIR /app
4
+
5
+ # Copy configuration and package files
6
+ COPY package.json package-lock.json tsconfig.json ./
7
+
8
+ # Install all dependencies (including devDependencies for build)
9
+ RUN npm ci
10
+
11
+ # Copy source code
12
+ COPY src ./src
13
+
14
+ # Build TypeScript source to dist/
15
+ RUN npm run build
16
+
17
+ # Prune devDependencies to keep the runtime environment clean and lightweight
18
+ RUN npm prune --production
19
+
20
+ # Entrypoint to run the MCP server over stdio
21
+ ENTRYPOINT ["node", "dist/server.js"]
package/LAUNCH-KIT.md CHANGED
@@ -14,7 +14,7 @@ Canonical links:
14
14
  - npm: https://www.npmjs.com/package/@jigyasudham/veto
15
15
  - GitHub: https://github.com/jigyasudham/veto
16
16
  - MCP Registry: `io.github.jigyasudham/veto`
17
- - Quickstart: `npx @jigyasudham/veto init` (or `npm i -g @jigyasudham/veto && veto init`)
17
+ - Quickstart: `npx @jigyasudham/veto@latest init` (avoid `npm i -g` a global install shadows npx and pins you to an old version)
18
18
 
19
19
  > Honesty guardrail used throughout: "zero cost" = subscription plans (Claude Max, Gemini Advanced…).
20
20
  > On API/pay-per-token billing, MCP Sampling calls count toward usage. Keep that caveat in every post.
@@ -202,7 +202,7 @@ self-learning, multi-agent, developer-tools
202
202
 
203
203
  **Short description (<=100 chars — matches server.json):**
204
204
  ```
205
- 93 agentic MCP tools, 49 specialist agents for every major AI CLI. Self-learning, zero API cost.
205
+ 93 agentic MCP tools + 49 specialist agents for every major AI CLI. Self-learning, no API keys.
206
206
  ```
207
207
 
208
208
  **One-liner:**
package/LICENSE ADDED
@@ -0,0 +1,21 @@
1
+ MIT License
2
+
3
+ Copyright (c) 2026 Jigyasu Dham
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.
package/README.md CHANGED
@@ -1,5 +1,9 @@
1
1
  # veto
2
2
 
3
+ [![npm version](https://img.shields.io/npm/v/@jigyasudham/veto)](https://www.npmjs.com/package/@jigyasudham/veto)
4
+ [![npm downloads](https://img.shields.io/npm/dt/@jigyasudham/veto)](https://www.npmjs.com/package/@jigyasudham/veto)
5
+ [![license](https://img.shields.io/npm/l/@jigyasudham/veto)](https://github.com/jigyasudham/veto/blob/main/LICENSE)
6
+
3
7
  > **93 agentic tools. 49 specialists. Every major AI CLI. Self-learning. Zero extra cost on subscriptions.**
4
8
 
5
9
  An MCP server that runs locally on your machine, plugs into Claude Code, Codex CLI, Gemini CLI, Antigravity CLI, Cursor, Windsurf, Zed, and JetBrains using your existing subscriptions — giving every AI a council of specialist agents, local LLM support, SDD agents, playwright automation, persistent cross-platform memory, a self-learning router that re-tunes its tier thresholds automatically every 20 recorded task outcomes (reviews record outcomes for you; configurable via `auto_apply_learning`), CI/CD gates, workspace discovery, and bidirectional IDE communication.
@@ -85,7 +89,7 @@ Enable it with `VETO_COMPACT=1` in your MCP server config env, or `"compact_tool
85
89
  "mcpServers": {
86
90
  "veto": {
87
91
  "command": "npx",
88
- "args": ["-y", "--package", "@jigyasudham/veto", "veto-server"],
92
+ "args": ["-y", "--package", "@jigyasudham/veto@latest", "veto-server"],
89
93
  "env": { "VETO_COMPACT": "1" }
90
94
  }
91
95
  }
@@ -417,6 +421,17 @@ Platform switching is manual — Veto surfaces which platform has budget remaini
417
421
 
418
422
  ## Release Notes
419
423
 
424
+ ### 2.7.1
425
+ - **Fix: `npx` could silently run a stale version.** The generated MCP config used an unpinned `--package @jigyasudham/veto`, so npx would reuse a cached or globally-installed copy instead of fetching the latest — reinstalling and restarting never upgraded. Every generated config and documented register command now pins **`@latest`**, which npx must re-resolve against the registry each launch, so a client restart auto-updates. All `npm i -g @jigyasudham/veto` recommendations were removed (a global install is what shadows npx in the first place).
426
+ - **Startup update nudge.** When a newer Veto is published, the running server surfaces a one-line "update available — restart to pick it up" tip to the agent via the MCP `instructions` field. Non-blocking and offline-safe: it reads a cached latest version and refreshes it in the background at most once per day; it self-resolves once you're current.
427
+ - **`veto --version` / `-v`.** Previously returned "Unknown command". `veto doctor` now also reports whether a newer version is available and flags a shadowing global install with the `npm rm -g` fix.
428
+ - **Honesty fix.** Registry/directory description changed "zero API cost" → "no API keys" (Sampling calls do cost on pay-per-token API billing).
429
+
430
+ ### 2.7.0
431
+ - **Statusline shows LIVE session gauges, not a frozen tally.** The old token segment read Veto's own `rate_usage` table, which only Veto's tools increment — so it sat frozen during normal use. `veto statusline print` now reads the JSON Claude Code pipes to a `statusLine` command on stdin and renders three live gauges: `ctx N%` (context-window used), `5h N%` (5-hour rate limit), and `7d N%` (weekly rate limit). Each colors yellow ≥70 / red ≥90 and drops when its value is unavailable (early session / post-`/compact`). It renders e.g. `⬡ veto GREEN · router 94% · ctx 37% · 5h 74% · 7d 8% · mem 15`, degrades to a neutral `⬡ veto`, and stays crash-proof and non-blocking (TTY-guarded, 200 ms timeout). Veto's own per-platform daily accounting remains available via `veto_rate_status` / `veto_snapshot`.
432
+ - **First-run statusline nudge.** Until the statusline is installed, Veto surfaces a one-line offer to the agent via the MCP `instructions` field, so the feature is discoverable instead of hidden behind a command. Consent-preserving (never edits `settings.json` without the user agreeing) and self-resolving (the nudge disappears once installed).
433
+ - **`veto statusline print --capture <file>`.** Diagnostic aid that appends the raw Claude Code payload alongside the rendered line, so the live gauges can be verified against the values the client actually sent. Off by default; best-effort and never blocks the render.
434
+
420
435
  ### 2.6.0
421
436
  - **`veto statusline` — a compact Veto line under any AI CLI prompt.** `veto statusline install` wires a `statusLine` command into Claude Code's settings.json (backed up; `uninstall` restores it byte-for-byte). The `print` hot path is read-only, fast, and crash-proof — it renders e.g. `⬡ veto GREEN · router 94% · claude 42% · mem 15` and degrades to a neutral `⬡ veto` if the DB is missing or locked. Lives in the CLI so every Veto user gets it in any terminal, not just the VS Code HUD.
422
437
  - **`veto_snapshot` — one-call editor/HUD aggregate.** Returns `{ session, council, routerTop, rate, memoryCount, health }` in a single read-only call, so editor integrations (veto-vscode) can stop reading internal tables directly. Tool count is now **93**.
@@ -108,7 +108,7 @@ function buildContinueResult(session, now) {
108
108
  }
109
109
  // ─── Platform Setup ───────────────────────────────────────────────────────────
110
110
  export function getPlatformSetup(platform, vetoServerPath) {
111
- const mcpEntry = { command: 'npx', args: ['-y', '--package', '@jigyasudham/veto', 'veto-server'] };
111
+ const mcpEntry = { command: 'npx', args: ['-y', '--package', '@jigyasudham/veto@latest', 'veto-server'] };
112
112
  // ── Windsurf ────────────────────────────────────────────────────────────────
113
113
  if (platform === 'windsurf') {
114
114
  return {
@@ -163,7 +163,7 @@ export function getPlatformSetup(platform, vetoServerPath) {
163
163
  },
164
164
  setup_steps: [
165
165
  '1. Create ~/.aws/amazonq/mcp.json (global) or .amazonq/mcp.json (project-local):',
166
- ' { "mcpServers": { "veto": { "command": "npx", "args": ["-y", "--package", "@jigyasudham/veto", "veto-server"] } } }',
166
+ ' { "mcpServers": { "veto": { "command": "npx", "args": ["-y", "--package", "@jigyasudham/veto@latest", "veto-server"] } } }',
167
167
  '2. Restart Amazon Q Developer (VS Code extension or CLI)',
168
168
  '3. Verify: call veto_status — should return { "status": "running" }',
169
169
  'Tip: project-local .amazonq/mcp.json takes precedence over global ~/.aws/amazonq/mcp.json.',
@@ -201,7 +201,7 @@ export function getPlatformSetup(platform, vetoServerPath) {
201
201
  mcp_config: { mcpServers: { veto: mcpEntry }, config_path: 'Settings > Tools > MCP Servers' },
202
202
  setup_steps: [
203
203
  '1. Open JetBrains IDE Settings > Tools > MCP Servers',
204
- '2. Add a new server using stdio. Command: npx, Args: -y --package @jigyasudham/veto veto-server',
204
+ '2. Add a new server using stdio. Command: npx, Args: -y --package @jigyasudham/veto@latest veto-server',
205
205
  '3. Apply and restart the AI Assistant chat',
206
206
  '4. Verify: call veto_status — should return { "status": "running" }',
207
207
  ],
@@ -217,7 +217,7 @@ export function getPlatformSetup(platform, vetoServerPath) {
217
217
  claude: {
218
218
  configPath: '~/.claude/settings.json (managed by `claude mcp add`)',
219
219
  configKey: 'mcpServers',
220
- installCmd: 'claude mcp add veto -s user -- npx -y --package @jigyasudham/veto veto-server',
220
+ installCmd: 'claude mcp add veto -s user -- npx -y --package @jigyasudham/veto@latest veto-server',
221
221
  notes: [
222
222
  'Claude Code manages MCPs via `claude mcp add`, NOT via mcp_servers.json.',
223
223
  'The -s user flag is required — without it, the MCP is project-scoped and disappears in new windows.',
@@ -238,7 +238,7 @@ export function getPlatformSetup(platform, vetoServerPath) {
238
238
  antigravity: {
239
239
  configPath: '~/.gemini/antigravity-cli/mcp_config.json',
240
240
  configKey: 'mcpServers',
241
- installCmd: 'npm install -g @jigyasudham/veto',
241
+ installCmd: 'npx @jigyasudham/veto@latest init',
242
242
  notes: [
243
243
  'Antigravity CLI is the official successor to Gemini CLI.',
244
244
  'It stores MCP config in ~/.gemini/antigravity-cli/mcp_config.json.',
@@ -248,10 +248,10 @@ export function getPlatformSetup(platform, vetoServerPath) {
248
248
  codex: {
249
249
  configPath: '~/.codex/config.toml (managed by `codex mcp add`)',
250
250
  configKey: 'mcp_servers.veto',
251
- installCmd: 'codex mcp add veto -- npx -y --package @jigyasudham/veto veto-server',
251
+ installCmd: 'codex mcp add veto -- npx -y --package @jigyasudham/veto@latest veto-server',
252
252
  notes: [
253
253
  'Codex CLI stores MCP servers in config.toml under [mcp_servers.name], NOT in config.json.',
254
- 'Use `codex mcp add veto -- npx -y --package @jigyasudham/veto veto-server` to register.',
254
+ 'Use `codex mcp add veto -- npx -y --package @jigyasudham/veto@latest veto-server` to register.',
255
255
  'On Windows, replace `npx` with `npx.cmd` — the Rust binary cannot resolve bare npx.',
256
256
  'Verify registration with `codex mcp list` — veto should appear as enabled.',
257
257
  'ChatGPT web app does NOT support MCP — Codex CLI is the only OpenAI option.',
@@ -260,23 +260,23 @@ export function getPlatformSetup(platform, vetoServerPath) {
260
260
  };
261
261
  const cfg = configs[platform] ?? configs['claude'];
262
262
  const claudeSteps = [
263
- `1. Run: claude mcp add veto -s user -- npx -y --package @jigyasudham/veto veto-server`,
263
+ `1. Run: claude mcp add veto -s user -- npx -y --package @jigyasudham/veto@latest veto-server`,
264
264
  ` The -s user flag makes Veto available in ALL Claude Code windows and projects.`,
265
265
  `2. Fully restart Claude Code (quit and reopen — not just reload window)`,
266
266
  `3. Verify: call veto_status — should return { "status": "running" }`,
267
267
  ` Tip: run this once and it persists globally. No need to re-run per project.`,
268
268
  ];
269
269
  const antigravitySteps = [
270
- `1. Install Veto: npm install -g @jigyasudham/veto`,
271
- `2. Add to mcp_config.json: ~/.gemini/antigravity-cli/mcp_config.json`,
272
- ` "veto": { "command": "npx", "args": ["-y", "@jigyasudham/veto", "veto-server"] }`,
270
+ `1. Run: npx @jigyasudham/veto@latest init (auto-writes ~/.gemini/antigravity-cli/mcp_config.json)`,
271
+ `2. Or add it manually to ~/.gemini/antigravity-cli/mcp_config.json:`,
272
+ ` "veto": { "command": "npx", "args": ["-y", "--package", "@jigyasudham/veto@latest", "veto-server"] }`,
273
273
  `3. Fully restart Antigravity CLI (agy)`,
274
274
  `4. Verify: call veto_status — should return { "status": "running" }`,
275
275
  ];
276
276
  const codexSteps = [
277
- `1. Run: codex mcp add veto -- npx -y --package @jigyasudham/veto veto-server`,
277
+ `1. Run: codex mcp add veto -- npx -y --package @jigyasudham/veto@latest veto-server`,
278
278
  ` On Windows, use npx.cmd instead of npx (Codex Rust binary requires the .cmd extension).`,
279
- ` Windows: codex mcp add veto -- npx.cmd -y --package @jigyasudham/veto veto-server`,
279
+ ` Windows: codex mcp add veto -- npx.cmd -y --package @jigyasudham/veto@latest veto-server`,
280
280
  `2. Verify registration: codex mcp list (veto should appear as enabled)`,
281
281
  `3. Fully restart Codex CLI`,
282
282
  `4. Verify: call veto_status — should return { "status": "running" }`,
@@ -290,8 +290,8 @@ export function getPlatformSetup(platform, vetoServerPath) {
290
290
  ];
291
291
  const codexMcpConfig = {
292
292
  toml_path: '~/.codex/config.toml',
293
- toml_entry: '[mcp_servers.veto]\ncommand = \'npx.cmd\' # Windows; use \'npx\' on Linux/Mac\nargs = [\'-y\', \'--package\', \'@jigyasudham/veto\', \'veto-server\']',
294
- preferred_method: 'codex mcp add veto -- npx.cmd -y --package @jigyasudham/veto veto-server',
293
+ toml_entry: '[mcp_servers.veto]\ncommand = \'npx.cmd\' # Windows; use \'npx\' on Linux/Mac\nargs = [\'-y\', \'--package\', \'@jigyasudham/veto@latest\', \'veto-server\']',
294
+ preferred_method: 'codex mcp add veto -- npx.cmd -y --package @jigyasudham/veto@latest veto-server',
295
295
  warning: 'config.json mcpServers key is ignored by Codex CLI — use config.toml only',
296
296
  };
297
297
  return {
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/adapters/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/adapters/index.ts"],"names":[],"mappings":"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"}
@@ -1,8 +1,9 @@
1
1
  export interface StatuslineData {
2
2
  verdict: 'GREEN' | 'YELLOW' | 'RED' | null;
3
3
  routerPct: number | null;
4
- platform: string | null;
5
- ratePct: number | null;
4
+ contextPct: number | null;
5
+ rate5hPct: number | null;
6
+ rate7dPct: number | null;
6
7
  memCount: number | null;
7
8
  }
8
9
  export declare function readStatuslineData(): StatuslineData;
@@ -11,7 +12,27 @@ export interface ComposeOptions {
11
12
  ascii?: boolean;
12
13
  }
13
14
  export declare function composeStatusline(data: StatuslineData, opts?: ComposeOptions): string;
14
- export declare function printStatusline(opts?: ComposeOptions): void;
15
+ export interface ClaudeStatusInput {
16
+ context_window?: {
17
+ used_percentage?: number | null;
18
+ } | null;
19
+ rate_limits?: {
20
+ five_hour?: {
21
+ used_percentage?: number | null;
22
+ } | null;
23
+ seven_day?: {
24
+ used_percentage?: number | null;
25
+ } | null;
26
+ } | null;
27
+ }
28
+ export interface ClaudeLiveData {
29
+ contextPct: number | null;
30
+ rate5hPct: number | null;
31
+ rate7dPct: number | null;
32
+ }
33
+ export declare function parseClaudeInput(raw: string): ClaudeLiveData;
34
+ export declare function parseClaudeContextPct(raw: string): number | null;
35
+ export declare function printStatusline(opts?: ComposeOptions, capturePath?: string): Promise<void>;
15
36
  export interface InstallResult {
16
37
  ok: boolean;
17
38
  message: string;
@@ -23,9 +44,11 @@ export declare function installStatusline(client?: string, opts?: {
23
44
  dryRun?: boolean;
24
45
  }): InstallResult;
25
46
  export declare function uninstallStatusline(client?: string): InstallResult;
47
+ export declare function isStatuslineInstalled(client?: string): boolean;
26
48
  export declare function statuslineStatusInfo(client?: string): {
27
49
  installed: boolean;
28
50
  settingsPath: string | null;
29
51
  sample: string;
30
52
  };
53
+ export declare function statuslineSetupInstruction(client?: string): string | undefined;
31
54
  //# sourceMappingURL=statusline.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"statusline.d.ts","sourceRoot":"","sources":["../../src/cli/statusline.ts"],"names":[],"mappings":"AA0BA,MAAM,WAAW,cAAc;IAC7B,OAAO,EAAE,OAAO,GAAG,QAAQ,GAAG,KAAK,GAAG,IAAI,CAAC;IAC3C,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;CACzB;AAqBD,wBAAgB,kBAAkB,IAAI,cAAc,CAuBnD;AA8DD,MAAM,WAAW,cAAc;IAC7B,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB;AAUD,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,cAAc,EAAE,IAAI,GAAE,cAAmB,GAAG,MAAM,CAgCzF;AAGD,wBAAgB,eAAe,CAAC,IAAI,GAAE,cAAmB,GAAG,IAAI,CAQ/D;AAkCD,MAAM,WAAW,aAAa;IAC5B,EAAE,EAAE,OAAO,CAAC;IACZ,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,wBAAgB,iBAAiB,CAAC,MAAM,SAAW,EAAE,IAAI,GAAE;IAAE,KAAK,CAAC,EAAE,OAAO,CAAC;IAAC,MAAM,CAAC,EAAE,OAAO,CAAA;CAAO,GAAG,aAAa,CA0DpH;AAED,wBAAgB,mBAAmB,CAAC,MAAM,SAAW,GAAG,aAAa,CA4CpE;AAED,wBAAgB,oBAAoB,CAAC,MAAM,SAAW,GAAG;IAAE,SAAS,EAAE,OAAO,CAAC;IAAC,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAY3H"}
1
+ {"version":3,"file":"statusline.d.ts","sourceRoot":"","sources":["../../src/cli/statusline.ts"],"names":[],"mappings":"AAyBA,MAAM,WAAW,cAAc;IAC7B,OAAO,EAAE,OAAO,GAAG,QAAQ,GAAG,KAAK,GAAG,IAAI,CAAC;IAC3C,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;CACzB;AAqBD,wBAAgB,kBAAkB,IAAI,cAAc,CAuBnD;AA4CD,MAAM,WAAW,cAAc;IAC7B,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB;AAUD,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,cAAc,EAAE,IAAI,GAAE,cAAmB,GAAG,MAAM,CAoCzF;AAOD,MAAM,WAAW,iBAAiB;IAChC,cAAc,CAAC,EAAE;QAAE,eAAe,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;KAAE,GAAG,IAAI,CAAC;IAC5D,WAAW,CAAC,EAAE;QACZ,SAAS,CAAC,EAAE;YAAE,eAAe,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;SAAE,GAAG,IAAI,CAAC;QACvD,SAAS,CAAC,EAAE;YAAE,eAAe,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;SAAE,GAAG,IAAI,CAAC;KACxD,GAAG,IAAI,CAAC;CACV;AAED,MAAM,WAAW,cAAc;IAC7B,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;CAC1B;AAUD,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,MAAM,GAAG,cAAc,CAW5D;AAGD,wBAAgB,qBAAqB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAEhE;AA+BD,wBAAsB,eAAe,CAAC,IAAI,GAAE,cAAmB,EAAE,WAAW,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAiCpG;AAkCD,MAAM,WAAW,aAAa;IAC5B,EAAE,EAAE,OAAO,CAAC;IACZ,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,wBAAgB,iBAAiB,CAAC,MAAM,SAAW,EAAE,IAAI,GAAE;IAAE,KAAK,CAAC,EAAE,OAAO,CAAC;IAAC,MAAM,CAAC,EAAE,OAAO,CAAA;CAAO,GAAG,aAAa,CA0DpH;AAED,wBAAgB,mBAAmB,CAAC,MAAM,SAAW,GAAG,aAAa,CA4CpE;AAID,wBAAgB,qBAAqB,CAAC,MAAM,SAAW,GAAG,OAAO,CAShE;AAED,wBAAgB,oBAAoB,CAAC,MAAM,SAAW,GAAG;IAAE,SAAS,EAAE,OAAO,CAAC;IAAC,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAK3H;AAQD,wBAAgB,0BAA0B,CAAC,MAAM,SAAW,GAAG,MAAM,GAAG,SAAS,CAWhF"}
@@ -10,16 +10,15 @@
10
10
  // ANY problem — missing DB, locked DB (WAL / SQLITE_BUSY), bad row — it prints a
11
11
  // neutral `⬡ veto` and exits 0. It never throws and never blocks the prompt.
12
12
  import { createRequire } from 'node:module';
13
- import { existsSync, readFileSync, writeFileSync, mkdirSync, unlinkSync } from 'node:fs';
13
+ import { existsSync, readFileSync, writeFileSync, mkdirSync, unlinkSync, appendFileSync } from 'node:fs';
14
14
  import { join, dirname } from 'node:path';
15
15
  import { homedir } from 'node:os';
16
16
  import { getDbPath, getDb } from '../memory/local.js';
17
- import { getConfig } from '../memory/config.js';
18
17
  // node:sqlite is a Node 22.5+ built-in — use createRequire so bundlers skip it.
19
18
  const _require = createRequire(import.meta.url);
20
19
  const DbSync = _require('node:sqlite').DatabaseSync;
21
20
  const EMPTY = {
22
- verdict: null, routerPct: null, platform: null, ratePct: null, memCount: null,
21
+ verdict: null, routerPct: null, contextPct: null, rate5hPct: null, rate7dPct: null, memCount: null,
23
22
  };
24
23
  // Open the veto DB read-only. Returns null if it can't (missing/locked/corrupt).
25
24
  function openReadOnly(path) {
@@ -90,27 +89,11 @@ function queryStatusline(db) {
90
89
  }
91
90
  }
92
91
  catch { /* segment off */ }
93
- try {
94
- const row = db.prepare('SELECT platform FROM sessions ORDER BY created_at DESC LIMIT 1').get();
95
- if (row?.platform)
96
- data.platform = row.platform;
97
- }
98
- catch { /* segment off */ }
99
- // Rate % for the active platform today — mirrors router/rate-monitor semantics
100
- // (min(100, round(tokens / dailyBudget * 100))).
101
- if (data.platform) {
102
- try {
103
- const today = new Date().toISOString().slice(0, 10);
104
- const row = db.prepare('SELECT token_count FROM rate_usage WHERE platform = ? AND date_key = ?').get(data.platform, today);
105
- const tokens = row?.token_count ?? 0;
106
- const budgets = getConfig().dailyTokenBudget;
107
- const budget = budgets[data.platform];
108
- if (budget && budget > 0) {
109
- data.ratePct = Math.min(100, Math.round((tokens / budget) * 100));
110
- }
111
- }
112
- catch { /* segment off */ }
113
- }
92
+ // NOTE: live context-window usage (data.contextPct) is intentionally NOT read
93
+ // here it comes from the JSON Claude Code pipes to `statusline print` on stdin,
94
+ // not from the DB. The old "platform N%" segment read rate_usage.token_count,
95
+ // which only Veto's own tools increment, so it sat frozen during normal use. That
96
+ // segment was removed; printStatusline() overlays the real per-render number.
114
97
  try {
115
98
  const row = db.prepare('SELECT COUNT(*) AS n FROM knowledge_base').get();
116
99
  if (typeof row?.n === 'number')
@@ -141,12 +124,19 @@ export function composeStatusline(data, opts = {}) {
141
124
  if (data.routerPct !== null) {
142
125
  segments.push(`router ${data.routerPct}%`);
143
126
  }
144
- if (data.platform && data.ratePct !== null) {
145
- // Color the rate % using the same thresholds as rate-monitor (warn ≥70, crit ≥90).
146
- const label = `${data.platform} ${data.ratePct}%`;
147
- const code = data.ratePct >= 90 ? ANSI.red : data.ratePct >= 70 ? ANSI.yellow : '';
148
- segments.push(code ? paint(label, code) : label);
149
- }
127
+ // Live "headroom" gauges from Claude Code's stdin payload. All three warn as they
128
+ // fill up yellow ≥70, red ≥90 since each is a budget you're consuming.
129
+ const gauge = (prefix, pct) => {
130
+ const label = `${prefix} ${pct}%`;
131
+ const code = pct >= 90 ? ANSI.red : pct >= 70 ? ANSI.yellow : '';
132
+ return code ? paint(label, code) : label;
133
+ };
134
+ if (data.contextPct !== null)
135
+ segments.push(gauge('ctx', data.contextPct)); // context-window used
136
+ if (data.rate5hPct !== null)
137
+ segments.push(gauge('5h', data.rate5hPct)); // 5-hour rate limit used
138
+ if (data.rate7dPct !== null)
139
+ segments.push(gauge('7d', data.rate7dPct)); // weekly rate limit used
150
140
  if (data.memCount !== null) {
151
141
  segments.push(`mem ${data.memCount}`);
152
142
  }
@@ -154,16 +144,112 @@ export function composeStatusline(data, opts = {}) {
154
144
  return head; // neutral fallback
155
145
  return `${head} ${segments.join(' · ')}`;
156
146
  }
157
- // The hot path: read + render + print. Never throws, always exits 0.
158
- export function printStatusline(opts = {}) {
147
+ // Coerce a payload percentage to a clean 0..100 integer, or null for anything
148
+ // unexpected (missing, null early in the session / right after /compact, NaN).
149
+ function pctOrNull(v) {
150
+ return typeof v === 'number' && Number.isFinite(v) ? Math.max(0, Math.min(100, Math.round(v))) : null;
151
+ }
152
+ // Parse all live gauges from the stdin payload in one pass. Never throws — bad/empty
153
+ // JSON yields all-null so every segment simply drops rather than showing a wrong value.
154
+ export function parseClaudeInput(raw) {
155
+ try {
156
+ const j = JSON.parse(raw);
157
+ return {
158
+ contextPct: pctOrNull(j?.context_window?.used_percentage),
159
+ rate5hPct: pctOrNull(j?.rate_limits?.five_hour?.used_percentage),
160
+ rate7dPct: pctOrNull(j?.rate_limits?.seven_day?.used_percentage),
161
+ };
162
+ }
163
+ catch {
164
+ return { contextPct: null, rate5hPct: null, rate7dPct: null };
165
+ }
166
+ }
167
+ // Focused helper kept for callers that only need context usage.
168
+ export function parseClaudeContextPct(raw) {
169
+ return parseClaudeInput(raw).contextPct;
170
+ }
171
+ // Read the stdin payload Claude Code sends. Crash-proof and never blocks the prompt:
172
+ // returns null immediately when run from a TTY (manual invocation) and bails after a
173
+ // short timeout if no data arrives. Claude Code closes stdin after writing, so the
174
+ // 'end' path is the normal case.
175
+ function readStdinPayload(timeoutMs = 200) {
176
+ return new Promise((resolve) => {
177
+ const stdin = process.stdin;
178
+ if (stdin.isTTY) {
179
+ resolve(null);
180
+ return;
181
+ }
182
+ let data = '';
183
+ let settled = false;
184
+ const done = (v) => { if (!settled) {
185
+ settled = true;
186
+ resolve(v);
187
+ } };
188
+ const timer = setTimeout(() => done(null), timeoutMs);
189
+ timer.unref?.();
190
+ try {
191
+ stdin.setEncoding('utf8');
192
+ stdin.on('data', (c) => { data += c; });
193
+ stdin.on('end', () => { clearTimeout(timer); done(data || null); });
194
+ stdin.on('error', () => { clearTimeout(timer); done(null); });
195
+ }
196
+ catch {
197
+ clearTimeout(timer);
198
+ done(null);
199
+ }
200
+ });
201
+ }
202
+ // The hot path: read DB + live stdin, render, print. Never throws, always exits 0.
203
+ // `capturePath` (the `--capture <file>` flag) is a verification aid: it appends the
204
+ // raw payload Claude Code sent and the line we rendered, so you can diff the ACTUAL
205
+ // context_window.used_percentage against the displayed `ctx N%`. Never on by default.
206
+ export async function printStatusline(opts = {}, capturePath) {
207
+ let data;
208
+ try {
209
+ data = readStatuslineData();
210
+ }
211
+ catch {
212
+ data = { ...EMPTY };
213
+ }
214
+ let raw = null;
215
+ try {
216
+ raw = await readStdinPayload();
217
+ if (raw)
218
+ data = { ...data, ...parseClaudeInput(raw) };
219
+ }
220
+ catch { /* live segments stay null */ }
159
221
  let line;
160
222
  try {
161
- line = composeStatusline(readStatuslineData(), opts);
223
+ line = composeStatusline(data, opts);
162
224
  }
163
225
  catch {
164
226
  line = composeStatusline(EMPTY, opts);
165
227
  }
166
- process.stdout.write(line + '\n');
228
+ if (capturePath) {
229
+ // Best-effort, never blocks or crashes the render.
230
+ try {
231
+ const actual = raw ? (() => { try {
232
+ return JSON.parse(raw).context_window?.used_percentage ?? null;
233
+ }
234
+ catch {
235
+ return null;
236
+ } })() : null;
237
+ appendFileSync(capturePath, `${new Date().toISOString()}\tactual_used_percentage=${actual}\trendered=${JSON.stringify(line)}\tpayload=${raw ?? '<none>'}\n`, 'utf8');
238
+ }
239
+ catch { /* capture is diagnostic only */ }
240
+ }
241
+ // Flush before returning so the caller can exit immediately without truncating
242
+ // output. A statusLine command runs on every prompt render; the process must not
243
+ // linger holding an open stdin handle if the parent keeps the pipe open (the line
244
+ // still prints on time regardless — see the 200ms timeout in readStdinPayload).
245
+ await new Promise((resolve) => {
246
+ try {
247
+ process.stdout.write(line + '\n', () => resolve());
248
+ }
249
+ catch {
250
+ resolve();
251
+ }
252
+ });
167
253
  }
168
254
  // Resolve the settings.json for a client. Only Claude Code exposes a documented
169
255
  // `statusLine` command hook today; others are gated behind --client as a stretch.
@@ -289,19 +375,44 @@ export function uninstallStatusline(client = 'claude') {
289
375
  }
290
376
  return { ok: true, changed: false, message: `Veto statusline was not installed for ${target.name}.` };
291
377
  }
378
+ // Cheap, DB-free "is our statusLine wired into settings.json?" check. Safe to call
379
+ // at server startup — never throws, never opens the DB.
380
+ export function isStatuslineInstalled(client = 'claude') {
381
+ const target = resolveClient(client);
382
+ if (!target || !existsSync(target.settingsPath))
383
+ return false;
384
+ try {
385
+ const settings = JSON.parse(readFileSync(target.settingsPath, 'utf8'));
386
+ return isOurStatusLine(settings.statusLine);
387
+ }
388
+ catch {
389
+ return false;
390
+ }
391
+ }
292
392
  export function statuslineStatusInfo(client = 'claude') {
293
393
  const target = resolveClient(client);
294
394
  const sample = composeStatusline(readStatuslineData());
295
395
  if (!target)
296
396
  return { installed: false, settingsPath: null, sample };
297
- let installed = false;
298
- if (existsSync(target.settingsPath)) {
299
- try {
300
- const settings = JSON.parse(readFileSync(target.settingsPath, 'utf8'));
301
- installed = isOurStatusLine(settings.statusLine);
302
- }
303
- catch { /* installed stays false */ }
304
- }
305
- return { installed, settingsPath: target.settingsPath, sample };
397
+ return { installed: isStatuslineInstalled(client), settingsPath: target.settingsPath, sample };
398
+ }
399
+ // First-run setup nudge surfaced to the agent through the MCP server `instructions`
400
+ // field. An MCP server speaks JSON-RPC over stdio — it can't print a `[y/N]` prompt
401
+ // or read a keystroke — so the protocol-correct way to "ask on first connect" is to
402
+ // hand the offer to the agent, which asks the user and runs the install on consent.
403
+ // Returns undefined once the statusline is installed, so the nudge self-resolves and
404
+ // stops appearing. We never edit settings.json without the user agreeing.
405
+ export function statuslineSetupInstruction(client = 'claude') {
406
+ if (isStatuslineInstalled(client))
407
+ return undefined;
408
+ return [
409
+ 'SETUP TIP — Veto status line (mention once per session; drop it if the user declines).',
410
+ 'Veto ships an always-on status line for Claude Code that renders beneath the prompt',
411
+ '(latest council verdict · top router-pattern confidence · daily token-budget % · memory',
412
+ 'entry count). It is NOT yet enabled in this install. If the user would like it, offer to',
413
+ 'run `veto statusline install` for them — it backs up settings.json and is reversible with',
414
+ '`veto statusline uninstall`, and the line appears after the next CLI restart. Do not',
415
+ 'install it unless the user agrees.',
416
+ ].join(' ');
306
417
  }
307
418
  //# sourceMappingURL=statusline.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"statusline.js","sourceRoot":"","sources":["../../src/cli/statusline.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"statusline.js","sourceRoot":"","sources":["../../src/cli/statusline.ts"],"names":[],"mappings":"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"}