Skip to content

Conversation

@bobrowadam
Copy link
Contributor

  • I added a entry in changelog under unreleased section.

Summary

  • Optimize large shell output: When shell command output exceeds a configurable threshold (default: 1000 chars), write to a cache file (~/.cache/eca/{workspace-hash}/shell-output/) instead of returning inline. Reduces LLM context bloat for commands like find, git log, etc.
  • Auto-allow reading cache files: Shell output cache files don't require additional read approval since the original command was already approved.

Details

  • New config option: toolCall.shellCommand.outputFileThreshold (default: 1000)
  • Response includes file path, size, exit code, and last 20 lines for context
  • Graceful fallback to inline output if file write fails
  • Works for both success (exit 0) and error (non-zero exit) cases

- Auto-allow reading shell output cache files without approval

Shell output cache files (~/.cache/eca/*/shell-output/*) are auto-allowed
for reading without requiring additional user approval, since the original
shell command was already approved.
@bobrowadam bobrowadam force-pushed the optimize-large-shell-output branch from b1fc834 to b18b402 Compare January 20, 2026 21:12
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant