Token导航 LogoToken导航TokenDH.com
研究检索敏感数据github未标认证来源可访问许可证需确认审计提醒

paperless-ngx无纸化 NGX

Agent Skill

paperless-ngx 用于查找、检索和筛选相关信息,适合在 Codex、Claude、Cursor、Gemini CLI 中需要根据关键词、任务场景或来源线索快速定位候选结果时使用。可结合来源仓库、安装命令和原始 README 继续核验具体用法。安装前建议确认权限范围、维护状态,以及是否会触发联网、命令执行或文件读写。

总安装

196

周安装

8

GitHub Stars

35

下载量

63
CodexClaudeCursorGemini CLI

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

GitHub

来源数

2

许可证

unknown

最后核验

2026-05-01

来源状态

来源可访问

安装方式

通过对话安装

复制提示词发给支持本地命令或 Skills 的 AI 助手,先确认命令和权限,再让它执行。

请帮我安装这个 Agent Skill:paperless-ngx(无纸化 NGX)
来源仓库:https://github.com/jmagar/claude-homelab
仓库路径:skills/paperless-ngx
安装命令:
npx skills add https://github.com/jmagar/claude-homelab --skill paperless-ngx
安装前请先检查当前环境是否支持对应 CLI,并向我确认将要执行的命令、安装目录、联网范围和文件读写权限;确认后再执行。

命令行安装

复制命令到本机终端执行。该命令会通过 npx skills 从第三方来源获取 Skill;本站只展示命令,不托管安装包,也不自动执行。

skills.shnpx skills
npx skills add https://github.com/jmagar/claude-homelab --skill paperless-ngx

简介

paperless-ngx 技能聚焦于文档管理与检索支持。

  • 可用于构建私有知识库或自动化归档流程。paperless-ngx 属于研究检索类 Skill,可作为该场景下的辅助能力补充。
  • 安装后可在 Claude 等平台调用,需配合本地实例使用。
  • 若涉及文件读写,务必确保路径安全与权限合规。
  • 建议先行部署 Paperless-NGX 服务端再启用此技能。

SKILL.md

Paperless-ngx Skill

⚠️ MANDATORY SKILL INVOCATION ⚠️

YOU MUST invoke this skill (NOT optional) when the user mentions ANY of these triggers:

  • "upload document", "add document to paperless", "scan to paperless"
  • "search paperless", "find document", "search documents"
  • "tag document", "add tags", "manage tags in paperless"
  • "manage correspondents", "add correspondent", "list correspondents"
  • "update document", "edit document metadata", "change document type"
  • "archive document", "export document", "download document"
  • "delete document", "remove document from paperless"
  • "list my documents", "show recent documents", "what documents do I have"
  • Any mention of Paperless-ngx, document management, OCR, or paperless office

Failure to invoke this skill when triggers occur violates your operational requirements.


Purpose

This skill provides read-write access to a self-hosted Paperless-ngx instance for document management with OCR. Paperless-ngx transforms physical documents into a searchable online archive with full-text search, tagging, and metadata management.

Core capabilities:

  • Upload documents with auto-OCR and metadata extraction
  • Search documents by content, tags, correspondent, or date
  • Manage tags, correspondents, and document types
  • Update document metadata (title, tags, correspondent, dates)
  • Archive and export operations
  • Delete documents (with confirmation)
  • Bulk operations on multiple documents

Primary use case: Maintain a searchable digital archive of all documents with powerful organization and retrieval capabilities.

Setup

Prerequisites

  • Paperless-ngx instance running and accessible
  • API token generated from Paperless-ngx UI
  • curl and jq installed

Credential Configuration

Add these variables to ~/.claude-homelab/.env:

# Paperless-ngx - Document management system
PAPERLESS_URL="https://paperless.example.com"
PAPERLESS_API_TOKEN="<your_api_token>"

To generate an API token:

  1. Log into your Paperless-ngx instance
  2. Go to Settings → My Profile
  3. Click "Create Token" under "API Tokens"
  4. Copy the generated token
  5. Add to .env file as shown above

Security:

  • .env file is gitignored (never commit)
  • Set permissions: chmod 600 ~/.claude-homelab/.env
  • Token has same permissions as your user account

Commands

All commands return JSON output for LLM parsing. Scripts source credentials from .env automatically.

Document Operations

Upload a document:

bash scripts/paperless-api.sh upload /path/to/document.pdf
bash scripts/paperless-api.sh upload scan.jpg --title "Receipt" --tags "expense,2024"
bash scripts/paperless-api.sh upload contract.pdf --correspondent "Acme Corp" --document-type "Contract"

Search documents:

bash scripts/paperless-api.sh search "invoice"
bash scripts/paperless-api.sh search "meeting notes" --limit 10
bash scripts/paperless-api.sh search "2024" --tags "tax"
bash scripts/paperless-api.sh search --correspondent "John Doe"

List documents:

bash scripts/paperless-api.sh list
bash scripts/paperless-api.sh list --limit 20
bash scripts/paperless-api.sh list --ordering "-created"

Get document details:

bash scripts/paperless-api.sh get <document-id>

Download/export document:

bash scripts/paperless-api.sh download <document-id>
bash scripts/paperless-api.sh download <document-id> --output /path/to/save.pdf

Update document:

bash scripts/paperless-api.sh update <document-id> --title "New Title"
bash scripts/paperless-api.sh update <document-id> --add-tags "urgent,reviewed"
bash scripts/paperless-api.sh update <document-id> --correspondent "Jane Smith"
bash scripts/paperless-api.sh update <document-id> --document-type "Invoice"
bash scripts/paperless-api.sh update <document-id> --archive-serial-number "2024-001"

Delete document:

bash scripts/paperless-api.sh delete <document-id>  # Prompts for confirmation

Tag Management

List tags:

bash scripts/tag-api.sh list
bash scripts/tag-api.sh list --ordering "name"

Create tag:

bash scripts/tag-api.sh create "project-alpha"
bash scripts/tag-api.sh create "urgent" --color "#ff0000"

Get tag details:

bash scripts/tag-api.sh get <tag-id>

Update tag:

bash scripts/tag-api.sh update <tag-id> --name "new-name"
bash scripts/tag-api.sh update <tag-id> --color "#00ff00"

Delete tag:

bash scripts/tag-api.sh delete <tag-id>  # Prompts for confirmation

Correspondent Management

List correspondents:

bash scripts/correspondent-api.sh list

Create correspondent:

bash scripts/correspondent-api.sh create "Acme Corporation"

Get correspondent details:

bash scripts/correspondent-api.sh get <correspondent-id>

Update correspondent:

bash scripts/correspondent-api.sh update <correspondent-id> --name "New Name"

Delete correspondent:

bash scripts/correspondent-api.sh delete <correspondent-id>  # Prompts for confirmation

Bulk Operations

Bulk tag documents:

bash scripts/bulk-api.sh add-tag <tag-id> --documents "1,2,3"
bash scripts/bulk-api.sh remove-tag <tag-id> --documents "1,2,3"

Bulk set correspondent:

bash scripts/bulk-api.sh set-correspondent <correspondent-id> --documents "1,2,3"

Bulk set document type:

bash scripts/bulk-api.sh set-document-type <type-id> --documents "1,2,3"

Bulk delete documents:

bash scripts/bulk-api.sh delete --documents "1,2,3"  # Prompts for confirmation

Workflow

When the user asks about Paperless-ngx:

  1. "Upload this document to Paperless"

- Save file locally if needed - Use upload command with appropriate metadata - Optionally add tags, correspondent, document type - Paperless will auto-OCR and extract text

  1. "Find my 2024 tax documents"

- Use search "tax" --tags "2024" or similar query - Present results with ID, title, date, tags - User can request full details with get <id>

  1. "Tag all invoices from Acme Corp as paid"

- Search for documents: search "invoice" --correspondent "Acme Corp" - Create or find "paid" tag - Use bulk operation to add tag to results

  1. "Show me documents without tags"

- Use list with filter parameter - Present untagged documents - Suggest tagging workflow

  1. "Delete this old document"

- Confirm document ID with user - Ask for explicit confirmation - Use delete <id> command

  1. "Add a new supplier as correspondent"

- Use correspondent-api.sh create "Supplier Name" - Return correspondent ID for future document uploads

Detailed Flow: Document Upload

User: "Upload this receipt to Paperless and tag it as expense"

1. Verify file path exists and is readable
2. Upload document with metadata:
   bash scripts/paperless-api.sh upload /path/to/receipt.pdf --tags "expense"
3. Paperless processes document (OCR, thumbnail generation)
4. Return document ID and success confirmation
5. Optionally ask if user wants to set correspondent or document type

Detailed Flow: Search and Organize

User: "Find all documents from last month that need review"

1. Calculate date range (last month)
2. Search documents by date range
3. Filter results by tag or keyword "review"
4. Present results with metadata
5. Offer to bulk-tag results or export list

Detailed Flow: Bulk Tagging

User: "Tag all invoices from Q1 as archived"

1. Search for invoices in Q1 date range
2. Extract document IDs from results
3. Find or create "archived" tag
4. Use bulk operation to add tag to all documents
5. Report number of documents tagged

Notes

API Details

  • Authentication: Token authentication via Authorization: Token <token> header
  • Base URL: /api/ endpoint
  • API Version: Version 5 (specify via Accept header)
  • Rate limits: No documented limits (self-hosted)
  • Pagination: Uses page and page_size parameters

Document Processing

Paperless-ngx automatically processes uploaded documents:

  • OCR extraction (if not already text-based PDF)
  • Thumbnail generation
  • Metadata extraction (date, correspondent guessing)
  • Full-text indexing for search

Search Syntax

Search supports multiple query types:

  • Full-text: search "meeting notes"
  • Tag filter: search --tags "work,urgent"
  • Correspondent: search --correspondent "John Doe"
  • Date range: search --created-after "2024-01-01"
  • Document type: search --document-type "Invoice"

Tags vs Correspondents

  • Tags: General-purpose labels (e.g., "urgent", "personal", "2024")
  • Correspondents: People or organizations (e.g., "Acme Corp", "John Smith")
  • Document Types: Categories of documents (e.g., "Invoice", "Contract", "Receipt")

All three provide different organizational axes for your documents.

Destructive Operations

Delete operations require confirmation:

  • Delete document: Permanently removes document and files
  • Delete tag: Removes tag from all documents (documents remain)
  • Delete correspondent: Removes from all documents (documents remain)

Always confirm with user before executing delete operations.

Best Practices

  1. Tag consistently: Use lowercase, hyphens for multi-word (e.g., "project-alpha")
  2. Set correspondents: Makes searching by sender/recipient easier
  3. Use document types: Categories help with organization and workflows
  4. Archive serial numbers: Track original paper document storage
  5. Search before upload: Avoid duplicates

Common Errors

401 Unauthorized:

  • Check API token in .env
  • Token may have expired (regenerate in Paperless UI)
  • Verify user permissions

404 Not Found:

  • Verify document/tag/correspondent ID exists
  • Check PAPERLESS_URL is correct

400 Bad Request:

  • Invalid metadata (e.g., non-existent tag ID)
  • Malformed file upload
  • Check script output for specific error message

Connection refused:

  • Paperless-ngx instance not running
  • Verify URL in .env

Reference

  • Official Docs: https://docs.paperless-ngx.com/
  • API Reference: See references/api-endpoints.md for complete API documentation
  • Quick Reference: See references/quick-reference.md for command examples
  • Troubleshooting: See references/troubleshooting.md for common issues
  • Scripts: skills/paperless-ngx/scripts/

🔧 Agent Tool Usage Requirements

CRITICAL: When invoking scripts from this skill via the zsh-tool, ALWAYS use pty: true.

Without PTY mode, command output will not be visible even though commands execute successfully.

Correct invocation pattern:

<invoke name="mcp__plugin_zsh-tool_zsh-tool__zsh">
<parameter name="command">./skills/paperless-ngx/scripts/paperless-api.sh [args]</parameter>
<parameter name="pty">true</parameter>
</invoke>

适合场景

01

用户想查找某类 Agent Skill 时

02

需要根据任务场景推荐可安装能力包时

03

需要对比不同来源的安装命令和来源信息时

能力概览

能力 1

按任务关键词查找相关 Skills

能力 2

展示可复制的安装命令

能力 3

保留来源站点、仓库和原始说明,方便继续核验

能力 4

展示第三方安全扫描或审计结果

安装后应在对应宿主中按原始 README 的触发条件使用;具体调用方式请以来源页面和 README 为准。

平台分布

Codex

34.55%
按下载量换算22

Claude

29.46%
按下载量换算19

Cursor

19.62%
按下载量换算12

Gemini CLI

9.86%
按下载量换算6

安全审计

Gen Agent Trust Hub

可疑

Socket

通过

Snyk

通过

权限和风险

敏感数据

该 Skill 可能接触密钥、Token、环境变量或敏感配置,应进入高风险复核队列,默认不自动发布。

安装前确认

本站仅展示第三方公开信息,不托管安装包,不提供自动安装或运行环境。安装前应自行审查源码、依赖和命令行为。来源安全扫描存在 warning/failed 结果,不能写成本站确认安全。当前只有一个来源,正式发布前建议补源仓库或其他目录站核验。

来源信息

继续浏览同类 Skills