asky is an AI-powered web search CLI with LLM tool-calling capabilities.
It (invoked as asky or ask) provides a command-line interface that brings AI-powered search and research capabilities directly to your terminal. It uses LLMs and tools to synthesize answers from the web (or from local files and CLI commands).
asky is a single-command application. You provide a command, and you receive an output.
It intentionally avoids being a Terminal User Interface (TUI). While TUIs have their place, they can sometimes feel confusing and unintuitive for text-based conversational tasks. When using a terminal, the expectation is a straightforward, streamlined experience: input a command, read the output, and move on.
asky embraces this philosophy. It does not take over your screen. It feels like a native Unix tool that happens to be an AI agent, plugging seamlessly into your existing workflows.
- Multi-Model Support: Easily define and switch between various LLMs and providers that support OpenAI compatible APIs.
- Deep Research Mode: A specialized mode for an iterative, RAG-backed investigation across web sources and local data.
- Tool-Calling Integration: Models autonomously search the web, fetch URLs, and use the current date/time to provide accurate answers.
- Custom Tools: Expose any CLI command as a tool for the LLM.
- User Memory (Elephant Mode): Cross-session persistent memory that allows the LLM to learn facts and preferences about you across different conversations.
- Smart Context Management: Automatically summarizes older conversation history to maximize context window usage.
- File Prompts: Load complex prompts directly from files using
file://URIs. - Token Efficient: It counts token usage and keeps the model informed about remaining context capacity.
The extensive details of asky's operation are documented in the following guides:
- Configuration and Setup: Managing TOML config files, API keys, Model aliases, and Sessions.
- Deep Research Mode (
-r): Advanced web and local document research workflow. - User Memory & Elephant Mode (
-em): Persistent cross-session global and session-scoped memory. - Custom Tools: Extending asky by allowing the LLM to run local CLI commands.
- Library Usage Guide: Programmatic usage (
asky.api), including full configuration and request options. - Research Evaluation: Guide for evaluating retrieval quality across models and parameters.
pip install asky-cliOr install from source:
pip install -e .To enable the optional iTerm2 context integration:
pip install "asky-cli[iterm]"
# Or via uv
uv tool install "asky-cli[iterm]"# Basic query
asky what is the correct temperature for green tea
# Research Mode (Deep web & local search)
asky -r "Compare the latest iPhone vs Samsung flagship specs and reviews"
# Continue from a previous query
asky -c "~1" explain more
# Persistent Sessions
asky -ss "Project X" "Let's brainstorm architectures"
# Use a specific model
asky -m gf "Explain quantum entanglement"➜ ~ asky /wh delft
Dispatching tool call: web_search with args {'q': 'weather in Delft'}
Dispatching tool call: get_url_content with args {'urls': ...}
The weather in **Delft, South Holland, Netherlands** is currently **45°F and Cloudy with Showers in the Vicinity** (as of 4:20 pm CET).
Query completed in 3.88 secondsRun asky --help for the full list of available commands and flags.
