I’ve been experimenting with giving Claude Code small, purpose-built CLI tools instead of feeding it the normal human-oriented output from Maven, npm, Go, etc. One real Tape test run produced 1,476 lines / 136 KB of successful output. For the agent, the useful result was basically: ✓ tests passed I saw similar reductions across Maven, Vitest, Jest, and Go workflows, typically 98–99.99% on successful runs . That led to agent-scripts , a small collection of local-first CLI utilities: mvn-lite npm-lite go-lite They still use the normal underlying build/test tools, but routine successful runs produce a compact result. Failures keep the useful diagnostics and full logs. I also created a lite-tools Agent Skill that teaches Claude Code when to use the wrappers, so the behavior lives in the tools while the skill handles discovery and usage guidance. Install tools: curl -fsSL https://raw.githubusercontent.com/ejboy/agent-scripts/main/install.sh | bash Install the skill: npx skills add ejboy/agent-scripts --global --skill lite-tools Repo: https://github.com/ejboy/agent-scripts Measurements and tradeoffs: https://pvrlabs.xyz/articles/coding-agent-test-output.html The part I’m still thinking about is the interface boundary: do you prefer giving Claude Code dedicated wrapper tools with predictable output, or would you rather encode the equivalent commands and filtering rules directly in CLAUDE.md ? submitted by /u/fykup
Originally posted by u/fykup on r/ClaudeCode
