Integration testing
for CLIs

Write readable tests, run real commands, assert on output. Built for humans and AI agents.

test.hone
TEST "my CLI works"

RUN mycli init --name myproject
ASSERT exit_code == 0
ASSERT stdout contains "Project created"

RUN mycli build
ASSERT exit_code == 0
ASSERT file "dist/output.js" exists

Install in seconds

Single binary, no dependencies.

$ curl https://i.safia.sh/captainsafia/hone/preview | sh

Why Hone?

Built for developers who want simple, reliable CLI testing.

Text Format

Simple, line-oriented DSL that's easy to read, write, and version control.

Real Shell

Commands run in actual shell sessions with persistent state and variables.

Rich Assertions

Assert on stdout, stderr, exit codes, files, timing, and regex patterns.

Single Binary

No runtime dependencies. Written in Rust for speed and reliability.

LSP Support

Built-in language server with completions, diagnostics, and hover docs.

Agent Friendly

Designed for AI agents to read, write, and understand test files.

How It Works

1

Write a .hone test file

2

Run hone run tests/

3

Get clear pass/fail results