cairn-cli
A thin command-line interface over cairn-core. Standard-library only.
uvx cairn --workspace ~/Documents/notes ls
Commands
cairn [--workspace DIR] [--json] <command>
ls [path] list a directory
tree [path] show the file tree
read <path> print a file (flattened .uni text)
create <path> [content] create a file ('-' reads stdin)
mkdir <path> create a folder
mv <path> <target_dir> move a file/folder
rename <path> <new_name> rename in place
rm <path> delete
edit <path> <old> <new> replace a unique occurrence
import <path> [--all] convert docx/pdf/pptx/csv/xlsx/md into .uni
grep <pattern> [path] search file contents
find <query> [path] search file names
tag <path> [tags...] get (no args) or set tags
tags show the workspace tag tree
retrieve <query> [-k N] find relevant documents
serve [--host H --port N] run the local HTTP API (contract for the web UI)
mcp run the MCP server (stdio) for Claude Code / Codex
--json makes any command emit machine-readable JSON.
Examples
export CAIRN_WORKSPACE=~/Documents/notes
cairn tree
echo "meeting notes" | cairn create inbox/2026-07-16.uni -
cairn tag inbox/2026-07-16.uni meetings q3
cairn retrieve "budget planning" -k 5
cairn serve # http://127.0.0.1:4177/api/health
Three faces, one core
cairn (this CLI), cairn-mcp-server (the MCP server), and the planned web UI
are all thin adapters over cairn-core, so they can never drift. Use the
CLI for scripting, mcp inside Claude Code / Codex, and serve to back the
web UI.
Metadata
Release files for cairn-cli 0.3.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| cairn_cli-0.3.1.tar.gz | 77.1 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| cairn_cli-0.3.1-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 91.3 kB
Release files / cairn_cli-0.3.1.tar.gz
| Download URL | cairn_cli-0.3.1.tar.gz |
|---|---|
| Size | 77.1 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
1f18b6d8852e1fc3e784cfe478b0169eae9fd8f5a4ad1ab7551a8fb64371ea3f
|
|
BLAKE2b-256 checksum How to use checksums |
5aa810374ae2e8a43363e0633bbbf10719845a96b94932d84aa6407cd490e4b2
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.11.28 {"installer":{"name":"uv","version":"0.11.28","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
|
Release files / cairn_cli-0.3.1-py3-none-any.whl
| Download URL | cairn_cli-0.3.1-py3-none-any.whl |
|---|---|
| Size | 14.2 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
4bcff7da5f732b6de039dd2b3338c7c983ff48402ec40f8b982fc0fb6f04c5f9
|
|
BLAKE2b-256 checksum How to use checksums |
941e9424fdb1b1f0b640300b7e65de3764b62b41787672a914cd603b10c867ac
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.11.28 {"installer":{"name":"uv","version":"0.11.28","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
|