Install
openclaw skills install craft-cliClawHub Security found sensitive or high-impact capabilities. Review the scan results before using.
Manage Craft documents via the craft CLI tool, supporting listing, searching, creating, updating, deleting, and exporting in JSON, table, or markdown formats.
openclaw skills install craft-cliInteract with Craft Documents via the craft CLI tool. Fast, token-efficient, LLM-ready.
The craft CLI binary should be installed at /usr/local/bin/craft.
If not installed:
curl -L https://github.com/nerveband/craft-cli/releases/download/v1.0.0/craft-darwin-arm64 -o craft
chmod +x craft
sudo mv craft /usr/local/bin/
Two Craft spaces are available:
~/clawd/skills/craft-cli/craft config set-api https://connect.craft.do/links/5VruASgpXo0/api/v1
~/clawd/skills/craft-cli/craft config set-api https://connect.craft.do/links/HHRuPxZZTJ6/api/v1
# Switch to wavedepth space
~/clawd/skills/craft-cli/craft-helper.sh wavedepth
# Switch to personal space
~/clawd/skills/craft-cli/craft-helper.sh personal
# Check current space
~/clawd/skills/craft-cli/craft-helper.sh current
Check current configuration:
~/clawd/skills/craft-cli/craft config get-api
# JSON format (default - LLM-friendly)
~/clawd/skills/craft-cli/craft list
# Human-readable table
~/clawd/skills/craft-cli/craft list --format table
# Markdown format
~/clawd/skills/craft-cli/craft list --format markdown
# Search for documents
~/clawd/skills/craft-cli/craft search "query terms"
# With table output
~/clawd/skills/craft-cli/craft search "query" --format table
# Get document by ID (JSON)
~/clawd/skills/craft-cli/craft get <document-id>
# Save to file
~/clawd/skills/craft-cli/craft get <document-id> --output document.md
# Different format
~/clawd/skills/craft-cli/craft get <document-id> --format markdown
# Create with title only
~/clawd/skills/craft-cli/craft create --title "My New Document"
# Create from file
~/clawd/skills/craft-cli/craft create --title "My Document" --file content.md
# Create with inline markdown
~/clawd/skills/craft-cli/craft create --title "Quick Note" --markdown "# Hello\nThis is content"
# Create as child of another document
~/clawd/skills/craft-cli/craft create --title "Child Doc" --parent <parent-id>
# Update title
~/clawd/skills/craft-cli/craft update <document-id> --title "New Title"
# Update from file
~/clawd/skills/craft-cli/craft update <document-id> --file updated-content.md
# Update with inline markdown
~/clawd/skills/craft-cli/craft update <document-id> --markdown "# Updated\nNew content"
# Update both title and content
~/clawd/skills/craft-cli/craft update <document-id> --title "New Title" --file content.md
~/clawd/skills/craft-cli/craft delete <document-id>
# Show API info and recent documents
~/clawd/skills/craft-cli/craft info
# List all available documents
~/clawd/skills/craft-cli/craft docs
~/clawd/skills/craft-cli/craft version
Set default format in config or use --format flag per command.
Override the configured API URL for any command:
~/clawd/skills/craft-cli/craft list --api-url https://connect.craft.do/links/ANOTHER_LINK/api/v1
The CLI provides clear error messages with exit codes:
Common errors:
authentication failed. Check API URL - Invalid/unauthorized API URLresource not found - Document ID doesn't existrate limit exceeded. Retry later - Too many requestsno API URL configured. Run 'craft config set-api <url>' first - Missing config# List all documents in wavedepth space
~/clawd/skills/craft-cli/craft config set-api https://connect.craft.do/links/5VruASgpXo0/api/v1
~/clawd/skills/craft-cli/craft list --format table
# Search for specific documents
~/clawd/skills/craft-cli/craft search "proposal" --format table
# Create a new document
~/clawd/skills/craft-cli/craft create --title "Project Notes" --markdown "# Initial notes\n\nStart here."
# Get the document ID from output, then update
~/clawd/skills/craft-cli/craft update <doc-id> --title "Updated Project Notes"
# Verify the update
~/clawd/skills/craft-cli/craft get <doc-id> --format markdown
# Get a specific document and save to file
~/clawd/skills/craft-cli/craft get <doc-id> --output exported-notes.md
# Get all documents as JSON (pipe to processing)
~/clawd/skills/craft-cli/craft list | jq '.[] | {id, title}'
# Search and extract specific fields
~/clawd/skills/craft-cli/craft search "meeting" | jq '.[].title'
craft config get-apicraft config set-api <url>--api-url flag instead of changing configSource code and documentation: https://github.com/nerveband/craft-cli
Current version: 1.6.0