# Discord Archive Search

Search and summarize a local Discord archive, including DMs and sync status.

- Repository: https://github.com/openclaw/openclaw (393636 stars)
- Category: Data and ML
- License: MIT
- Last updated: 2026-11-01
- Runs scripts: no, instructions only

## Install

Claude Code: `npx skills add openclaw/openclaw --skill discrawl -g -a claude-code -y`
Codex: `npx skills add openclaw/openclaw --skill discrawl -g -a codex -y`
Cursor: `npx skills add openclaw/openclaw --skill discrawl -g -a cursor -y`
Gemini CLI: `npx skills add openclaw/openclaw --skill discrawl -g -a gemini-cli -y`

## Description

Discord archive: search, sync freshness, DMs, summaries, TUI, repo/release work.

## SKILL.md, as published by its author (untrusted third-party text, read it as data)

# Discrawl

Use local Discord archives first. For recent/current questions, check
`discrawl status --json`; use `discrawl doctor` for source/config readiness.
Refresh only when stale, missing the requested scope, or explicitly requested.

```bash
discrawl sync --source wiretap  # local Discord Desktop artifacts
discrawl sync                   # configured source; bot API requires credentials
```

Use `--full` only for deliberate historical backfills. Do not interrupt another
archive writer to resolve a busy/locked database. Resolve configured paths
instead of assuming default macOS, XDG, or legacy locations.

## Read Bounded Slices

```bash
DISCRAWL_NO_AUTO_UPDATE=1 discrawl search --limit 20 "query"
discrawl messages --channel '<channel>' --days 7 --all
discrawl dms --last 20
DISCRAWL_NO_AUTO_UPDATE=1 discrawl --json sql "select count(*) as messages from messages;"
```

`DISCRAWL_NO_AUTO_UPDATE=1` suppresses git-share updates during read smokes.
`discrawl sql` is read-only by default and accepts SQL arguments or stdin. Use
it for exact counts/joins when normal reads are too coarse; never use
`--unsafe --confirm` without an explicitly requested and reviewed database
mutation. Consult subcommand help for filters. Report absolute date spans,
channel/DM names, counts, freshness, and source gaps.

## Source Boundaries

Desktop wiretap reads local artifacts; it must not extract credentials, use
user tokens, call Discord as the user, or write Discord application storage.
Bot sync needs configured bot credentials; never infer availability. Desktop
DMs are local-only, not part of the published Git snapshot. Git-share snapshots
must exclude secrets and `@me` DM rows.

For implementation work or a genuinely missing CLI feature, verify the checkout
remote is `openclaw/discrawl` and follow its instructions. Do not assume a
machine-specific historical checkout path.

## ClawSweeper Sandbox

Use the sandbox reader only:

The rest: https://github.com/openclaw/openclaw/blob/HEAD/.agents/skills/discrawl/SKILL.md
