A community-owned Devvit port of FoxxMD/context-mod — same YAML rules, same behavior, new runtime. Rescues the bot from Reddit Data API sunset and hands stewardship to a neutral OSS org.
@FoxxMD (MIT) has signed off on community stewardship. This repo is the canonical Devvit fork. See GOVERNANCE.md and CODEOWNERS. No single maintainer holds the keys.
Reddit's Data API deprecation orphans every PRAW-era moderation bot. ContextMod runs author-history and activity-pattern rules on dozens of ≥500 WAU subs — losing it means hours/week of manual modqueue triage returns. This port preserves the YAML config contract verbatim, so existing rule-sets keep working.
# 1. clone the rescue fork git clone https://github.com/reddit-mod-oss/context-mod-devvit cd context-mod-devvit # 2. migrate your legacy contextmod.yaml in-place npx contextmod-migrate ./legacy/contextmod.yaml \ --out ./devvit/rules.yaml --report parity.json # 3. install on your sub (≥500 WAU) devvit upload && devvit install r/your-sub
| Legacy module | Devvit equivalent | Status |
|---|---|---|
| YAML rules engine | src/engine/loader.ts | parity |
| Author history check | onPostSubmit trigger | parity |
| Activity pattern (window) | Devvit Redis state | parity |
| Modqueue actions | ModAction.approve/remove | parity |
| Webhook notifier | Native Reddit DM | re-scoped |
| Telemetry (time-saved) | scheduler/metrics.ts | new |
Parity coverage 96%, measured against FoxxMD/context-mod v0.10.6 rule fixtures. See parity-report.json.
# Governance ## Maintainers - @FoxxMD (founder, emeritus, advisory) - @reddit-mod-oss/stewards (3 active mods, rotating) ## Decision process - Bug fixes: 1 maintainer LGTM, merge. - Behavior change: RFC issue, 7-day comment window, 2 maintainer LGTM + 0 vetoes from CODEOWNERS. - Breaking YAML schema: RFC + migration script REQUIRED before merge. No exceptions. ## Succession Any maintainer inactive 90 days rotates to emeritus. New stewards nominated by issue, ratified by majority.
Read CONTRIBUTING.md. File an issue before opening a PR for behavior changes. We rebase, we don't squash — commit history is the audit trail.