Source audit · 2026-09-24 · 13 repositories · commits pinned
13 Reddit AI projects audited.
None handle what happens next.
We read every tool that 13 open-source Reddit MCP servers and agent-skill collections register, from source, and sorted each by what it does. They are good at reading Reddit, and five can post to it. Not one has a tool for the part that decides whether an account survives: what happened to the post, and what to do next.
Safeguards enforced in code
Out of 9, for every audited tool that can post to Reddit, plus ThreadFox. A safeguard counts only when the software enforces the stated check. ThreadFox enforces ledger gates when its tools are used; your browser agent supplies observations and performs the Reddit actions. Partial and instruction-only safeguards are listed beside it and in the evidence table below.
- ThreadFox ledgerOurs9/9
- mguozhen/social-botSkill5/9
- jordanburke/reddit-mcp-serverMCP server2/9+2 partial
- Arindam200/reddit-mcpMCP server0/9+1 partial
- oh-ashen-one/reddit-growth-skillSkill0/9+5 instructions only
- PHY041/claude-skill-redditSkills0/9+4 instructions only
Every tool, by what it does
Tools registered per repository, sorted by after-publish tools, then total. ThreadFox is classified with the same definitions. Its ledger does not read or post to Reddit itself: your AI's browser does that, and any read-side server you like can sit beside it.
after-publishreadwriteother
The evidence, safeguard by safeguard
What each posting tool's code or instructions actually do, with the file and line at the audited commit. Two have substantial code safeguards and a third validates flair and title length in code; we credit them here.
Codeenforced by the softwarePartialenforced, narrower than the rowPromptan instruction the agent must follow—not found
| Safeguard | jordanburke/reddit-mcp-serverMCP server · 95ddca7 | Arindam200/reddit-mcpMCP server · 5c56363 | mguozhen/social-botSkill · 890c8f2 | oh-ashen-one/reddit-growth-skillSkill · a6a3231 | PHY041/claude-skill-redditSkills · aebe463 | ThreadFox ledgerOurs · 4527d69 |
|---|---|---|---|---|---|---|
| Keeps a record of every attempt that survives a restart | Partial Last 10–20 writes, in memory; cleared on restart src/client/reddit-client.ts:349 | — | Code SQLite log of reply attempts bot/db.py:19 | — | — | Code Posts and replies ledger toolkit/threadfox.py:92, 105 |
| Refuses a second send to the same target | Partial Identical content only, in memory src/client/reddit-client.ts:349 | — | Code One reply per post URL bot/db.py:76 | Prompt Never repeat identical replies SKILL.md:39 | — Sets resubmit=true, which asks Reddit to accept a repeat link reddit-post/SKILL.md:71 | Code Page/community pair and one reply per parent. Also blocks identical cross-community post text of at least 12 words and identical replies of at least 8 words; close rewrites receive warnings. toolkit/threadfox.py:170, 230, 380, 390 |
| Requires publication evidence before confirming a send | Code Fetches the new post once src/client/reddit-client.ts:851 | — | Code Reply must appear on the page at once bot/reddit_bot.py:196 | — | — | Code Requires the permalink and observed author before recording a published state. The browser agent performs the readback; the ledger cannot independently verify Reddit. toolkit/threadfox.py:294 |
| Resolves a send whose response was lost | — | — | — A failed attempt is never retried; nothing establishes what happened bot/db.py:76 | — | — | Code Uncertain holds the pair; only proof of no send releases it toolkit/threadfox.py:276 |
| Schedules and records later removal checks | — | — | — | — The seven-day pause relies on the agent noticing a removal | Prompt Manual signed-out shadowban check reddit-post/SKILL.md:261 | Code Due at 1, 6, 24, 72 and 168 hours; the agent looks, the ledger records toolkit/threadfox.py:342 |
| Stops posting to a community after removals | — | — | — | Prompt Pause the community for seven days after a removed comment SKILL.md:134 | — | Code Three distinct unresolved removals stop posts and replies; a signed-out restoration clears one toolkit/threadfox.py:241, 374 |
| Checks community rules before posting | — A rules tool exists; nothing requires calling it src/index.ts:931 | Partial Validates flair and title length server.py:1202, 1184 | — | Prompt Check the rules before every post SKILL.md:37 | Prompt Rules and disclosure gates subreddit-deep-research/SKILL.md:12 | Code Needs the rules URL, when it was read and an allowed route; recorded bans refuse. The agent still does the reading. toolkit/threadfox.py:221 |
| Caps how much it posts | — | — Relies on Reddit's own rate-limit response server.py:1250 | Code Daily target bot/reddit_bot.py:221 | Prompt Five a day, two per community SKILL.md:131 | Prompt 10–15 a day reddit-cultivate/SKILL.md:261 | Code Post and reply ceilings per run, set by the owner toolkit/threadfox.py:218 |
| Spaces out its writes | Code 2-second minimum, on by default; backs off on HTTP 429 src/index.ts:74 | — | Code 90 s plus 15 s per comment during warm-up warmup_reddit.py:34 | Prompt 20–30 minutes apart SKILL.md:131 | Prompt 4 seconds between posts reddit-cultivate/SKILL.md:261 | Code 10 minutes between posts, 24 hours per community, 2 minutes between replies; owner-adjustable toolkit/threadfox.py:142 |
What this does not show
Results
Nobody has measured whether any of these setups, ThreadFox included, earns more views or fewer removals. This compares what the code does, not what it achieves.
Who drew the lines
We wrote the definitions and classified our own tools with them. Ambiguous tools went to read or write, never to after-publish. Every tool is listed with its file and line, so a disagreement can be specific.
What ThreadFox is not
It does not browse, search or post. It decides whether a send may happen, records what actually happened and tells your AI what to check next.
Borrowed code
None. Three of the skill repositories carry no licence and were read, not reused. The ledger and its tools were written from scratch.
How we audited
GitHub search for Reddit MCP servers and agent skills with at least 40 stars, excluding pure scrapers and multi-platform tools. Each repository was pinned to its default-branch commit on 2026-09-24. Tools were read from their registration in source, not from README text. After-publish means a tool that exists to handle what follows the agent's own submission: rechecking for removal, resolving a lost response, keeping a replay-safe attempt ledger, recording outcomes over time, or gating a post on recorded rules. Stars and code change after an audit.
Maintain one of these projects and think we misread it? Email support@threadfox.vip with the file and line, and we will correct this page.
Give your AI the missing follow-through.
The $49 kit includes the ledger tools for Claude Code and Codex, the operator skill, the launchers and the million-view case study behind them.