Finish AntiLink Guard OSS: docs/, README rewrite, CHANGELOG v0.1.0 (Phase 9/9)#18
Merged
Merged
Conversation
docs/getting-started.md - clone through first blocked link, ~10 min path
docs/configuration.md - the two configuration surfaces (per-guild DB
config via slash commands vs. the local
antilink.config.json used by the CLI) and
exactly which fields each one controls
docs/rules-engine.md - the extraction -> classification -> policy
pipeline, the real severity/threshold tables
from packages/core, and the mode->action
matrix
docs/discord-setup.md - Developer Portal steps, required permissions,
Message Content Intent, command registration
docs/privacy.md - what's stored (and the AuditLogEntry type's
deliberate lack of a message-content field),
what's sent to Discord, operator responsibilities
docs/self-hosting.md - bare Node vs Docker Compose, the three storage
backends and their env vars, updating, logging
docs/threat-model.md - what's detected, what deliberately isn't
(zero-days, DMs, attachments, edited messages),
trust boundaries, and documented failure modes
docs/api-reference.md - every package's actual public exports, pulled
directly from each src/index.ts
docs/migration-from-old-antilink.md - mapping this repo's own predecessor
(the pre-rewrite single-file bot, still in
git history) onto the new framework
Every command, type name, severity score, and threshold cited was checked
against the actual source rather than described from memory - e.g. the
severity table in rules-engine.md was verified against
packages/core/src/classification/reasons.ts, and the "no admin auto-bypass"
claim in discord-setup.md/migration-from-old-antilink.md was confirmed by
reading policy-engine.ts's isBypassed function.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01MivRFgabRtQs6GhpNM3wie
…r v0.1.0
README.md: complete rewrite - tagline, badges (license/Node/discord.js/pnpm/
TypeScript/CI/CodeQL), a problem statement contrasting real detection against
a naive substring-match anti-link bot, a Mermaid architecture diagram tracing
messageCreate and slash-command interactions through core's extraction/
classification/policy pipeline into storage, a quick start, Docker Compose,
slash command examples, a privacy/security section, and the required
background note connecting this project to production experience while
being explicit that this repo contains only the open-source framework - no
affiliation with any hosted product sharing part of the name. No fabricated
stars, downloads, or adoption numbers anywhere.
CHANGELOG.md: the original single-file bot's entry is retitled
[0.1.0-legacy] to disambiguate it from this rewrite's own v0.1.0 (both
would otherwise claim the same version number for two very different
things). Added a full [0.1.0] - AntiLink Guard OSS entry describing
everything shipped in this rewrite, replacing the now-superseded
Unreleased bullets from the repo's earlier, smaller modernization pass.
This closes out the full migration: pnpm monorepo, packages/{core,storage,
discord-bot,cli}, apps/{example-bot,dashboard-lite}, docs/, CI/CodeQL/
dependabot, and now the README/CHANGELOG to match. 202 tests pass; build,
typecheck, lint, and format are all clean across the whole workspace.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01MivRFgabRtQs6GhpNM3wie
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Completes the AntiLink Guard OSS migration (previously merged through Phase 8 in #8). This PR adds the last two pieces:
docs/(9 pages) - getting-started, configuration, rules-engine, discord-setup, privacy, self-hosting, threat-model, api-reference, migration-from-old-antilink. Every command, type name, severity score, and behavioral claim was checked against the actual source rather than described from memory (e.g. the severity/threshold tables inrules-engine.mdwere verified againstpackages/core/src/classification/reasons.ts; the "no admin auto-bypass" claim was confirmed by readingpolicy-engine.ts'sisBypassedfunction directly).[0.1.0-legacy]to avoid a version-number collision with this rewrite's ownv0.1.0, and a comprehensive[0.1.0] - AntiLink Guard OSSentry replaces the smaller, now-supersededUnreleasedbullets from an earlier, incomplete modernization pass.Verification
Recommended v0.1.0 release notes (for the GitHub Release, once tagged)
Recommended next issues/milestones
bypassRoleIds/bypassUserIds/channel exemptions (currently only settable via/config importor the storage API directly - seeROADMAP.md)messageUpdate) - currently onlymessageCreateis scannedknownPhishingDomainsdashboard-lite(by user/channel/verdict/date)🤖 Generated with Claude Code
https://claude.ai/code/session_01MivRFgabRtQs6GhpNM3wie
Generated by Claude Code