CLI Router
Routes tasks to the most appropriate CLI tool based on semantic intent matching.
Trigger Conditions
Activate when task involves:
- Shell/terminal operations
- File search or navigation
- Code search (semantic or pattern)
- Data processing (CSV, JSON)
- Visualization generation
- External tool invocation
CLI Categories
| Category |
Tools |
Triggers |
| ai_llm |
claude, gemini, codex, amp, aider |
AI help, implement, explain |
| semantic_search |
ck, ast-grep, osgrep |
semantic search, find code, pattern |
| knowledge_graph |
cypher-shell, turbovault |
graph, neo4j, knowledge |
| data_processing |
qsv, csvtk, nu, jq |
csv, json, transform, data |
| file_navigation |
yazi, broot, fd, rg |
browse, find files, navigate |
| code_quality |
bat, difftastic, delta |
diff, syntax, format |
| visualization |
d2, mermaid, mermaid-ascii |
diagram, flowchart, visual |
| mcp_tools |
mcp-skillset, lootbox, automcp |
mcp, skills, tools |
| productivity |
fabric, atuin, btop, zellij |
patterns, history, monitor |
| document |
docling, pdf-search, qmd |
pdf, document, markdown |
Routing Logic
# Use cli-index for semantic routing
cli-index route "{user_intent}"
# Example output:
# tool: ck
# category: semantic_search
# confidence: 0.85
# command_hint: ck --sem "async functions" src/
Decision Tree
CLI Task Detected
│
├── Code search?
│ ├── Semantic? → ck --sem
│ ├── Pattern/AST? → ast-grep
│ └── Grep-like? → rg
│
├── File operations?
│ ├── Navigate? → yazi | broot
│ ├── Find files? → fd
│ └── Search content? → rg
│
├── Data processing?
│ ├── CSV? → qsv | csvtk
│ ├── JSON? → jq | sj
│ └── Structured? → nu
│
├── Visualization?
│ ├── Diagrams? → d2
│ ├── Flowcharts? → mermaid
│ └── ASCII? → mermaid-ascii
│
├── AI assistance?
│ ├── Claude preferred? → claude
│ ├── Long context? → gemini
│ └── OpenAI? → codex
│
└── Document processing?
├── PDF? → docling | pdf-search
└── Markdown? → qmd
Commands
# Search for matching tools
cli-index search "semantic code search"
# Route to best tool
cli-index route "find async functions in codebase"
# List tools by category
cli-index list semantic_search
# Get tool info
cli-index info ck
# Suggest tool chain
cli-index suggest "search code then visualize dependencies"
# Verify all tools available
cli-index verify
Integration
- cli-index: Primary routing CLI
- ck: Semantic code search with embeddings
- reasoning-index: Command framework routing
- mcp-skillset: Skill discovery
Quick Reference
semantic_search: ck --sem "query" path/
pattern_search: ast-grep -p "pattern"
file_find: fd "pattern"
content_search: rg "pattern"
csv_process: qsv [cmd] file.csv
json_query: jq ".path" file.json
diagram: d2 input.d2 output.svg
ai_help: claude -p "query"
1---2name: cli-router3description: Routes tasks to locally installed CLI tools using semantic matching. Triggers on tasks requiring shell commands, file operations, code search, data processing, visualization, or external tool invocation. Uses cli-index for semantic routing.4---56# CLI Router78Routes tasks to the most appropriate CLI tool based on semantic intent matching.910## Trigger Conditions1112Activate when task involves:13- Shell/terminal operations14- File search or navigation15- Code search (semantic or pattern)16- Data processing (CSV, JSON)17- Visualization generation18- External tool invocation1920## CLI Categories2122| Category | Tools | Triggers |23|:---------|:------|:---------|24| **ai_llm** | claude, gemini, codex, amp, aider | AI help, implement, explain |25| **semantic_search** | ck, ast-grep, osgrep | semantic search, find code, pattern |26| **knowledge_graph** | cypher-shell, turbovault | graph, neo4j, knowledge |27| **data_processing** | qsv, csvtk, nu, jq | csv, json, transform, data |28| **file_navigation** | yazi, broot, fd, rg | browse, find files, navigate |29| **code_quality** | bat, difftastic, delta | diff, syntax, format |30| **visualization** | d2, mermaid, mermaid-ascii | diagram, flowchart, visual |31| **mcp_tools** | mcp-skillset, lootbox, automcp | mcp, skills, tools |32| **productivity** | fabric, atuin, btop, zellij | patterns, history, monitor |33| **document** | docling, pdf-search, qmd | pdf, document, markdown |3435## Routing Logic3637```bash38# Use cli-index for semantic routing39cli-index route "{user_intent}"4041# Example output:42# tool: ck43# category: semantic_search44# confidence: 0.8545# command_hint: ck --sem "async functions" src/46```4748## Decision Tree4950```51CLI Task Detected52 │53 ├── Code search?54 │ ├── Semantic? → ck --sem55 │ ├── Pattern/AST? → ast-grep56 │ └── Grep-like? → rg57 │58 ├── File operations?59 │ ├── Navigate? → yazi | broot60 │ ├── Find files? → fd61 │ └── Search content? → rg62 │63 ├── Data processing?64 │ ├── CSV? → qsv | csvtk65 │ ├── JSON? → jq | sj66 │ └── Structured? → nu67 │68 ├── Visualization?69 │ ├── Diagrams? → d270 │ ├── Flowcharts? → mermaid71 │ └── ASCII? → mermaid-ascii72 │73 ├── AI assistance?74 │ ├── Claude preferred? → claude75 │ ├── Long context? → gemini76 │ └── OpenAI? → codex77 │78 └── Document processing?79 ├── PDF? → docling | pdf-search80 └── Markdown? → qmd81```8283## Commands8485```bash86# Search for matching tools87cli-index search "semantic code search"8889# Route to best tool90cli-index route "find async functions in codebase"9192# List tools by category93cli-index list semantic_search9495# Get tool info96cli-index info ck9798# Suggest tool chain99cli-index suggest "search code then visualize dependencies"100101# Verify all tools available102cli-index verify103```104105## Integration106107- **cli-index**: Primary routing CLI108- **ck**: Semantic code search with embeddings109- **reasoning-index**: Command framework routing110- **mcp-skillset**: Skill discovery111112## Quick Reference113114```yaml115semantic_search: ck --sem "query" path/116pattern_search: ast-grep -p "pattern"117file_find: fd "pattern"118content_search: rg "pattern"119csv_process: qsv [cmd] file.csv120json_query: jq ".path" file.json121diagram: d2 input.d2 output.svg122ai_help: claude -p "query"123```