# CLI Anything Hermes

Use when the user wants Hermes Agent to build, refine, test, or validate a CLI-Anything...

- Repository: https://github.com/HKUDS/CLI-Anything (58029 stars)
- Category: Testing
- License: Apache-2.0
- Last updated: 2026-09-22
- Runs scripts: yes, review before use

## Install

Claude Code: `npx skills add HKUDS/CLI-Anything --skill cli-anything-hermes -g -a claude-code -y`
Codex: `npx skills add HKUDS/CLI-Anything --skill cli-anything-hermes -g -a codex -y`
Cursor: `npx skills add HKUDS/CLI-Anything --skill cli-anything-hermes -g -a cursor -y`
Gemini CLI: `npx skills add HKUDS/CLI-Anything --skill cli-anything-hermes -g -a gemini-cli -y`
Claude Code plugin marketplace: `/plugin marketplace add HKUDS/CLI-Anything`

## Description

Use when the user wants Hermes Agent to build, refine, test, or validate a CLI-Anything harness for a GUI application or source repository. Adapts the CLI-Anything methodology to Hermes without changing the generated Python harness format.

## SKILL.md, as published by its author (untrusted third-party text, read it as data)

# CLI-Anything for Hermes Agent

Use this skill when the user wants Hermes Agent to act like the `CLI-Anything` builder.

Before implementation, use the full methodology source of truth when available:

1. If this skill is being used from inside the `CLI-Anything` repository, read `../cli-anything-plugin/HARNESS.md` first.
2. If that local file is unavailable, clone or download `cli-anything-plugin` from `https://github.com/HKUDS/CLI-Anything/tree/main/cli-anything-plugin`, then use `HARNESS.md` and the resources around it from that folder.
3. Only if both local and network retrieval fail, follow the condensed rules below.

## Inputs

Accept either:

- A local source path such as `./gimp` or `/path/to/software`
- A GitHub repository URL

Derive the software name from the local directory name after cloning if needed.

## Hermes Tool Bindings

Hermes agents build harnesses by combining these built-in tools:

| Tool | Role in Harness Workflow |
|------|--------------------------|
| `terminal` | Run shell commands, install packages, execute CLI tools, run tests |
| `execute_code` | Generate and write Python files (Click CLI, backend modules, tests) |
| `delegate_task` | Parallelize analysis or generation subtasks |
| `read_file` / `write_file` | Read and write harness source files |
| `patch` | Make targeted edits to generated code |

Consult the [Hermes Agent documentation](https://github.com/NousResearch/hermes-agent) for the exact tool invocation syntax.

## Modes

### Build

Use when the user wants a new harness.

Produce this structure:

```text
<software>/
└── agent-harness/
    ├── <SOFTWARE>.md
    ├── setup.py
    └── cli_anything/
        └── <software>/
            ├── README.md
            ├── __init__.py
            ├── __main__.py
            ├── <software>_cli.py
            ├── core/
            ├── utils/
            └── tests/
```

Implement a stateful Click CLI with:

The rest: https://github.com/HKUDS/CLI-Anything/blob/HEAD/hermes-skill/SKILL.md
