claude-better-cli
Compatibility-first Claude CLI reimplementation with faster startup, lower memory, and drop-in command compatibility
What this skill does
# claude-better > Skill by [ara.so](https://ara.so) — Daily 2026 Skills collection. `claude-better` is a compatibility-first reimplementation of the Claude CLI focused on aggressive performance improvements: up to 73% faster startup and up to 80% lower resident memory, while maintaining 100% command-level compatibility with the original Claude CLI. ## What It Does - **Faster cold starts**: `--help` goes from 182ms → 49ms; `chat` session bootstrap from 311ms → 102ms - **Lower memory**: sustained interactive sessions drop from ~412MB → ~83MB RSS - **Drop-in compatible**: 100% pass rate on primary command forms, 100% exit-code match, 98.7% byte-for-byte output parity - **Zero migration cost**: existing scripts, aliases, and muscle memory continue to work unchanged ## Availability > ⚠️ Source code is provided for selected high-profile customers only and available upon request. Contact the maintainer at [krzyzanowskim/claude-better](https://github.com/krzyzanowskim/claude-better) for access. If you have access, install as described in your onboarding materials. The binary is a drop-in replacement — substitute it wherever you invoke `claude`. ## Installation (Once You Have Access) ```bash # Typical binary drop-in replacement pattern # Place the claude-better binary in your PATH before the original claude export PATH="/path/to/claude-better/bin:$PATH" # Verify it's being picked up which claude claude --version ``` ```bash # Or alias it explicitly without touching PATH alias claude='/path/to/claude-better/bin/claude-better' ``` ## Key Commands `claude-better` mirrors the Claude CLI surface exactly. All commands you know work as-is: ```bash # Show help (cold start: ~49ms vs 182ms baseline) claude --help # Check auth status (warm start: ~58ms vs 146ms baseline) claude auth status # Start an interactive chat session (~102ms bootstrap vs 311ms baseline) claude chat # One-shot non-interactive command (~131ms vs 428ms baseline) claude -p "Summarize this file" < input.txt # All standard flags pass through unchanged claude --model claude-opus-4-5 chat claude --output-format json -p "List 3 facts about Rust" ``` ## Configuration `claude-better` reads the same configuration as the original Claude CLI. No new config format is required. ```bash # Standard Claude CLI env vars are respected export ANTHROPIC_API_KEY=$ANTHROPIC_API_KEY # The tool reads ~/.claude/ config directory as normal # No migration of config files needed ``` ## Performance Characteristics | Scenario | Baseline | claude-better | Improvement | |---|---|---|---| | `--help` cold start | 182ms | 49ms | 73% faster | | `auth status` warm | 146ms | 58ms | 60% faster | | `chat` bootstrap | 311ms | 102ms | 67% faster | | One-shot command | 428ms | 131ms | 69% faster | | RSS after 30min session | 412MB | 83MB | 80% less | | Streaming jitter p95 | 91ms | 24ms | 74% lower | ## Scripting Patterns Since compatibility is 100%, all existing scripting patterns work unchanged: ```bash #!/usr/bin/env bash # Existing Claude CLI scripts work without modification # Non-interactive pipeline usage echo "Explain this error:" | cat - error.log | claude -p /dev/stdin # Exit code handling (100% compatible) if claude auth status; then echo "Authenticated" else echo "Not authenticated — run: claude auth login" exit 1 fi # JSON output parsing claude --output-format json -p "What is 2+2?" | jq '.content' ``` ```bash #!/usr/bin/env bash # Long-lived interactive session — memory pressure is significantly reduced # Useful on memory-constrained machines (laptops, CI runners) claude chat ``` ## Compatibility Notes - **CLI surface**: 100% compatible with targeted Claude CLI command forms - **Exit codes**: 100% match on documented exit-code behavior - **Output parity**: 98.7% byte-for-byte; 100% semantic parity after whitespace/timestamp/terminal-width normalization - **Tested environments**: macOS (Apple Silicon), Linux, containerized CI - **Tested against**: 1,200 synthetic invocations, 87 flag combinations, 42 interactive flows, 14 failure-mode scenarios ## Troubleshooting **Binary not found after install** ```bash # Ensure claude-better/bin is earlier in PATH than original claude echo $PATH | tr ':' '\n' | grep -n claude which claude # should point to claude-better ``` **Unexpected output differences** ```bash # 1.3% of outputs differ before normalization (timestamps, whitespace, terminal width) # If a script breaks on exact output matching, add normalization: claude -p "..." | tr -s ' ' | sed 's/[[:space:]]*$//' ``` **Auth not recognized** ```bash # claude-better reads the same auth store as the original CLI # If auth fails, re-authenticate via the standard flow: claude auth login ``` **Falling back to original CLI** ```bash # If you hit an edge case, unset the alias/PATH change to revert instantly unalias claude # or export PATH="<original-path-without-claude-better>" ``` ## Architecture Notes (For Contributors / Evaluators) The performance gains come from specific implementation choices documented in the README: - **Zero-copy streaming pipeline** for token output (reduces streaming jitter) - **Precomputed command registry** instead of dynamic startup discovery (cuts cold-start time) - **Aggressively bounded allocation** for session state (drives memory reduction) - **Lazy subsystem initialization** — only the active command path pays startup cost - **Compatibility shim layer** that preserves flags/behavior without carrying the full original stack
Related in General
modeling-omnistudio-epc-catalog
IncludedSalesforce Industries CME EPC product-modeling skill for Product2-based catalog creation. Use when creating EPC products, configuring product attributes, building offer bundles with Product Child Items, or reviewing EPC DataPack JSON metadata for product catalog changes. TRIGGER when: user creates or updates Product2 EPC records, AttributeAssignment payloads, AttributeMetadata/AttributeDefaultValues, Offer bundles, or ProductChildItem relationships. DO NOT TRIGGER when: designing OmniScripts/FlexCards/Integration Procedures (use building-omnistudio-omniscript, building-omnistudio-flexcard, or building-omnistudio-integration-procedure), implementing Apex business logic (use generating-apex), or troubleshooting deployment pipelines (use deploying-metadata).
relationship-science-coach
IncludedUse this skill for direct, practical adult relationship coaching: couples conflict, repair, trust, marriage, dating, flirting, attachment patterns, emotional connection, sex, desire differences, eroticism, kink negotiation, affection, love languages, breakups, and long-term passion. Draw on Gottman, EFT and Hold Me Tight, attachment science, modern sex research, Perel, Nagoski, Kerner, Schnarch, Love and Stosny, and flexible love-language tools. Be concrete and low-hedge. Redirect only for imminent danger, abuse, coercive control, minors, non-consent, self-harm, stalking, or medical/legal/psychiatric decisions.
building-sf-integrations
IncludedSalesforce integration architecture and runtime plumbing with 120-point scoring. Use this skill to set up Named Credentials, External Credentials, External Services, REST/SOAP callout patterns, Platform Events, and Change Data Capture. TRIGGER when: user sets up Named Credentials, External Services, REST/SOAP callouts, Platform Events, CDC, or touches .namedCredential-meta.xml files. DO NOT TRIGGER when: Connected App/OAuth config (use configuring-connected-apps), Apex-only logic (use generating-apex), or data import/export (use handling-sf-data).
venue-templates
IncludedAccess comprehensive LaTeX templates, formatting requirements, and submission guidelines for major scientific publication venues (Nature, Science, PLOS, IEEE, ACM), academic conferences (NeurIPS, ICML, CVPR, CHI), research posters, and grant proposals (NSF, NIH, DOE, DARPA). This skill should be used when preparing manuscripts for journal submission, conference papers, research posters, or grant proposals and need venue-specific formatting requirements and templates.
let-fate-decide
IncludedDraws the 12 Houses of the Zodiac Tarot spread to inject entropy into planning when prompts are vague, ambiguous, or casually delegated. Interprets the spread to guide next steps. Use when the user says 'let fate decide', 'YOLO', 'whatever', 'idk', or other nonchalant phrases, makes Yu-Gi-Oh references, or when you are about to arbitrarily pick between multiple reasonable approaches. Prefer over ask-questions-if-underspecified when the user's tone is casual or playful rather than precision-seeking.
net-ops
IncludedCross-platform network troubleshooting (Windows, macOS, Linux) via local or remote shell. Use for: DNS broken, can't resolve hostnames, nslookup/dig works but apps fail, NRPT, WFP, scutil, /etc/resolver, systemd-resolved, /etc/resolv.conf, NetworkManager, VPN DNS leak residue (ProtonVPN/Mullvad/WireGuard/AnyConnect), AV/firewall blocking DNS or DoH, Tailscale DNS interaction, intermittent connectivity, remote diagnostics over SSH.