Archive, search, and summarize Discord messages and direct messages.
Overall risk is low: the material is classified as prompt-only, declares no required secrets or fixed remote endpoints, and points to an auditable open-source GitHub repository. The main caveat is that its instructions are meant to drive local discrawl/SQLite/Go commands against a local Discord archive, and it references optional Discord API use and git-share updates in some scenarios.
The material and objective checks indicate no secrets or environment variables are required by default. The README only mentions Bot API refresh 'when credentials are available', without requiring credentials to be provided through this skill, so direct credential exposure appears limited.
No fixed remote host is declared, and the README emphasizes using the local archive first. However, it explicitly states that Discord APIs may be contacted when the archive is stale or incomplete, and mentions git-share auto-update behavior that can be disabled via DISCRAWL_NO_AUTO_UPDATE=1, indicating optional network egress in the underlying workflow.
The skill itself is prompt-only and does not inherently execute code. However, the documentation explicitly instructs running local commands and processes such as discrawl, sqlite3, and even go run ./cmd/discrawl when the binary is stale, which is operational guidance for local code/process execution.
The README points to specific local data locations and scope, including discrawl.db, config, cache, logs, and archived Discord messages/DMs. If its workflow is followed, it would read potentially sensitive local chat history, but the material does not show requests for permissions beyond that stated purpose.
The source is an open-source GitHub repository and the material is auditable, with extremely high community adoption (~377k stars), which strongly lowers supply-chain risk. Minor caveats are the undeclared license, unknown maintenance status, and the README's advice to verify remote targets before using a local checkout.
Copy the install command and let the AI configure it · recommended for beginners
Please install the "discrawl" skill from askskill: 1. Download https://raw.githubusercontent.com/openclaw/openclaw/main/.agents/skills/discrawl/SKILL.md 2. Save it as ~/.claude/skills/discrawl/SKILL.md 3. Reload skills and tell me it's ready
Search the Discord archive for discussions about the release plan from the past two months. Extract key decisions, action items, and owners, then summarize them in a timeline.
Relevant message excerpts plus a structured summary of release decisions, task items, and owners.
Sync this Discord archive to the latest state and tell me what frequent issues were newly reported in the product-feedback channel since yesterday.
An updated archive plus a list of newly frequent feedback issues with their message sources.
Summarize my recent Discord direct messages with a colleague, including discussion topics, agreements reached, unresolved issues, and recommended next steps.
A clear DM summary that helps quickly review collaboration context and next actions.
Use local Discord archive data first for Discord questions. Hit Discord APIs only when the archive is stale, missing the requested scope, or the user asks for current external context.
${XDG_DATA_HOME:-~/.local/share}/discrawl/discrawl.db on Linux or
~/Library/Application Support/discrawl/discrawl.db on macOS~/.discrawl/config.tomlopenclaw/discrawl; use ~/GIT/_Perso/discrawl only after verifying
its remote targets openclaw/discrawl, otherwise use a fresh checkoutdiscrawl; fallback to go run ./cmd/discrawl from the repo
if the installed binary is staleFor recent/current questions, check freshness before analysis:
discrawl status --json
For precise freshness from the default database:
# Discrawl uses macOS ~/Library defaults unless XDG_DATA_HOME is explicitly set.
case "$(uname -s)" in
Darwin)
db="$HOME/Library/Application Support/discrawl/discrawl.db"
;;
*)
db="${XDG_DATA_HOME:-$HOME/.local/share}/discrawl/discrawl.db"
;;
esac
sqlite3 "$db" \
"select coalesce(max(updated_at),'') from sync_state where scope like 'channel:%';"
Routine diagnostics:
discrawl doctor
Desktop-local refresh:
discrawl sync --source wiretap
Bot API latest refresh, when credentials are available:
discrawl sync
Use --full only for deliberate historical backfills:
discrawl sync --full
If SQLite reports busy/locked, check for stray discrawl processes before retrying.
Use root or subcommand help for syntax: discrawl --help,
discrawl help search, discrawl search --help. Use
DISCRAWL_NO_AUTO_UPDATE=1 for read smokes when you do not want git-share
updates.
Common commands:
DISCRAWL_NO_AUTO_UPDATE=1 discrawl search --limit 20 "query"
discrawl messages --channel '#maintainers' --days 7 --all
discrawl dms --last 20
discrawl tui --dm
DISCRAWL_NO_AUTO_UPDATE=1 discrawl --json sql "select count(*) from messages;"
Use discrawl sql for exact counts, joins, and ranking queries when normal
CLI reads are too coarse. The command is read-only by default, accepts SQL as
args or stdin, and supports --json for agent parsing.
Useful examples:
DISCRAWL_NO_AUTO_UPDATE=1 discrawl --json sql "select count(*) as messages from messages;"
DISCRAWL_NO_AUTO_UPDATE=1 discrawl --json sql "select coalesce(nullif(c.name, ''), m.channel_id) as channel, count(*) as messages from messages m left join channels c on c.id = m.channel_id group by m.channel_id order by messages desc limit 20;"
DISCRAWL_NO_AUTO_UPDATE=1 discrawl --json sql "select coalesce(nullif(mm.display_name, ''), nullif(mm.global_name, ''), nullif(mm.username, ''), m.author_id) as author, count(*) as messages from messages m left join members mm on mm.guild_id = m.guild_id and mm.user_id = m.author_id group by m.guild_id, m.author_id order by messages desc limit 20;"
Never use --unsafe --confirm unless the user explicitly asks for a database
mutation and the write has been reviewed.
When the installed CLI lacks a new feature, build or run from a verified
openclaw/discrawl checkout before concluding the feature is missing.
Bot API sync requires configured Discord bot credentials; do not invent token availability. Desktop wiretap mode reads local Discord Desktop artifacts and
…
Create and review technical docs and agent instruction files in repositories.
Verify an OpenClaw release is fully published and working across all channels.
Fetch GitHub issues, create fixes, open PRs, and handle reviews.
Convert text to speech locally and offline with sherpa-onnx, no cloud needed.
Regenerate OpenClaw release changelog sections from Git history before releases.
Navigate Feishu knowledge bases and surface relevant wiki pages and links.
Mirror Discord history into SQLite for offline search, analysis, and reporting.
Search and analyze Slack archives, count threads, and support repo workflows.
Search and manage Granola archives, sync status, notes, transcripts, and counts.
Chat directly with the Discord-backed OpenClaw agent in real time.
Interact with Discord using natural language for messaging, server management, and user actions.
Search, export, sync, and analyze archived Notion content and related repo data.