Source profileQuality 84/100Review permissions

HKUDS/CLI-Anything/hermes-skill/SKILL.md

cli-anything-hermes

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.

Source repository stars
46,599
Declared platforms
0
Static risk flags
1
Last source update
2026-08-03
Source checked
2026-08-04

Decision brief

What it does—and where it fits

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

Best for

  • Use when the user wants Hermes Agent to build, refine, test, or validate a CLI-Anything harness for a GUI application or source repository.

Not for

  • Tasks that require unconfirmed production actions or broad system permissions.
  • Environments where the pinned source and install steps cannot be inspected.

Compatibility matrix

Platform support, with evidence labels

PlatformStatusEvidenceWhat to check
CodexNot declaredNo explicit evidencePortability before use
Claude CodeNot declaredNo explicit evidencePortability before use
CursorNot declaredNo explicit evidencePortability before use
Gemini CLINot declaredNo explicit evidencePortability before use
Open the compatibility checker

Installation

Inspect first. Install second.

The source command is displayed only when detected. A safe inspection prompt is always available so your agent can explain every action before execution.

Source-detected install commandSource
npx skills add https://github.com/HKUDS/CLI-Anything --skill "hermes-skill"
Safe inspection promptEditorial

Inspect the Agent Skill "cli-anything-hermes" from https://github.com/HKUDS/CLI-Anything/blob/39634a640cf20bc603b4faae4d31069c44821a9a/hermes-skill/SKILL.md at commit 39634a640cf20bc603b4faae4d31069c44821a9a. List every install step, command, network request, credential, file read/write, external action, and rollback step. Explain whether it fits my task. Do not install or execute anything until I approve.

Workflow

What the source asks the agent to do

  1. 01

    Workflow

    1. Acquire the source tree locally (clone or use existing path). 2. Analyze architecture, data model, existing CLIs, and GUI-to-API mappings. 3. Design command groups and state model. 4. Implement the harness. 5. Write TEST.md, then tests, then run them. 6. Update README usage d…

    Acquire the source tree locally (clone or use existing path).Analyze architecture, data model, existing CLIs, and GUI-to-API mappings.Design command groups and state model.
  2. 02

    Inputs

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

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

    Hermes Tool Bindings

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

    Hermes agents build harnesses by combining these built-in tools:Consult the Hermes Agent documentation for the exact tool invocation syntax.
  4. 04

    Modes

    Use when the user wants a new harness.

    one-shot subcommandsREPL mode as the default when no subcommand is given--json machine-readable output
  5. 05

    Build

    Use when the user wants a new harness.

    one-shot subcommandsREPL mode as the default when no subcommand is given--json machine-readable output

Permission review

Static risk signals and limitations

Runs scripts

medium · line 27

The documentation asks the agent to run terminal commands or scripts.

| `terminal` | Run shell commands, install packages, execute CLI tools, run tests |

Evidence record

Why each signal appears

EvidenceSourceComputedTestedEditorial
SignalValueEvidence typeMeaning
Quality score84/100ComputedDocumentation, specificity, maintenance, and trust rules
Repository stars46,599SourceRepository attention, not individual Skill quality
Compatibility0 platformsSourceDeclared in the catalog source record
Usage guideautomated source guideEditorialGenerated or reviewed according to the visible evidence level

Pinned source

Provenance and original SKILL.md

Repository
HKUDS/CLI-Anything
Skill path
hermes-skill/SKILL.md
Commit
39634a640cf20bc603b4faae4d31069c44821a9a
License
Apache-2.0
Collected
2026-08-04
Default branch
main
View the original SKILL.md

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:

ToolRole in Harness Workflow
terminalRun shell commands, install packages, execute CLI tools, run tests
execute_codeGenerate and write Python files (Click CLI, backend modules, tests)
delegate_taskParallelize analysis or generation subtasks
read_file / write_fileRead and write harness source files
patchMake targeted edits to generated code

Consult the Hermes Agent documentation for the exact tool invocation syntax.

Modes

Build

Use when the user wants a new harness.

Produce this structure:

<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:

  • one-shot subcommands
  • REPL mode as the default when no subcommand is given
  • --json machine-readable output
  • session state with undo/redo where the target software supports it

Refine

Use when the harness already exists.

First inventory current commands and tests, then do gap analysis against the target software. Prefer:

  • high-impact missing features
  • easy wrappers around existing backend APIs or CLIs
  • additions that compose well with existing commands

Do not remove existing commands unless the user explicitly asks for a breaking change.

Test

Plan tests before writing them. Keep both:

  • test_core.py for unit coverage
  • test_full_e2e.py for workflow and backend validation

When possible, test the installed command via subprocess using cli-anything-<software> rather than only module imports.

Validate

Check that the harness:

  • uses the cli_anything.<software> namespace package layout
  • has an installable setup.py entry point
  • supports JSON output
  • has a REPL default path
  • documents usage and tests

Backend Rules

Prefer the real software backend over reimplementation. Wrap the actual executable or scripting interface in utils/<software>_backend.py when possible. Use synthetic reimplementation only when the project explicitly requires it or no viable native backend exists.

Packaging Rules

  • Use find_namespace_packages(include=["cli_anything.*"])
  • Keep cli_anything/ as a namespace package without a top-level __init__.py
  • Expose cli-anything-<software> through console_scripts

Workflow

  1. Acquire the source tree locally (clone or use existing path).
  2. Analyze architecture, data model, existing CLIs, and GUI-to-API mappings.
  3. Design command groups and state model.
  4. Implement the harness.
  5. Write TEST.md, then tests, then run them.
  6. Update README usage docs.
  7. Verify local installation with pip install -e .

Existing Harnesses (Reference)

For an up-to-date list of supported harnesses and their backend patterns, see registry.json at the repository root.

Output Expectations

When reporting progress or final results, include:

  • target software and source path
  • files added or changed
  • validation commands run
  • open risks or backend limitations

Alternatives

Compare before choosing

Computed 98249

majiayu000/spellbook

comprehensive-testing

Complete testing strategy covering TDD workflow, test pyramid, unit/integration/E2E/property testing, framework best practices (Jest, Vitest, pytest), mock strategies, and CI integration. Use when writing tests, reviewing test quality, or establishing testing standards.

Computed 974,922

dotnet/skills

test-tagging

Analyzes test suites in any language and tags each test with standardized traits (positive, negative, critical-path, boundary, smoke, regression, integration, performance, security). Use when the user wants to categorize, audit, or label tests with traits. Works across .NET (MSTest/xUnit/NUnit/TUnit), Python (pytest), TS/JS (Jest/Vitest), Java, Go, Ruby, Rust, Swift, Kotlin, PowerShell, and C++ — auto-editing when the framework has canonical tag syntax, otherwise report-only. Do not use for writ

Computed 9532,606

K-Dense-AI/scientific-agent-skills

simpy

Build, inspect, test, and analyze bounded process-based discrete-event simulations with SimPy, including events, resources, interrupts, monitoring, replications, warm-up, and reproducible output analysis.

Computed 954,922

dotnet/skills

find-untested-sources

MANDATORY for static requests to find, identify, or list untested source files or modules, sources without tests, source-to-test pairing, test-gap worklists, or suggested test locations. Invoke even for a tiny package; do not substitute manual globbing. Uses Roslyn for C#/.NET and tree-sitter for Python, TS/JS, Go, Java, Rust, and Ruby. DO NOT USE FOR: line/branch coverage, CRAP risk, or grading existing tests.