The film · 2:54
1stRun Finds, Fixes and Proves Broken Docs
A real run and its receipt, a real audit, the agent path, and the receipt.
For teams that own a docs quickstart. 1stRun runs every command, not only the links, and proves each fix in a fresh container.
Runs your quickstart in a clean container, fixes the step that breaks, and proves it in a second run.
You get
$ jafgen --years 6No such option: --yearsFixed: jafgen 69 of 9 steps passedReads the whole repo's git history, code and docs. Lists stale pages, shipped features with no docs, and who works on which part of the code.
You get
project-flags.mdlast edit 453 days ago29 code changes since15 stale pages72 features with no docsProven in a clean container
dbt guide: 3 steps fixed, 9 of 9 pass
Two were docs bugs: jafgen --years 6 at step 10, and a guide that never says it needs Python 3.12. Step 1 only needed git. The rerun made no model calls.
Priced before you scale
$5.35 a month for 300 runs, projected
Basis: 300 runs at $0.0178, the mean model cost of 88 real runs, at list price. The Team plan caps a run at $0.047.
See a sample receiptAssigned to who knows the code
How Doc-test works. Broken steps go in. Real ones 1stRun found: jafgen --years 6 failed with No such option in the dbt guide. entire: command not found after the Entire install. A migration guide link that returns 404. A dbt guide that never states it needs Python 3.12. No module named typer. curl: command not found. AccuKnox docs that say 0.9.0 while the installer fetches 0.9.58. KeyError NEATLOGS_API_KEY.
How Doc-audit works, on dbt-labs/dbt-core. The project flags page was last edited 453 days ago, with 29 code changes since. The infer-configs page is 709 days old. 15 of 1,405 pages are stale. 72 shipped features have no docs. AccuKnox/help has 87 stale pages, and its oldest page is 1,100 days old.
Doc-test
docs.getdbt.com/guides/duckdbdbt docs serve below.Every step runs on your machine. Only the docs page and the output of a failed step go to the model. Read the known limits
1A step breaks
21stRun fixes the docs
3A second clean run proves it
10 steps, one command each
git clone https://github.com/dbt-labs/jaffle_shop_duckdb.gitThe container had no git, so 1stRun installs it first.Fixedcd jaffle_shop_duckdbPassedpip install -r requirements.txtA docs bug. The guide never says it needs Python 3.12, which networkx 3.7 needs. The fix pins 3.6.1.Fixeddbt seedPasseddbt buildPasseddbt docs generatePasseddbt docs serveIt starts a web server, which a headless container cannot check.Skippedls -lah *.duckdbPassedpython -m pip install jafgenPassedjafgen --years 6A docs bug. The tool now takes jafgen 6.FixedFresh container: 9 of 9 runnable steps passed, with no model calls.
A real run on the dbt + DuckDB quickstart. Replay this run
Doc-audit
AltimateAI/altimate-code14 people, 619 commits in 12 months
People
Code · share of each part
Built from public commits in the last 12 months. Suggestions, not assignments.
Doc-audit
1Paste a repo
21stRun reads the history
3You get the list
Receipt
The film · 2:54
A real run and its receipt, a real audit, the agent path, and the receipt.
Doc-test · 2:59
Doc-audit · 1:56
A real audit of dbt-core: one repo in, a run on a laptop, the board, an owner for each fix, and the receipt.
Teaser · 0:36
Doc-audit · 0:57
1stRun does one job: it runs the quickstart, fixes the docs, proves the fix and opens the PR. A link checker or a docs linter only reads the page.
| Feature | 1stRun | Claude Code | GitHub Actions | GitHub Agents | Custom workflow |
|---|---|---|---|---|---|
| Runs the quickstart as a new developer | Every step runs in a fresh Docker container | Runs on your machine. An optional sandbox limits files and network | A fresh runner per job, but you script every step | Works in its own VM on your repo, not a new-user setup | Only as clean as the environment you build |
| Plans steps from a docs URL | Writes one step per command on the page | When you prompt it with the page | You write each step | Starts from an issue or task, not a docs page | You write the parser |
| Tries again when a step fails | Finds the cause, patches, retries up to 3 times per step | Iterates inside one session | The job fails and stops | Iterates and pushes commits to its draft PR | Only what you code |
| Proves the fix | A second clean container must pass the whole quickstart | Only if you ask for it | Only if you script a second run | Your repo's own tests, not a clean-user rerun | Only if you code it |
| Shows the cost of each run | Every run ends with a receipt. The mean run costs $0.018 | Cost and token metrics, after you set them up | Logs and run history, no agent traces | A session log, with no cost trace you own | You build it |
| Opens the docs PR | After you approve once | When you ask | Only if you script it | Opens a draft PR and asks you for review | Only if you code it |
| Easy to start | Paste a docs URL, then paste the prompt into your coding agent | One prompt, but you define the test and the clean setup | A YAML file per quickstart | Assign an issue to Copilot | Highest effort |
| Proof in public repos | 4 upstream docs PRs, all open | Not specific to docs | Not specific to docs | Not specific to docs | Depends on your build |
Hi there, I'm Rajbir, a 21 y/o CS student at SRMIST who loves to research and build stuff. Currently a Backend Intern at Earthsense Labs Pvt. Ltd (IIT Delhi) & doing Research Internship at IIT Madras. I build secure, scalable web3 and AI-powered Applications from DeFi protocols and cross-chain systems to fraud detection pipelines and real-time APIs.