[BUG] claude-api skill: 4 of 66 URLs in shared/live-sources.md are 404, including the Pricing row the skill directs you to WebFetch

Status Open
Reported on v2.1.220
Maintainer reply None cached
Activity 0 comments · opened Aug 2, 2026

Summary

The bundled claude-api skill's shared/live-sources.md — the table the skill designates as its live-source registry and explicitly instructs you to WebFetch — contains 4 dead URLs out of 66. Every install at CLI 2.1.220 routes to the same 404s.

This isn't a cosmetic doc-link problem. SKILL.md tells the model to use these rows as the authoritative source when its training prior may be stale:

Never guess SDK usage. … If the binding you need is not explicitly documented in the skill files, WebFetch the relevant SDK repo from shared/live-sources.md before writing code.

and, for pricing specifically:

For WebFetch, use the Pricing row in shared/live-sources.md.

So the documented recovery path for "don't trust your prior, go check" leads to a 404, and the model falls back to the very prior the instruction was written to distrust.

The 4 broken URLs, with resolving replacements

Verified 2026-08-02 via curl -sL -o /dev/null -w '%{http_code}':

| Row | Current (404) | Resolves at (200) |
|---|---|---|
| Pricing | platform.claude.com/docs/en/pricing.md | platform.claude.com/docs/en/about-claude/pricing.md |
| Computer Use | platform.claude.com/docs/en/agents-and-tools/tool-use/computer-use.md | platform.claude.com/docs/en/agents-and-tools/tool-use/computer-use-tool.md |
| CLI / SDKs | platform.claude.com/docs/en/api/sdks/cli.md | platform.claude.com/docs/en/api/client-sdks.md |
| Skills | platform.claude.com/docs/en/agents-and-tools/skills.md | code.claude.com/docs/en/skills.mddifferent host, see note |

The first three are confident: same host, single path segment changed, and each replacement 200s with the expected content. The Skills row is lower confidence — the only 200 I found is on code.claude.com, not platform.claude.com, so it may be a genuine host migration or it may be a different page than intended. Five platform.claude.com candidates all 404'd (agent-skills.md, build-with-claude/agent-skills.md, agents-and-tools/skills/overview.md, agent-skills/overview.md, agents-and-tools/agent-skills.md). Worth someone with authority on the doc tree confirming rather than taking my guess.

The table is internally inconsistent, which is what makes this cheap to catch

The Pricing row lost the about-claude/ path segment that its own neighbour retains:

line 18 | Models Overview | https://platform.claude.com/docs/en/about-claude/models/overview.md   ✅
line 21 | Pricing         | https://platform.claude.com/docs/en/pricing.md                        ❌

Same table, same host, one row missing a segment the other has.

Repro

F=<bundled-skills>/claude-api/shared/live-sources.md
grep -oE 'https://[^ `|)]+' "$F" | sort -u | while read -r u; do
  c=$(curl -sL -m 20 -o /dev/null -w '%{http_code}' "$u")
  [ "$c" = 200 ] || printf '%-4s %s\n' "$c" "$u"
done

Output at 2.1.220:

404  https://platform.claude.com/docs/en/agents-and-tools/skills.md
404  https://platform.claude.com/docs/en/agents-and-tools/tool-use/computer-use.md
404  https://platform.claude.com/docs/en/api/sdks/cli.md
404  https://platform.claude.com/docs/en/pricing.md

Suggested fix

  1. Repoint the three confident rows.
  2. Confirm the intended Skills target, then repoint.
  3. Add that loop to CI for the skill bundle. It is ~6 lines, needs nobody to suspect a particular row, and it is what turns this from "someone eventually notices" into a build failure. It generalizes to any doc-pointer table shipped in a skill.

How this surfaced, and why the impact is more than a dead link

An agent following the skill correctly took its pricing figures from the skill's cached model table (all six later verified correct against the live docs page) and, from the adjacent row of the same file, a citation URL that 404s. Correct data and a broken citation, one artifact, one session, same authority — so there is no source-level reliability signal that would separate them.

That URL then shipped into a downstream repo as the provenance comment on a corrected pricing table, where it survived a mutation-tested coverage suite, 507 passing tests, and CI — none of which can see a comment. It was caught only when someone re-fetched the live docs page for an unrelated reason and noticed the cited path wasn't the one that worked.

Related precedent: #35910 (product-self-knowledge skill, broken support URL) — same defect class in a different bundled skill.

Environment

  • Claude Code CLI 2.1.220
  • Skill: bundled claude-api, file shared/live-sources.md
  • Verified 2026-08-02; all four 404s reproduce on a clean fetch

View original on GitHub ↗