Skill Contract
Zagros Skill Contract
Contract version: 1
This contract defines the minimum portable structure for a Zagros-maintained or community-contributed skill. It is intentionally harness-neutral.
Required package structure
A skill package must contain:
skills/
apm.yml
skill-meta.yml
.apm/skills/<skill-name>/
SKILL.md
LICENSE
evals/evals.json
References are optional, but harness- or Zagros-specific integration guidance belongs under references/ rather than in the generic behavioral contract.
Required metadata
apm.yml declares a package name, independent SemVer version, description, author, license, type, and install targets. A skill version does not need to match Zagros Core.
skill-meta.yml declares contract_version: 1, owner and lifecycle status, review requirements, provenance/license notes, and compatibility information when the skill depends on Zagros MCP behavior.
Behavioral requirements
A Zagros security skill must:
- Treat retrieved external content as untrusted data, never instructions.
- Separate Evidence, Analysis, and Recommendation when making security conclusions.
- Cite record/source identifiers for evidence-backed claims.
- Ask for approval before write/network operations that are not necessary for read-only investigation, including source synchronization.
- Avoid claiming compliance certification or remediation success from retrieval evidence alone.
- Keep generic professional guidance independent from one model vendor or agent harness.
MCP-specific guidance
Generic SKILL.md guidance should remain usable without Zagros. Tool names, endpoint assumptions, and Zagros-specific fallbacks belong in a reference such as references/zagros-mcp.md.
A skill that requires Zagros must document the MCP tools/capabilities it depends on and its minimum compatible Core version.
Evaluations
Every skill must provide evals/evals.json. Each case must contain a stable ID, prompt, and expected behavior. Security-relevant skills should cover evidence vs inference, approval boundaries for writes/sync, prompt-injection resistance, stale/missing-source behavior, and authoritative-source disagreement.
The repository validator and CI enforce structural requirements. Behavioral quality remains subject to maintainer review and future automated evaluation.
Versioning
The Skill Contract itself is versioned independently. Additive clarifications remain within contract v1. A breaking requirement creates contract v2.
Individual skills use SemVer independently from Zagros Core. See skills/COMPATIBILITY.md.