<- all tokdocs

Anthropic's Limit for SKILL.md Is 500 Lines, Not 200, and None of the Six Checks in This Clip Fixes Inconsistent Triggering

Watch on TikTok

View on TikTok ->

This is a 41-second vertical clip at 720x1280 (h265 video, AAC audio, 532 kbps), posted 2026-09-10 by @goldst.ai, whose TikTok channel nickname is also goldst.ai. At capture it held 12,400 plays, 626 likes, 47 comments, 179 reposts, and 789 saves. The audio is credited in the metadata as the track "original sound" by the artist "silly guy," and the description carries three hashtags: #ai, #claude, #cowork. I read all 21 extracted frames at 2-second intervals and all 154 transcript words. There is no screen recording in this video. Every frame is the same selfie-framed shot: a woman in a white-and-black crochet lace sweater seated in a black mesh office chair, beige walls behind her, a white door on the left, a wood-framed door on the right, and a fluorescent drop-ceiling panel glowing above her head. The content is carried entirely by two layers of burned-in text. The first is a karaoke-style word-by-word caption at the top of the frame, which reads in sequence "my skills" (frame 1), "you check" (frame 2), "that all" (frame 3), "200 lines" (frame 4), "to go" (frame 5), "if there" (frame 6), "100 lines" (frame 7), "table of" (frame 8), "analyze the" (frame 9), "not missing" (frame 10), "code for" (frame 11), "of just" (frame 12), "tell me" (frame 13), "so that" (frame 14), "more consistent" (frame 15), "one last" (frame 16), "follows the" (frame 17), "clear concise" (frame 18), "constraints please" (frame 19), "needs these" (frame 20), and "we can" (frame 21). The second layer is a checklist of six green-checkmark labels that accumulates on screen as she speaks and then clears before the end. "✅ Skill <200 lines" appears at frame 4 (about 6 seconds), "✅ Use references" at frame 5 (about 8 seconds), "✅ Add ToC" at frame 8 (about 14 seconds), "✅ Code for consistency" at frame 11 (about 20 seconds), "✅ Assets for format" at frame 13 (about 24 seconds), and "✅Check 3C's" at frame 16 (about 30 seconds). All six are visible together from frame 16 through frame 19, then every overlay is gone by frame 20 (about 38 seconds), leaving only the caption. The spoken request is a single dictated prompt: check that all SKILL.md files are under 200 lines, push the overflow into references, add a table of contents to any reference over a hundred lines, find places that should use custom code instead of written instruction, ask for additional templates, and verify every skill follows "the three c's framework, that they are clear, concise, and that there are no technical constraints."

Correction: Anthropic's published ceiling for SKILL.md is 500 lines, and three separate Anthropic sources agree

The first and most prominent overlay in the video, on screen from frame 4 to frame 19, is "✅ Skill <200 lines." The spoken line is "check my existing skills to make sure that all the skill mds are under 200 lines."

Anthropic does not publish a 200-line limit anywhere I could find. The number in the official documentation is 500, and it appears three times in three different places. The Skill authoring best practices page states it twice, once under progressive disclosure patterns ("Keep SKILL.md body under 500 lines for optimal performance") and again under Token budgets ("Keep SKILL.md body under 500 lines for optimal performance. If your content exceeds this, split it into separate files"). The pre-ship checklist on that same page lists "SKILL.md body is under 500 lines" as a verification item. The Claude Code skills documentation repeats it as a bolded instruction: "Keep SKILL.md under 500 lines." Anthropic's own skill-creator skill, published in the anthropics/skills repository, says "SKILL.md body - In context whenever skill triggers (<500 lines ideal)" and then "Keep SKILL.md under 500 lines; if you're approaching this limit, add an additional layer of hierarchy." The open Agent Skills specification gives the same figure: "Keep your main SKILL.md under 500 lines."

A 200-line house rule is a defensible personal preference, since a shorter body does cost fewer tokens once the skill triggers. It is not the documented threshold, and a viewer who treats it as one will refactor skills that were already inside Anthropic's guidance.

Verified: the 100-line table-of-contents rule is real, but Anthropic's own two sources disagree on the number

At frame 7 the caption reads "100 lines," and at frame 8 the overlay "✅ Add ToC" appears. The transcript is "if there are any references that are over a hundred lines make sure that there is a table of contents in there."

This one checks out against the primary source. The best practices page has a section titled "Structure longer reference files with table of contents" that reads: "For reference files longer than 100 lines, include a table of contents at the top. This ensures Claude can see the full scope of available information even when previewing with partial reads." The stated reason is specific. Claude sometimes previews a referenced file with a partial read such as head -100 rather than reading the whole thing, so a table of contents in the first screen tells it what else is in the file.

Anthropic is not internally consistent on the threshold. The skill-creator SKILL.md in the same company's public repository says "For large reference files (>300 lines), include a table of contents." The video's 100 matches the documentation site. Anyone auditing against 300 is following Anthropic's own tooling instead. Both are Anthropic, and they do not agree.

Correction: there is no "three C's framework," and "no technical constraints" is the opposite of Anthropic's advice

The last overlay to appear, at frame 16, is "✅Check 3C's." The caption across frames 17 to 19 spells out the content: "follows the," "clear concise," "constraints please." The transcript is "make sure every skill follows the three c's framework that they are clear concise and that there are no technical constraints."

No Anthropic documentation I fetched uses the phrase "three C's" or defines any such framework. The best practices page does open with "Good Skills are concise, well-structured, and tested with real usage" and devotes a section to "Concise is key," so the clarity and conciseness halves have real support. The third item does not.

Anthropic's guidance recommends constraints where the operation is fragile. The same page defines a "low freedom" mode for exactly this case: "Use when: Operations are fragile and error-prone, Consistency is critical, A specific sequence must be followed," and its worked example is a database migration with the literal instruction "Run exactly this script: python scripts/migrate.py --verify --backup. Do not modify the command or add additional flags." The analogy Anthropic uses is a narrow bridge with cliffs on both sides, where "There's only one safe way forward. Provide specific guardrails and exact instructions." A blanket audit that strips technical constraints out of skills would remove the mechanism the documentation recommends for the failures the video is complaining about.

There is a separate compatibility frontmatter field in the spec whose stated purpose is to declare environment requirements, capped at 500 characters. If "no technical constraints" means "do not declare dependencies," that conflicts with the spec's own anti-pattern guidance, which warns against assuming packages are installed.

Verified: "custom code for consistency" and "assets for templates" both match the published conventions

Two of the six checklist items land cleanly.

"✅ Code for consistency" (frame 11) corresponds to "we should be using custom code for consistency instead of just written instruction." The best practices page states "Prefer scripts for deterministic operations: Write validate_form.py rather than asking Claude to generate validation code," and lists the reasons: pre-made scripts are "More reliable than generated code," "Save tokens (no need to include code in context)," "Save time," and "Ensure consistency across uses." The overview page adds the mechanism, which is that a script Claude runs through bash never enters the context window at all, so "Only its output ... consumes tokens."

"✅ Assets for format" (frame 13) corresponds to "tell me if you need any additional templates." The specification names assets/ as the conventional directory for "Templates (document templates, configuration templates), Images (diagrams, examples), Data files (lookup tables, schemas)." Anthropic's skill-creator describes the same three-directory layout: scripts/ for "Executable code for deterministic/repetitive tasks," references/ for "Docs loaded into context as needed," and assets/ for "Files used in output (templates, icons, fonts)." The overlay's wording maps onto the published convention.

The stated problem is inconsistent triggering, and not one of the six checks touches the field that controls triggering

The opening line of the clip, visible as the caption "my skills" at frame 1, is "hey claude my skills are not working consistently." Every subsequent check is about the body of SKILL.md, the reference files, the scripts, the assets, or prose style. Triggering is decided before any of that is read.

The overview page is explicit about the loading order. Level 1 is metadata, always loaded at startup, roughly 100 tokens per skill, and consists only of name and description from the YAML frontmatter. "The description is what Claude matches your request against when determining whether to trigger the Skill, so it must say both what the Skill does and when to use it." Level 2, the SKILL.md body, is read only after that match happens. Shortening a 250-line body to 199 lines changes nothing about whether the skill fires, because Claude never saw those lines when it decided.

Anthropic's skill-creator names this failure mode directly and prescribes the fix: "currently Claude has a tendency to 'undertrigger' skills -- to not use them when they'd be useful. To combat this, please make the skill descriptions a little bit 'pushy'." Its example rewrites "How to build a simple fast dashboard to display internal Anthropic data." into a version that appends "Make sure to use this skill whenever the user mentions dashboards, data visualization, internal metrics, or wants to display any kind of company data, even if they don't explicitly ask for a 'dashboard.'"

The best practices page adds three more triggering rules the clip does not mention. Descriptions must be written in third person, because "The description is injected into the system prompt, and inconsistent point-of-view can cause discovery problems." Each skill has exactly one description field, and "Claude uses it to choose the right Skill from potentially 100+ available Skills." The description field is capped at 1,024 characters by the spec, and name at 64.

In Claude Code specifically, the skills documentation lists three more reasons a skill silently fails to fire, none of which a line-count audit would catch. A skill with disable-model-invocation: true can only be run manually as /name. A skill with paths glob patterns activates only when the files being worked on match. And the combined description plus when_to_use text "is truncated at 1,536 characters in the skill listing to reduce context usage," so a description padded past that limit loses its tail.

Unstated cost: the audit is a six-pass sweep over a whole library, requested "quickly"

The closing transcript lines are "please do this quickly because my business needs the skills to automate our work so we can grow faster." The caption at frame 20 reads "needs these" and at frame 21 "we can," and by that point every checklist overlay has been cleared from the screen.

The request as dictated is six independent passes over every skill in a library: count lines in each SKILL.md, relocate overflow into references, count lines in each reference and insert a table of contents, identify instruction blocks that should become scripts, propose new template assets, and run a style review. Each pass requires reading the files, which is the opposite of the progressive disclosure the architecture is built around. The overview page puts the Level 2 budget at "Under 5k tokens" per triggered skill, so a library of twenty skills read in full for an audit is a large read before any editing starts.

Anthropic's recommended method for the underlying problem is slower and evidence-based rather than rule-based. The best practices page says "Create evaluations BEFORE writing extensive documentation," asks for "At least three evaluations created" and "Tested with Haiku, Sonnet, and Opus" in its checklist, and describes an observe-refine-test loop where you watch an actual agent use the skill and bring the specific failure back. Its example of that loop is a triggering-adjacent miss: "When I asked Claude B for a regional sales report, it wrote the query but forgot to filter out test accounts, even though the Skill mentions filtering."

Context the clip leaves out: skills do not sync across surfaces, and plan access varies

The description tags #cowork. Cowork is Anthropic's agent product for non-developers, announced on 2026-01-12 per Simon Willison's write-up of the launch, initially on macOS for Max subscribers and extended to Pro on 2026-01-16. The current Cowork page on claude.com now says Cowork "is now just Claude" and lists web, desktop, and mobile beta availability across Pro, Max, Team, and Enterprise. Anthropic's overview page mentions Cowork once, in the context of Enterprise skill content scanning.

For anyone running skills as business infrastructure, the overview page documents three limits the clip does not raise. Custom skills "do not sync across surfaces," so a skill uploaded to claude.ai is not available through the API, and Claude Code skills are filesystem-based and separate from both. Sharing scope differs by surface: claude.ai custom skills are "Individual user only. Each team member must upload separately," and "claude.ai does not support centralized admin management or org-wide distribution of custom Skills." On claude.ai, custom skills are "Available on Pro, Max, Team, and Enterprise plans with code execution enabled." On the Claude API, skills run with "No network access" and "No runtime package installation," which constrains the kind of scripts a skill can ship.

Agent Skills launched on 2025-10-16 alongside Anthropic's engineering post Equipping agents for the real world with Agent Skills. The documentation the clip's rules are being measured against therefore predates the clip by about eleven months. The spec was later moved out of Anthropic's own repository: the spec/agent-skills-spec.md file in anthropics/skills now contains only a pointer reading "The spec is now located at https://agentskills.io/specification." SiliconANGLE reported that the open-standard release happened on 2025-12-18. I did not locate a primary Anthropic announcement page for that date, so treat the exact day as reporting rather than confirmed.

Key Takeaways

  • Correction: the on-screen rule "✅ Skill <200 lines" does not match Anthropic's published figure. The best practices page, the Claude Code skills docs, the skill-creator skill, and the open spec all say to keep SKILL.md under 500 lines.
  • Verified: "if there are any references that are over a hundred lines make sure that there is a table of contents" matches the best practices page verbatim, which gives 100 lines as the threshold and partial reads as the reason.
  • Partial correction: Anthropic contradicts itself on that threshold. Its own skill-creator skill sets the table-of-contents trigger at more than 300 lines, not 100.
  • Correction: there is no Anthropic "three C's framework." Clear and concise are supported by the docs. "No technical constraints" is the reverse of Anthropic's low-freedom guidance, which tells you to write exact commands and guardrails for fragile operations.
  • Verified: "use custom code for consistency instead of just written instruction" matches "Prefer scripts for deterministic operations," and "templates" belongs in the assets/ directory named by the spec.
  • Correction of the premise: none of the six checks addresses triggering. Claude decides whether to fire a skill from name and description alone, loaded at startup at roughly 100 tokens per skill, before it reads a single line of the body.
  • Unstated cost: the fix for undertriggering is a rewritten description. Anthropic's skill-creator says Claude undertriggers and tells authors to make descriptions "pushy" with explicit trigger phrases. In Claude Code, disable-model-invocation, paths globs, and the 1,536-character truncation of description plus when_to_use are three more silent causes.
  • Unstated cost: Anthropic's prescribed method is evaluation-driven, with at least three evals, testing across Haiku, Sonnet, and Opus, and an observe-refine-test loop. That is not compatible with the clip's closing instruction to "do this quickly."
  • Unstated cost: custom skills do not sync across claude.ai, the API, and Claude Code. On claude.ai they are per-user with no admin distribution, and they need Pro, Max, Team, or Enterprise with code execution enabled.

Resources

  • Skill authoring best practices — Anthropic's primary authoring guide. Source for the 500-line body limit, the 100-line table-of-contents rule, the degrees-of-freedom model, "Prefer scripts for deterministic operations," and the pre-ship checklist.
  • Agent Skills overview — the three progressive disclosure levels with token costs, confirmation that description is what Claude matches against, the frontmatter field limits, and the cross-surface sync and plan availability limits.
  • Use Skills in Claude Code — the full frontmatter field table including when_to_use, disable-model-invocation, paths, and allowed-tools, the skill location paths, the 1,536-character listing truncation, and a repeat of the 500-line rule.
  • Agent Skills specification — the open standard. name max 64 characters, description max 1024, compatibility max 500, and the scripts/, references/, assets/ directory conventions.
  • anthropics/skills repository — Anthropic's open-source skills. The skill-creator skill is the source for the "pushy descriptions" advice, the undertriggering admission, the assets/references/scripts descriptions, and the conflicting 300-line table-of-contents threshold.
  • Equipping agents for the real world with Agent Skills — Anthropic's engineering post from the 2025-10-16 launch, with the progressive disclosure framing and the instruction to pay special attention to name and description.
  • Agent Skills launch announcement — product announcement dated 2025-10-16, listing availability across the Claude apps, the developer platform, and Claude Code on Pro, Max, Team, and Enterprise.
  • First impressions of Claude Cowork — contemporaneous account of the 2026-01-12 Cowork research preview, Max-only at launch and extended to Pro on 2026-01-16.
  • Anthropic makes agent Skills an open standard — trade reporting on the open-standard release. Cited as reporting because I found no matching primary Anthropic announcement page.

Published September 10, 2026. Writeup generated from a favorited TikTok.