Test Gap Audit
github/awesome-copilot
Run a read-only audit for missing, weak, stale, or mis-scoped test coverage.
Audits skills in this repo for consistency, API drift, and structural gaps.
$ npx skills add rshankras/claude-code-apple-skills --skill skill-auditor -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install rshankras/claude-code-apple-skills skill-auditor --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/rshankras/claude-code-apple-skills.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/shared/skill-auditor .claude/skills/skill-auditor && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "skill-auditor" agent skill from https://github.com/rshankras/claude-code-apple-skills/tree/main/skills/shared/skill-auditor into .claude/skills/skill-auditor/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "skill-auditor", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/rshankras/claude-code-apple-skills/tree/main/skills/shared/skill-auditorType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add rshankras/claude-code-apple-skills --skill skill-auditor -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install rshankras/claude-code-apple-skills skill-auditor --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/rshankras/claude-code-apple-skills.git skills-src && mkdir -p .agents/skills && cp -r skills-src/skills/shared/skill-auditor .agents/skills/skill-auditor && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "skill-auditor" agent skill from https://github.com/rshankras/claude-code-apple-skills/tree/main/skills/shared/skill-auditor into .agents/skills/skill-auditor/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "skill-auditor", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add rshankras/claude-code-apple-skills --skill skill-auditor -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install rshankras/claude-code-apple-skills skill-auditor --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/rshankras/claude-code-apple-skills.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/skills/shared/skill-auditor .cursor/skills/skill-auditor && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "skill-auditor" agent skill from https://github.com/rshankras/claude-code-apple-skills/tree/main/skills/shared/skill-auditor into .cursor/skills/skill-auditor/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "skill-auditor", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/rshankras/claude-code-apple-skills.git --path skills/shared/skill-auditor--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add rshankras/claude-code-apple-skills --skill skill-auditor -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install rshankras/claude-code-apple-skills skill-auditor --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/rshankras/claude-code-apple-skills.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/skills/shared/skill-auditor .gemini/skills/skill-auditor && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "skill-auditor" agent skill from https://github.com/rshankras/claude-code-apple-skills/tree/main/skills/shared/skill-auditor into .gemini/skills/skill-auditor/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "skill-auditor", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install rshankras/claude-code-apple-skills skill-auditorInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add rshankras/claude-code-apple-skills --skill skill-auditor -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/rshankras/claude-code-apple-skills.git skills-src && mkdir -p .github/skills && cp -r skills-src/skills/shared/skill-auditor .github/skills/skill-auditor && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "skill-auditor" agent skill from https://github.com/rshankras/claude-code-apple-skills/tree/main/skills/shared/skill-auditor into .github/skills/skill-auditor/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "skill-auditor", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add rshankras/claude-code-apple-skills --skill skill-auditor -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install rshankras/claude-code-apple-skills skill-auditor --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/rshankras/claude-code-apple-skills.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/skills/shared/skill-auditor .opencode/skills/skill-auditor && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "skill-auditor" agent skill from https://github.com/rshankras/claude-code-apple-skills/tree/main/skills/shared/skill-auditor into .opencode/skills/skill-auditor/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "skill-auditor", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
skill-auditorAudits skills in this repo for consistency, API drift, and structural gaps.
Skill Auditor is an agent skill from rshankras/claude-code-apple-skills. Audits skills in this repo for consistency, API drift, and structural gaps. Produces a prioritized report grouped by severity (Critical/High/Medium/Low). Use when asked to "audit skills", "check the skill repo for drift", or when planning bulk skill cleanup. Read-only — does not apply fixes.
Its SKILL.md is about 4.2k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.
The repository describes itself as: Claude Code skills for Apple platform development (iOS, macOS, iPadOS) — product validation, code generation, App Store optimization, and more. The licence is MIT.
5 steps, taken from the step headings in SKILL.md.
Read from SKILL.md and the folder at commit 9ffb831. It shows what the files ask for, not the result of running them.
Pre-approves these tools, so the agent can use them without asking each time:
ReadGlobGrepBashFrom allowed-tools in the SKILL.md frontmatter.
No scripts in the folder and no shell commands in SKILL.md (its code samples are markdown).
From the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md.
From URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Skill Auditor loads about 4.2k tokens when it runs. Until then it costs about 77 tokens; SKILL.md has 1,797 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check noted patterns worth knowing about, such as sudo or a known installer.
allowed-tools: Read, Glob, Grep, BashAutomated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.
The full file from rshankras/claude-code-apple-skills at commit 9ffb831, republished under its MIT licence (© rshankras). 1,797 words, ~4,157 tokens.
.claude/skills/skill-auditor/SKILL.md (or your agent's skills folder).Audits every SKILL.md in skills/ for frontmatter correctness, structural completeness, API/version drift, and cross-file reference integrity. Produces a prioritized markdown report. Read-only — never applies fixes.
Use this skill when the user:
Does NOT activate for: creating new skills (use skill-creator), applying fixes (follow-up flow after this auditor reports), or auditing Swift code inside skills (use ios/coding-best-practices or macos/coding-best-practices).
Resolve the invocation argument in this order:
skills/**/SKILL.mdgenerators/, ios/) → audit skills/<arg>/**/SKILL.mdskills/liquid-glass/SKILL.md) → audit one fileskills/<arg>/SKILL.md; fall back to asking the userUse Glob with pattern skills/**/SKILL.md from the repo root. Filter by scope if an argument was passed. Record the canonical file list — every subsequent step operates on this list.
Read the first 20 lines of each SKILL.md. Parse:
--- frontmatter block existsname:, description:, allowed-tools: field valueslast_verified:, review_by: (dates, required — enforced
by scripts/check-frontmatter.sh), optional os_version:. Overdue
review_by dates are the stale-skills workflow's job, not a finding here.Cache this result. Checks C-01, H-01, H-03, L-02 all read from this cache — do not re-read.
Execute bulk Grep passes in parallel (single tool-call batch) wherever possible. Per-file operations come after. The 11 checks are in the table below; the order is as-listed.
For each file, mark it as aggregator or leaf using the rules in the "Aggregator Detection" section below. Some checks relax for aggregators.
Group findings by severity (🔴 → 🟢), sort within each group by file path, print the report inline using the template in "Output Format".
C-01 · Missing frontmatter. The file has no leading --- YAML block.
Grep for \A---\n[\s\S]*?\n--- across all SKILL.md. Files with no match → C-01.name, description, allowed-tools.H-01 · Missing allowed-tools field. Frontmatter exists but allowed-tools: key is absent.
allowed-tools: [Read, Glob, Grep] (adjust based on what the skill actually does).H-02 · Broken supporting-file reference. The SKILL.md references a *.md file that does not exist on disk in the same directory.
Grep each SKILL.md for [a-z0-9][a-z0-9-]*\.md matches; resolve each relative to the SKILL.md's directory; ls to confirm. Missing files → H-02. Ignore matches inside fenced code blocks. Also resolve rules/swiftlint.yml references the same way (fragment fixtures themselves are CI's job — scripts/check-lint-fragments.sh).H-03 · H1 title does not match name:. The first # heading after the frontmatter, slugified (lowercase, spaces → -), differs from the name: field.
name: to match.M-01 · Missing "When This Skill Activates" section. No ## When This Skill Activates heading anywhere in the file.
Grep -L for ^## When This Skill Activates across all SKILL.md.shared/skill-creator/SKILL.md for the canonical format.M-02 · Outdated version reference (drift). Mentions iOS 17–25, macOS 13–25, or Swift 5.x with drift context (treated as current/latest/target).
Grep for \biOS (1[7-9]|2[0-5])\b|\bSwift 5\.\d+\b|\bmacOS (1[3-9]|2[0-5])\b, capturing line numbers.latest, newest, current, target, deployment target, requires, minimum, as of, new in, now supports, todaylegacy, pre-, prior to, before, deprecated, old, migrate from, backport, fallback, if available, #available, or the version mention has a trailing + (e.g., iOS 17+)scripts/versions.env. Mentions of these with drift context are always clean.scripts/versions.env), or annotate as legacy context with one of the suppression keywords.M-03 · Pre-@Observable pattern without deprecation callout. Uses @StateObject or ObservableObject without acknowledging that @Observable is the current pattern.
Grep for @StateObject|ObservableObject with line numbers; for each hit, secondary Grep of the same file for @Observable|deprecated|legacy|pre-@Observable|migration|old pattern within ±10 lines. No secondary match → M-03.@Observable + @State, or add a migration note explaining why the older pattern is shown.M-04 · Oversized single-file skill. SKILL.md exceeds 400 lines and its directory contains no sibling .md files.
wc -l via Bash on each SKILL.md; if >400, check sibling file list via ls for any other .md. None → M-04.patterns.md, templates.md, checklist.md, or examples.md per skill-creator conventions.L-01 · No ✅/❌ examples in prose. The file has no ✅ or ❌ markers anywhere.
Grep -L for ✅|❌.L-02 · Description length out of range. description: is <20 or >300 characters.
L-03 · Ambiguous version mention. A version keyword matched stage 1 of the drift check but surrounding lines contained neither drift nor legacy context. User reviews manually.
A SKILL.md is an aggregator if any of the following hold:
skills/<category>/SKILL.md## Available Modules or ## Available Skills./<subdir>/SKILL.md or contains two or more references of the form skills/<category>/<subskill>/Otherwise it is a leaf.
| Check | Behaviour |
|---|---|
| M-01 (activation section) | Still enforced — aggregators must describe activation |
| M-03 (pre-@Observable) | Suppressed — aggregators are prose, not code |
| M-04 (>400 lines) | Suppressed — aggregators are allowed to be long when enumerating modules |
| L-01 (no ✅/❌ examples) | Suppressed — aggregators don't carry patterns |
Tag every finding in the report with (aggregator) or (leaf) so severity can be read at a glance.
Print the report inline to the conversation using this template. Use exact headings — downstream tooling may grep them.
# Skill Audit Report — <YYYY-MM-DD> — <N> files scanned
## Summary
- 🔴 Critical: <count>
- 🟠 High: <count>
- 🟡 Medium: <count>
- 🟢 Low: <count>
- ✅ Files clean: <clean-count> / <N>
Scope: <all | category | single file>
## 🔴 Critical Findings
### C-01 · Missing frontmatter
- `skills/<path>/SKILL.md` (leaf) — **Fix:** Add YAML frontmatter with `name`, `description`, `allowed-tools`.
## 🟠 High Findings
### H-01 · Missing `allowed-tools` field
- `skills/liquid-glass/SKILL.md:1-4` (leaf) — **Fix:** Add `allowed-tools: [Read, Glob, Grep]`.
- `skills/macos/macos-tahoe-apis/SKILL.md:1-4` (leaf) — **Fix:** Same.
### H-02 · Broken supporting-file reference
- `skills/<path>/SKILL.md:<line>` — references `patterns.md`, not found. **Fix:** Create the file or remove the reference.
### H-03 · H1 title does not match `name:`
- `skills/<path>/SKILL.md` — `name: foo-bar`, H1 is `# Foo Bars`. **Fix:** Rename one to match.
## 🟡 Medium Findings
### M-01 · Missing "When This Skill Activates" section (<count>)
- `skills/design/liquid-glass/SKILL.md` (leaf)
- `skills/macos/coding-best-practices/SKILL.md` (leaf)
- [collapsed list of remaining offenders]
- **Fix:** Add section with 3–5 user trigger phrases.
### M-02 · Outdated version reference (<count>)
- `skills/<path>/SKILL.md:87` (leaf) — "latest iOS 17" in drift context. **Fix:** Update to iOS 26.
### M-03 · Pre-`@Observable` pattern without callout (<count>)
- `skills/<path>/SKILL.md:142` (leaf) — `@StateObject` without migration note. **Fix:** Replace with `@Observable` or add callout.
### M-04 · Oversized single-file skill (<count>)
- `skills/<path>/SKILL.md` — <NNN> lines, no sibling .md files. **Fix:** Modularize into `patterns.md` / `templates.md`.
## 🟢 Low Findings
### L-01 · No ✅/❌ examples
- `skills/<path>/SKILL.md` (leaf) — **Fix:** Add at least one good/bad example pair.
### L-02 · Description length out of range
- `skills/<path>/SKILL.md` — description is <N> chars. **Fix:** Expand/shorten to 20–300 chars.
### L-03 · Ambiguous version mention
- `skills/<path>/SKILL.md:<line>` — "iOS 18" with no drift/legacy context. **Fix:** Review manually.
## ✅ Clean Files
<collapsed list of files that passed all checks>
## Next Steps
- Review 🔴/🟠 findings first — they block skills from working as intended.
- Batch-fix 🟡 M-01 and M-02 mechanically — suggested find/replace scripts shown per-file.
- 🟢 findings are polish; address opportunistically.@StateObject, and drift-stage-1 can all run at once.*.md references inside fenced code blocks carefully — they're examples, not references. Strip fenced blocks before running H-02's regex.<N>/<total>…" before each phase so the user sees liveness.## Summary) should be deterministic for a given repo state. Only the date in the H1 varies across runs.allowed-tools lists Bash, but only for read-only ops (wc, ls). If you find yourself needing to write, stop and ask the user to invoke a fix flow separately.wwdc-to-skill-workflow skill owns that.CI (scripts/check-freshness.sh) owns the deterministic subset of M-02: a recency keyword AND a stale version (major ≤ current−2) on the same line is a blocking build failure. This auditor's M-02 remains the broader net — ±2-line context, current/target/requires keywords, human-reviewed. Findings unique to M-02 are review candidates, not CI failures; anything CI already blocks will never appear here because it can't merge. C-01 is likewise fully delegated: scripts/check-frontmatter.sh blocks missing frontmatter at PR time.
The drift heuristic hardcodes "known-current" version constants:
Update these constants when Apple ships a new major platform version (usually post-WWDC each June), together with scripts/versions.env — CI's check-freshness.sh cross-checks that this file mentions the manifest's current iOS generation and fails if they drift apart. The stage-1 regex ranges (iOS 1[7-9]|2[0-5], macOS 1[3-9]|2[0-5]) must also be widened each cycle so their upper bound stays at CURRENT−2 (the previous generation sits inside a one-generation grace and is not stale; the ranges are unchanged for the iOS 27 cycle since 17–25 already ends at 27−2).
After running the auditor on the full repo, counts should fall within this tolerance band (baseline re-taken 2026-07-16 after the blind-test audit deletions, 178 total SKILL.md files scanned — 155 leaf skills + 23 category indexes; the README's "159 skills" counts leaf dirs plus the 4 single-skill categories):
| Finding | Expected |
|---|---|
| C-01 missing frontmatter | 0 — the 2026-04 legacy batch was fixed, and scripts/check-frontmatter.sh now blocks regressions in CI |
H-01 missing allowed-tools | 0 |
| H-02 broken supporting refs | 0 |
| H-03 H1 mismatch | flag outliers manually |
| M-01 missing activation section | 6 — ui-prototyping, iap-finalizer, originality-check, store-signals, flow-walkthrough, privacy-publish |
| M-02 version drift | stage-1 Grep returns ~369 raw hit lines across ~147 files (2026-07-11); the stage-2 narrowed band must be re-derived on the next full run — the pre-hardening band (~50±10) was measured against ~228 raw hits, and CI's check-freshness.sh has since removed the same-line recency subset |
M-03 pre-@Observable no callout | ~29 (±5) — re-verify on the next full run |
| M-04 oversized single-file | TBD — flag outliers |
## When to Use (resolved)The 2026-04 batch of files using ## When to Use as their activation heading has been fully normalized — as of 2026-07-11 no SKILL.md uses it in place of the canonical heading. The rule stands for future contributions: do not widen the M-01 regex to accept ## When to Use — the whole point is to normalize onto the canonical heading. (A ## When to Use … heading deeper in a file as content — e.g. swift/memory's "When to Use / When NOT to Use" section about the technique itself — is fine and not an M-01 signal.)
generators/. Only skills/generators/** paths appear.skills/liquid-glass/SKILL.md. Report has exactly one H-01 finding.../../../CLAUDE.md (repo root, resolved relative to this SKILL.md — not the project cwd) — normative source for frontmatter schema, naming, emoji convention. If absent (skills-only copies), use https://github.com/rshankras/claude-code-apple-skills/blob/main/CLAUDE.mdskills/shared/skill-creator/SKILL.md — companion meta-skill for creating new skills (this auditor only audits; it does not create)skills/ios/SKILL.md — canonical aggregator example© rshankras, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
Just SKILL.md in skills/shared/skill-auditor of rshankras/claude-code-apple-skills.
Open the folder on GitHubat commit 9ffb831
Skill Auditor next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Skill Auditor this skillrshankras/claude-code-apple-skills | 785 | — | ~4.2k | Automated safety check: Notes | MIT | |
| Test Gap Auditgithub/awesome-copilot | 40k | — | ~3.4k | Automated safety check: Pass | MIT | |
| MCP Dependency Drift Auditsickn33/agentic-awesome-skills | 47k | 1 repos | ~2k | Automated safety check: Pass | MIT | |
| Audit Coverage Gapsben-manes/caffeine | 18k | — | ~448 | Automated safety check: Pass | Apache-2.0 | |
| Phoenix Docs Gap AuditArize-ai/phoenix | 12k | — | ~4.8k | Automated safety check: Pass | Custom licence | |
| Audit Contract Driftben-manes/caffeine | 18k | — | ~1.1k | Automated safety check: Pass | Apache-2.0 |
github/awesome-copilot
Run a read-only audit for missing, weak, stale, or mis-scoped test coverage.
sickn33/agentic-awesome-skills
Statically audit MCP configs for mutable npm/npx package references before approval or CI, without executing discovered MCP servers.
ben-manes/caffeine
Discover test coverage gaps that could hide correctness defects
Arize-ai/phoenix
Audit documentation gaps across the Phoenix repo by analyzing recent commits to main (default: last 7 days).
ben-manes/caffeine
Find places where documented API contracts and the implementation diverge
aipoch/medical-research-skills
Use semantic consistency auditor for academic writing workflows that need structured execution, explicit assumptions, and clear output boundaries.
rshankras/claude-code-apple-skills
Generate accessibility infrastructure for VoiceOver, Dynamic Type, and accessibility features.
rshankras/claude-code-apple-skills
SwiftUI animation patterns including springs, transitions, PhaseAnimator, KeyframeAnimator, SF Symbol effects, scroll-driven effects, mesh gradients, text renderers, and shader effects.
rshankras/claude-code-apple-skills
Generate compelling App Store descriptions that convert browsers into users.
rshankras/claude-code-apple-skills
Generates an app icon for macOS or iOS — a fast CoreGraphics placeholder and/or flat layered source art to finish in Icon Composer (the Liquid Glass / iOS 26+ standard).
rshankras/claude-code-apple-skills
Turn an app idea into validated, App-Store-ready name candidates.
rshankras/claude-code-apple-skills
Revenue beyond the single-app price tag — own-app bundles, Family Sharing as a conversion lever, cross-developer bundles & suites, and institutional licensing via Group Purchases / Apple School &…
Audits skills in this repo for consistency, API drift, and structural gaps. Skill Auditor is an agent skill from rshankras/claude-code-apple-skills. Audits skills in this repo for consistency, API drift, and structural gaps.
Skill Auditor fits situations like: asked to audit skills; check the skill repo for drift; planning bulk skill cleanup.
Run `npx skills add rshankras/claude-code-apple-skills --skill skill-auditor -a claude-code`. Or copy the skill folder (skills/shared/skill-auditor in rshankras/claude-code-apple-skills) into .claude/skills/skill-auditor in your project. Claude Code loads it when a task matches its description.
Run `npx skills add rshankras/claude-code-apple-skills --skill skill-auditor -a codex`. Or copy the skill folder (skills/shared/skill-auditor in rshankras/claude-code-apple-skills) into .agents/skills/skill-auditor in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add rshankras/claude-code-apple-skills --skill skill-auditor -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/skill-auditor, .gemini/skills/skill-auditor, .github/skills/skill-auditor and .opencode/skills/skill-auditor in your project.
SKILL.md names no scripts, command-line tools or credentials: Skill Auditor is instructions for the agent only. Its frontmatter pre-approves these tools: Read, Glob, Grep, Bash.
SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found notes only (pre-approves every shell command (allowed-tools: bash)), nothing it rates as a warning. It is not a guarantee. Review the folder before installing.
Skill Auditor is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 4.2k tokens (SKILL.md is roughly 17k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.
Skills that share tags, products or a category with Skill Auditor: Test Gap Audit (github/awesome-copilot, 40k stars), MCP Dependency Drift Audit (sickn33/agentic-awesome-skills, 47k stars), Audit Coverage Gaps (ben-manes/caffeine, 18k stars) and Phoenix Docs Gap Audit (Arize-ai/phoenix, 12k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
rshankras (a GitHub user) maintains it in rshankras/claude-code-apple-skills, which has 785 GitHub stars. The repository holds 41 skills in this directory. The repository was last updated on July 24, 2026.
Source: rshankras/claude-code-apple-skills on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.