artyfax
v0.3.1
Published
CLI for Artyfax - your personal document library. Save, theme, search, and share.
Downloads
196
Maintainers
Readme
artyfax
CLI for Artyfax - your personal document library. Save, theme, search, and share your documents from the terminal.
Installation
npm install -g artyfaxRequires Node.js 20 or later.
The command is artyfax. If you prefer brevity, arty and ax are built-in aliases for the same command - use whichever you like.
Quick start
# Set your API key
export ARTYFAX_API_KEY="your-api-key"
# Save a document
artyfax save notes.md --category inbox
# List your documents
artyfax list
# Search your library
artyfax search "deployment guide"
# Check your setup
artyfax doctorCommands
Documents
| Command | Description |
|---------|-------------|
| artyfax save <file> | Save a document (markdown or HTML) |
| artyfax save --url <url> | Save from a URL (server-side extraction) |
| artyfax read <slug> | Read document content (handles E2EE decryption) |
| artyfax list | List documents |
| artyfax get <slug> | Document metadata as JSON |
| artyfax search <query> | Full-text search |
| artyfax update <slug> <file> | Push updated content (auto-encrypts secure docs) |
| artyfax metadata <slug> | Update document metadata |
| artyfax delete <slug> | Delete a document |
| artyfax open <slug> | Open document in browser |
| artyfax secure <slug> | Encrypt a document |
| artyfax unsecure <slug> | Remove encryption |
Shares
| Command | Description |
|---------|-------------|
| artyfax share create <slug> | Create a share link |
| artyfax share list [slug] | List shares |
| artyfax share revoke <hash> | Revoke a share link |
Sub-resources
| Command | Description |
|---------|-------------|
| artyfax cat list | List categories with document counts |
| artyfax tag list | List tags with counts |
| artyfax version list <slug> | Version history |
| artyfax version restore <slug> | Restore a previous version |
Annotations
| Command | Description |
|---------|-------------|
| artyfax annotation list <slug> | List a document's annotations (--include-recipients, --since) |
| artyfax annotation search <query> | Search across annotations |
Snippets
| Command | Description |
|---------|-------------|
| artyfax snippets | List snippets (--type, --tag, --starred, --limit) |
| artyfax snippets search <query> | Search snippets (--type, --limit) |
| artyfax snippets show <id> | Show a snippet |
| artyfax snippets new | Create a snippet (--text/--file/--image, --type, --tags, …) |
| artyfax snippets delete <id> | Delete a snippet |
| artyfax snippets star <id> | Star a snippet |
| artyfax snippets unstar <id> | Unstar a snippet |
Projects and work
| Command | Description |
|---------|-------------|
| artyfax init [prefix] | Create or refresh ARTYFAX.md for a project board |
| artyfax project list | List projects |
| artyfax project create "Name" --prefix XX | Create a project (--workspaces "A,B" to scope, --description) |
| artyfax work | Show the board grouped by status |
| artyfax work list | List work items (--project, --status, --type, --agent) |
| artyfax work next | Pick the next item from Up Next (--agent) |
| artyfax work start <id> | Move an item to In Progress |
| artyfax work done <id> | Move an item to Done |
| artyfax work status <id> <status> | Set an item's status |
| artyfax work create "Title" --project XX | Create a work item (--status, --type, --agent) |
| artyfax tasks <id> | List a work item's tasks |
| artyfax task <id> "text" <active\|done\|pending> | Set a task's state |
| artyfax workspace list | List workspaces |
Work IDs (e.g. AX-2) are accepted anywhere a slug or UUID is.
Tools
| Command | Description |
|---------|-------------|
| artyfax doctor | Verify CLI setup |
| artyfax skill install | Install Artyfax skills for Claude Code |
Global flags
| Flag | Description |
|------|-------------|
| --json | Machine-readable JSON output |
| --yes, -y | Skip interactive confirmations |
| --api-key <key> | API key (prefer env var) |
| --endpoint <url> | API endpoint |
| --help, -h | Show help |
| --version, -v | Show version |
Every command supports --help for detailed usage and examples:
artyfax save --help
artyfax share --helpSlug resolution
Commands accept documents by full slug, bare name, or UUID:
artyfax read inbox/my-doc # full slug
artyfax read my-doc # bare name (resolves automatically)
artyfax get 12345678-... # UUIDE2E Encryption
Artyfax supports client-side encryption. The CLI handles encryption and decryption transparently.
# Save an encrypted document
artyfax save secret.md --secure
# Read decrypts automatically (prompts for passphrase)
artyfax read inbox/secret
# Update auto-encrypts if the target is secure
artyfax update inbox/secret updated.md
# Set passphrase via env var to skip the prompt
export ARTYFAX_SECURE_PASSPHRASE="your-passphrase"Environment variables
| Variable | Description |
|----------|-------------|
| ARTYFAX_API_KEY | API key for authentication (required) |
| ARTYFAX_ENDPOINT | API endpoint URL (default: https://artyfax.io) |
| ARTYFAX_SECURE_PASSPHRASE | E2EE passphrase (avoids interactive prompt) |
License
MIT
