CtrlK
BlogDocsLog inGet started
Tessl Logo

spec-driven-development/spec-as-source

Spec-driven development on OpenSpec, with mechanical spec-as-source enforcement: a custom 'spec-as-source' OpenSpec schema adds file-ownership (targets) and test-verification ([@test]) metadata to every capability spec, three scripts (link check, ownership check, manifest build) keep code and specs from drifting apart, plus requirement-gathering, spec-writer, work-review, and a session-handoff skill with a proactive context-warning hook.

68

Quality

85%

Does it follow best practices?

Run evals on this skill

Adds up to 20 points to the overall score

View guide

SecuritybySnyk

Low

Low-risk findings worth noting

Overview
Quality
Evals
Security
Files

tile.json

{
  "name": "spec-driven-development/spec-as-source",
  "version": "3.0.0",
  "summary": "Spec-driven development on OpenSpec, with mechanical spec-as-source enforcement: a custom 'spec-as-source' OpenSpec schema adds file-ownership (targets) and test-verification ([@test]) metadata to every capability spec, three scripts (link check, ownership check, manifest build) keep code and specs from drifting apart, plus requirement-gathering, spec-writer, work-review, and a session-handoff skill with a proactive context-warning hook.",
  "skills": {
    "skill-router": {
      "path": "skills/skill-router/SKILL.md"
    },
    "spec-as-source-setup": {
      "path": "skills/spec-as-source-setup/SKILL.md"
    },
    "plan-mode": {
      "path": "skills/plan-mode/SKILL.md"
    },
    "plan-judge": {
      "path": "skills/plan-judge/SKILL.md"
    },
    "requirement-gathering": {
      "path": "skills/requirement-gathering/SKILL.md"
    },
    "prompt-loop": {
      "path": "skills/prompt-loop/SKILL.md"
    },
    "openspec-explore": {
      "path": "skills/openspec-explore/SKILL.md"
    },
    "openspec-propose": {
      "path": "skills/openspec-propose/SKILL.md"
    },
    "spec-writer": {
      "path": "skills/spec-writer/SKILL.md"
    },
    "openspec-apply-change": {
      "path": "skills/openspec-apply-change/SKILL.md"
    },
    "spec-loop": {
      "path": "skills/spec-loop/SKILL.md"
    },
    "spec-verify": {
      "path": "skills/spec-verify/SKILL.md"
    },
    "work-review": {
      "path": "skills/work-review/SKILL.md"
    },
    "spec-rebuild": {
      "path": "skills/spec-rebuild/SKILL.md"
    },
    "openspec-sync-specs": {
      "path": "skills/openspec-sync-specs/SKILL.md"
    },
    "openspec-archive-change": {
      "path": "skills/openspec-archive-change/SKILL.md"
    },
    "spec-ci-sync": {
      "path": "skills/spec-ci-sync/SKILL.md"
    },
    "handoff": {
      "path": "skills/handoff/SKILL.md"
    },
    "handoff-skill": {
      "path": "skills/handoff-skill/SKILL.md"
    }
  },
  "rules": {
    "spec-as-source": {
      "rules": "rules/spec-as-source.md"
    },
    "generated-file-header": {
      "rules": "rules/generated-file-header.md"
    },
    "handoff-suggestion": {
      "rules": "rules/handoff-suggestion.md"
    },
    "prompt-loop": {
      "rules": "rules/prompt-loop.md"
    },
    "history-log": {
      "rules": "rules/history-log.md"
    },
    "plan-mode": {
      "rules": "rules/plan-mode.md"
    }
  },
  "private": false
}

README.md

tile.json