skill-gap-audit
Use when auditing meteor/agent-skills for missing, incomplete, overlapping, or outdated coverage. Compares every distributable skill with a configurable Meteor checkout, changelog and release context, v3-docs, source, tests, and the latest committed audit baseline, then produces an evidence-backed report without editing skills.
- License 许可
- MIT
- 最近更新
- 2026-11-12
- Stars
- ★ 11
- Forks
- 3
01 前言 Front Matter
- name
- skill-gap-audit
- metadata
- { "internal": true }
- description
- Use when auditing meteor/agent-skills for missing, incomplete, overlapping, or outdated coverage. Compares every distributable skill with a configurable Meteor checkout, changelog and release context, v3-docs, source, tests, and the latest committed audit baseline, then produces an evidence-backed report without editing skills.
02 资源文件 3
- 参考文档references/audit-method.md8.0 KB
- 参考文档references/eval-cases.md2.0 KB
- 参考文档references/report-template.md3.7 KB
03 SKILL.md 正文
Audit Meteor skill gaps
Compare the published catalog with current Meteor documentation and implementation. Produce a prioritized maintenance report. Do not create or edit skills during the audit.
This workflow adapts Meteor's docs-gap and changelog skill patterns while keeping the checkout path, checked-out branch, release context, and comparison revisions configurable.
Inputs
Determine these inputs before analysis:
- Agent-skills repository root.
- Agent-skills target ref and commit SHA. A coordinated release supplies the freshly fetched release PR head for beta/RC or default branch for stable, with a clean worktree.
- Meteor source checkout.
- Audit mode: full catalog or incremental changes.
- Meteor base and target Git revisions for an incremental audit.
- Meteor version or release context when the audit targets a release.
- Reviewed Meteor changelog, docs-gap report, and approved documentation changes when a coordinated release supplies them.
- Optional previous committed audit record.
- Optional output path. Return the report in the response when no path is requested.
Coordinated Meteor release audits
When the Meteor release process invokes this skill, start after its changelog and approved documentation gaps have been consolidated. Treat those artifacts as discovery and user-facing intent, then verify their claims against the release diff, current documentation, implementation, and tests. Do not copy core maintainer workflows into the public application-developer catalog.
The Meteor release commit may not exist yet during the first audit. In that case, include approved working-tree documentation changes, record the Meteor commit SHA and dirty state, and identify the audit as pre-publication. Before the Agent Skills tag is published, audit the exact Meteor release commit from a clean Agent Skills worktree pinned to the catalog commit being prepared for publication. If the first report is already committed, preserve it and create an incremental follow-up instead of rewriting it.
Pin the Agent Skills snapshot
For a coordinated release, require the caller to supply an Agent Skills target ref and
commit SHA resolved after fetching the selected release branch: existing PR head for
beta/RC, default branch for stable. Beta/RC audits do not require a merge; preserve
the open PR and do not substitute its synthetic merge commit. Verify that the
audit worktree is clean and that its HEAD equals the supplied SHA. Load this skill and
inspect distributable content from that same worktree; do not load audit instructions
from one revision while analyzing another.
Record the target ref, exact commit SHA, and clean state in the report. If the checkout is dirty, stale, or at a different commit, stop and ask the caller to provide a clean pinned worktree. This audit does not fetch, switch branches, or create worktrees on its own.
For a standalone audit without a supplied target, use the current HEAD, record its
branch, SHA, and dirty state, and state that remote freshness was not established. Do
not claim that it represents the latest published or default-branch catalog without
evidence.
Resolve the Meteor checkout
- Prefer a path supplied by the user or task.
- Otherwise, use
METEOR_CHECKOUTwhen it is set. - Otherwise, inspect accessible workspace roots and direct sibling directories for candidates.
- Validate each candidate with
git -C <path> rev-parse --show-topleveland requirev3-docs/,packages/, andtools/. Use Git remotes to distinguishmeteor/meteoror a clear fork from unrelated repositories. - Continue automatically only when one credible candidate remains. Report its resolved path, remote, branch, commit SHA, and dirty state.
- Ask the user for a checkout path when discovery finds none or remains ambiguous. Do not assume a home directory layout or clone without authorization.
The checkout can live anywhere accessible in the current environment. Do not store its machine-specific absolute path in committed skill content.
Audit method
Read the audit method before gathering evidence, including final-tag versus branch changes and earlier stable/package backports. Run affected acceptance cases in fresh read-only conversations when changing those audit decisions.
Build the skill inventory
For every publishable folder under skills/:
- Read the frontmatter description, tagline, kind, area, bundle membership, Meteor range, and documentation sync date.
- List the outcomes and symptoms promised by
SKILL.md. - Map each promise to its supporting reference and evaluation case.
- Compare naming, classification, routing, structure, references, and case style with the closest neighboring skills. Treat useful local variation as intentional unless it conflicts with the repository contract or behavior.
- Note overlap with neighboring skills, promises without behavioral coverage, and classifications that do not match the skill's actual outcome or installation audience.
- Exclude folders beginning with
_and internal.github/skills/.
Classify findings
| Classification | Meaning | Normal action |
|---|---|---|
| Covered | Current skill instructions and cases address the behavior | No change |
| Partial | Skill mentions it but lacks a decision rule, example, or evaluation | Expand existing skill |
| Outdated | Skill conflicts with current documentation or implementation | Correct and retest |
| Overlap | Multiple skills advertise the same request without clear routing | Narrow descriptions |
| Candidate | Important repeatable workflow has no suitable skill | Propose a skill |
| Documentation only | Useful fact does not justify agent workflow guidance | Leave in docs |
| Uncertain | Available evidence is missing or contradictory | Investigate and do not implement |
Propose a new skill only when it meets the threshold in skill-maintenance. Prefer expanding an existing skill when its scope already owns the user outcome.
Prioritize
Use this order:
- Incorrect security, data-access, deployment, or migration guidance.
- Removed APIs and breaking behavior.
- Advertised capabilities with no instructions or acceptance case.
- New user-facing workflows with strong skill value.
- Routing overlap and near-miss failures.
- Helpful improvements that are not release blockers.
Report
Read references/report-template.md before producing the report.
Every finding must include:
- Classification and priority.
- Affected skill or proposed scope.
- User impact.
- Evidence path, revision, and relevant symbol or section.
- Existing acceptance cases.
- Recommended action and acceptance evidence.
For full and release audits, include a claim matrix covering every distributable skill. For incremental audits, include every changed claim plus all claims affected by the Meteor diff, even when the skill file itself did not change.
Keep uncertain findings separate from confirmed gaps. State why evidence is insufficient and what would resolve it.
Handoff to skill maintenance
The audit is read-only except for writing a report to a user-requested output path. Do not update skills, metadata, branches, or GitHub state during an audit-only request.
When the user asks only for an audit, stop after the report and offer the prioritized findings for review.
When the same request explicitly asks to audit and fix:
- Finish and preserve the audit report before editing.
- Read
skill-maintenance. - Implement only confirmed
Partial,Outdated, orOverlapfindings within the authorized scope. - Ask before creating a
Candidateskill or acting on an uncertain finding. - Keep each change traceable to its evidence and acceptance criteria.
- Run the complete maintenance validation and report which findings were applied.
04 同仓库更多 Skills
migrate-to-rspack
Use when migrating an existing Meteor app to Rspack (Meteor 3.4+), or upgrading Rspack 1 to 2 on Meteor 3.6. Triggers on nested imports, mainModule entry points, server-only apps, replacing fourseven:scss / meteor/less / coffeescript / jorgenvatle:vite / zodern:melte with loaders, Svelte/TypeScript preprocessing or Lingui SWC plugin failures after upgrade, CommonJS default-import interop, module.exports in client graphs, Node built-ins in browser code, _build / build-assets / build-chunks, .meteorignore hiding handoff files, dynamic chunks under ROOT_URL, meteor.modules for CSS/HTML, resolve.symlinks or resolve.alias migration, automatic dependency updates and immutable CI/Docker builds. Use this skill when the user asks about migration compatibility or a build plugin's Rspack replacement. For new-app setup and rspack.config.js helpers, use meteor-modern-build-stack instead.
migrate-to-meteor-3
Use when migrating a Meteor 2.x application to Meteor 3.x. Triggers on callAsync, *Async Mongo, removed Fibers, implicit-global ReferenceError, lost Blaze reactivity, a publish function returning a Promise, a scheduler dropping a Promise, a read API receiving update modifiers, async allow/deny, an Iron Router controller not running, "Method stub took too long", Atmosphere resolution, Express 5 WebApp handlers, lost async context, rawCollection callbacks, TypeScript declaration failures during upgrades, useTracker, and useSubscribe. Use this skill when the user asks about upgrading Meteor, async caller propagation, iterators with await, or replacing and forking packages. Standalone declarations and type-checking belong to meteor-typescript.
meteor-typescript
Use when setting up or repairing Meteor application declarations, TypeScript configuration, JavaScript IntelliSense, or local and CI type-checking. Triggers on meteor types, meteor/* imports resolving to any, missing declarations, duplicate Meteor identifiers, zodern:types, @types/meteor, .meteor/types, tsconfig.json, jsconfig.json, and tsc --noEmit in a Meteor app. Use this skill when choosing or migrating declaration providers without changing the app's runtime or bundler. For a Meteor 2-to-3 runtime migration use migrate-to-meteor-3 first; for SWC/Rspack compilation use meteor-modern-build-stack or migrate-to-rspack. General TypeScript language questions and Atmosphere declaration publishing are outside this app scope.
meteor-testing
Use when setting up, designing, writing, or repairing tests and test harnesses in a Meteor 3 app. Triggers on meteortesting:mocha, --driver-package, TEST_WATCH, TEST_BROWSER_DRIVER, MOCHA_GREP, meteor.testModule, focused tests, .only, Meteor.server.method_handlers, Meteor.server.publish_handlers, DDP.connect, --full-app integration mode, sinon, async test signatures, Playwright/Cypress E2E. Use this skill when the user asks about test runners, asks about testing publications, or asks about Jest vs Mocha in Meteor. For a failing, hanging, or flaky test whose failing layer or root cause is unknown, use meteor-debugging before changing the test or app.
meteor-security
Use when auditing or hardening a Meteor 3 application. Triggers on missing check() on method arguments, missing this.userId guards on publications, browser-policy CSP, DDPRateLimiter rules, oauth-encryption via Accounts.config oauthSecretKey, audit-argument-checks, allow/deny legacy patterns, BrowserPolicy.content.disallowInlineScripts, BrowserPolicy.framing.disallow. Use this skill when the user asks about hardening, asks about a security review, or asks about CSP for a third-party script (Stripe, Google Maps, fonts).
meteor-react
Use when building or debugging React interfaces in Meteor 3: meteor create --react, createRoot, JSX or TSX entry points, Rspack React detection, Fast Refresh, react-meteor-data, useTracker, useSubscribe, useFind, withTracker, Suspense, and Tracker.withComputation. Triggers on isLoading being treated as a boolean, useFind receiving fetch(), stale closure inputs, duplicate tracker side effects, unstable Suspense keys, lost reactivity after await, state reset after refresh, or React tests leaking computations. Use this skill when the user asks about a React skeleton, React Compiler, React-specific rspack.config rules, reactive data hooks, or classic versus Suspense integration. Route general bundler configuration to meteor-modern-build-stack and Meteor 2 upgrades to migrate-to-meteor-3.