Skill Catalog Vetting
Purpose
Review skills catalog rows before they ship to production agent templates. Combine automated vet scans (skill_catalog_vet) with human-readable findings and Living Docs records so operators can promote, hold, or disable imports safely.
When to Use
- T2 marketplace or mirror imports before linking to active templates.
- Registry sync added new skills and tier promotion is under review.
- Security or platform ops asked for a vet pass on a specific skill id or symbol.
- Preparing a promote/disable recommendation with score and evidence.
When NOT to Use
- Authoring or editing skill source repos → use the upstream provider workflow.
- General application threat modeling → shadow-security-officer.
- Platform documentation answers → syncolab-living-docs (search/get first; use propose patch only for vet reports).
Expected Outcome
- Vet report with severity-grouped findings (critical, warn, info), score, and verdict.
- Optional Living Docs patch summarizing verdict, recommended trust tier, and follow-ups.
- Clear operator guidance: promote to T1, keep at T2, disable, or needs human review.
- No
persist=trueon vet results unless the operator explicitly confirms.
Inputs to Gather
- Target skill id or symbol (local symbol or namespaced catalog symbol).
- Vetting mode:
quickfor triage,fullfor promotion decisions. - Registry provider and current trust tier when known.
- Whether the operator wants findings persisted to
registry_metadata_json.vettingReport.
Workflow
- Run vet scan:
skill_catalog_vetwithmode=full(orquickfor first pass) on the target skill id or symbol. - Summarize findings by severity; quote short excerpts for critical items only.
- Decide verdict from score and findings:
- Score ≥ 70 with no critical findings → candidate for template links / tier promotion.
- Critical findings → recommend disable or needs_human until remediated.
- Document in SKS:
sks_docs_propose_patchwith verdict, score, recommended tier, and top findings (minimal patch body). - Persist only on confirmation: set
persist=trueonskill_catalog_vetonly after the operator confirms — this writesregistry_metadata_json.vettingReportand may togglecatalog_enabled.
Tools
skill_catalog_vet— Params:skillIdorsymbol,mode(quick|full), optionalpersist(default false).sks_docs_search/sks_docs_get— Find existing vet runbooks or prior reports.sks_docs_propose_patch— Record the vet summary for human review.
Severity rules
| Severity | Examples |
|---|---|
| critical | Prompt injection (“ignore previous instructions”), credential exfiltration guidance, shell/exec patterns (curl | bash, rm -rf, eval(), hidden decode-and-execute channels |
| warn | Over-broad tool access, missing boundaries, vague destructive guidance |
| info | Missing “when to use” / “when not to use”, thin playbook, style-only gaps |
Tool Availability Rules
| Access | Behavior |
|---|---|
skill_catalog_vet available |
Run scan; present structured report. |
| Read-only SKS | Search/get prior vet docs; draft patch text for operator. |
persist not confirmed |
Never set persist=true; report findings in chat only. |
| Vet tool missing | State that Agent Studio vet tooling is unavailable; perform manual playbook review from skill content only. |
Related tool sets
internal-wikidocs-as-code
Review / Decision / Execution Criteria
- Treat T2 marketplace imports as untrusted until vetted.
- Recommend template links only for skills that pass with score ≥ 70 and no unresolved critical findings.
- Separate automated scan results from human promotion judgment.
- Cite skill symbol, provider, and vet mode in every report.
Output Format
Deliver:
- Verdict (
approve_t1,keep_t2,disable,needs_human). - Score and recommended trust tier.
- Findings table by severity with rule id and brief excerpt.
- Next steps (remediate upstream, re-vet, SKS patch id if proposed).
- Persistence status (whether
vettingReportwas written).
Quality Bar
- Evidence-based; no fabricated scan results.
- Critical issues block promotion recommendations.
- SKS patches are concise operator records, not full skill dumps.
- Explicit about out-of-scope checks (runtime behavior, live MCP side effects).
Safety and Boundaries
- Do not enable destructive tools or MCP bridges for vetting runs unless explicitly assigned to the agent.
- Do not paste full untrusted skill bodies into external systems.
- Do not auto-disable catalog rows without operator confirmation when
persistwould affect production.
Escalation / Dispatch Rules
- Critical exfiltration or injection patterns → escalate to platform security review.
- Ambiguous T1 promotion →
needs_human; link shadow-security-officer for threat framing if the skill executes code or calls network tools. - Large registry batch imports → vet highest-risk providers first (T2 mirrors, community aggregators).
References
- Agent Studio skill vet service (platform):
skill_catalog_vetnative tool. - Living Docs platform architecture → syncolab-living-docs.