specre — AIエージェント向けの原子単位・生きた仕様カード

Tool

概要

specreは「Atomic, living specification cards for AI-agent-friendly development.」を掲げる、仕様駆動開発(Spec-Driven Development:SDD)向けの最小限の仕様フォーマットとツール群です。各「specre」は一つの振る舞い(behavior)だけを記述する単一のMarkdownファイルとして表現され、YAMLなどの機械可読なフロントマターでライフサイクルの状態やメタ情報を持ちます。こうした原子単位の仕様は、AIエージェントによる探索や自動化、追跡を容易にし、仕様とコードの乖離(スペックロット)を抑えることを目的としています。

GitHub

リポジトリの統計情報

  • スター数: 1
  • フォーク数: 0
  • ウォッチャー数: 1
  • コミット数: 7
  • ファイル数: 3
  • メインの言語: 未指定

主な特徴

  • 単一Markdownファイルで1つの振る舞いを記述する「原子仕様」フォーマット
  • 機械可読なフロントマターでライフサイクルやメタ情報を保持しトレーサビリティを向上
  • AIエージェントが扱いやすい構造(ナビゲーションや自動化を想定)
  • 最小限かつ言語非依存の設計で既存フローへの導入が容易

技術的なポイント

specreの技術的な核は「単一責務のMarkdownファイル + 機械可読フロントマター」にあります。各ファイルは1つの振る舞い(期待される入力・出力、条件、前提、期待結果など)を明確に示し、YAML等のフロントマターにステータス(例:draft、proposed、implemented、deprecated)、タグ、作成者、関連チケットやテストへの参照といったメタデータを持たせることで、仕様のライフサイクルを追跡可能にします。こうした構造は複数の利点を生みます。まず、仕様が小さく独立しているため変更の影響範囲が限定され、保守が容易です。次に機械可読メタデータによりCIやテストハーネス、コード生成ツール、AIエージェントが仕様をプログラム的に検索・選別・実行できるようになります。AIエージェント視点では「短く明確なカード」がルールや期待を把握しやすく、エージェント間のタスク割当やナビゲーション(次に読むべき仕様、関連仕様への誘導)を自動化できます。実装面では最小限の依存とファイルベースのアプローチにより、既存リポジトリへ導入する際の障壁が小さい点も重要です。ただし現状のリポジトリはREADMEとドキュメント中心で、具体的なCLIやランタイム統合のコードは含まれていないため、導入時はプロジェクト固有のCI/テストフローに合わせた実装(変換スクリプトや検証ツール)の追加が想定されます。

プロジェクトの構成

主要なファイルとディレクトリ:

  • LICENSE: file
  • README.md: file
  • docs: dir

READMEにはプロジェクトの意図、問題意識(仕様の陳腐化/スペックの乖離)、specreフォーマットの概要が記載されています。現状は設計思想と仕様フォーマットの説明が中心で、実運用向けのサンプルやスニペットを追加すると採用のハードルが下がるでしょう。

まとめ

原子仕様+機械可読メタデータでSDDとAI連携を目指すシンプルな提案。

リポジトリ情報:

READMEの抜粋:

specre

Atomic, living specification cards for AI-agent-friendly development.

specre is a minimal specification format and toolkit for Spec-Driven Development (SDD). Each specre is a single Markdown file describing exactly one behavior, with machine-readable front-matter for lifecycle tracking and agent navigation.

The Problem

Specifications are essential for keeping development intent visible and traceable. But in practice, they rot:

  • Specs drift from code in silence. No one n…