spec-kit — independently scanned and version-tracked by SaferSkills.
SaferSkills independently audited spec-kit (Agent Skill) and scored it 100/100 (green). The audit ran 55 deterministic rules across Security, Supply Chain, Maintenance, Transparency, and Community; it found 0 high-severity and 0 lower-severity findings. The full rule-by-rule trace and per-finding evidence are below. Free, methodology-open.
Findings & checks · 0 flagged
Every scanned point with the score it earned and what moved between them.
First recorded scan — no prior version to compare against.
The primary manifest — the file an agent reads to learn what this artifact does.
Route requests to the smallest set of installed spec-kit-* skills. Treat routes as defaults; if repository constraints require a different sequence, state the deviation and risk.
spec-kit.tasks.md; can we implement now?"| User Intent | Route | Required artifacts |
|---|---|---|
| Create or update governance/principles | spec-kit-constitution | none |
| Draft or revise feature requirements | spec-kit-specify | constitution recommended |
| Resolve high-impact ambiguity before planning | spec-kit-clarify | spec.md |
| Produce technical design artifacts | spec-kit-plan | spec.md + constitution |
| Generate dependency-ordered implementation tasks | spec-kit-tasks | plan.md (+ spec.md) |
| Audit cross-artifact consistency (read-only) | spec-kit-analyze | spec.md + plan.md + tasks.md |
| Reconcile specification drift at any stage | spec-kit-reconcile | gap report + existing feature artifacts |
| Generate requirements-quality checklist | spec-kit-checklist | spec.md |
| Execute implementation from tasks | spec-kit-implement | tasks.md |
Use this for feature-work sequencing. Gate checks are mandatory.
digraph feature_route {
rankdir=TB;
node [fontname="Helvetica", fontsize=10];
edge [fontname="Helvetica", fontsize=9];
start [label="Feature request", shape=oval];
reconcile_gate [label="Need reconcile now\n(drift detected)?", shape=diamond];
has_const [label="constitution exists?", shape=diamond];
constitution [label="spec-kit-constitution", shape=box];
has_spec [label="spec.md exists?", shape=diamond];
specify [label="spec-kit-specify", shape=box];
clarify_gate [label="Spec ambiguity blocks planning?", shape=diamond];
clarify [label="spec-kit-clarify", shape=box];
plan [label="spec-kit-plan", shape=box];
tasks [label="spec-kit-tasks", shape=box];
analyze_gate [label="Run spec-kit-analyze?", shape=diamond];
analyze [label="spec-kit-analyze", shape=box];
analyze_blocking [label="Blocking findings?", shape=diamond];
reconcile [label="spec-kit-reconcile", shape=box];
has_tasks [label="tasks.md exists?", shape=diamond];
stop_tasks [label="STOP:\nrun spec-kit-tasks first", shape=octagon, style=filled, fillcolor=red, fontcolor=white];
implement [label="spec-kit-implement", shape=box];
post_impl_gaps [label="Post-implementation\ngaps found?", shape=diamond];
done [label="Feature complete", shape=doublecircle];
start -> reconcile_gate;
reconcile_gate -> reconcile [label="yes"];
reconcile_gate -> has_const [label="no"];
reconcile -> has_const [label="continue"];
has_const -> constitution [label="no"];
has_const -> has_spec [label="yes"];
constitution -> has_spec;
has_spec -> specify [label="no"];
has_spec -> clarify_gate [label="yes"];
specify -> clarify_gate;
clarify_gate -> clarify [label="yes"];
clarify_gate -> plan [label="no"];
clarify -> plan;
plan -> tasks;
tasks -> has_tasks;
has_tasks -> analyze_gate [label="yes"];
has_tasks -> stop_tasks [label="no"];
analyze_gate -> analyze [label="recommended"];
analyze_gate -> implement [label="skip"];
analyze -> analyze_blocking;
analyze_blocking -> reconcile [label="yes"];
analyze_blocking -> implement [label="no"];
reconcile -> implement;
implement -> post_impl_gaps;
post_impl_gaps -> done [label="no"];
post_impl_gaps -> reconcile [label="yes"];
}spec-kit-plan without spec.md.spec-kit-implement without tasks.md.spec-kit-clarify before planning when ambiguity can change architecture, data model, testing, UX, operations, or compliance.spec-kit-reconcile whenever drift is detected at any stage before continuing.spec-kit-reconcile, even if raised outside analyze/implement.skills/spec-kit/scripts/* is the source of truth for shared shell helpers.skills/spec-kit/references/spec-kit-workflow.dot is shared by symlink in multiple child skills and must stay router-accurate.spec-kit-taskstoissues is not supported.tasks.md, state that no spec-kit-* exporter skill is available and continue with manual guidance or available skills.references/spec-kit-workflow.dothttps://github.com/github/spec-kit (snapshot: 9111699cd27879e3e6301651a03e502ecb6dd65d)~30 seconds. Free. No account. Every finding cites a rule and a line of evidence.