The project report shows how a project loads, what it costs the AI’s context, and how it works in Claude Code, GitHub Copilot and Codex. Open a project, choose Checks, then Open report. It is checked in your browser on every change; nothing is sent anywhere.

Exact numbers and estimates

  • Exact: characters, lines and bytes, and the limits defined in them (a 1,024-character description, Claude Code’s 1,536 characters per skill in its listing, Codex’s 32 KiB of AGENTS.md).
  • Estimates: token counts. Tokenizers differ by model and Claude’s is not public, so tokens are always shown as a range, such as “about 1.2k–1.6k tokens”. Use them to compare, not as exact costs.

Errors, warnings and suggestions

Kind What it means Blocks an export?
Error A tool will not load the file, or the export would break Shows the export as Draft
Warning Breaks official guidance; Why? links the source No
Suggestion A heuristic, shown with the text it is based on No

Suggestions come from checks kept narrow on purpose: they are tested against well-written skills (Anthropic’s, Vercel’s, Supabase’s and this project’s own) and must stay quiet on them. Even so, read the evidence. When a suggestion does not apply, Dismiss it; it is remembered for the project, and Show them again brings dismissed ones back. Errors and warnings can not be dismissed.

The scorecard

Six areas, each with its errors, warnings and suggestions. Select one to show only its findings.

  • Structure: the files load, link and parse.
  • Discoverability: descriptions say what and when, and do not compete with each other.
  • Context cost: what is paid on every request, long sections, duplicated text, AGENTS.md size.
  • Clarity: steps the AI can follow without guessing.
  • Safety: risky actions ask first; skills with side effects run only when asked; tools match the role.
  • Portability: each AI tool reads the files and fields you use.

There is no single grade: one number would hide what to fix.

Context cost

Choose an AI tool to see what each item costs it, split by when it loads:

  • Every request: skill names and descriptions (the listing), AGENTS.md, rules without paths. This is what to keep short.
  • When used: SKILL.md or the agent’s instructions, loaded when the skill or agent is picked.
  • When read: reference files, loaded only when SKILL.md sends the AI to them.
  • Preloaded by agents: Claude Code puts the full text of the skills in an agent’s skills list in its context each time it starts.

The skill listing card shows how each tool cuts and budgets the listing. Open Files and largest sections under an item to see which part to move into a reference file.

Competing descriptions

Pairs of skills (or agents) whose descriptions share their distinctive words, with the words shown. A request for one may go to the other. Say in each description what it is for and what it is not for, or merge them.

Portability

Which tools read each file, and what each does with its fields: Used, Ignored (Codex’s own code drops it) or Not documented (the tool’s documentation does not mention it, so the report does not guess). How Codex reads agents was not verified, and says so.

Tests

Each skill’s and agent’s tests, and the newest result as counts. Results come from the AI tool that ran them (how tests work); Out of date means the item changed since.

Download, print or share

  • Download report: one branded HTML file, with no scripts and nothing loaded from elsewhere, readable offline.
  • Markdown: the same content for a pull request or a repository.
  • Print or PDF: prints the report alone; choose “Save as PDF” in the print dialog.

Every line taken from your project passes the security scan first: a line that looks like a secret is replaced, never printed.

From your AI tool

With Connect AI on, your AI tool reads the same analysis with analyze_project, and /optimize-skill follows a routine: measure, fix what is safe, ask about the rest, measure again, and report the change that compare_analysis computes. It reports Skill Builder’s numbers rather than working them out itself.