hive.terminal-tools-troubleshooting
Read when a terminal-tools call returned something surprising — empty stdout despite no error, exit_code is null, output_handle came back expired, "too many jobs" / "session busy" / "too many PTYs", warning was set unexpectedly, semantic_status disagrees with exit_code. Diagnostic recipes only — load on demand. Don't preload; the foundational skill covers the happy path.
npx skills add aden-hive/hive --skill terminal-tools-troubleshooting --agent claude-code
Same command for any agent — swap --agent for codex, cursor, copilot.
Weekly change comes from our own snapshots, not the repository page — it measures attention, not adoption.
# Troubleshooting terminal-tools Recipes for surprising results. Match the symptom to the section. ## Empty `stdout` despite the command "should have" produced output Possible causes: 1. Output went to **stderr** instead. Check `stderr` in the envelope (or use `merge_stderr=True` for jobs). 2. Output was **fully truncated** because `max_output_kb` is too small. Check `stdout_truncated_bytes > 0`. Bump `max_output_kb` or paginate via `output_handle`. 3. Command produced no output (correct, just unexpected — `silent` flags, no matches). 4. Pipeline issue: the last stage of a pipe ran but stdout went elsewhere (`> /dev/null`, redirected via `2>&1`). 5. Process is buffering its output and didn't flush before exit. Add `stdbuf -oL` (line-buffered) or `unbuffer` to the command. ## `exit_code: null` | Cause | Other field | |---|---| | Auto-backgrounded | `auto_backgrounded: true, job_id: <X>` | | Hard timeout, process killed | `timed_out: true` | | Pre-spawn failure (command not found) | `error: ...` set, `pid: null` | | Still running (in `terminal_job_logs`) | `status: "running"` | ## `output_handle` returned `expired: true` 5-minute TTL. Either (a) you waited too long, or (b) the store
- Empty stdout despite the command "should have" produced output
- exitcode: null
- outputhandle returned expired: true
- "too many jobs" / JobLimitExceeded
- "session busy"
- "PTY cap reached"
- warning is set, the command worked
- semanticstatus: "ok" but exitcode: 1
- semanticstatus: "error" but exitcode: 0
- truncatedbytesdropped > 0 in terminaljoblogs
- terminalptyopen succeeds but the first run times out
- shell="/bin/zsh" returned an error
- A command in shell=True is interpreted differently than expected
What does the hive.terminal-tools-troubleshooting skill do?
Read when a terminal-tools call returned something surprising — empty stdout despite no error, exit_code is null, output_handle came back expired, "too many jobs" / "session busy" / "too many PTYs", warning was set unexpectedly, semantic_status disagrees with exit_code. Diagnostic recipes only — load on demand. Don't preload; the foundational skill covers the happy path.
How do I install it?
Run `npx skills add aden-hive/hive --skill terminal-tools-troubleshooting --agent claude-code` — it drops the skill into your project so the agent can pick it up. Swap the --agent value for codex, cursor or copilot if you use one of those.
Where does this skill come from?
From aden-hive/hive, a repository with 10,850 stars. We read it straight from the repository tree rather than a submitted listing, so what you see here is what is actually published.
Is a popular skill a good skill?
Not necessarily. Stars measure attention, not adoption — a repository can trend for a week and be abandoned. That is why we show the weekly change from our own snapshots next to the total, instead of a single flattering number.
