You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Spun off from #29 ("CLI Speed Tools" PR), where the discussion surfaced that "human-fast" tools (rg, fd, bat, eza, dust, ...) optimize for human ergonomics, which is not always the same as "agent-friendly". For an agent that consumes CLI output as text and pays a per-tool-call cost, the properties that matter most are different.
Worth tracking this independently, since #29 may end up scoped only to the project's CLAUDE.md and the agent-first angle is broader: it should inform guidance inside the existing skills, not just one document in this repo.
What "agent-first" means here
Tools designed to be driven by an LLM or an agent, rather than by a human at a terminal. The properties that matter:
Structured output by default or via a flag (--json, --ndjson, -o json).
Stable, parseable exit codes and machine-readable error messages.
Idempotent or dry-run modes for safe exploration.
No interactive prompts, or a clean non-interactive flag.
Predictable, deterministic output across runs (no random ordering, no spinners in the pipe).
Low startup overhead (matters when an agent issues many short calls).
Tools that already fit the shape
Non-exhaustive starting list:
gh (GitHub CLI), first-class --json and --jq.
jq, designed for piping structured data.
kubectl -o json / -o yaml.
actionlint, predictable diagnostics with clear exit codes.
shellcheck -f json.
Worth researching:
Newer CLIs that explicitly frame themselves as agent-friendly or LLM-friendly.
Whether nushell patterns transfer (everything is structured by default).
Background
Spun off from #29 ("CLI Speed Tools" PR), where the discussion surfaced that "human-fast" tools (
rg,fd,bat,eza,dust, ...) optimize for human ergonomics, which is not always the same as "agent-friendly". For an agent that consumes CLI output as text and pays a per-tool-call cost, the properties that matter most are different.Worth tracking this independently, since #29 may end up scoped only to the project's
CLAUDE.mdand the agent-first angle is broader: it should inform guidance inside the existing skills, not just one document in this repo.What "agent-first" means here
Tools designed to be driven by an LLM or an agent, rather than by a human at a terminal. The properties that matter:
--json,--ndjson,-o json).Tools that already fit the shape
Non-exhaustive starting list:
gh(GitHub CLI), first-class--jsonand--jq.jq, designed for piping structured data.kubectl -o json/-o yaml.actionlint, predictable diagnostics with clear exit codes.shellcheck -f json.Worth researching:
nushellpatterns transfer (everything is structured by default).rg --json,fd --print0,deltaexit codes).Proposed scope
debugging-and-error-recoveryandcontext-engineeringfor search and read.git-workflow-and-versioningfor diff and history.code-review-and-qualityfor static analysis output.ci-cd-and-automationfor pipeline linting.references/agent-first-clis.mdand link from the relevant skills, rather than adding a new top-level skill.Open questions
command -vpreflight pattern shared across skills that depend on optional tools?Happy to take this on once direction is agreed.