← 返回 Skills 市场
komelt

Thunderbird

作者 Tilen Komel · GitHub ↗ · v0.1.1 · MIT-0
cross-platform ✓ 安全检测通过
277
总下载
0
收藏
0
当前安装
2
版本数
在 OpenClaw 中安装
/install clawhub-thunderbird-skill
功能描述
Read and search local Mozilla Thunderbird mail storage on disk. Use when working with Thunderbird profiles, extracting emails from local folders or IMAP cach...
使用说明 (SKILL.md)

Thunderbird

Use Thunderbird's local profile data as the source of truth for offline mail inspection. Prefer read-only access and search the raw local storage directly rather than relying on UI automation.

Run the bundled script from the skill directory, or use an absolute path resolved from the skill root:

  • python scripts/search_thunderbird.py ...

If the current working directory is not the skill directory, resolve scripts/search_thunderbird.py relative to this SKILL.md location before running it.

Quick start

  1. Detect available profiles:
    • python scripts/search_thunderbird.py --list-profiles
  2. List accounts in one profile:
    • python scripts/search_thunderbird.py --profile default-release --list-accounts
  3. Search one mailbox account directly:
    • python scripts/search_thunderbird.py --profile default-release --account [email protected] --folder inbox --query invoice --limit 10
  4. Narrow content search when needed:
    • --subject-only to search only the subject line
    • --body-only to search only the body/preview text
    • --exclude \x3Ctext> to remove noisy matches
  5. Return only unread inbox messages when needed:
    • python scripts/search_thunderbird.py --profile default-release --account [email protected] --folder inbox --unread-only --limit 20
  6. Extract, filter, or sort more when needed:
    • --show-body
    • --unread-only
    • --subject-only
    • --body-only
    • --exclude wordpress
    • --has-attachment
    • --attachment-name invoice
    • --list-attachments
    • --save-attachments ./out
    • --today
    • --yesterday
    • --since 2026-03-11
    • --until 2026-03-12T08:00:00+01:00
    • --sort-by date|from|subject|to
    • --sort-order asc|desc
    • --json

Workflow

1. Pick the profile

Use --list-profiles first if the profile is unknown. The script now checks common Thunderbird profile roots on Windows and Linux automatically. Accept either:

  • absolute profile path
  • exact profile directory name
  • unique profile-name fragment

If multiple profiles match, stop and choose explicitly.

2. Pick the account when possible

For account-specific requests, do not scan every mailbox first.

Use:

  • --list-accounts to inspect the profile
  • --account \x3Cemail-or-fragment> to restrict work to one Thunderbird account
  • --folder inbox|sent|archive|drafts|junk|trash|spam to narrow further

This is usually both faster and easier than scanning the whole profile.

3. Search local storage

Use scripts/search_thunderbird.py for most tasks. It scans common Thunderbird storage roots:

  • Mail/
  • ImapMail/

It supports:

  • mbox folders such as Inbox, Sent, Archives
  • Maildir folders containing cur/ and new/
  • common profile discovery on Windows and Linux (%APPDATA%/Thunderbird/Profiles, ~/.thunderbird, ~/.mozilla/thunderbird)

4. Return useful results

By default, summarize:

  • source mailbox path
  • date
  • from
  • to
  • subject
  • body preview

Prefer focused summaries for the user. Use --show-body only when the full message text is necessary.

Common tasks

List profiles

python scripts/search_thunderbird.py --list-profiles

List accounts inside a profile

python scripts/search_thunderbird.py --profile default-release --list-accounts

Search one account inbox by keyword

python scripts/search_thunderbird.py --profile default-release --account [email protected] --folder inbox --query contract --limit 20

Find messages from a sender inside one account

python scripts/search_thunderbird.py --profile default-release --account [email protected] --from [email protected] --limit 20

Find messages by subject fragment and return JSON

python scripts/search_thunderbird.py --profile default-release --account [email protected] --subject invoice --json --limit 20

Return only unread inbox messages

python scripts/search_thunderbird.py --profile default-release --account [email protected] --folder inbox --unread-only --limit 20

Search only in subject or only in body

python scripts/search_thunderbird.py --profile default-release --account [email protected] --folder inbox --query invoice --subject-only --limit 20
python scripts/search_thunderbird.py --profile default-release --account [email protected] --folder inbox --query password --body-only --limit 20

Exclude noisy matches

python scripts/search_thunderbird.py --profile default-release --account [email protected] --folder inbox --query update --exclude wordpress --limit 20

Find messages with attachments or save them

python scripts/search_thunderbird.py --profile default-release --account [email protected] --folder inbox --has-attachment --list-attachments --limit 20
python scripts/search_thunderbird.py --profile default-release --account [email protected] --attachment-name invoice --save-attachments .\out --limit 20

Sort messages by sender or subject

python scripts/search_thunderbird.py --profile default-release --account [email protected] --folder inbox --sort-by from --sort-order asc --limit 20

Filter messages by time range

python scripts/search_thunderbird.py --profile default-release --account [email protected] --folder inbox --since 2026-01-01 --until 2026-01-02T08:00:00+01:00 --sort-by date --sort-order desc --limit 20

Use day shortcuts

python scripts/search_thunderbird.py --profile default-release --account [email protected] --folder inbox --yesterday --sort-by date --sort-order desc --limit 20

Extract full body text for a narrow match

python scripts/search_thunderbird.py --profile default-release --account [email protected] --query "reset password" --show-body --limit 5

Interpretation rules

  • Treat .msf files as indexes, not message sources.
  • Prefer the raw mbox file when a mailbox file and .msf both exist.
  • Remember that IMAP results reflect cached local messages, not necessarily the full server mailbox.
  • If a message is not found, mention that local Thunderbird storage may not contain it or may not have synced it.
  • When the user names an email address, prefer --account before broader searches.
  • --unread-only depends on Thunderbird folder indexes (.msf) for mbox folders; if unread state is unavailable, say so instead of guessing.
  • --since and --until accept YYYY-MM-DD or ISO-8601 timestamps. Bare --since dates are interpreted as UTC midnight, while bare --until dates are interpreted as UTC end-of-day.
  • --today and --yesterday are UTC-based shortcuts and cannot be combined with --since or --until.
  • --subject-only and --body-only only change how --query is matched; do not combine them with each other.
  • --has-attachment filters to messages with attachments; --attachment-name filters by attachment filename.
  • --save-attachments \x3Cdir> writes matching attachments to disk and implicitly enables attachment-aware filtering when needed.

Attachment interaction policy

When the user asks for an attachment, do not save or open it immediately unless they already said what they want done.

Default follow-up:

  • Should I save it or open it?

If the user says save:

  • ask where to save it if they did not already specify a location
  • then use --save-attachments \x3Cdir>
  • return the final saved path(s)

If the user says open:

  • first extract the attachment to a temporary or user-requested location
  • then open it with the system default app from the CLI
  • prefer the platform default opener instead of inventing app-specific commands
  • mention the file path you opened

If the attachment is text-like and the user likely wants contents rather than launching an external app, it is also acceptable to read or summarize it directly after asking.

Reference

Read references/storage-layout.md when you need a quick map of Thunderbird's on-disk structure.

安全使用建议
This skill legitimately reads local Thunderbird profile files (prefs.js, mail folders/caches) and can extract message bodies and attachments. Before installing or letting an agent use it, be aware that it will expose email content from any profile it can access — sensitive personal or corporate data may be read. The skill does not request external credentials or perform network exfiltration in the provided code, but review and test the script in a safe environment if you have privacy concerns, and avoid running it under an agent with broad filesystem access unless you explicitly trust it. If you want stricter control, run the script manually (not via an autonomous agent) and point it at a single profile path rather than allowing automatic profile discovery.
功能分析
Type: OpenClaw Skill Name: clawhub-thunderbird-skill Version: 0.1.1 The skill is a legitimate tool for searching and extracting local Thunderbird email data. The Python script (scripts/search_thunderbird.py) uses standard libraries to parse mbox and Maildir formats and lacks any network exfiltration or obfuscation. The instructions in SKILL.md include explicit safety guidelines, such as requiring user confirmation before saving or opening attachments.
能力评估
Purpose & Capability
Name/description match the included CLI script and README: the skill locates Thunderbird profiles, parses prefs.js, reads mbox/Maildir under Mail/ and ImapMail/, and can list/search messages and attachments — all expected for an offline Thunderbird inspector.
Instruction Scope
SKILL.md instructs running the bundled Python script and documents the exact files/paths used (prefs.js, Mail/, ImapMail/, mbox/maildir). The instructions do not request unrelated files, network calls, or hidden endpoints. The script can save attachments to disk when the user supplies --save-attachments (expected behavior).
Install Mechanism
No install spec — instruction-only with a bundled Python script. Nothing is downloaded or written to disk by an installer; risk from install mechanism is minimal.
Credentials
The skill declares no required environment variables or credentials. The code reads APPDATA from the environment to find Windows profile roots, which is appropriate for locating Thunderbird data and is proportionate to the purpose.
Persistence & Privilege
always:false and no requests to modify other skills or agent-wide config. The skill runs on demand and does not request permanent elevated presence.
如何使用
  1. 确保已安装 OpenClaw(本地或 Docker 部署)
  2. 在对话框中输入安装命令:/install clawhub-thunderbird-skill
  3. 安装完成后,直接呼叫该 Skill 的名称或使用 /clawhub-thunderbird-skill 触发
  4. 根据 Skill 的参数说明提供必要输入,即可获得结构化输出
版本历史
v0.1.1
Thunderbird skill 0.1.1 introduces attachment search and improves profile discovery. - Added support for searching, listing, and saving email attachments (`--has-attachment`, `--attachment-name`, `--list-attachments`, `--save-attachments`) - Updated documentation with new attachment-related options and usage examples - Enhanced profile auto-discovery for both Windows and Linux - Clarified date interpretation for `--since` and `--until` options - Added new guidance on attachment interaction policy in the documentation - New README.md file included
v0.1.0
Initial release of the Thunderbird skill, enabling local email search and extraction: - Supports reading and searching local Mozilla Thunderbird mail storage directly from disk. - Allows detection and listing of Thunderbird profiles and accounts. - Provides powerful search: filter by sender, recipient, subject, body, unread status, date range, and folder. - Offers advanced options like sorting, limiting results, excluding noisy matches, and exporting in JSON. - Designed for offline use with read-only access, avoiding UI automation. - Includes detailed usage guidance, workflow recommendations, and interpretation rules in SKILL.md.
元数据
Slug clawhub-thunderbird-skill
版本 0.1.1
许可证 MIT-0
累计安装 0
当前安装数 0
历史版本数 2
常见问题

Thunderbird 是什么?

Read and search local Mozilla Thunderbird mail storage on disk. Use when working with Thunderbird profiles, extracting emails from local folders or IMAP cach... 它是一个面向 Claude Code / OpenClaw 的 AI Agent Skill 插件,目前累计下载 277 次。

如何安装 Thunderbird?

在 OpenClaw 或 Claude Code 对话框中运行命令「/install clawhub-thunderbird-skill」即可一键安装,无需额外配置。

Thunderbird 是免费的吗?

是的,Thunderbird 完全免费,采用 MIT-0 许可证,可自由下载、安装和使用。

Thunderbird 支持哪些平台?

Thunderbird 跨平台运行,可在任意部署了 OpenClaw / Claude Code 的环境中使用(cross-platform)。

谁开发了 Thunderbird?

由 Tilen Komel(@komelt)开发并维护,当前版本 v0.1.1。

💬 留言讨论