{"owner":"mksglu","repo":"context-mode","hasSkills":true,"hasMcp":false,"mcpConfig":null,"found":["CLAUDE.md"],"skills":{"CLAUDE.md":"# context-mode — MANDATORY routing rules\n\ncontext-mode MCP tools available. Rules protect context window from flooding. One unrouted command dumps 56 KB into context.\n\n## Think in Code — MANDATORY\n\nAnalyze/count/filter/compare/search/parse/transform data: **write code** via `ctx_execute(language, code)`, `console.log()` only the answer. Do NOT read raw data into context. PROGRAM the analysis, not COMPUTE it. Pure JavaScript — Node.js built-ins only (`fs`, `path`, `child_process`). `try/catch`, handle `null`/`undefined`. One script replaces ten tool calls.\n\n## BLOCKED — do NOT attempt\n\n### curl / wget — BLOCKED\nIntercepted and replaced with error. Do NOT retry.\nUse: `ctx_fetch_and_index(url, source)` or `ctx_execute(language: \"javascript\", code: \"const r = await fetch(...)\")`\n\n### Inline HTTP — BLOCKED\n`fetch('http`, `requests.get(`, `requests.post(`, `http.get(`, `http.request(` — intercepted. Do NOT retry.\nUse: `ctx_execute(language, code)` — only stdout enters context\n\n### WebFetch — BLOCKED\nUse: `ctx_fetch_and_index(url, source)` then `ctx_search(queries)`\n\n## REDIRECTED — use sandbox\n\n### Bash (>20 lines output)\nBash ONLY for: `git`, `mkdir`, `rm`, `mv`, `cd`, `ls`, `npm install`, `pip install`.\nOtherwise: `ctx_batch_execute(commands, queries)` or `ctx_execute(language: \"shell\", code: \"...\")`\n\n### Read (for analysis)\nReading to **Edit** → Read correct. Reading to **analyze/explore/summarize** → `ctx_execute_file(path, language, code)`.\n\n### Grep — may flood context\nUse `ctx_execute(language: \"shell\", code: \"grep ...\")` in sandbox.\n\n## Tool selection\n\n0. **MEMORY**: `ctx_search(sort: \"timeline\")` — after resume, check prior context before asking user.\n1. **GATHER**: `ctx_batch_execute(commands, queries)` — runs all commands, auto-indexes, returns search. ONE call replaces 30+. Each command: `{label: \"header\", command: \"...\"}`.\n2. **FOLLOW-UP**: `ctx_search(queries: [\"q1\", \"q2\", ...])` — all questions as array, ONE call (default relevance mode).\n3. **PROCESSING**: `ctx_execute(language, code)` | `ctx_execute_file(path, language, code)` — sandbox, only stdout enters context.\n4. **WEB**: `ctx_fetch_and_index(url, source)` then `ctx_search(queries)` — raw HTML never enters context.\n5. **INDEX**: `ctx_index(content, source)` — store in FTS5 for later search.\n\n## Parallel I/O batches\n\nFor multi-URL fetches or multi-API calls, **always** include `concurrency: N` (1-8):\n\n- `ctx_batch_execute(commands: [3+ network commands], concurrency: 5)` — gh, curl, dig, docker inspect, multi-region cloud queries\n- `ctx_fetch_and_index(requests: [{url, source}, ...], concurrency: 5)` — multi-URL batch fetch\n\n**Use concurrency 4-8** for I/O-bound work (network calls, API queries). **Keep concurrency 1** for CPU-bound (npm test, build, lint) or commands sharing state (ports, lock files, same-repo writes).\n\nGitHub API rate-limit: cap at 4 for `gh` calls.\n\n## Subagent routing\n\nRouting block auto-injected into subagent prompts. Bash-type subagents upgraded to general-purpose. No manual instruction needed.\n\n## Output\n\nWrite artifacts to FILES — never inline. Return: file path + 1-line description.\nDescriptive source labels for `ctx_search(source: \"label\")`.\n\n## Session Continuity\n\nSkills, roles, and decisions persist for the entire session. Do not abandon them as the conversation grows.\n\n## Memory\n\nSession history is persistent and searchable. On resume, search BEFORE asking the user:\n\n| Need | Command |\n|------|---------|\n| What were we working on? | `ctx_search(queries: [\"summary\"], source: \"compaction\", sort: \"timeline\")` |\n| What was the first request? | `ctx_search(queries: [\"prompt\"], source: \"user-prompt\", sort: \"timeline\")` |\n| What did we decide? | `ctx_search(queries: [\"decision\"], source: \"decision\", sort: \"timeline\")` |\n| What NOT to repeat? | `ctx_search(queries: [\"rejected\"], source: \"rejected-approach\")` |\n| What constraints exist? | `ctx_search(queries: [\"constraint\"], source: \"constraint\")` |\n\nDO NOT ask \"what were we working on?\" — SEARCH FIRST.\nIf search returns 0 results, proceed as a fresh session.\n\n## ctx commands\n\n| Command | Action |\n|---------|--------|\n| `ctx stats` | Call `ctx_stats` MCP tool, display full output verbatim |\n| `ctx doctor` | Call `ctx_doctor` MCP tool, run returned shell command, display as checklist |\n| `ctx upgrade` | Call `ctx_upgrade` MCP tool, run returned shell command, display as checklist |\n| `ctx purge` | Call `ctx_purge` MCP tool with confirm: true. Warns before wiping knowledge base. |\n\nAfter /clear or /compact: knowledge base and session stats preserved. Use `ctx purge` to start fresh.\n"},"files":{"CLAUDE.md":"# context-mode — MANDATORY routing rules\n\ncontext-mode MCP tools available. Rules protect context window from flooding. One unrouted command dumps 56 KB into context.\n\n## Think in Code — MANDATORY\n\nAnalyze/count/filter/compare/search/parse/transform data: **write code** via `ctx_execute(language, code)`, `console.log()` only the answer. Do NOT read raw data into context. PROGRAM the analysis, not COMPUTE it. Pure JavaScript — Node.js built-ins only (`fs`, `path`, `child_process`). `try/catch`, handle `null`/`undefined`. One script replaces ten tool calls.\n\n## BLOCKED — do NOT attempt\n\n### curl / wget — BLOCKED\nIntercepted and replaced with error. Do NOT retry.\nUse: `ctx_fetch_and_index(url, source)` or `ctx_execute(language: \"javascript\", code: \"const r = await fetch(...)\")`\n\n### Inline HTTP — BLOCKED\n`fetch('http`, `requests.get(`, `requests.post(`, `http.get(`, `http.request(` — intercepted. Do NOT retry.\nUse: `ctx_execute(language, code)` — only stdout enters context\n\n### WebFetch — BLOCKED\nUse: `ctx_fetch_and_index(url, source)` then `ctx_search(queries)`\n\n## REDIRECTED — use sandbox\n\n### Bash (>20 lines output)\nBash ONLY for: `git`, `mkdir`, `rm`, `mv`, `cd`, `ls`, `npm install`, `pip install`.\nOtherwise: `ctx_batch_execute(commands, queries)` or `ctx_execute(language: \"shell\", code: \"...\")`\n\n### Read (for analysis)\nReading to **Edit** → Read correct. Reading to **analyze/explore/summarize** → `ctx_execute_file(path, language, code)`.\n\n### Grep — may flood context\nUse `ctx_execute(language: \"shell\", code: \"grep ...\")` in sandbox.\n\n## Tool selection\n\n0. **MEMORY**: `ctx_search(sort: \"timeline\")` — after resume, check prior context before asking user.\n1. **GATHER**: `ctx_batch_execute(commands, queries)` — runs all commands, auto-indexes, returns search. ONE call replaces 30+. Each command: `{label: \"header\", command: \"...\"}`.\n2. **FOLLOW-UP**: `ctx_search(queries: [\"q1\", \"q2\", ...])` — all questions as array, ONE call (default relevance mode).\n3. **PROCESSING**: `ctx_execute(language, code)` | `ctx_execute_file(path, language, code)` — sandbox, only stdout enters context.\n4. **WEB**: `ctx_fetch_and_index(url, source)` then `ctx_search(queries)` — raw HTML never enters context.\n5. **INDEX**: `ctx_index(content, source)` — store in FTS5 for later search.\n\n## Parallel I/O batches\n\nFor multi-URL fetches or multi-API calls, **always** include `concurrency: N` (1-8):\n\n- `ctx_batch_execute(commands: [3+ network commands], concurrency: 5)` — gh, curl, dig, docker inspect, multi-region cloud queries\n- `ctx_fetch_and_index(requests: [{url, source}, ...], concurrency: 5)` — multi-URL batch fetch\n\n**Use concurrency 4-8** for I/O-bound work (network calls, API queries). **Keep concurrency 1** for CPU-bound (npm test, build, lint) or commands sharing state (ports, lock files, same-repo writes).\n\nGitHub API rate-limit: cap at 4 for `gh` calls.\n\n## Subagent routing\n\nRouting block auto-injected into subagent prompts. Bash-type subagents upgraded to general-purpose. No manual instruction needed.\n\n## Output\n\nWrite artifacts to FILES — never inline. Return: file path + 1-line description.\nDescriptive source labels for `ctx_search(source: \"label\")`.\n\n## Session Continuity\n\nSkills, roles, and decisions persist for the entire session. Do not abandon them as the conversation grows.\n\n## Memory\n\nSession history is persistent and searchable. On resume, search BEFORE asking the user:\n\n| Need | Command |\n|------|---------|\n| What were we working on? | `ctx_search(queries: [\"summary\"], source: \"compaction\", sort: \"timeline\")` |\n| What was the first request? | `ctx_search(queries: [\"prompt\"], source: \"user-prompt\", sort: \"timeline\")` |\n| What did we decide? | `ctx_search(queries: [\"decision\"], source: \"decision\", sort: \"timeline\")` |\n| What NOT to repeat? | `ctx_search(queries: [\"rejected\"], source: \"rejected-approach\")` |\n| What constraints exist? | `ctx_search(queries: [\"constraint\"], source: \"constraint\")` |\n\nDO NOT ask \"what were we working on?\" — SEARCH FIRST.\nIf search returns 0 results, proceed as a fresh session.\n\n## ctx commands\n\n| Command | Action |\n|---------|--------|\n| `ctx stats` | Call `ctx_stats` MCP tool, display full output verbatim |\n| `ctx doctor` | Call `ctx_doctor` MCP tool, run returned shell command, display as checklist |\n| `ctx upgrade` | Call `ctx_upgrade` MCP tool, run returned shell command, display as checklist |\n| `ctx purge` | Call `ctx_purge` MCP tool with confirm: true. Warns before wiping knowledge base. |\n\nAfter /clear or /compact: knowledge base and session stats preserved. Use `ctx purge` to start fresh.\n"},"items":[{"name":"CLAUDE.md","path":"CLAUDE.md","title":"CLAUDE.md","content":"# context-mode — MANDATORY routing rules\n\ncontext-mode MCP tools available. Rules protect context window from flooding. One unrouted command dumps 56 KB into context.\n\n## Think in Code — MANDATORY\n\nAnalyze/count/filter/compare/search/parse/transform data: **write code** via `ctx_execute(language, code)`, `console.log()` only the answer. Do NOT read raw data into context. PROGRAM the analysis, not COMPUTE it. Pure JavaScript — Node.js built-ins only (`fs`, `path`, `child_process`). `try/catch`, handle `null`/`undefined`. One script replaces ten tool calls.\n\n## BLOCKED — do NOT attempt\n\n### curl / wget — BLOCKED\nIntercepted and replaced with error. Do NOT retry.\nUse: `ctx_fetch_and_index(url, source)` or `ctx_execute(language: \"javascript\", code: \"const r = await fetch(...)\")`\n\n### Inline HTTP — BLOCKED\n`fetch('http`, `requests.get(`, `requests.post(`, `http.get(`, `http.request(` — intercepted. Do NOT retry.\nUse: `ctx_execute(language, code)` — only stdout enters context\n\n### WebFetch — BLOCKED\nUse: `ctx_fetch_and_index(url, source)` then `ctx_search(queries)`\n\n## REDIRECTED — use sandbox\n\n### Bash (>20 lines output)\nBash ONLY for: `git`, `mkdir`, `rm`, `mv`, `cd`, `ls`, `npm install`, `pip install`.\nOtherwise: `ctx_batch_execute(commands, queries)` or `ctx_execute(language: \"shell\", code: \"...\")`\n\n### Read (for analysis)\nReading to **Edit** → Read correct. Reading to **analyze/explore/summarize** → `ctx_execute_file(path, language, code)`.\n\n### Grep — may flood context\nUse `ctx_execute(language: \"shell\", code: \"grep ...\")` in sandbox.\n\n## Tool selection\n\n0. **MEMORY**: `ctx_search(sort: \"timeline\")` — after resume, check prior context before asking user.\n1. **GATHER**: `ctx_batch_execute(commands, queries)` — runs all commands, auto-indexes, returns search. ONE call replaces 30+. Each command: `{label: \"header\", command: \"...\"}`.\n2. **FOLLOW-UP**: `ctx_search(queries: [\"q1\", \"q2\", ...])` — all questions as array, ONE call (default relevance mode).\n3. **PROCESSING**: `ctx_execute(language, code)` | `ctx_execute_file(path, language, code)` — sandbox, only stdout enters context.\n4. **WEB**: `ctx_fetch_and_index(url, source)` then `ctx_search(queries)` — raw HTML never enters context.\n5. **INDEX**: `ctx_index(content, source)` — store in FTS5 for later search.\n\n## Parallel I/O batches\n\nFor multi-URL fetches or multi-API calls, **always** include `concurrency: N` (1-8):\n\n- `ctx_batch_execute(commands: [3+ network commands], concurrency: 5)` — gh, curl, dig, docker inspect, multi-region cloud queries\n- `ctx_fetch_and_index(requests: [{url, source}, ...], concurrency: 5)` — multi-URL batch fetch\n\n**Use concurrency 4-8** for I/O-bound work (network calls, API queries). **Keep concurrency 1** for CPU-bound (npm test, build, lint) or commands sharing state (ports, lock files, same-repo writes).\n\nGitHub API rate-limit: cap at 4 for `gh` calls.\n\n## Subagent routing\n\nRouting block auto-injected into subagent prompts. Bash-type subagents upgraded to general-purpose. No manual instruction needed.\n\n## Output\n\nWrite artifacts to FILES — never inline. Return: file path + 1-line description.\nDescriptive source labels for `ctx_search(source: \"label\")`.\n\n## Session Continuity\n\nSkills, roles, and decisions persist for the entire session. Do not abandon them as the conversation grows.\n\n## Memory\n\nSession history is persistent and searchable. On resume, search BEFORE asking the user:\n\n| Need | Command |\n|------|---------|\n| What were we working on? | `ctx_search(queries: [\"summary\"], source: \"compaction\", sort: \"timeline\")` |\n| What was the first request? | `ctx_search(queries: [\"prompt\"], source: \"user-prompt\", sort: \"timeline\")` |\n| What did we decide? | `ctx_search(queries: [\"decision\"], source: \"decision\", sort: \"timeline\")` |\n| What NOT to repeat? | `ctx_search(queries: [\"rejected\"], source: \"rejected-approach\")` |\n| What constraints exist? | `ctx_search(queries: [\"constraint\"], source: \"constraint\")` |\n\nDO NOT ask \"what were we working on?\" — SEARCH FIRST.\nIf search returns 0 results, proceed as a fresh session.\n\n## ctx commands\n\n| Command | Action |\n|---------|--------|\n| `ctx stats` | Call `ctx_stats` MCP tool, display full output verbatim |\n| `ctx doctor` | Call `ctx_doctor` MCP tool, run returned shell command, display as checklist |\n| `ctx upgrade` | Call `ctx_upgrade` MCP tool, run returned shell command, display as checklist |\n| `ctx purge` | Call `ctx_purge` MCP tool with confirm: true. Warns before wiping knowledge base. |\n\nAfter /clear or /compact: knowledge base and session stats preserved. Use `ctx purge` to start fresh.\n","category":"root","tokens":1151}]}