A CLI for devdocs.io content. Search and read development documentation from the terminal or from automated workflows — scripts, editor integrations, LLM tool-use loops.
$ curl -fsSL https://raw.githubusercontent.com/jctosta/locadoc/main/install.sh | bash
Demo: install, download docsets, search, read — end-to-end.
What it does
- Offline docsets — downloaded once from
devdocs.io, indexed into local SQLite. - TTY-aware output — pretty tables on a terminal, stable JSON when piped.
- Fast search — direct port of the devdocs scoring algorithm, scoped or across every installed docset.
- Markdown rendering —
reademits ready-to-paste Markdown, fragment-sliceable by heading. - Single static binary — no Node runtime required on the host.
Commands
| locadoc docs | Fetch the manifest of available docsets. |
| locadoc ls | List installed docsets (--all for the full manifest). |
| locadoc download | Install one or more docsets. |
| locadoc update | Re-download stale docsets. |
| locadoc remove | Uninstall a docset. |
| locadoc search | Query installed docsets. |
| locadoc read | Render a page as Markdown, ANSI, or HTML. |
| locadoc skill | Manage the Claude Code skill integration. |
| locadoc self-update | Upgrade the binary from the latest release. |
| locadoc doctor | Sanity-check the installation. |
Use with Claude Code
locadoc ships with a Claude Code skill that teaches the model when and how to use it. Install it once and any future Claude Code session picks it up automatically.
locadoc skill install
The skill auto-triggers on API / library documentation questions and includes
allowed-tools: Bash(locadoc:*), so Claude doesn't need to ask for
permission on every invocation.
AI / automation
Schemas are stable within 0.x — safe to consume from scripts and LLM tool calls.
$ locadoc search 'promise.all' --json --limit 1 \
| jq -r '.[0] | "\(.docset) \(.path)"' \
| xargs -n2 locadoc read --json \
| jq -r '.markdown'
See the JSON schemas and exit codes in the README.