{"masthead":"Toolproof","methodology":"https://toolproof.kynth.studio/methodology","methodology_version":"1.0","license":"CC-BY-4.0","attribution":"Toolproof — https://toolproof.kynth.studio","publisher":"Kynth Studios","terms":{"auth":"none","methods":["GET","HEAD","OPTIONS"],"cors":"*","rate_limit":"none"},"fetched_at":"2026-08-14T18:50:12.145Z","meta":{"indexes":9,"readable":9,"unreadable":0},"headline":{"claim":"share of measured agent-skill listings that do not load","measured":445348,"failing":43199,"share":0.097,"as_of":"2026-08-14T07:52:38.608+00:00","method":"static structural checks, no execution"},"endpoints":[{"path":"/api/index.json","returns":"this document"},{"path":"/api/v1/indexes","returns":"the same nine rows, versioned"},{"path":"/api/v1/indexes/{slug}","returns":"one index"},{"path":"/api/v1/subjects/{owner}/{repo}","returns":"every measurement the nine hold about one GitHub repository, with a copy-paste badge line for each"},{"path":"/api/v1/badge/{index}/{subject}","returns":"shields.io endpoint schema for one reading"},{"path":"/badge/{index}/{subject}.svg","returns":"the same reading rendered as an embeddable SVG badge"}],"indexes":[{"slug":"skillworks","name":"SkillWorks","ok":true,"url":"https://skillworks.kynth.studio","measures":"Every Claude Code skill, subagent, plugin and marketplace repository.","method":"Each listing's files are read from source and scored 0–100 on four weighted components. A listing that does not parse into something Claude Code could load is counted as broken, not quietly dropped from the denominator.","source":"https://skillworks.kynth.studio/api/stats","headline":{"value":445348,"label":"listings read from source"},"rows":[{"label":"that do not load","value":"43,199"},{"label":"share failing","value":"9.7%"},{"label":"repositories","value":"21,983"}],"as_of":"2026-08-14T07:52:38.608+00:00","stale":false,"fetched_at":"2026-08-14T18:50:12.044Z","badge":{"subject":"GitHub repository","shows":"how many listings the index holds from that repository and how many pass every static structural check","svg":"https://toolproof.kynth.studio/badge/skillworks/{subject}.svg","shields_endpoint":"https://toolproof.kynth.studio/api/v1/badge/skillworks/{subject}"}},{"slug":"stillshipping","name":"StillShipping","ok":true,"url":"https://stillshipping.kynth.studio","measures":"Whether an agent tool is still being worked on.","method":"Commit, release and issue activity pulled from the GitHub API nightly and turned into one of three verdicts. The verdict is recomputed every night rather than recorded once, so a project that goes quiet changes its own row without anybody editing it.","source":"https://stillshipping.kynth.studio/api/stats","headline":{"value":333,"label":"tools tracked"},"rows":[{"label":"maintained","value":"293"},{"label":"slowing","value":"16"},{"label":"dead","value":"24"}],"as_of":"2026-08-14T06:19:42.233+00:00","stale":null,"fetched_at":"2026-08-14T18:50:12.044Z","badge":{"subject":"GitHub repository","shows":"the nightly verdict — maintained, stale or dead — and the 0-100 freshness behind it","svg":"https://toolproof.kynth.studio/badge/stillshipping/{subject}.svg","shields_endpoint":"https://toolproof.kynth.studio/api/v1/badge/stillshipping/{subject}"}},{"slug":"tooldrift","name":"ToolDrift","ok":true,"url":"https://tooldrift.kynth.studio","measures":"What the AI coding tools changed overnight — pricing, models, rankings.","method":"Vendor changelogs, pricing pages and store rankings are fetched on a schedule and diffed against the previous capture. A price is recorded from the page that states it, and a page that has moved is followed and the redirect published rather than silently followed.","source":"https://tooldrift.kynth.studio/api/stats","headline":{"value":36,"label":"tools watched nightly"},"rows":[{"label":"models tracked","value":"412"},{"label":"pricing pages checked","value":"34"},{"label":"ranking rows","value":"1,391"}],"as_of":"2026-08-14T09:51:14.173+00:00","stale":false,"fetched_at":"2026-08-14T18:50:12.046Z","badge":{"subject":"GitHub repository","shows":"whether the tool is active, and that its pricing and default model are re-read daily","svg":"https://toolproof.kynth.studio/badge/tooldrift/{subject}.svg","shields_endpoint":"https://toolproof.kynth.studio/api/v1/badge/tooldrift/{subject}"}},{"slug":"kitgrade","name":"KitGrade","ok":true,"url":"https://kitgrade.kynth.studio","measures":"SaaS starter kits, graded on what is actually in the box.","method":"Kits are graded from measured facts rather than from their own landing pages, and the hands-on count is published separately from the documented count — a kit somebody installed and ran is a different claim from a kit somebody read about.","source":"https://kitgrade.kynth.studio/api/stats","headline":{"value":34,"label":"starter kits graded"},"rows":[{"label":"installed and run","value":"15"},{"label":"open source","value":"20"},{"label":"archived since listing","value":"2"}],"as_of":"2026-08-14T09:28:57.152+00:00","stale":null,"fetched_at":"2026-08-14T18:50:12.046Z","badge":{"subject":"GitHub repository","shows":"the kit's score out of 100, and whether it was scored hands-on or from documentation","svg":"https://toolproof.kynth.studio/badge/kitgrade/{subject}.svg","shields_endpoint":"https://toolproof.kynth.studio/api/v1/badge/kitgrade/{subject}"}},{"slug":"storeready","name":"StoreReady","ok":true,"url":"https://storeready.kynth.studio","measures":"Which AI app builders produce something the App Store will actually accept.","method":"Every verdict is attached to numbered evidence — a policy clause, a rejection thread, a shipped binary. A builder nobody has evidence for is published as unknown rather than given the benefit of the doubt.","source":"https://storeready.kynth.studio/api/health","headline":{"value":14,"label":"app builders assessed"},"rows":[{"label":"pieces of evidence","value":"47"},{"label":"ship","value":"4"},{"label":"ship with caveats","value":"8"}],"as_of":"2026-08-14T08:50:19.952899+00:00","stale":false,"fetched_at":"2026-08-14T18:50:12.047Z","badge":{"subject":"builder slug","shows":"whether the builder's output reaches App Store review, from cited evidence","svg":"https://toolproof.kynth.studio/badge/storeready/{subject}.svg","shields_endpoint":"https://toolproof.kynth.studio/api/v1/badge/storeready/{subject}"}},{"slug":"blockdex","name":"BlockDex","ok":true,"url":"https://blockdex.kynth.studio","measures":"Every component, block and theme inside every public shadcn registry.","method":"Each registry is crawled and its items are read individually, so an item that disappears between crawls is counted as removed rather than forgotten. Removals over the last thirty days are published beside the total.","source":"https://blockdex.kynth.studio/api/stats","headline":{"value":56524,"label":"registry items indexed"},"rows":[{"label":"registries crawled","value":"784"},{"label":"removed in 30 days","value":"15,615"},{"label":"with source available","value":"13,862"}],"as_of":"2026-08-14","stale":false,"fetched_at":"2026-08-14T18:50:12.048Z","badge":{"subject":"registry slug","shows":"how many items the registry publishes, enumerated nightly from its own registry.json","svg":"https://toolproof.kynth.studio/badge/blockdex/{subject}.svg","shields_endpoint":"https://toolproof.kynth.studio/api/v1/badge/blockdex/{subject}"}},{"slug":"rulestack","name":"RuleStack","ok":true,"url":"https://rulestack.kynth.studio","measures":"How teams actually write agent config — AGENTS.md, CLAUDE.md and the rest.","method":"Config files are read out of public repositories and measured: length, whether they carry runnable commands, whether they carry code. The format shares are computed from the files found, not from a survey of what people say they use.","source":"https://rulestack.kynth.studio/api/stats","headline":{"value":4548,"label":"agent config files read"},"rows":[{"label":"formats compared","value":"8"},{"label":"repositories","value":"1,126"},{"label":"most common format","value":"agents-md"}],"as_of":"2026-08-08","stale":null,"fetched_at":"2026-08-14T18:50:12.049Z","badge":{"subject":"GitHub repository","shows":"the measured quality of the strongest agent config file in the repository, out of 100","svg":"https://toolproof.kynth.studio/badge/rulestack/{subject}.svg","shields_endpoint":"https://toolproof.kynth.studio/api/v1/badge/rulestack/{subject}"}},{"slug":"citerank","name":"CiteRank","ok":true,"url":"https://citerank.kynth.studio","measures":"Whether answer engines cite a site when a buyer asks about its category.","method":"A question is put to a live answer engine through a real browser and the answer it returns is recorded — one row per question per engine per run. Nothing is inferred from search rank; a citation counts when the engine actually produced it.","source":"https://citerank.kynth.studio/api/stats","headline":{"value":77,"label":"answers recorded"},"rows":[{"label":"engines answering","value":"5"},{"label":"free checks run","value":"6"}],"as_of":"2026-08-14","stale":false,"fetched_at":"2026-08-14T18:50:12.049Z","badge":null},{"slug":"doc-extract-bench","name":"doc-extract-bench","ok":true,"url":"https://github.com/kyisaiah47/doc-extract-bench","measures":"Document-extraction APIs, scored on pinned public datasets.","method":"Every vendor is run against the same pinned subsets and EVERY RAW RESPONSE IS COMMITTED, so the published accuracy can be recomputed offline by anyone with no API keys and no account. It is the only one of the nine whose numbers a stranger can fully re-derive.","source":"https://raw.githubusercontent.com/kyisaiah47/doc-extract-bench/main/results/latest.json","headline":{"value":1210,"label":"documents scored"},"rows":[{"label":"vendors compared","value":"3"},{"label":"pinned datasets","value":"5"},{"label":"extraction failures","value":"18"}],"as_of":"2026-07-10T13:37:49.489Z","stale":null,"fetched_at":"2026-08-14T18:50:12.050Z","badge":null}]}