Goal
A site where anything can change, and a repo that shows proper GitHub process, automated wherever it makes sense. It’s open to outside contributors. The work began in October 2026.
Approach
The site
- Created a site to run experiments from, each on its own page at the site root with metadata the build checks
- Built initially as a static Astro site in strict TypeScript, deployed to GitHub Pages (though this may change)
The pipeline
- Protected
mainwith a ruleset: pull requests only, signed commits, merge commits, required build and dependency review checks, and a CodeQL code scanning gate on errors and high-severity alerts - Gated production by who merges: owner merges ship directly, collaborator merges wait for owner approval, and outside contributors need approval first
- Automated releases with semantic-release from Conventional Commits, as tags and GitHub releases only
- Pinned actions to commit SHAs, auto-merged patch and minor Dependabot updates, and managed labels as code
/sandbox
- Wrote a Claude Code skill that can ship one update end to end: research, pick an idea, build, verify, open a PR, merge, and confirm the deploy and release
- Set walls no run crosses: no pipeline or governance changes, no bypassed checks, nothing that costs money, and the site always builds
- Capped research at 6 searches, 12 fetches, and 10 minutes, and treated every fetched page as untrusted data
- Added failure handling: 3 fix attempts, then a draft PR labeled
sandbox-failed; a redmainturns the next run into a fix run
Outcome
- Too early to say where it goes: each addition involves a new idea, so the site’s direction is part of the experiment
- Went deeper on running AI agents unattended: scoping their judgment with written rules, budgets, and failure handling instead of a human at the keyboard
- Refreshed on GitHub’s governance features: rulesets, deployment environments, and approvals for outside contributors
- Automated releases with semantic-release end to end: every version cut from commit types, nothing edited by hand