Agent skill · Code Review & Quality

ccw-cli-tools

CLI tools execution specification (gemini/claude/codex/qwen/opencode) with unified prompt template, mode options, and auto-invoke triggers for code analysis and implementation tasks. Supports configurable CLI endpoints for analysis, write, and review modes.

majiayu000github.com/majiayu000GitHub ↗
claude-codeMIT
Install
npx skills add majiayu000/claude-skill-registry --skill ccw-cli-tools --agent claude-code

Same command for any agent — swap --agent for codex, cursor, copilot.

Facts
Files in the skill folder: 2
SKILL.md size: 20 KB
Bundled scripts: none
Version: 1.0.0
Path: skills/ai-llm/ccw-cli-tools/SKILL.md
Open the folder on GitHub →
Where it comes from
Stars: 534
Language: HTML

Weekly change comes from our own snapshots, not the repository page — it measures attention, not adoption.

Review
written from the skill's own SKILL.md · Aug 5, 2026

What it does

Orchestrates CLI tool usage through a configuration-driven workflow. It loads a global configuration file, infers user intent and required capabilities, selects an enabled tool (with models), builds a 6-field prompt, selects an execution rule, runs a CLI command, and handles results with fallbacks to secondary models or tools if needed.

How it works

  • Initialization: Checks in-memory configuration; if absent, reads ~/.claude/cli-tools.json via Read(file_path="~/.claude/cli-tools.json") and parses tools for enabled, primaryModel, secondaryModel, tags, and type.
  • Process Flow: Follows STEP 1 load config, STEP 2 understand intent, STEP 3 select tool (explicit --tool if provided, else tag-based matching, else first enabled tool), STEP 4 build prompt using a 6-field template (PURPOSE, TASK, MODE, CONTEXT, EXPECTED, CONSTRAINTS), STEP 5 select rule via --rule, STEP 6 execute command: ccw cli -p "<PROMPT>" --tool <tool> --mode <mode> --rule <rule>, STEP 7 handle results with success or fallback to secondaryModel or another tool.
  • Configuration: Reads from ~/.claude/cli-tools.json (memory-first when available). Structure of each tool includes enabled, primaryModel, secondaryModel, tags, and type.
  • Prompt Template: Uses the universal 6-field template for all commands, including PURPOSE, TASK, MODE, CONTEXT, EXPECTED, and CONSTRAINTS.

When to use it

  • When you want to perform code analysis, implementation, or review tasks via CLI-tools, selected from a configured set of tools, with a unified prompt and routing based on capabilities.

What it can touch

  • Tools: gemini (builtin), qwen (builtin), codex (builtin), claude (builtin), opencode (builtin) as reference. The actual touch depends on enabled status and primaryModel/secondaryModel in ~/.claude/cli-tools.json.
  • Execution: ccw cli -p prompts fed to the selected tool via --tool, --mode, and --rule.

Caveats

  • Requires ~/.claude/cli-tools.json to exist for non-in-memory setups. Configuration may differ between environments; tool availability and models come from the file.
  • Default behavior if no tag match: use the first enabled tool in the config.
  • Tool selection prioritizes explicit tool specification over tag-based routing, then falls back to the first enabled tool.
From the SKILL.md

# CLI Tools - Unified Execution Framework **Purpose**: Structured CLI tool usage with configuration-driven tool selection, unified prompt templates, and quality-gated execution. **Configuration**: `~/.claude/cli-tools.json` (Global, always read at initialization) ## Initialization (Required First Step) **Before any tool selection or recommendation**: 1. Check if configuration exists in memory: - If configuration is already in conversation memory → Use it directly - If NOT in memory → Read the configuration file: ```bash Read(file_path="~/.claude/cli-tools.json") ``` 2. Parse the JSON to understand: - Available tools and their `enabled` status - Each tool's `primaryModel` and `secondaryModel` - Tags defined for tag-based routing - Tool types (builtin, cli-wrapper, api-endpoint) 3. Use configuration throughout the selection process **Why**: Tools, models, and tags may change. Configuration file is the single source of truth. **Optimization**: Reuse in-memory configuration to avoid redundant file reads. ## Process Flow ``` ┌─ USER REQUEST │ ├─ STEP 1: Load Configuration │ ├─ Check if configuration exists in conversation memory │ └─ If NOT in memory → Read(file_path="~/.claude/cli-tool

What's inside
Steps it walks through
  1. Initialization (Required First Step)
  2. Process Flow
  3. Configuration Reference
  4. Configuration File Location
  5. Reading Configuration
  6. Configuration Structure
  7. Expected Tools (Reference Only)
  8. Configuration Fields
  9. Universal Prompt Template
  10. Field Specifications
  11. CLI Execution Modes
  12. MODE: analysis
  13. MODE: write
  14. MODE: review
Ships with 1 file
  • metadata.json
Commands it runs
Read configuration file
cat ~/.claude/cli-tools.json
ccw cli -p "PURPOSE: [goal] + [why] + [success criteria] + [scope]
ccw cli -p "<PROMPT>" --tool <tool-id> --mode <analysis|write|review>
Single directory
ccw cli -p "CONTEXT: @**/* @../shared/**/*" \
Multiple directories
ccw cli -p "..." \
ccw cli -p "Continue analyzing" --tool <tool-id> --mode analysis --resume              # Resume last
ccw cli -p "Fix issues found" --tool <tool-id> --mode write --resume <id>              # Resume specific
More from claude-skill-registry
All skills →
About this skill
What does the ccw-cli-tools skill do?

CLI tools execution specification (gemini/claude/codex/qwen/opencode) with unified prompt template, mode options, and auto-invoke triggers for code analysis and implementation tasks. Supports configurable CLI endpoints for analysis, write, and review modes.

How do I install it?

Run `npx skills add majiayu000/claude-skill-registry --skill ccw-cli-tools --agent claude-code` — it drops the skill into your project so the agent can pick it up. Swap the --agent value for codex, cursor or copilot if you use one of those.

Where does this skill come from?

From majiayu000/claude-skill-registry, a repository with 534 stars. We read it straight from the repository tree rather than a submitted listing, so what you see here is what is actually published.

Is a popular skill a good skill?

Not necessarily. Stars measure attention, not adoption — a repository can trend for a week and be abandoned. That is why we show the weekly change from our own snapshots next to the total, instead of a single flattering number.

Keep going