llms.txt Content
---
name: keenable-cli
description: Install and use the Keenable CLI for fast web search and page fetching from the terminal. Use when you need to search the web, fetch a page as clean markdown, or configure Keenable as the search provider (MCP) for AI clients like Claude Code or Cursor.
---
# Keenable CLI
`keenable` is a single-binary CLI for Keenable's web search and content APIs. Search and fetch work without login on a free tier; logging in raises rate limits. Default output is YAML, designed to be parsed by agents.
## Installation
Homebrew (macOS / Linux):
```bash
brew install keenableai/tap/keenable-cli
```
Installer script (macOS / Linux, installs to `~/.cargo/bin` or `~/.local/bin`; two steps so no pipe is needed):
```bash
curl --proto '=https' --tlsv1.2 -LsSf -o /tmp/keenable-install.sh \
https://github.com/keenableai/keenable-cli/releases/latest/download/keenable-cli-installer.sh
sh /tmp/keenable-install.sh
```
The installer updates PATH for future shells only. To use `keenable` in the current shell, source the env file it wrote (or restart the shell). Sourcing both covers either install dir — `~/.cargo/env` may exist from rustup even when keenable went to `~/.local/bin`:
```bash
[ -f "$HOME/.cargo/env" ] && . "$HOME/.cargo/env"
[ -f "$HOME/.local/bin/env" ] && . "$HOME/.local/bin/env"
```
Windows (PowerShell):
```powershell
Invoke-WebRequest -OutFile $env:TEMP\keenable-install.ps1 `
https://github.com/keenableai/keenable-cli/releases/latest/download/keenable-cli-installer.ps1
& $env:TEMP\keenable-install.ps1
```
From source: `cargo install --git https://github.com/keenableai/keenable-cli`
Verify with `keenable --version`. Update via `brew upgrade keenable-cli` or by re-running the installer.
## Authentication (optional)
```bash
# Device-code flow: prints a link + code for the user to approve. Works in headless/agent environments.
keenable login
# Save an API key directly (CI, servers)
keenable login --api-key keen_***
# Clear credenti