Generate and edit Draw.io, Mermaid, and Excalidraw diagrams from natural language using a structured JSON spec.
Documents
nudocs
Try itUpload documents to Nudocs.ai for rich editing and pull back the results as docx, md, or pdf.
What it does
Upload local markdown or other documents to Nudocs.ai and receive a shareable edit link for rich-text editing in the browser. After editing, download the updated content in your chosen format—docx (default), md, or pdf. Also supports listing existing documents, fetching edit links by ULID, and deleting documents. Requires the @nutrient-sdk/nudocs-cli and an API key from nudocs.ai.
When to use it
- Push a local Markdown draft into Nudocs.ai for browser-based rich-text editing
- Pull an updated document back in docx, md, or pdf after editing
- List existing Nudocs documents, fetch their edit links, or delete them
The skill document
Nudocs
Upload documents to Nudocs.ai for rich editing, get shareable links, and pull back the results.
Setup
- Install the CLI:
npm install -g @nutrient-sdk/nudocs-cli
-
Get your API key from https://nudocs.ai (click "Integration" after signing in)
-
Configure the key:
# Option 1: Environment variable
export NUDOCS_API_KEY="nudocs_your_key_here"
# Option 2: Config file
mkdir -p ~/.config/nudocs
echo "nudocs_your_key_here" > ~/.config/nudocs/api_key
Commands
nudocs upload # Upload and get edit link
nudocs list # List all documents
nudocs link [ulid] # Get edit link (last upload if no ULID)
nudocs pull [ulid] [--format fmt] # Download document (default: docx)
nudocs delete # Delete a document
nudocs config # Show configuration
Workflow
Upload Flow
- Create/write document content
- Save as markdown (or other supported format)
- Run:
nudocs upload - Share the returned edit link with user
Pull Flow
- User requests document back
- Run:
nudocs pull [ulid] --format - Read and present the downloaded file
Format Selection
| Scenario | Recommended Format |
|---|---|
| User edited with rich formatting | docx (default) |
| Simple text/code content | md |
| Final delivery/sharing | pdf |
See references/formats.md for full format support.
Natural Language Triggers
Recognize these user intents:
Upload/Send:
- "send to nudocs"
- "upload to nudocs"
- "open in nudocs"
- "edit this in nudocs"
- "let me edit this in nudocs"
- "put this in nudocs"
Pull/Fetch:
- "pull it back"
- "pull from nudocs"
- "get that doc"
- "fetch from nudocs"
- "download from nudocs"
- "grab the updated version"
- "what did I change"
- "get my edits"
Link:
- "get the nudocs link"
- "share link"
- "where's that doc"
- "nudocs url"
List:
- "show my nudocs"
- "list my documents"
- "what docs do I have"
- "my nudocs documents"
Document Best Practices
Before uploading, ensure good structure:
- Clear heading hierarchy (H1 → H2 → H3)
- Consistent spacing
- Appropriate list formatting
- Concise paragraphs (3-5 sentences)
See references/document-design.md for templates and guidelines.
Example Session
User: Write me a blog post about remote work and send it to Nudocs
Agent:
1. Writes blog-remote-work.md with proper structure
2. Runs: nudocs upload blog-remote-work.md
3. Returns: "Here's your Nudocs link: https://nudocs.ai/file/01ABC..."
User: *edits in Nudocs, adds formatting, images*
User: Pull that back
Agent:
1. Runs: nudocs pull --format docx
2. Reads the downloaded file
3. Returns: "Got your updated document! Here's what changed..."
Error Handling
| Error | Cause | Solution |
|---|---|---|
| "No API key found" | Missing credentials | Set NUDOCS_API_KEY or create config file |
| "DOCUMENT_LIMIT_REACHED" | Free tier limit (10 docs) | Delete old docs or upgrade to Pro |
| "Unauthorized" | Invalid API key | Regenerate key in Nudocs settings |
| "No ULID provided" | Missing document ID | Specify ULID or upload a doc first |
Links
- CLI: https://github.com/PSPDFKit/nudocs-cli (
@nutrient-sdk/nudocs-clion npm) - MCP Server: https://github.com/PSPDFKit/nudocs-mcp-server
- Nudocs: https://nudocs.ai
Questions people ask
- Which download formats are supported?
- docx is the default. md and pdf are also supported—docx for rich-formatted edits, md for simple text or code, and pdf for final delivery.
- How do I authenticate with Nudocs?
- Set the NUDOCS_API_KEY environment variable, or write the key to ~/.config/nudocs/api_key. Get the key from the Integration section of nudocs.ai after signing in.
- Are there account-level limits?
- The free tier is capped at 10 documents. A DOCUMENT_LIMIT_REACHED error means you need to delete old docs or upgrade to Pro.
Related skills
Find why your productivity system keeps failing, then apply the smallest fix — capacity math, bottleneck routing, durable local notes.
Stores durable facts in a categorized, plain-markdown vault on disk, alongside your agent's built-in memory.
Join a video meeting as an AI bot with voice, avatar, and screenshare across four operating modes.
Fetch raw ad creative, app, ranking, and revenue data from AdMapix as structured JSON.
Write, debug, and tune Playwright specs with locator strategy, trace diagnosis, and CI-aware timeouts.
More from jdrhyne
Browse all skillsNatural-language Jira interaction that reads, drafts, creates, and updates issues.
Reconstruct missing conversation context after compaction or truncation using channel and session APIs.
Query and audit Google Ads accounts via browser automation or the Google Ads API, including keyword pauses.
Query Google Search Console data from the CLI for search analytics and indexing checks.
Convert, OCR, extract, redact, watermark, and sign PDF and Office documents inside OpenClaw via the Nutrient DWS plugin.
Persistent TODO scratch pad for tracking tasks across sessions. Use when the user asks to add, list, complete, remove, or summarize tasks in a portable workspace Markdown file. Uses stable task IDs and exact matching; heartbeat reporting is opt-in and count-only.