- llm - LLM CLI tool (fork with markdown markup enhancements, originally by Simon Willison - Documentation)
- Claude Code - Anthropic's official agentic coding CLI
- Claude Code Router - Multi-provider routing proxy for Claude Code (Azure + Gemini dual-provider or Gemini-only)
- Python 3 - Required for llm
- uv - Modern Python package installer
- Node.js - JavaScript runtime (v20+, from repositories or nvm)
- Rust/Cargo - Rust toolchain (v1.85+, from repositories or rustup)
- Go - Go toolchain (v1.22+, optional, for imagemage)
- argc - Bash CLI framework and command runner (enables optional llm-functions integration)
- bubblewrap - Sandboxing tool for llm-tools-sandboxed-shell
- poppler-utils - PDF utilities (pdftotext for RAG)
- pandoc - Document converter (DOCX support for RAG)
- xsel - X11 clipboard tool (enables pbcopy/pbpaste on Linux)
- jq - Command-line JSON processor
- llm-cmd - Command execution and management
- llm-cmd-comp - AI-powered command completion (powers Ctrl+N)
- llm-tools-quickjs - JavaScript execution tool
- llm-tools-sqlite - SQLite database tool
- llm-jq - JSON processing tool
- llm-tools-sandboxed-shell - Sandboxed shell command execution
- llm-tools-patch - File manipulation tools (read, write, edit, multi_edit, info)
- llm-tools-context - Terminal history integration (exposes
contexttool to AI) - llm-fragments-site-text - Web page content extraction
- llm-fragments-pdf - PDF content extraction
- llm-fragments-github - GitHub repository integration
- llm-fragments-youtube-transcript - YouTube video transcript extraction with metadata
- llm-arxiv - arXiv paper search, fetch, and image extraction
- llm-fragments-dir - Load all text files from a local directory recursively
- llm-templates-fabric - Fabric prompt templates
- llm-tools-llm-functions - Bridge for optional llm-functions integration (enables custom tools in Bash/JS/Python)
- llm-gemini - Google Gemini models integration
- llm-vertex - Google Vertex AI Gemini models integration
- llm-openrouter - OpenRouter API integration
- llm-anthropic - Anthropic Claude models integration
- llm-git-commit - AI-powered Git commit message generation with interactive refinement
- llm-sort - Semantic sorting using LLM-based pairwise comparisons
- llm-classify - Text classification with confidence scoring using logprobs
- llm.yaml - Custom assistant template with security/IT expertise configuration (Optimized for cybersecurity and Linux tasks, includes
contextandsandboxed_shelltools by default) - llm-code.yaml - Code-only generation template (outputs clean, executable code without markdown)
- llm-wut.yaml - Command-line assistant for explaining terminal output and troubleshooting (concise 5-sentence responses, uses
contexttool automatically) - llm-assistant.yaml - AI pair programming template for Terminator terminal (provides intelligent debugging, command suggestions, and automatic execution in split panes)
- gitingest - Convert Git repositories to LLM-friendly text
- yek - Fast repository to LLM-friendly text converter (230x faster than alternatives, written in Rust)
- files-to-prompt - File content formatter for LLM prompts
- asciinema - Terminal session recorder (built from source for latest features)
- context - Terminal history extraction from asciinema recordings (CLI + LLM tool)
- Micro - Modern terminal text editor with llm-micro plugin for in-editor AI assistance
- imagemage - Gemini image generation CLI (requires Go 1.22+, only installed when Gemini is configured)
- onnx-asr - Speech-to-text transcription using NVIDIA Parakeet TDT (25 European languages, auto-punctuation)
- llm-assistant - TmuxAI-inspired AI assistant for Terminator terminal (automatic command execution, watch mode)
- AI-powered command completion (Ctrl+N) - see
llm-integration.bash/.zsh - Tab completion for llm commands (Zsh only) - see
llm-zsh-plugin - Custom llm wrapper with automatic template application - see
llm-common.sh - Automatic session recording with asciinema - see
llm-common.sh - macOS-style clipboard aliases (
pbcopy/pbpasteviaxselon Linux) - Common aliases and PATH configuration
-
~/.config/io.datasette.llm/- LLM configuration directoryextra-openai-models.yaml- Azure OpenAI model definitionstemplates/llm.yaml- Custom assistant template with security/IT expertise (cybersecurity focus)templates/llm-code.yaml- Code-only generation template (no markdown, no explanations)default_model.txt- Currently selected default model- API keys stored securely via llm's key management
-
~/.config/llm-tools/- Additional tool configurationasciinema-commit- Tracks asciinema version for update detection
-
$SESSION_LOG_DIR/- Session recording storage- Default:
/tmp/session_logs/asciinema/(temporary) or~/session_logs/asciinema/(permanent) - Contains
.castfiles with terminal session recordings - Configured via
SESSION_LOG_DIRenvironment variable in your shell RC file
- Default:
-
~/.config/io.datasette.llm/rag/- RAG collections (llm-tools-rag)- Contains ChromaDB vector databases and BM25 indices
Located in the integration/ subdirectory:
integration/llm-integration.bash- Bash integration (Ctrl+N keybinding)integration/llm-integration.zsh- Zsh integration (Ctrl+N keybinding)integration/llm-common.sh- Shared configuration (llm wrapper function, auto-recording)
These are automatically sourced from your .bashrc or .zshrc.
- Simon Willison - Original llm CLI tool and plugins (llm-gemini, llm-anthropic, llm-openrouter, llm-jq, llm-tools-sqlite, llm-tools-quickjs, llm-fragments-github, llm-cmd)
- c0ffee0wl - llm fork with markdown markup enhancements
- sigoden - argc Bash CLI framework and llm-functions framework
- Anthropic - Claude Code agentic coding CLI
- Astral - uv Python package manager
- Rust Foundation - Rust programming language and Cargo
- Node.js Foundation - Node.js JavaScript runtime
- Daniel Turkel - llm-fragments-pdf, llm-fragments-site-text
- Ryan Patterson - llm-cmd-comp plugin
- Dan Mackinlay - files-to-prompt (fork)
- Damon McMinn - llm-templates-fabric (fork)
- Daniel Miessler - Original Fabric prompt patterns
- ShamanicArts - llm-git-commit AI-powered commit messages
- vagos - llm-sort semantic sorting
- irthomasthomas - llm-classify text classification
- RKeelan - llm-fragments-dir directory fragment loader
- Bubblewrap Project - Sandboxing tool for unprivileged containers
- stedolan/jq - Command-line JSON processor
- Asciinema - Terminal session recorder
- Coderamp Labs - gitingest repository analyzer
- Zachary Yedidia - Micro modern terminal text editor
- ShamanicArts - llm-micro plugin for in-editor AI assistance
- bodo-run - yek fast repository converter
- istupakov - onnx-asr speech recognition
- NVIDIA - Parakeet TDT ASR model
This installation script is provided as-is. Individual tools have their own licenses:
- llm: Apache 2.0
- See individual tool repositories for details
To modify or extend this installation, see CLAUDE.md for detailed architecture documentation.
Key files to understand:
install-llm-tools.sh- Main installation script (7 phases, self-updating)integration/llm-common.sh- Shell wrapper function, auto-recordingllm-tools-context/- Terminal history extraction (CLI + LLM tool)llm-templates/- Custom template sources
Development workflow:
- Read CLAUDE.md to understand architecture
- Edit the scripts in the repository
- Test your changes
- Commit and push to git
- Changes pulled automatically on next run