mirror of
https://github.com/ivuorinen/dotfiles.git
synced 2026-03-18 16:06:00 +00:00
chore(mise): update configs and add cleanup script documentation
Update tooling configs, shell settings, and editor configurations as part of the mise migration. Add companion documentation for the cleanup-old-version-managers script and remove unused fish completions.
This commit is contained in:
50
CLAUDE.md
50
CLAUDE.md
@@ -172,7 +172,9 @@ Yarn (v4.12.0) is the package manager. Do not use npm.
|
||||
|
||||
# context-mode — MANDATORY routing rules
|
||||
|
||||
You have context-mode MCP tools available. These rules are NOT optional — they protect your context window from flooding. A single unrouted command can dump 56 KB into context and waste the entire session.
|
||||
You have context-mode MCP tools available. These rules are NOT optional —
|
||||
they protect your context window from flooding.
|
||||
A single unrouted command can dump 56 KB into context and waste the entire session.
|
||||
|
||||
## BLOCKED commands — do NOT attempt these
|
||||
|
||||
@@ -183,7 +185,9 @@ Instead use:
|
||||
- `ctx_execute(language: "javascript", code: "const r = await fetch(...)")` to run HTTP calls in sandbox
|
||||
|
||||
### Inline HTTP — BLOCKED
|
||||
Any Bash command containing `fetch('http`, `requests.get(`, `requests.post(`, `http.get(`, or `http.request(` is intercepted and replaced with an error message. Do NOT retry with Bash.
|
||||
Any Bash command containing `fetch('http`, `requests.get(`, `requests.post(`,
|
||||
`http.get(`, or `http.request(` is intercepted and replaced with an error message.
|
||||
Do NOT retry with Bash.
|
||||
Instead use:
|
||||
- `ctx_execute(language, code)` to run HTTP calls in sandbox — only stdout enters context
|
||||
|
||||
@@ -202,33 +206,49 @@ For everything else, use:
|
||||
|
||||
### Read (for analysis)
|
||||
If you are reading a file to **Edit** it → Read is correct (Edit needs content in context).
|
||||
If you are reading to **analyze, explore, or summarize** → use `ctx_execute_file(path, language, code)` instead. Only your printed summary enters context. The raw file content stays in the sandbox.
|
||||
If you are reading to **analyze, explore, or summarize** →
|
||||
use `ctx_execute_file(path, language, code)` instead.
|
||||
Only your printed summary enters context. The raw file content stays in the sandbox.
|
||||
|
||||
### Grep (large results)
|
||||
Grep results can flood context. Use `ctx_execute(language: "shell", code: "grep ...")` to run searches in sandbox. Only your printed summary enters context.
|
||||
Grep results can flood context.
|
||||
Use `ctx_execute(language: "shell", code: "grep ...")` to run searches in sandbox.
|
||||
Only your printed summary enters context.
|
||||
|
||||
## Tool selection hierarchy
|
||||
|
||||
1. **GATHER**: `ctx_batch_execute(commands, queries)` — Primary tool. Runs all commands, auto-indexes output, returns search results. ONE call replaces 30+ individual calls.
|
||||
2. **FOLLOW-UP**: `ctx_search(queries: ["q1", "q2", ...])` — Query indexed content. Pass ALL questions as array in ONE call.
|
||||
3. **PROCESSING**: `ctx_execute(language, code)` | `ctx_execute_file(path, language, code)` — Sandbox execution. Only stdout enters context.
|
||||
4. **WEB**: `ctx_fetch_and_index(url, source)` then `ctx_search(queries)` — Fetch, chunk, index, query. Raw HTML never enters context.
|
||||
5. **INDEX**: `ctx_index(content, source)` — Store content in FTS5 knowledge base for later search.
|
||||
1. **GATHER**: `ctx_batch_execute(commands, queries)` — Primary tool.
|
||||
Runs all commands, auto-indexes output, returns search results.
|
||||
ONE call replaces 30+ individual calls.
|
||||
2. **FOLLOW-UP**: `ctx_search(queries: ["q1", "q2", ...])` —
|
||||
Query indexed content. Pass ALL questions as array in ONE call.
|
||||
3. **PROCESSING**: `ctx_execute(language, code)` |
|
||||
`ctx_execute_file(path, language, code)` —
|
||||
Sandbox execution. Only stdout enters context.
|
||||
4. **WEB**: `ctx_fetch_and_index(url, source)` then
|
||||
`ctx_search(queries)` — Fetch, chunk, index, query.
|
||||
Raw HTML never enters context.
|
||||
5. **INDEX**: `ctx_index(content, source)` —
|
||||
Store content in FTS5 knowledge base for later search.
|
||||
|
||||
## Subagent routing
|
||||
|
||||
When spawning subagents (Agent/Task tool), the routing block is automatically injected into their prompt. Bash-type subagents are upgraded to general-purpose so they have access to MCP tools. You do NOT need to manually instruct subagents about context-mode.
|
||||
When spawning subagents (Agent/Task tool), the routing block is automatically
|
||||
injected into their prompt. Bash-type subagents are upgraded to general-purpose
|
||||
so they have access to MCP tools.
|
||||
You do NOT need to manually instruct subagents about context-mode.
|
||||
|
||||
## Output constraints
|
||||
|
||||
- Keep responses under 500 words.
|
||||
- Write artifacts (code, configs, PRDs) to FILES — never return them as inline text. Return only: file path + 1-line description.
|
||||
- Write artifacts (code, configs, PRDs) to FILES — never return them
|
||||
as inline text. Return only: file path + 1-line description.
|
||||
- When indexing content, use descriptive source labels so others can `ctx_search(source: "label")` later.
|
||||
|
||||
## ctx commands
|
||||
|
||||
| Command | Action |
|
||||
|---------|--------|
|
||||
| `ctx stats` | Call the `ctx_stats` MCP tool and display the full output verbatim |
|
||||
| `ctx doctor` | Call the `ctx_doctor` MCP tool, run the returned shell command, display as checklist |
|
||||
| Command | Action |
|
||||
|---------------|---------------------------------------------------------------------------------------|
|
||||
| `ctx stats` | Call the `ctx_stats` MCP tool and display the full output verbatim |
|
||||
| `ctx doctor` | Call the `ctx_doctor` MCP tool, run the returned shell command, display as checklist |
|
||||
| `ctx upgrade` | Call the `ctx_upgrade` MCP tool, run the returned shell command, display as checklist |
|
||||
|
||||
Reference in New Issue
Block a user