Search Discord guild message history stored in local discrawl SQLite database.
~/.discrawl/discrawl.dbdiscrawl sync (bot API) or discrawl sync --source wiretap (Discord Desktop cache)Search message content with ranking:
discrawl search "query"
Options:
--limit N — max results (default: 20)--channel ID — filter by channel--author ID — filter by author--before "2026-04-01" — date filter--json — JSON outputdiscrawl messages --channel <channel_id> --limit 10
discrawl sql "SELECT ..."
SELECT
m.content,
m.created_at,
COALESCE(u.username, m.author_id) as author,
COALESCE(c.name, m.channel_id) as channel
FROM messages m
LEFT JOIN members u ON m.author_id = u.user_id
LEFT JOIN channels c ON m.channel_id = c.id
WHERE m.content LIKE '%keyword%'
ORDER BY m.created_at DESC
LIMIT 10;
SELECT content, created_at
FROM messages
WHERE channel_id = '<channel_id>'
AND content LIKE '%keyword%'
ORDER BY created_at DESC
LIMIT 20;
SELECT m.content, m.created_at, c.name
FROM messages m
JOIN channels c ON m.channel_id = c.id
WHERE m.author_id = '<user_id>'
ORDER BY m.created_at DESC
LIMIT 20;
SELECT
m.content,
m.created_at,
fts.rank
FROM message_fts fts
JOIN messages m ON fts.message_id = m.id
WHERE message_fts MATCH 'keyword'
ORDER BY rank
LIMIT 20;
SELECT content, created_at
FROM messages
WHERE channel_id = '<channel_id>'
ORDER BY created_at DESC
LIMIT 5;
| Table | Purpose |
|---|---|
| ------- | --------- |
messages | All messages (content, created_at, author_id, channel_id) |
channels | Channel metadata (name, topic, kind, guild_id) |
members | User info (username, global_name, nick) |
message_fts | FTS5 virtual table for full-text search |
mention_events | @mentions tracking |
message_attachments | File attachments with text extraction |
members table may be sparse (2 rows in current db) — use COALESCE(u.username, m.author_id) for fallbacknormalized_content column has cleaned text (lowercase, normalized whitespace)raw_json has full Discord API payload for advanced queriesLEFT JOIN on members/channels to avoid missing rows when joins fail共 1 个版本