What I ship
Builds
Things I ship: indie products, open-source skills, and MCP servers. Most of these started as scratching my own itch and ended up useful to other people. The through-line is trust infrastructure for agents: permissions, provenance, memory hygiene, and proportionate review. I run agents against my own email, money, and publishing, so the guardrails get built first.
36 open projects · 3,291 GitHub stars across public repos as of August 21, 2026
Open-source impact
Where the work travels
Snapshot: August 21, 2026
@conorbronsdon on GitHub (opens in new tab)Shipping the repository is only the first step. This weekly snapshot tracks canonical skill installs, npm package downloads, ClawHub adoption, reach across my public repositories, and pull requests accepted into projects I don't own.
- GitHub stars
- 3,291
- ClawHub downloads
- 4,919
- npm downloads
- 4,058
- Upstream merges
- 77
Across 49 public, non-fork repositories
Lifetime across 20 public skills
8 packages, Jul 22, 2026–Aug 20, 2026
41 repositories in 34 organizations
Merge trace
Public PRs merged outside my repositories · Aug 22, 2025–Aug 21, 2026
77 total
- 1
- 0
- 0
- 3
- 0
- 0
- 2
- 16
- 5
- 0
- 1
- 31
- 18
Owned repositories
Top 5 by stars- avoid-ai-writing (opens in new tab) 3,182 stars
- substack-mcp (opens in new tab) 20 stars
- agent-context-os (opens in new tab) 11 stars
- ai-tools-for-creators (opens in new tab) 10 stars
- agent-skills (opens in new tab) 9 stars
Upstream repositories
Top 5 by merges- agntcy/dir (opens in new tab) 10 merged PRs
- madeofpendletonwool/PinePods (opens in new tab) 7 merged PRs
- punkpeye/awesome-mcp-servers (opens in new tab) 5 merged PRs
- thatstoasty/stump (opens in new tab) 5 merged PRs
- CodeBarrie/forge-app (opens in new tab) 4 merged PRs
skills.sh
Canonical agent-skill installs- avoid-ai-writing (opens in new tab) 1,751 installs
Source: conorbronsdon/avoid-ai-writing · Refreshed Aug 21, 2026
npm packages
Top 5 by downloads- gws-mcp-server (opens in new tab) 1,328 downloads
- @conorbronsdon/substack-mcp (opens in new tab) 785 downloads
- @conorbronsdon/gsc-mcp (opens in new tab) 538 downloads
- @conorbronsdon/postlint-mcp (opens in new tab) 529 downloads
- @conorbronsdon/op3-mcp (opens in new tab) 254 downloads
ClawHub releases
Top 5 by downloads- Avoid AI Writing (opens in new tab) 3,277 downloads · 61 installs
- angel-diligence (opens in new tab) 215 downloads · 1 installs
- eval-integrity (opens in new tab) 215 downloads · 1 installs
- reconcile (opens in new tab) 215 downloads · 1 installs
- SSOT Check (opens in new tab) 213 downloads · 1 installs
Refreshed weekly from the GitHub API, skills.sh telemetry, npm downloads API, and ClawHub publisher data. GitHub totals cover public, non-fork repositories owned by conorbronsdon. Upstream merges count authored public PRs merged into repositories I don't own during the stated window. skills.sh installs come from anonymous CLI telemetry and may undercount opt-outs; npm downloads measure package usage, not skill installs. ClawHub counts are lifetime.
Support this work
Most of what's on this page is free and open source, built in time that isn't billed to anyone. GitHub Sponsors is how people who get value from it can chip in.
Chain of Thought
Podcast covering how AI is reshaping infrastructure, software, strategy, and entire industries.
70+ episodes. Guests from NVIDIA, Google DeepMind, Cisco, AMD, MongoDB, Databricks, Vercel & more. The show is where I sharpen the thesis my writing and investing operate on.
Explore the show Listen at chainofthought.show (opens in new tab)
Open source & tools
MCP servers
-
Local Google Workspace MCP server for Gmail, Calendar, Drive, Docs, and Sheets.
Personal MCP server I built to wire Claude Code into my own calendar + inbox + drive. OAuth at install, no third-party broker.
-
Substack publishing + analytics MCP server.
Long-form posts are draft-only by design, short-form Notes publish immediately. Powers a chunk of the Chain of Thought newsletter workflow.
-
Podcast Index API MCP server.
Search podcasts, track guest appearances, monitor trending shows, check feed health. On npm.
-
Transistor.fm MCP server: episodes, analytics, transcripts, webhooks.
The API-parity pass and the get_download_summary + compare_episodes analytics tools I built here were merged upstream into gxjansen/Transistor-MCP. This is my packaged, npm-published build of it — the one that runs the Chain of Thought publish workflow.
-
OP3 podcast analytics MCP server: downloads, geography, listening app share.
Read-only MCP server for the Open Podcast Prefix Project. Pulls the listener analytics Transistor alone can’t give you: geography, devices, and app share.
-
Google Search Console MCP server: search analytics, sitemaps, URL inspection.
Query the search data that decides whether anything else here gets found — clicks, impressions, and the striking-distance queries worth working on. Refreshes tokens against Google directly rather than pulling in the full googleapis client. Read tools work on a read-only scope; sitemap writes and URL inspection ask for the full one.
-
Owner-side YouTube Analytics MCP server: watch time, retention, traffic sources, playlists.
The numbers behind a public view count: how long people watched, where they arrived from, where in a video they left. That data is owner-only and needs OAuth, so no API key reaches it. Nine tools, every one a read, with the channel filter hardcoded rather than taken from tool input. A derived episode-race tool re-indexes videos to days since their own publish, so a new episode compares against the last few at the same age. The analytics leg alongside gsc-mcp: search there, video here.
-
Check a social post against a platform’s real character limits.
The counting an agent cannot do by inspection: X bills every URL at 23 characters via t.co and weights non-Latin at 2×, Bluesky counts 300 graphemes so a family emoji is one, Mastodon counts grapheme clusters and bills a handle by its username alone. Every limit carries a primary source, and four platforms are deliberately missing because no published source states their numbers.
Agent skills
-
Git-backed context and workflow for Claude Code, Codex, and Hermes.
Keeps identity, projects, decisions, and session handoffs in reviewable Markdown. Claude Code and Codex share the same lifecycle core; integrations stay opt-in.
-
Memory and hygiene for agent workspaces.
Six lifecycle skills — start, update, end, today, reconcile, recover — that give an AI coding agent persistent state, decision logs with the paths not taken, and cleanup for the messes parallel sessions leave. Configurable state layout via workspace.yaml. Graduated out of agent-skills.
-
Would your benchmark numbers survive an adversarial reviewer?
Benchmark-credibility auditor: 36 scoreable sub-checks across seven dimensions (pre-registration, contamination, holdout hygiene, judge validity, statistical honesty, reproducibility, leaderboard publishing), a JSON result schema for CI trend-tracking, and three synthetic fixture benchmarks that prove the audit works.
-
One canonical home per fact; every copy audited.
Deterministic drift auditor for facts hand-copied across docs — stdlib Python CLI (45 tests), a .ssot.yaml manifest with typed normalization, pre-commit hook, GitHub Action, and an AI skill wrapper for discovery. Never mutates a repo it audits.
-
Build agent skills that don’t rot.
Skill generator that makes the design decisions most generators skip — invocation control, arguments, context budget — then validates the result mechanically. Its spec knowledge is a pinned snapshot watched by weekly CI, so it stays current as Claude Code evolves. Graduated out of agent-skills.
-
Production-tested skills for Claude Code.
Nine drop-in skills: session memory, multi-agent code review, eval integrity audits, SSOT checks, drift reconciliation, worktree recovery, skill scaffolding, guest-circuit research, and angel diligence. Ships with an installer (install/update/diff). Built for my own daily work, generalized for anyone — the incubator that skills graduate from.
-
Audit a repo against its own code, or get it ready to open-source.
Most documentation tools grade prose. This one asks whether your claims are true: for every claim that something is prevented, blocked, or guaranteed, it goes and finds the mechanism, then grades it Enforced, Advisory, or Guidance. A warning that prints but does not block is not enforcement. Ships six checklist packs, five README templates, and optional modules for the failure modes that recur — unmeasured self-proof, fact drift, pinned specs nobody watches, and dashboards that say "live" over a dead cron.
-
The curation loop for agent memory.
Capture, recall, and a read-only curator that finds rot and contradictions in your agent memory before it is confidently wrong. Plain markdown and JSON, five slash commands, human-reviewed diffs, no vector store.
-
One prompt adds a reproducible demo GIF to any repo README.
Claude Code skill that records, optimizes, and embeds a demo GIF — vhs for terminals, Playwright for web. The recording script is committed, so the GIF regenerates when the tool changes instead of rotting. Dogfoods itself: its own README GIF was rendered by the skill.
Building something in AI infra or dev tools? I angel-invest in this space. How I think about it.
Writing & creator tools
-
Audit + rewrite AI writing patterns. Public Claude Code skill.
Open-source skill that flags and rewrites AI writing patterns: 60+ pattern categories, a 100+-entry replacement table, and a zero-dependency detector engine. The same rules I use to audit my own drafts.
-
Agent replies parseable in one pass — verdict first.
Skill that reorders how an agent reports: the first sentence answers the question, detail layers underneath so you can stop reading anywhere, and every claim traces to something observed. Ships real unedited before/after outputs. Sibling of avoid-ai-writing — this governs working replies, that one published prose.
-
Catches AI writing patterns in your drafts, right in the browser.
Live in the Chrome Web Store. Flags the AI-writing tells (em-dash tics, hedging, formulaic "not just X but Y" constructions) inline as you draft. Same detection rules as the open-source skill.
-
Curated list of AI tools that actually move the needle for solo creators.
New skill repos and MCP servers land here as I find or build them.
-
Curated learning path from "what is AI?" to building with Claude Code.
An ordered route through AI literacy rather than a link dump — foundations first, then hands-on work with coding agents. Built for people who keep being handed a reading list and no sequence.
-
Benchmark any podcast against a peer set using only public data.
CLI that compares a show to its peers on catalog depth, publishing cadence, transcript availability, and feed hygiene — all from public RSS and Apple metadata. No download estimates, no scraping, every number sourced and timestamped.
Hobby projects
-
Army composition & cost planning for Age of Empires II.
Plan armies, compare civs, and cost out builds across 100+ units and 51 civilizations — offline-capable PWA for AoE2: Definitive Edition. Built because the community spreadsheets are miserable.
-
Cross-platform DJ set track identification.
Personal hobby project for DJ set identification across SoundCloud, 1001tracklists, and Shazam.
Mojo libraries
Pure-Mojo libraries that mirror the Python stdlib APIs developers already know, built to fill ecosystem gaps for the Mojo language. Each is anchored to an external ground truth: official spec suites, byte-for-byte Python parity, or real-world corpora. The set is finished — migrated to Mojo 1.0 in August 2026 and frozen at 0.2.0. Everything still builds and passes on 1.0, and CI still watches the nightlies. I'm not taking feature work on them.
-
RSS, Atom, and JSON Feed parsing in pure Mojo.
The first feed/XML library in the Mojo ecosystem — every syndication format since 1999, strict-mode validation, 110+ MB/s compiled. Verified against a 144-feed real-world corpus. Mirrors Python's feedparser.
-
CommonMark parser and HTML renderer in pure Mojo.
98.6% CommonMark spec conformance (643/652), including 132/132 on the emphasis rules where markdown parsers usually die.
-
Liberal HTML parsing + readability extraction in pure Mojo.
Tag-soup-tolerant tokenizer with Mozilla-derived main-content scoring and a confidence gate for thin/paywalled pages.
-
General-purpose XML parsing in pure Mojo.
An xml.etree.ElementTree-shaped DOM — fromstring/tostring, find/findall/iter, scoped Clark-notation namespaces — built on the same pull parser as mojo-feed. Element-for-element byte match against CPython's xml.etree on a 14-document general-XML corpus; 6,000-iteration fuzz with zero crashes. Fills what had been the ecosystem's cleanest open gap. Mirrors Python's xml.etree.ElementTree.
-
SRT and WebVTT transcript parser in pure Mojo.
Parses podcast transcripts into cues with speakers and timestamps, round-trips both formats, and cuts clip windows. Built to chew Chain of Thought episode transcripts.
-
Unicode normalization + casefold in pure Mojo.
NFC/NFD/NFKC/NFKD and casefold, generated from the Unicode Character Database. 20,034/20,034 rows on the official conformance suite. Mirrors Python's unicodedata.
-
Myers text diff and unified_diff in pure Mojo.
Myers O(ND) diff with unified-diff output that byte-matches Python's difflib. 5,000-line diffs in under a millisecond. Mirrors Python's difflib.
-
Standalone jinja-flavored template engine in pure Mojo.
Expressions, filters, loops, conditionals, HTML autoescape. Renders 43/43 fixtures byte-for-byte identical to Jinja2. The first standalone template engine in the ecosystem.
-
tar archive reader/writer in pure Mojo.
ustar/GNU/pax formats; GNU tar reads its output byte-identically. Hardened against hostile archives. Mirrors Python's tarfile.
-
RESP2 Redis client in pure Mojo.
A redis-py-shaped client over libc sockets, tested against a live server and hardened against hostile replies. Mirrors Python's redis-py.
-
URL parsing and encoding in pure Mojo.
Mirrors Python's urllib.parse: parse/build URLs, quote/unquote, urlencode, parse_qs, urljoin. 173/173 byte-for-byte parity against CPython's own urllib.parse fixtures, 42/42 on the RFC 3986 Section 5.4 urljoin conformance table.
Support this work
Most of what's on this page is free and open source, built in time that isn't billed to anyone. GitHub Sponsors is how people who get value from it can chip in.
Quoted in The New York Times, ABC News, Vox & SD Times · guest on JavaScript Jabber and Humans of Reliability · moderated panels at INTERACT.