cli-control

cli-control is a skill for Claude Code from yarlson/yarstack. It costs 58 tokens per session (534 once invoked), scanned A, original, MIT.

A testing guide for terminal programs, including command-line tools and text-based interfaces. It gathers repeatable local evidence about their output and interactive behavior without changing production code.

In plain words
What is it for?
Use it to verify normal command output and status, drive interactive prompts, test interrupts and cleanup, check terminal restoration, or investigate hangs and resizing behavior.
Why use it?
It helps reveal problems with prompts, input, signals, hangs, window resizing, startup, exit codes or terminal cleanup. It uses the smallest suitable test method and records only the evidence needed.

Skill for Claude Code

Written for Claude Code: shipped in a Claude Code plugin.

Part of the yarstack plugin — 46 skills, 1 agent shipped together

Good fit Use it to verify normal command output and status, drive interactive prompts, test interrupts and cleanup, check terminal restoration, or investigate hangs and resizing behavior.

Compare 6 skills from other repositories ↓
Install with agentmods
npx agentmods add skills/yarlson/yarstack/cli-control
Install

Getting it into your agent

One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.

Any agent
npx skills add yarlson/yarstack --skill cli-control
Clone the repo
git clone --depth 1 https://github.com/yarlson/yarstack

Made for: Claude Code.

Or install yarstack, the plugin that ships this one along with the rest of its 46 skills, 1 agent.

Wrote this? Show the measurements

A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.

agentmods badge for cli-control

README.md
[![agentmods](https://agentmods.dev/badge/skills/yarlson/yarstack/cli-control/github.svg)](https://agentmods.dev/skills/yarlson/yarstack/cli-control)
Your own site
<a href="https://agentmods.dev/skills/yarlson/yarstack/cli-control"><img src="https://agentmods.dev/badge/skills/yarlson/yarstack/cli-control/github.svg" alt="Measured on agentmods" height="20"></a>

Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.

agentmods 80×15 button for cli-control

Your own site · 80×15
<a href="https://agentmods.dev/skills/yarlson/yarstack/cli-control"><img src="https://agentmods.dev/badge/skills/yarlson/yarstack/cli-control.svg" alt="Reviewed on agentmods" width="80" height="20"></a>
Per session 58 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 534 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. A grade says what 26 rules found in the file — not that it is safe.
Origin original No closer match found in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5.1 $0.00058 $0.00534
Opus 5.5 $0.00023 $0.00214
Sonnet 5.5 $0.00012 $0.00107
Haiku 4.5 $0.00006 $0.00053

Measured 3d ago against content hash 8b22d5337446, method: parsed. Prices are Anthropic first-party input rates as of 2026-10-07, from the pricing page.

Security

Grade A, and why

cli-control scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 3d ago.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Nothing flagged

None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.

plugins/yarstack/skills/cli-control/SKILL.md · 38 lines

How it starts

The opening of the file, as written. The whole thing — 38 lines — stays where its author put it; the contents beside it link to each section on GitHub.

CLI Control

Gather reproducible evidence from a terminal-hosted interface without changing production behavior.

Workflow

  1. Identify the command, the working directory, the terminal conditions, and the observable contract.

  2. Choose the method. Run ordinary output and exit-status checks directly or through the repository's tests. A command run through a pipe has no terminal, and many programs then skip prompts, colors, or line editing, so piped output does not prove terminal behavior. Use a pseudo-terminal for prompts, interactive input, signals, resizing, hangs, or restoration.

  3. Bound every run with the host's command timeout or timeout, so a hang becomes evidence instead of a stuck session.

  4. Prefer an existing trusted harness. Otherwise use tmux as the pseudo-terminal:

    tmux new-session -d -s probe -x 120 -y 40
    tmux set-option -t probe remain-on-exit on
    tmux respawn-pane -k -t probe '<command>'
    tmux capture-pane -t probe -p          # read the screen
    tmux send-keys -t probe 'text' Enter   # type; C-c sends SIGINT
    tmux resize-window -t probe -x 80 -y 24
    tmux display -p -t probe '#{pane_dead} #{pane_dead_status}'   # exit status
    tmux kill-session -t probe
    

    Wait for a state by polling capture-pane for the expected text with a bounded number of attempts, not by fixed sleeps.

  5. Drive one action at a time, and capture the smallest transcript or measurement that proves or disproves the behavior.

  6. Check interrupts, cleanup, exit status, hangs, and terminal restoration only where they matter to the contract.

  7. Clean up only the sessions, processes, and files that this workflow created.

Keep verification read-only unless the parent task separately authorizes implementation. Use behavior-implement and test-design for fixes or regression tests. Do not send credentials or destructive commands, keep sensitive transcripts, or leave one-off harness code in the repository.

Result

Report the command and conditions, the observed output and exit status, the evidence, and any blocker or limitation.

Read the full file on GitHub · 38 lines

Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. 3d ago Changed · +14 lines · +16 tokens per session 8b22d5337446
  2. 1mo ago First seen · 24 lines · 42 tokens per session scan A e117f36d8754

Subscribe to this mod's changes

cli-control is a skill published in the GitHub repository yarlson/yarstack (3 stars, last pushed 2d ago), licensed MIT. It adds 58 tokens to every session and 534 once invoked, about $0.0002 per session on Opus 5.5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.

Related

Other skills, from other repositories

safe-change

Trace, implement, test, and independently review one bounded software change. Use for ordinary feature, bug-fix, or refactor work after the repository is bootstrapped; do not use for broad repository cleanup, production operations, or undefined rewrites.

cz1993/vibe-coding-repository-standard · 54 tokens

gentle-ai-bench

Trigger: bench, journey, journeys, driven mode, gentle-ai-bench, journey corpus, j-numbers, bench axis. Author and verify gentle-ai bench journeys; go test ./bench never proves driven execution.

Gentleman-Programming/gentle-ai · 49 tokens

go-testing

Trigger: Go tests, go test coverage, Bubbletea teatest, golden files. Apply focused Go testing patterns.

Gentleman-Programming/gentle-ai · 26 tokens

include-test-files-that-assert-on-behavior-being-changed-in-decl

When delegating a task affected by this skill, include.

ZaxbyHub/opencode-swarm · 29 tokens

Autonomous Agent Testing

Testing patterns for autonomous AI coding agents like Devin and SWE-Agent including task verification, output validation, sandboxed execution, regression testing for agent behavior, and safety guardrails for autonomous code generation.

PramodDutta/qaskills · 43 tokens

ring:running-dev-cycle

Running the backend dev cycle: implements every task in a rolling-wave plan.md (ring:writing-plans format) for a Go/TS service, driving specialist agents through Gate 0 implementation/TDD, Gate 8 parallel review, and Gate 9 validation per epic, elaborating later phases at each phase boundary. Use when starting or…

LerianStudio/ring · 122 tokens