prompt-hook: make the injection cap configurable and allow a nudge-only mode
I maintainer di solito rispondono entro 1 giorno
Nessuno ha ancora preso questa issue.
- #2572 di @mitunmanav — chiusa senza merge
Valutazione
- Difficoltà
- 4/5
- Tempo stimato
- 3-5 giorni
- Idoneità per principianti
- 48/100
- Tipo di issue
- Funzionalità
- Chiarezza
- Abbastanza chiara
- Stato di attività
- Attiva
- Stack tecnologico
- c
- Ambito
- ai-infra-agents
Direzione di ricerca
Start by locating where PROMPT_HOOK_INJECTION_MAX is defined and how the prompt hook selects its output tier; inspect the existing environment-variable handling and tests for the hook. Compare the two proposed approaches and check related issues #1282, #1694, #2184, #914, and #1279 before choosing scope. Done means users can configure a lower cap or select nudge-only output, with tests covering the default and behavior.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
Problem
PROMPT_HOOK_INJECTION_MAX is hardcoded (9,000 chars in 1.6.2, 16,000 before #1694). The only user-facing control is the kill-switch (CODEGRAPH_NO_PROMPT_HOOK=1), so the choice is all or nothing.
On Claude Code, hook output stays in the conversation and is re-read from cache on every later model call until the next compaction. A full-explore injection therefore costs its size multiplied by the number of calls that follow it, not just once.
What I measured
One long Claude Code session on Windows (v1.5.0, a TypeScript monorepo, prompts mostly in Spanish), counted from the session transcript:
| Metric | Value |
|---|---|
| Model calls | 2,256 |
| User prompts | 226 |
| prompt-hook injections | 119 |
| Compactions | 4 (about 450 calls per segment) |
In this session, a large share of the injections were not related to the prompt. For example, a prompt asking to read a blog post about token usage injected the source of unrelated UI components.
1.6.1 and 1.6.2 already remove three of the triggers I saw: <task-notification> (#1832), <agent-message> hand-backs (#2184) and everyday "como" (#1654). Thanks for those.
The new 9,000-char cap fixes #1694 by keeping the output inline. A side effect is that each full injection now enters the context whole. In 1.5.0, oversized output was persisted to a file and only a 2 KB preview reached the model. For users whose prompts often pass the gate, the total context cost per session can go up even as the number of injections goes down.
Proposal
Either of these would let users choose the trade-off without turning the hook off:
CODEGRAPH_PROMPT_HOOK_MAX_CHARS, defaulting to the current 9,000 and clamped to it, so users can lower the cap (for example to 3,000).CODEGRAPH_PROMPT_HOOK_MODE=nudge, which always uses the existing medium-tier output: a short list of matching symbols plus the "call codegraph_explore" line. The agent then pulls source only when it needs it.
Option 2 matches the hook's own design, where the agent writes the explore query. It also keeps the hook useful as a reminder to query the graph, which is the behavior that #914 and #1279 report as missing.
Related: #1282 (output budget for explore), #1694, #2184.
Environment
- codegraph 1.5.0 at the time of measurement, now 1.6.2
- Claude Code on Windows 11, Git Bash
- Lingua principale
- C
- Stelle
- 73.2k
- Fork
- 4.7k
- Merge medio
- 3h 31m
- PR unite (30g)
- 546
Preparare l'ambiente
Questo progetto non fornisce container di sviluppo, Dockerfile né guida per i contributori, quindi l'ambiente è a tuo carico: parti dal suo README e consulta la nostra guida al primo contributo per i passaggi generali.
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di colbymchenry/codegraph
-
A `../` entry in package.json `workspaces` makes a folder outside the project count as a workspace package, and a call gets linked to the wrong functionForse già presa Una pull request collegata a questa issue è aperta o già unita. Aperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
colbymchenry/codegraph#3093 ·
I maintainer di solito rispondono entro 1 giorno
-
Windows: npm-shim spawnSync missing windowsHide flashes a console window on every MCP server launchAperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 86/100
colbymchenry/codegraph#3054 · 1 commento ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 72/100
colbymchenry/codegraph#2974 ·
I maintainer di solito rispondono entro 1 giorno
-
[Security Vulnerabiliy] Vulnerable bundled `node.exe` detected (Node2Shell - CVE-2026-111497)Aperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 66/100
colbymchenry/codegraph#2959 · 2 commenti ·
I maintainer di solito rispondono entro 1 giorno
-
codegraph ui - does not workAperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 68/100
colbymchenry/codegraph#1900 · 2 commenti · 5 reazioni ·
I maintainer di solito rispondono entro 1 giorno
Tutte le issue di colbymchenry/codegraph
Issue simili
-
Status: Opened Type: Bug
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 85/100
I maintainer di solito rispondono entro 1 giorno
-
severity: low
Difficoltà 2/5 1-3 ore Idoneità per principianti 76/100
luainkernel/lunatik#2221 ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 70/100
FriendsofECCE/ECCE#731 ·
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 68/100
zephyrproject-rtos/zephyr#124160 ·
I maintainer di solito rispondono entro 3 giorni
-
bug
Difficoltà 2/5 1-3 ore Idoneità per principianti 85/100
davatorium/rofi#2347 ·