File Inbox

👤 dgkim311 📦 v1.0.0 ⭐ 4.5 ⬇️ 663 下载
🤖 AI-Agent 免费

📖 技能介绍


name: file-inbox description: > Bidirectional file management system for OpenClaw workspaces. Organizes, indexes, and retrieves files exchanged with users via any channel. Use when: a user sends a file (PDF, image, CSV, code, dataset, etc.) and it should be saved; the agent generates a file (report, analysis, chart) to send; user asks to find, list, or search previously received/sent files; user asks "what files do I have?", "find the PDF I sent last week", or any file organization/retrieval request. NOT for: task tracking, calendar events, or non-file content like text messages.


File Inbox

Manage all files exchanged with users in inbox/ with a human-readable INDEX.md. Inbound = files received from user. Outbound = files generated by agent.

Setup

Run once to initialize the directory structure:

bash skills/file-inbox/scripts/init_inbox.sh

Creates inbox/, subdirectories, inbox/INDEX.md, and inbox/.meta.json. Idempotent — safe to re-run.

File Registration Workflow

When the user sends a file (inbound)

  1. Determine the file's current path in workspace.
  2. Run the registration script: bash python3 skills/file-inbox/scripts/register_file.py \ --path <filepath> \ --direction in \ --sender "<name or channel>" \ --tags "#tag1 #tag2" \ --notes "Brief context"
  3. Script moves file to inbox/inbound/YYYY-MM/ and updates INDEX.md.
  4. Confirm the assigned ID to the user (e.g., "Saved as F-007").

When the agent generates a file (outbound)

  1. Save the file to its destination first, then register: bash python3 skills/file-inbox/scripts/register_file.py \ --path <filepath> \ --direction out \ --dest "<recipient name or channel>" \ --tags "#tag1 #tag2" \ --notes "What this file contains"
  2. Script copies file to inbox/outbound/YYYY-MM/ and updates INDEX.md.

Auto-tagging

Tags are auto-assigned from file extension before the script runs. You may append additional context tags. See tagging-guide.md.

File Search & Retrieval

# Search by tag
python3 skills/file-inbox/scripts/search_inbox.py --tag research

# Search by file type
python3 skills/file-inbox/scripts/search_inbox.py --type pdf

# Search by direction
python3 skills/file-inbox/scripts/search_inbox.py --direction in

# Search by date range
python3 skills/file-inbox/scripts/search_inbox.py --date-from 2026-04-01 --date-to 2026-04-30

# Free-text search (matches ID, filename, notes, tags, sender)
python3 skills/file-inbox/scripts/search_inbox.py --query "논문"

# Combine filters
python3 skills/file-inbox/scripts/search_inbox.py --direction in --type csv --query "실험"

For quick lookups, read inbox/INDEX.md directly — it's a markdown table, grep-friendly.

INDEX.md Structure

# File Inbox

> Total: N files | Inbound: N | Outbound: N
> Last updated: YYYY-MM-DD

## Recent Files

| ID | Direction | Filename | Type | Tags | Sender/Dest | Date | Notes |
|----|-----------|----------|------|------|-------------|------|-------|
| F-007 | ⬇️ in | report.pdf | pdf | #research #논문 | Kim | 2026-04-11 | IEEE revision |
| F-006 | ⬆️ out | results.csv | csv | #experiment | → Kim | 2026-04-10 | Phase 2 |
  • Rows are sorted newest-first.
  • Keep the 50 most recent rows inline; older entries remain in the archive note at the bottom.

Inbox Statistics

python3 skills/file-inbox/scripts/inbox_stats.py

Shows: total counts, breakdown by type and direction, recent activity, storage size.

Maintenance

  • Orphan check: Files in inbox/ not listed in INDEX.md are orphans. Register or remove them.
  • Old file cleanup: Files older than 90 days may be archived. Ask user before moving.
  • Index rebuild: If INDEX.md is corrupted, re-run register_file.py for each file in inbox/.

Integration with Channels

See integration-guide.md for: - Telegram file handling (document vs. photo messages) - How to extract sender name from channel context - Recommended AGENTS.md additions

小葱技能站7w4.net,专业的AI技能分享平台。

Best Practices

  1. Register files immediately after receiving or generating them.
  2. Always include --notes with enough context to identify the file months later.
  3. Use Korean tags naturally — the index is bilingual-ready.
  4. When the user asks for a file, search INDEX.md first before scanning the filesystem.
  5. Never delete registered files without user confirmation; use notes to mark as obsolete.

🤖 AI 评测

这个 Skill 质量很好,设计完善且使用简单。它能自动整理收到的文件和生成的文件,给文件打标签,方便以后查找,还支持按类型、日期、关键词等多种方式搜索。文档写得清楚,代码运行稳定不容易出错。主要不足是搜索范围限于已登记的文件,不在索引里的文件就搜不到;另外处理很多文件时没有批量操作,会比较麻烦。总体来说这是一个可靠实用的文件管理工具,值得使用。

📊 多维度评分

适应性4.7
规范性4.5
有效性4.7
可靠性4.1
可信度4.8

📁 包含文件 (8 个)

📄 SKILL.md 4.5 KB
📄 _meta.json 129 B
📄 references/integration-guide.md 1.7 KB
📄 references/tagging-guide.md 1.1 KB
📄 scripts/inbox_stats.py 4.1 KB
📄 scripts/init_inbox.sh 1.3 KB
📄 scripts/register_file.py 8.2 KB
📄 scripts/search_inbox.py 5.3 KB