Files
CLI-Anything/cli-hub
Yuhao 5b9ec80def Feature/cli matrix multi approach (#355)
* feat: CLI-Matrix with multi-approach stages, skill discovery, and matrix search

Introduce CLI-Matrix — curated multi-CLI workflow matrices that agents can
install in one command. The video-creation matrix bundles 11 CLIs across 8
production stages (AI video gen, capture, audio, voice/TTS, music, NLE
editing, captions, thumbnails).

Each stage now exposes a goal, alternative approaches (Python libs, cloud
APIs, native commands), and skill_search_hints that encourage agents to
dynamically discover relevant skills via `npx skills search` rather than
relying on hard-coded tool lists.

Key changes:
- matrix_registry.json: extended stage schema with goal, alternatives,
  skill_search_hints fields
- cli-hub matrix list/search/info/install commands
- matrix_skill.py: renders dynamic SKILL.md with stage tooling overview,
  install status, and aggregated discovery commands
- Fixed brittle parents[2] repo root detection with git-based lookup
- 85 tests passing (10 new)


* update cli-matrix

* feat(cli-matrix): eco-first capability-based matrix, v2 schema + S2-S5 SKILLs

- Add docs/cli-matrix/matrix_registry.schema.md describing v2 capability-based
  registry shape (capabilities[], providers with kind/requires/cost/quality/
  offline, recipes[], known_gaps[], decision rubric, suggest-to-user template).
- Rewrite cli-hub-matrix/video-creation/SKILL.md and matrix_registry.json (S1)
  around capabilities + providers + recipes instead of linear stages.
- Rename Vn -> Sn across cli-matrix-plan.md and test fixtures.
- Reorder scenarios by current completeness; rewrite S2 knowledge-research,
  S3 3d-cad, S4 game-development, S5 image-design in v2 capability form with
  full SKILL.md files.
- Add docs/cli-matrix/test-plans/video-creation.md with 13 long realistic
  end-to-end tasks as checkable todo lists, each exercising 5-9 capabilities.
- Move cli-matrix-plan.md and matrix_registry.schema.md under docs/cli-matrix/.


* Document preview protocol and Audacity autosave

Add the preview bundle protocol plan, record video matrix review evidence, and make one-shot Audacity project mutations persist to disk with E2E coverage.

* Update CLI matrix skill registry and video workflow

* chore(git): always ignore docs/* — working documents stay local


* feat(cli-matrix): video-creation skill WIP — sound design, source triage, render doctor, NLE refs, video_doctor script

- SKILL.md: adds sound.design capability, bundled video_doctor.py provider,
  recipe updates, and links to five new reference modules
- new references: art-direction-review, nle-shotcut-kdenlive, render-doctor,
  sound-design, source-triage; captions and story-structure-audio updated
- scripts/video_doctor.py: bundled probe/diagnose helper


* fix(cli-hub): preflight detects packages by import name or PyPI dist name (P1-3)

_package_available() now tries find_spec as-is, dash->underscore
normalized, then importlib.metadata dist lookup (PEP 503), so registry
entries like edge-tts are detected when installed. All lookup failures
degrade to unavailable instead of crashing preflight. Adds 6 tests.


* feat(cli-hub): distribute matrix skill content to installed skills, wheels, and Pages (P1-4)

- matrix install renders to ~/.cli-hub/matrix/<name>/SKILL.md and copies
  references/ and scripts/ beside it (pycache excluded, idempotent
  reinstall purges stale files); legacy flat <name>.SKILL.md still read
- content lookup chain: repo checkout -> bundled cli_hub/_matrix_data
  (vendored into sdist/wheel by setup.py build hooks + MANIFEST.in) ->
  published Pages URL -> stub
- new 'matrix install --skill-only' renders skill + assets without
  installing CLIs
- deploy-pages.yml: copy cli-hub-matrix/ into the site after the Jekyll
  build (served verbatim at /matrix/<name>/); triggers remain main-only
- 12 new tests in tests/test_matrix_skill_dist.py (142 total pass)


* feat(cli-matrix): register S2-S5 matrices and resync video-creation registry (P1-1, P1-2)

- add knowledge-research (S2, 12 caps), 3d-cad (S3, 12), game-development
  (S4, 10), image-design (S5, 9) derived from their SKILL.md drafts; full
  v2 shape with capabilities, providers, recipes, known_gaps; clis lists
  cross-checked against registry.json (unresolvable tools represented as
  public-cli/native/python/api/agent-skill providers instead)
- video-creation: add sound.design capability (5 providers, wired into 5
  recipes), register scripts/video_doctor.py as bundled-script provider
  under quality.review, cite the 5 new reference modules in provider
  notes, refresh description
- python provider package strings use import names (cv2, edge_tts,
  ffmpeg, skimage, ...) so preflight detection is robust to dist-name
  variants like opencv-python-headless
- fix homepage URLs to docs/cli-matrix/cli-matrix-plan.md; bump
  meta.updated to 2026-06-11


* feat(cli-hub): ship the unified Gallery design as the production homepage

Replace docs/hub/index.html with the finalized "Gallery / R2 Flip" main page
(Steel Sky palette default, Newsreader serif hero title, liquid-glass flip
cards, JS masonry catalog, and the unified Matrices layer with bidirectional
stitching). Production-indexable robots meta retained.

Stop tracking docs/cli-matrix/* — the CLI-Matrix working docs stay local and
confidential; add an explicit /docs/cli-matrix/ ignore rule.

* feat: CLI-Matrix command family + Hub docs/demos pages and responsive nav

---------
2026-06-14 17:27:52 +08:00
..

cli-hub

Package manager for CLI-Anything — a framework that auto-generates stateful CLI interfaces for GUI applications, making them agent-native.

Browse, install, and manage 40+ CLI harnesses for software like GIMP, Blender, Inkscape, LibreOffice, Audacity, OBS Studio, and more — all from your terminal.

Web Hub: clianything.cc

Install

pip install cli-anything-hub

Usage

# Browse all available CLIs, grouped by category
cli-hub list

# Filter by category (image, 3d, video, audio, office, ai, ...)
cli-hub list -c image

# Search by name, description, or category
cli-hub search "3d modeling"

# Show details for a CLI
cli-hub info gimp

# Install a CLI harness
cli-hub install gimp

# Update a CLI to the latest version
cli-hub update gimp

# Uninstall a CLI
cli-hub uninstall gimp

Preview Viewer

cli-hub also includes the generic preview consumer for preview-capable harnesses.

Use this split:

  • cli-anything-<software> preview ... creates or updates preview state
  • cli-hub previews ... inspects or opens that existing preview state

Canonical viewer commands:

# Inspect an existing preview bundle or live session
cli-hub previews inspect /path/to/bundle-or-session

# Render HTML for a bundle or live session
cli-hub previews html /path/to/bundle-or-session -o page.html

# Watch a live session over localhost
cli-hub previews watch /path/to/session --open --poll-ms 1500

# Open a bundle or live session directly in a browser
cli-hub previews open /path/to/bundle-or-session

For live sessions, cli-hub previews reads:

  • session.json for the current head
  • trajectory.json for the command-to-preview history
  • the current bundle manifest and artifacts

This command group never renders or publishes previews by itself.

What gets installed

Each CLI harness is a standalone Python package that wraps a real application (GIMP, Blender, etc.) with a stateful command-line interface. Every harness supports:

  • REPL mode: cli-anything-gimp launches an interactive session
  • One-shot commands: cli-anything-gimp project create --name my-project
  • JSON output: cli-anything-gimp --json project list for machine-readable output
  • Undo/redo: Stateful project management with full operation history

For AI agents

cli-hub is designed to be agent-friendly. AI coding agents can:

  1. pip install cli-anything-hub to get the package manager
  2. cli-hub search <keyword> or cli-hub list --json to discover tools
  3. cli-hub install <name> to install what they need
  4. Use --json output for structured data parsing
  5. For preview-capable harnesses, call cli-anything-<software> preview ... --json first, then inspect returned bundle/session paths with cli-hub previews ...

Available categories

3D, AI, Audio, Communication, Database, Design, DevOps, Diagrams, Game, GameDev, Generation, Graphics, Image, Music, Network, Office, OSINT, Project Management, Search, Streaming, Testing, Video, Web

JSON output

All listing commands support --json for machine-readable output:

cli-hub list --json
cli-hub search blender --json

Analytics

cli-hub sends anonymous usage events to help track adoption. The default provider is PostHog, while the legacy Umami path remains available via CLI_HUB_ANALYTICS_PROVIDER=umami. No personal data is collected.

Opt out:

export CLI_HUB_NO_ANALYTICS=1