{"id":43819726,"url":"https://github.com/ominiverdi/claude-depester","last_synced_at":"2026-02-06T01:33:06.692Z","repository":{"id":331857947,"uuid":"1132109908","full_name":"ominiverdi/claude-depester","owner":"ominiverdi","description":"Patches Claude Code CLI and VS Code extension to replace whimsical loading words with simple 'Thinking'.","archived":false,"fork":false,"pushed_at":"2026-01-27T23:25:59.000Z","size":224,"stargazers_count":15,"open_issues_count":1,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2026-01-28T12:51:13.905Z","etag":null,"topics":["claude","claude-code","cli-tool","nodejs","patch","vscode","vscode-extension","whimsical"],"latest_commit_sha":null,"homepage":"","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/ominiverdi.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":".github/FUNDING.yml","license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null},"funding":{"github":["ominiverdi"],"patreon":null,"open_collective":null,"ko_fi":null,"tidelift":null,"community_bridge":null,"liberapay":null,"issuehunt":null,"lfx_crowdfunding":null,"polar":null,"buy_me_a_coffee":null,"thanks_dev":null,"custom":null}},"created_at":"2026-01-11T10:50:48.000Z","updated_at":"2026-01-27T23:26:03.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/ominiverdi/claude-depester","commit_stats":null,"previous_names":["ominiverdi/claude-depester"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/ominiverdi/claude-depester","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ominiverdi%2Fclaude-depester","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ominiverdi%2Fclaude-depester/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ominiverdi%2Fclaude-depester/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ominiverdi%2Fclaude-depester/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ominiverdi","download_url":"https://codeload.github.com/ominiverdi/claude-depester/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ominiverdi%2Fclaude-depester/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":29143669,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-02-06T01:13:33.096Z","status":"ssl_error","status_checked_at":"2026-02-06T01:11:47.313Z","response_time":65,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["claude","claude-code","cli-tool","nodejs","patch","vscode","vscode-extension","whimsical"],"created_at":"2026-02-06T01:33:06.129Z","updated_at":"2026-02-06T01:33:06.678Z","avatar_url":"https://github.com/ominiverdi.png","language":"JavaScript","funding_links":["https://github.com/sponsors/ominiverdi"],"categories":[],"sub_categories":[],"readme":"# claude-depester\n\n[![npm version](https://img.shields.io/npm/v/claude-depester.svg)](https://www.npmjs.com/package/claude-depester)\n[![npm downloads](https://img.shields.io/npm/dm/claude-depester.svg)](https://www.npmjs.com/package/claude-depester)\n[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)\n\nPatches Claude Code CLI and VS Code extension to replace whimsical loading words with simple 'Thinking'.\n\nInstead of seeing \"Flibbertigibbeting\", \"Discombobulating\", \"Clauding\", etc., you'll see a clean \"Thinking\".\n\n\u003e **Last updated:** 2026-01-28 | **Tested with:** Claude Code 2.1.15 | **Platforms:** Linux, macOS, Windows\n\u003e\n\u003e v1.3.6: Add support for VS Code Remote SSH and Cursor Remote SSH (`.vscode-server`, `.cursor-server`)\n\n**CLI - Spinner:**\n\n![Thinking... instead of whimsical words](img/thinking.png)\n\n**CLI - Completion:**\n\n![Thought for Xs instead of Baked/Brewed/etc](img/thought.png)\n\n**VS Code Extension:**\n\n![VS Code extension also patched](img/vscode.png)\n\n## The Problem\n\nClaude Code displays random silly words while thinking:\n\n```\nFlibbertigibbeting...\nDiscombobulating...\nSmooshing...\nWibbling...\nClauding...\n```\n\nAnd after thinking completes, it shows completion messages like:\n\n```\nBaked for 42s\nBrewed for 15s\nChurned for 30s\n```\n\nThis tool replaces them with simple \"Thinking\" and \"Thought for Xs\".\n\n## Quick Start\n\n```bash\n# Preview changes first (recommended)\nnpx claude-depester --dry-run\n\n# Patch Claude Code\nnpx claude-depester\n```\n\nRestart Claude Code for changes to take effect.\n\n### Auto-patch after updates (recommended)\n\nAdd a shell wrapper that patches before each invocation:\n\n```bash\n# Add to your .bashrc or .zshrc\ncl() { npx claude-depester --all --silent --log ; claude \"$@\" ; }\n```\n\nThen use `cl` instead of `claude`. This ensures patching happens *before* Claude loads.\n\n## Features\n\n- **Patches spinner words** (\"Flibbertigibbeting...\" -\u003e \"Thinking...\")\n- **Patches completion verbs** (\"Baked for 42s\" -\u003e \"Thought for 42s\")\n- Works with native binaries (Bun-compiled) and npm installations\n- **Patches VS Code/VSCodium extension webview** (the UI that shows spinner text)\n- **Supports remote development** (VS Code Remote SSH, Cursor SSH)\n- Auto-detects your Claude Code installation\n- Creates backup before patching (can restore anytime)\n- Shell wrapper for reliable auto-patching before Claude loads\n- Content-based detection survives version updates\n- Cross-platform: Linux, macOS, Windows (WSL/Git Bash)\n\n## Commands\n\n| Command | Description |\n|---------|-------------|\n| `npx claude-depester` | Patch Claude Code |\n| `npx claude-depester --all` | Patch ALL installations (CLI + VS Code) |\n| `npx claude-depester --list` | List all found installations |\n| `npx claude-depester --dry-run` | Preview changes (no modifications) |\n| `npx claude-depester --check` | Check patch status |\n| `npx claude-depester --restore` | Restore original from backup |\n| `npx claude-depester --verbose` | Show detailed info |\n| `npx claude-depester --debug` | Show detailed debug info (for troubleshooting) |\n| `npx claude-depester --log` | Write results to `~/.claude/depester.log` |\n| `npx claude-depester --install-hook` | Auto-patch after updates |\n| `npx claude-depester --remove-hook` | Remove auto-patch hook |\n| `npx claude-depester --hook-status` | Check hook status |\n| `npx claude-depester --help` | Show help |\n\n## Supported Installation Methods\n\n### Linux\n| Method | Path | Status |\n|--------|------|--------|\n| Native binary | `~/.local/share/claude/versions/X.Y.Z` | Fully supported |\n| VS Code extension | `~/.vscode/extensions/anthropic.claude-code-*/` | Fully supported |\n| VS Code webview | `~/.vscode/extensions/.../webview/index.js` | Fully supported |\n| VSCodium extension | `~/.vscode-oss/extensions/anthropic.claude-code-*/` | Fully supported |\n| VS Code Remote (SSH) | `~/.vscode-server/extensions/anthropic.claude-code-*/` | Fully supported |\n| Cursor Remote (SSH) | `~/.cursor-server/extensions/anthropic.claude-code-*/` | Fully supported |\n| Local npm | `~/.claude/local/node_modules/@anthropic-ai/claude-code/` | Fully supported |\n| Global npm | `npm root -g`/@anthropic-ai/claude-code/ | Fully supported |\n\n### macOS\n| Method | Path | Status |\n|--------|------|--------|\n| Native binary | `~/.local/share/claude/versions/X.Y.Z` | Fully supported |\n| Native binary | `~/Library/Application Support/Claude/versions/X.Y.Z` | Fully supported |\n| VS Code extension | `~/.vscode/extensions/anthropic.claude-code-*/` | Fully supported |\n| VS Code webview | `~/.vscode/extensions/.../webview/index.js` | Fully supported |\n| Homebrew | `/opt/homebrew/lib/node_modules/@anthropic-ai/claude-code/` | Fully supported |\n\n### Windows (WSL/Git Bash)\n| Method | Path | Status |\n|--------|------|--------|\n| Native binary | `%USERPROFILE%\\.local\\bin\\claude.exe` | Fully supported |\n| Native binary | `%LOCALAPPDATA%\\Claude\\versions\\X.Y.Z` | Fully supported |\n| VS Code extension | `%USERPROFILE%\\.vscode\\extensions\\anthropic.claude-code-*\\` | Fully supported |\n| VS Code webview | `...\\extensions\\...\\webview\\index.js` | Fully supported |\n\nThe tool auto-detects your installation. Use `--list` to see all found installations, and `--all` to patch them all at once.\n\n\u003e **Important for VS Code users:** The extension has TWO places with spinner words - the native binary AND the webview. Use `--all` to patch both!\n\n\u003e **Remote Development (SSH):** When using VS Code Remote or Cursor over SSH, run the tool **on the remote server** to patch `~/.vscode-server` or `~/.cursor-server`.\n\n## After Claude Code Updates\n\nIf you're using the shell wrapper (recommended), patching happens automatically before each session.\n\nOtherwise, just run `npx claude-depester` again after updating.\n\n## Restore Original\n\n```bash\nnpx claude-depester --restore\n```\n\nThis restores from the backup created during patching.\n\n## SessionStart Hook (Alternative)\n\n\u003e **Note:** The shell wrapper is the recommended approach. The SessionStart hook has a limitation: it runs *after* Claude is already loaded into memory, so the patch only takes effect on the *next* session after an update.\n\nThe `--install-hook` command adds a SessionStart hook to `~/.claude/settings.json`:\n\n```json\n{\n  \"hooks\": {\n    \"SessionStart\": [\n      {\n        \"hooks\": [\n          {\n            \"type\": \"command\",\n            \"command\": \"npx claude-depester --all --silent --log\"\n          }\n        ]\n      }\n    ]\n  }\n}\n```\n\nThis patches the file on disk at session start, but the current session may still show silly words until you restart. The `--log` flag writes results to `~/.claude/depester.log` (keeps last 50 entries) for troubleshooting.\n\nTo install or update the hook:\n```bash\nnpx claude-depester --install-hook\n\u003e ```\n\n## Troubleshooting\n\n### Still seeing silly words after patching?\n\n**You must fully restart Claude Code / VS Code / VSCodium** after patching. The patch modifies the binary on disk, but running processes still use the old code in memory.\n\nFor VS Code / VSCodium:\n1. Close the editor completely (check it's not running in background)\n2. Kill any remaining processes: `pkill -f codium` or `pkill -f \"Code\"`\n3. Reopen the editor\n\nTo verify processes are stopped:\n```bash\nps aux | grep -E \"(vscode|codium|claude)\" | grep -v grep\n```\n\n### \"Could not find Claude Code installation\"\n\nMake sure Claude Code is installed:\n- Check with `claude --version`\n- Run with `--verbose` to see searched paths\n- Use `--list` to see all detected installations\n\n### VS Code extension still showing silly words\n\nThe VS Code extension has **TWO separate components** with spinner words:\n1. **Native binary** (`resources/native-binary/claude`) - the backend\n2. **Webview** (`webview/index.js`) - the frontend UI that renders the spinner\n\nYou must patch BOTH for the fix to work. Use:\n```bash\nnpx claude-depester --list    # Should show both binary AND webview\nnpx claude-depester --all     # Patch ALL components\n```\n\nThen **fully restart VS Code** (not just reload window).\n\n### Patch not working after update\n\nThe detection uses content-based matching, so it should survive version updates.\nIf the patch fails:\n1. Run `npx claude-depester --debug` to see detailed diagnostics\n2. Open an issue with your Claude Code version (`claude --version`)\n3. Include the output of `npx claude-depester --debug`\n\n### Want to undo everything\n\n```bash\nnpx claude-depester --restore --all  # Restore all installations\nnpx claude-depester --remove-hook    # Remove hook (if installed)\n# Remove the shell wrapper from your .bashrc/.zshrc if added\n```\n\n## Technical Details\n\n### How it works\n\n1. **Detection**: Finds the silly words arrays by unique content markers (e.g., \"Flibbertigibbeting\", \"Discombobulating\") rather than variable names (which change every version due to minification)\n\n2. **Extraction**: For native binaries (Bun-compiled), uses [node-lief](https://www.npmjs.com/package/node-lief) to properly extract the embedded JavaScript - the same approach used by [tweakcc](https://github.com/Piebald-AI/tweakcc)\n\n3. **Patching**: Replaces two arrays:\n   - Spinner words: `[\"Accomplishing\",...,\"Zigzagging\"]` -\u003e `[\"Thinking\"]`\n   - Completion verbs: `[\"Baked\",...,\"Worked\"]` -\u003e `[\"Thought\"]`\n\n4. **Repacking**: Rebuilds the binary with the modified JavaScript\n\n### File locations\n\n- **Backup**: `\u003coriginal-file\u003e.depester.backup`\n- **Hook config**: `~/.claude/settings.json`\n- **Debug log**: `~/.claude/depester.log` (when using `--log`)\n\n## Requirements\n\n- Node.js \u003e= 18.0.0\n- Claude Code installed\n\n## Platform Support\n\n| Platform | Binary Patching | Webview Patching | Status |\n|----------|-----------------|------------------|--------|\n| Linux x64 | ELF | Yes | Tested |\n| Linux ARM64 | ELF | Yes | Should work |\n| macOS Intel | MachO | Yes | Should work |\n| macOS Apple Silicon | MachO | Yes | Should work |\n| Windows x64 | PE | Yes | Should work |\n| Windows ARM64 | PE | Yes | Should work |\n\nThe tool uses [node-lief](https://www.npmjs.com/package/node-lief) which has prebuilt binaries for all these platforms.\n\n## Contributing\n\nIf Claude Code updates and the patch stops working:\n\n1. Check if the array still contains marker words like `\"Flibbertigibbeting\"`\n2. Update `lib/patcher.js` if the pattern changed\n3. Submit a PR\n\nIssues and PRs welcome!\n\n## Related Projects\n\n- [tweakcc](https://github.com/Piebald-AI/tweakcc) - Full Claude Code customization (themes, prompts, and more)\n- [claude-code-thinking-patch](https://github.com/aleks-apostle/claude-code-thinking-patch) - Thinking visibility patch\n\n## Acknowledgments\n\nThis project builds upon work by:\n- [tweakcc](https://github.com/Piebald-AI/tweakcc) - For the proper Bun binary extraction/repacking approach\n- [vemv's gist](https://gist.github.com/vemv/c6333d53ede16198a23eb95425051b7b) - Original simple patch idea\n- [heromantf's bun extractor](https://gist.github.com/heromantf/7db88edcb7b1c0c35067244584a01afc) - Bun binary structure documentation\n\n## Donors\n\nThanks to these generous supporters:\n\n- [@gyohng](https://github.com/gyohng)\n\n## License\n\nMIT - see [LICENSE](LICENSE)\n\n---\n\n## Appendix: Full List of Silly Words\n\n### Spinner Words (184 words)\n\nThese are displayed while Claude is thinking. This tool replaces all of them with \"Thinking\":\n\n\u003e Accomplishing, Actioning, Actualizing, Architecting, Baking, Beaming, Beboppin', Befuddling, Billowing, Blanching, Bloviating, Boogieing, Boondoggling, Booping, Bootstrapping, Brewing, Burrowing, Calculating, Canoodling, Caramelizing, Cascading, Catapulting, Cerebrating, Channeling, Channelling, Choreographing, Churning, Clauding, Coalescing, Cogitating, Combobulating, Composing, Computing, Concocting, Considering, Contemplating, Cooking, Crafting, Creating, Crunching, Crystallizing, Cultivating, Deciphering, Deliberating, Determining, Dilly-dallying, Discombobulating, Doing, Doodling, Drizzling, Ebbing, Effecting, Elucidating, Embellishing, Enchanting, Envisioning, Evaporating, Fermenting, Fiddle-faddling, Finagling, Flambeing, Flibbertigibbeting, Flowing, Flummoxing, Fluttering, Forging, Forming, Frolicking, Frosting, Gallivanting, Galloping, Garnishing, Generating, Germinating, Gitifying, Grooving, Gusting, Harmonizing, Hashing, Hatching, Herding, Honking, Hullaballooing, Hyperspacing, Ideating, Imagining, Improvising, Incubating, Inferring, Infusing, Ionizing, Jitterbugging, Julienning, Kneading, Leavening, Levitating, Lollygagging, Manifesting, Marinating, Meandering, Metamorphosing, Misting, Moonwalking, Moseying, Mulling, Mustering, Musing, Nebulizing, Nesting, Noodling, Nucleating, Orbiting, Orchestrating, Osmosing, Perambulating, Percolating, Perusing, Philosophising, Photosynthesizing, Pollinating, Pondering, Pontificating, Pouncing, Precipitating, Prestidigitating, Processing, Proofing, Propagating, Puttering, Puzzling, Quantumizing, Razzle-dazzling, Razzmatazzing, Recombobulating, Reticulating, Roosting, Ruminating, Sauteing, Scampering, Schlepping, Scurrying, Seasoning, Shenaniganing, Shimmying, Simmering, Skedaddling, Sketching, Slithering, Smooshing, Sock-hopping, Spelunking, Spinning, Sprouting, Stewing, Sublimating, Swirling, Swooping, Symbioting, Synthesizing, Tempering, Thinking, Thundering, Tinkering, Tomfoolering, Topsy-turvying, Transfiguring...\n\n### Completion Verbs (8 words)\n\nThese are displayed after thinking completes (e.g., \"Baked for 42s\"). This tool replaces all of them with \"Thought\":\n\n\u003e Baked, Brewed, Churned, Cogitated, Cooked, Crunched, Sauteed, Worked\n\n\u003csub\u003e**Keywords:** claude code thinking words, claude code spinner, claude code flibbertigibbeting, claude code discombobulating, claude code clauding, claude code smooshing, claude code wibbling, anthropic claude code patch, remove silly words claude, claude code customization, claude code baked for, claude code completion verbs\u003c/sub\u003e\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fominiverdi%2Fclaude-depester","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fominiverdi%2Fclaude-depester","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fominiverdi%2Fclaude-depester/lists"}