craft-cliManage Craft documents via the craft CLI tool, supporting listing, searching, creating, updating, deleting, and exporting in JSON, table, or markdown formats.
Install via ClawdBot CLI:
clawdbot install nerveband/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 ' 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 --api-url flag instead of changing configSource code and documentation: https://github.com/nerveband/craft-cli
Current version: 1.6.0
Generated Mar 1, 2026
Marketing teams can use the Craft CLI to create, update, and organize campaign documents, such as content calendars or strategy briefs, across different spaces like business and personal. By leveraging JSON output for automation, they can integrate with LLMs to generate reports or analyze performance data, improving workflow efficiency and collaboration.
Software development teams can manage project documentation, including API specs and meeting notes, using the CLI to quickly search, create, and update documents. The ability to output in markdown or JSON formats allows for easy integration with version control systems and automated documentation pipelines, enhancing team productivity.
Researchers and academics can utilize the Craft CLI to organize research notes, literature reviews, and data analysis documents across personal and collaborative spaces. With search capabilities and markdown export, they can efficiently retrieve information and share findings, supporting systematic knowledge management in academic projects.
Freelancers can manage client projects by creating and updating documents for proposals, invoices, and progress reports using the CLI. Switching between spaces allows separation of business and personal notes, while JSON output enables integration with billing or project management tools for streamlined operations.
Legal professionals can draft, update, and search legal documents such as contracts or case notes with the CLI, using markdown formatting for clarity. The error handling and API override features ensure reliable access to sensitive documents, while JSON output facilitates data extraction for compliance or analysis purposes.
Offer a subscription-based service where teams pay a monthly fee for enhanced features like advanced analytics, team collaboration tools, and priority support. Revenue is generated through tiered pricing based on the number of users or documents, targeting small to medium-sized businesses in tech or marketing.
Sell enterprise licenses to large organizations that require custom integrations with existing systems, such as CRM or project management software. Revenue comes from one-time licensing fees and ongoing support contracts, focusing on industries like finance or healthcare with high data security needs.
Provide a free basic version of the CLI with limited features, such as document listing and creation, and charge for premium features like advanced search, API overrides, or bulk operations. Revenue is generated from upgrades by individual users or small teams, leveraging the open-source GitHub repository for community growth.
💬 Integration Tip
Use the default JSON output for seamless LLM integration and automate workflows by piping commands to scripts, such as using jq for data extraction.
Remote-control tmux sessions for interactive CLIs by sending keystrokes and scraping pane output.
Command-line tool to manage Google Workspace services including Gmail, Calendar, Drive, Sheets, Docs, Slides, Contacts, Tasks, People, Groups, and Keep.
Runs shell commands inside a dedicated tmux session named claw, captures, and returns the output, with safety checks for destructive commands.
A modern text-based browser. Renders web pages in the terminal using headless Firefox.
Write robust, portable shell scripts. Use when parsing arguments, handling errors properly, writing POSIX-compatible scripts, managing temp files, running commands in parallel, managing background processes, or adding --help to scripts.
NotebookLM CLI wrapper via `node {baseDir}/scripts/notebooklm.mjs`. Use for auth, notebooks, chat, sources, notes, sharing, research, and artifact generation/download.