diff --git a/README.md b/README.md index aa4ab2813..73ad156d3 100644 --- a/README.md +++ b/README.md @@ -8,7 +8,7 @@ CLI-Anything: Bridging the Gap Between AI Agents and the World's Software Quick Start CLI Hub - Demos + Demos Tests License

@@ -123,27 +123,27 @@ That's it. The plugin is now available in your Claude Code session. ``` This runs the full pipeline: -1. ๐Ÿ” **Analyze** - Scans source code, maps GUI actions to APIs -2. ๐Ÿ“ **Design** - Architects command groups, state model, output formats -3. ๐Ÿ”จ **Implement** - Builds Click CLI with REPL, JSON output, undo/redo -4. ๐Ÿ“‹ **Plan Tests** - Creates TEST.md with unit + E2E test plans -5. ๐Ÿงช **Write Tests** - Implements comprehensive test suite -6. ๐Ÿ“ **Document** - Updates TEST.md with results -7. ๐Ÿ“ฆ **Publish** - Creates `setup.py`, installs to PATH +1. ๐Ÿ” **Analyze** โ€” Scans source code, maps GUI actions to APIs +2. ๐Ÿ“ **Design** โ€” Architects command groups, state model, output formats +3. ๐Ÿ”จ **Implement** โ€” Builds Click CLI with REPL, JSON output, undo/redo +4. ๐Ÿ“‹ **Plan Tests** โ€” Creates TEST.md with unit + E2E test plans +5. ๐Ÿงช **Write Tests** โ€” Implements comprehensive test suite +6. ๐Ÿ“ **Document** โ€” Updates TEST.md with results +7. ๐Ÿ“ฆ **Publish** โ€” Creates `setup.py`, installs to PATH **Step 4 (Optional): Refine and Improve the CLI** After the initial build, you can iteratively refine the CLI to expand coverage and add missing capabilities: ```bash -# Broad refinement - agent analyzes gaps across all capabilities +# Broad refinement โ€” agent analyzes gaps across all capabilities /cli-anything:refine ./gimp -# Focused refinement - target a specific functionality area +# Focused refinement โ€” target a specific functionality area /cli-anything:refine ./gimp "I want more CLIs on image batch processing and filters" ``` -The refine command performs gap analysis between the software's full capabilities and current CLI coverage, then implements new commands, tests, and documentation for the identified gaps. You can run it multiple times to steadily expand coverage - each run is incremental and non-destructive. +The refine command performs gap analysis between the software's full capabilities and current CLI coverage, then implements new commands, tests, and documentation for the identified gaps. You can run it multiple times to steadily expand coverage โ€” each run is incremental and non-destructive.
Alternative: Manual Installation @@ -206,10 +206,10 @@ The command runs as a subtask and follows the same 7-phase methodology as Claude **Step 3 (Optional): Refine and Improve the CLI** ```bash -# Broad refinement - agent analyzes gaps across all capabilities +# Broad refinement โ€” agent analyzes gaps across all capabilities /cli-anything-refine ./gimp -# Focused refinement - target a specific functionality area +# Focused refinement โ€” target a specific functionality area /cli-anything-refine ./gimp "batch processing and filters" ``` @@ -332,10 +332,10 @@ OpenCode commands, while keeping the generated Python harness format unchanged. CLI-Anything is designed to be platform-agnostic. Support for more AI coding agents is planned: -- **Codex** - available via the bundled skill in `codex-skill/` -- **Cursor** - coming soon -- **Windsurf** - coming soon -- **Your favorite tool** - contributions welcome! See the `opencode-commands/` directory for a reference implementation. +- **Codex** โ€” available via the bundled skill in `codex-skill/` +- **Cursor** โ€” coming soon +- **Windsurf** โ€” coming soon +- **Your favorite tool** โ€” contributions welcome! See the `opencode-commands/` directory for a reference implementation.
@@ -383,8 +383,8 @@ Each installed CLI ships with a [`SKILL.md`](#-skillmd-generation) inside the Py | **๐Ÿข Enterprise & Office** | Convert business applications and productivity tools into agent-accessible systems | NextCloud, GitLab, Grafana, Mattermost, LibreOffice, AppFlowy, NocoDB, Odoo (Community), Plane, ERPNext | | **๐Ÿ“ž Communication & Collaboration** | Automate meeting scheduling, participant management, recording retrieval, and reporting through structured CLI | Zoom, Jitsi Meet, BigBlueButton, Mattermost | | **๐Ÿ“ Diagramming & Visualization** | Create and manipulate diagrams, flowcharts, architecture diagrams, and visual documentation programmatically | Draw.io (diagrams.net), Mermaid, PlantUML, Excalidraw, yEd | -| **โœจ AI Content Generation** | Generate professional deliverables (slides, docs, diagrams, websites, research reports) through AI-powered cloud APIs | [AnyGen](https://www.anygen.io), Gamma, Beautiful.ai, Tome | | **๐ŸŒ Network & Infrastructure** | Manage network services, DNS, ad-blocking, and infrastructure through structured CLI commands | AdGuardHome | +| **โœจ AI Content Generation** | Generate professional deliverables (slides, docs, diagrams, websites, research reports) through AI-powered cloud APIs | [AnyGen](https://www.anygen.io), Gamma, Beautiful.ai, Tome | --- @@ -397,7 +397,7 @@ AI agents are great at reasoning but terrible at using real professional softwar | **Current Pain Point** | **CLI-Anything's Fix** | |----------|----------------------| -| ๐Ÿค– "AI can't use real tools" | Direct integration with actual software backends (Blender, LibreOffice, FFmpeg) - full professional capabilities, zero compromises | +| ๐Ÿค– "AI can't use real tools" | Direct integration with actual software backends (Blender, LibreOffice, FFmpeg) โ€” full professional capabilities, zero compromises | | ๐Ÿ’ธ "UI automation breaks constantly" | No screenshots, no clicking, no RPA fragility. Pure command-line reliability with structured interfaces | | ๐Ÿ“Š "Agents need structured data" | Built-in JSON output for seamless agent consumption + human-readable formats for debugging | | ๐Ÿ”ง "Custom integrations are expensive" | One Claude plugin auto-generates CLIs for ANY codebase through proven 7-phase pipeline | @@ -413,21 +413,21 @@ AI agents are great at reasoning but terrible at using real professional softwar ### ๐Ÿ› ๏ธ Let Agents Take Your Workflows -Professional or everyday - just throw the codebase at `/cli-anything`. GIMP, Blender, Shotcut for creative work. LibreOffice, OBS Studio for daily tasks. Don't have the source? Find an open-source alternative and throw *that* in. You'll instantly get a full CLI your agents can use. +Professional or everyday โ€” just throw the codebase at `/cli-anything`. GIMP, Blender, Shotcut for creative work. LibreOffice, OBS Studio for daily tasks. Don't have the source? Find an open-source alternative and throw *that* in. You'll instantly get a full CLI your agents can use. ### ๐Ÿ”— Unify Scattered APIs into One CLI -Tired of juggling fragmented web service APIs? Feed the docs or SDK manuscripts to `/cli-anything` and your agents get a **powerful, stateful CLI** that wraps those individual endpoints into coherent command groups. One tool instead of dozens of raw API calls - stronger capabilities while saving tokens. +Tired of juggling fragmented web service APIs? Feed the docs or SDK manuscripts to `/cli-anything` and your agents get a **powerful, stateful CLI** that wraps those individual endpoints into coherent command groups. One tool instead of dozens of raw API calls โ€” stronger capabilities while saving tokens. ### ๐Ÿš€ Replace or Supercharge GUI Agents -CLI-Anything can flat-out **replace GUI-based agent approaches** - no more screenshots, no brittle pixel-clicking. But here's the fun part: once you `/cli-anything` a GUI software, you can **synthesize agent tasks, evaluators, and benchmarks** entirely via code and terminal - fully automated, iteratively refinable, massively more efficient. +CLI-Anything can flat-out **replace GUI-based agent approaches** โ€” no more screenshots, no brittle pixel-clicking. But here's the fun part: once you `/cli-anything` a GUI software, you can **synthesize agent tasks, evaluators, and benchmarks** entirely via code and terminal โ€” fully automated, iteratively refinable, massively more efficient. @@ -442,7 +442,7 @@ CLI-Anything can flat-out **replace GUI-based agent approaches** - no more scree ### ๐Ÿ—๏ธ Fully Automated 7-Phase Pipeline -From codebase analysis to PyPI publishing - the plugin handles architecture design, implementation, test planning, test writing, and documentation completely automatically. +From codebase analysis to PyPI publishing โ€” the plugin handles architecture design, implementation, test planning, test writing, and documentation completely automatically. @@ -476,7 +476,7 @@ Multi-layered validation: unit tests with synthetic data, end-to-end tests with ### ๐Ÿ Clean Package Architecture -All CLIs organized under cli_anything.* namespace - conflict-free, pip-installable, with consistent naming: cli-anything-gimp, cli-anything-blender, etc. +All CLIs organized under cli_anything.* namespace โ€” conflict-free, pip-installable, with consistent naming: cli-anything-gimp, cli-anything-blender, etc. @@ -499,7 +499,7 @@ SKILL.md files are auto-generated during Phase 6.5 of the pipeline using `skill_ ## ๐ŸŽฌ Demonstrations ### ๐ŸŽฏ General-Purpose -CLI-Anything works on any software with a codebase - no domain restrictions or architectural limitations. +CLI-Anything works on any software with a codebase โ€” no domain restrictions or architectural limitations. ### ๐Ÿญ Professional-Grade Testing Tested across 13 diverse, complex applications spanning creative, productivity, communication, diagramming, AI image generation, and AI content generation domains previously inaccessible to AI agents. @@ -508,7 +508,7 @@ Tested across 13 diverse, complex applications spanning creative, productivity, From creative workflows (image editing, 3D modeling, vector graphics) to production tools (audio, office, live streaming, video editing). ### โœ… Full CLI Generation -Each application received complete, production-ready CLI interfaces - not demos, but comprehensive tool access preserving full capabilities. +Each application received complete, production-ready CLI interfaces โ€” not demos, but comprehensive tool access preserving full capabilities. @@ -615,7 +615,7 @@ Each application received complete, production-ready CLI interfaces - not demos,
-> **100% pass rate** across all 1,588 tests - 1,138 unit tests + 450 end-to-end tests. +> **100% pass rate** across all 1,588 tests โ€” 1,138 unit tests + 450 end-to-end tests. --- @@ -625,7 +625,7 @@ Each CLI harness undergoes rigorous multi-layered testing to ensure production r | Layer | What it tests | Example | |-------|---------------|---------| -| **Unit tests** | Every core function in isolation with synthetic data | `test_core.py` - project creation, layer ops, filter params | +| **Unit tests** | Every core function in isolation with synthetic data | `test_core.py` โ€” project creation, layer ops, filter params | | **E2E tests (native)** | Project file generation pipeline | Valid ODF ZIP structure, correct MLT XML, SVG well-formedness | | **E2E tests (true backend)** | Real software invocation + output verification | LibreOffice โ†’ PDF with `%PDF-` magic bytes, Blender โ†’ rendered PNG | | **CLI subprocess tests** | Installed command via `subprocess.run` | `cli-anything-gimp --json project new` โ†’ valid JSON output | @@ -659,15 +659,15 @@ TOTAL 1,588 passed โœ… 100% pass rate ### ๐ŸŽฏ Core Design Principles -1. **Authentic Software Integration** - The CLI generates valid project files (ODF, MLT XML, SVG) and delegates to real applications for rendering. **We build structured interfaces TO software, not replacements**. +1. **Authentic Software Integration** โ€” The CLI generates valid project files (ODF, MLT XML, SVG) and delegates to real applications for rendering. **We build structured interfaces TO software, not replacements**. -2. **Flexible Interaction Models** - Every CLI operates in dual modes: stateful REPL for interactive agent sessions + subcommand interface for scripting/pipelines. **Run bare command โ†’ enter REPL mode**. +2. **Flexible Interaction Models** โ€” Every CLI operates in dual modes: stateful REPL for interactive agent sessions + subcommand interface for scripting/pipelines. **Run bare command โ†’ enter REPL mode**. -3. **Consistent User Experience** - All generated CLIs share unified REPL interface (repl_skin.py) with branded banners, styled prompts, command history, progress indicators, and standardized formatting. +3. **Consistent User Experience** โ€” All generated CLIs share unified REPL interface (repl_skin.py) with branded banners, styled prompts, command history, progress indicators, and standardized formatting. -4. **Agent-Native Design** - Built-in --json flag on every command delivers structured data for machine consumption, while human-readable tables serve interactive use. **Agents discover capabilities via standard --help and which commands**. +4. **Agent-Native Design** โ€” Built-in --json flag on every command delivers structured data for machine consumption, while human-readable tables serve interactive use. **Agents discover capabilities via standard --help and which commands**. -5. **Zero Compromise Dependencies** - Real software is a hard requirement - no fallbacks, no graceful degradation. **Tests fail (not skip) when backends are missing, ensuring authentic functionality**. +5. **Zero Compromise Dependencies** โ€” Real software is a hard requirement โ€” no fallbacks, no graceful degradation. **Tests fail (not skip) when backends are missing, ensuring authentic functionality**. --- @@ -707,7 +707,8 @@ cli-anything/ โ”œโ”€โ”€ ๐Ÿ“ drawio/agent-harness/ # Draw.io CLI (138 tests) โ”œโ”€โ”€ ๐Ÿงœ mermaid/agent-harness/ # Mermaid Live Editor CLI (10 tests) โ”œโ”€โ”€ โœจ anygen/agent-harness/ # AnyGen CLI (50 tests) -โ””โ”€โ”€ ๐Ÿ–ผ๏ธ comfyui/agent-harness/ # ComfyUI CLI (70 tests) +โ”œโ”€โ”€ ๐Ÿ–ผ๏ธ comfyui/agent-harness/ # ComfyUI CLI (70 tests) +โ””โ”€โ”€ ๐Ÿ›ก๏ธ adguardhome/agent-harness/ # AdGuardHome CLI (36 tests) ``` Each `agent-harness/` contains an installable Python package under `cli_anything./` with Click CLI, core modules, utils (including `repl_skin.py` and backend wrapper), and comprehensive tests. @@ -718,8 +719,8 @@ Each `agent-harness/` contains an installable Python package under `cli_anything | Command | Description | |---------|-------------| -| `/cli-anything ` | Build complete CLI harness - all 7 phases | -| `/cli-anything:refine [focus]` | Refine an existing harness - expand coverage with gap analysis | +| `/cli-anything ` | Build complete CLI harness โ€” all 7 phases | +| `/cli-anything:refine [focus]` | Refine an existing harness โ€” expand coverage with gap analysis | | `/cli-anything:test ` | Run tests and update TEST.md with results | | `/cli-anything:validate ` | Validate against HARNESS.md standards | @@ -732,7 +733,7 @@ Each `agent-harness/` contains an installable Python package under `cli_anything # Build from a GitHub repo /cli-anything https://github.com/blender/blender -# Refine an existing harness - broad gap analysis +# Refine an existing harness โ€” broad gap analysis /cli-anything:refine /home/user/gimp # Refine with a specific focus area @@ -870,16 +871,16 @@ CLI_ANYTHING_FORCE_INSTALLED=1 python3 -m pytest cli_anything//tests/ We welcome contributions! CLI-Anything is designed to be extensible: -- **New software targets** - Use the plugin to generate a CLI for any software with a codebase, then submit your harness via [`cli-anything-plugin/PUBLISHING.md`](cli-anything-plugin/PUBLISHING.md). -- **Methodology improvements** - PRs to `HARNESS.md` that encode new lessons learned -- **Plugin enhancements** - New commands, phase improvements, better validation -- **Test coverage** - More E2E scenarios, edge cases, workflow tests +- **New software targets** โ€” Use the plugin to generate a CLI for any software with a codebase, then submit your harness via [`cli-anything-plugin/PUBLISHING.md`](cli-anything-plugin/PUBLISHING.md). +- **Methodology improvements** โ€” PRs to `HARNESS.md` that encode new lessons learned +- **Plugin enhancements** โ€” New commands, phase improvements, better validation +- **Test coverage** โ€” More E2E scenarios, edge cases, workflow tests ### Limitations -- **Requires strong foundation models** - CLI-Anything relies on frontier-class models (e.g., Claude Opus 4.6, Claude Sonnet 4.6, GPT-5.4) for reliable harness generation. Weaker or smaller models may produce incomplete or incorrect CLIs that require significant manual correction. -- **Relies on available source code** - The 7-phase pipeline analyzes and generates from source code. When the target software only provides compiled binaries that require decompilation, harness quality and coverage will degrade substantially. -- **May require iterative refinement** - A single `/cli-anything` run may not fully cover all capabilities. Running `/refine` one or more times is often needed to push the CLI's performance and coverage to production quality. +- **Requires strong foundation models** โ€” CLI-Anything relies on frontier-class models (e.g., Claude Opus 4.6, Claude Sonnet 4.6, GPT-5.4) for reliable harness generation. Weaker or smaller models may produce incomplete or incorrect CLIs that require significant manual correction. +- **Relies on available source code** โ€” The 7-phase pipeline analyzes and generates from source code. When the target software only provides compiled binaries that require decompilation, harness quality and coverage will degrade substantially. +- **May require iterative refinement** โ€” A single `/cli-anything` run may not fully cover all capabilities. Running `/refine` one or more times is often needed to push the CLI's performance and coverage to production quality. ### Roadmap @@ -896,14 +897,14 @@ We welcome contributions! CLI-Anything is designed to be extensible: | Document | Description | |----------|-------------| -| [`cli-anything-plugin/HARNESS.md`](cli-anything-plugin/HARNESS.md) | The methodology SOP - single source of truth | -| [`cli-anything-plugin/README.md`](cli-anything-plugin/README.md) | Plugin documentation - commands, options, phases | +| [`cli-anything-plugin/HARNESS.md`](cli-anything-plugin/HARNESS.md) | The methodology SOP โ€” single source of truth | +| [`cli-anything-plugin/README.md`](cli-anything-plugin/README.md) | Plugin documentation โ€” commands, options, phases | | [`cli-anything-plugin/QUICKSTART.md`](cli-anything-plugin/QUICKSTART.md) | 5-minute getting started guide | | [`cli-anything-plugin/PUBLISHING.md`](cli-anything-plugin/PUBLISHING.md) | Distribution and publishing guide | Each generated harness also includes: -- `.md` - Architecture SOP specific to that application -- `tests/TEST.md` - Test plan and results documentation +- `.md` โ€” Architecture SOP specific to that application +- `tests/TEST.md` โ€” Test plan and results documentation --- @@ -925,13 +926,13 @@ If CLI-Anything helps make your software Agent-native, give us a star! โญ ## ๐Ÿ“„ License -MIT License - free to use, modify, and distribute. +MIT License โ€” free to use, modify, and distribute. ---
-**CLI-Anything** - *Make any software with a codebase Agent-native.* +**CLI-Anything** โ€” *Make any software with a codebase Agent-native.* A methodology for the age of AI agents | 13 professional software demos | 1,588 passing tests