Skip to content

Fyloss/spec-kit-digest

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

📋 Digest — SpecKit Extension

Automatically generate structured summary documents from SpecKit workflow artifacts, reducing human review time with clear, easy-to-scan digests.

SpecKit version Version


Overview

The Digest extension hooks into every step of the SpecKit workflow (constitution → specify → clarify → plan → tasks → implement → analyze) and automatically generates a Markdown summary document after each step. It supports:

  • Multi-language output (English by default, extensible)
  • Digest changelog — archives previous versions before each re-generation
  • Manual commands — re-generate any digest on demand
  • Agent-agnostic — works with GitHub Copilot, Claude Code, Gemini CLI, and others

Installation

# From local directory (development / private use)
specify extension add --dev /path/to/digest

# After publishing to a catalog
specify extension add digest

Once installed, configure the extension by editing: .specify/extensions/digest/digest-config.yml


Configuration

Field Type Default Description
languages list [en] Languages for digest generation (any valid BCP 47 code)
changelog.enabled bool true Enable/disable archiving of old versions
changelog.max_history int 10 Maximum number of archived versions per step

Example .specify/extensions/digest/digest-config.yml:

languages:
  - fr
  - en
changelog:
  enabled: true
  max_history: 10

Language rules:

  • If a language is unsupported, the extension falls back to en and adds a warning in the digest header
  • If languages is empty or absent, defaults to [en]

Commands

All commands are prefixed with /speckit.digest. when invoked via your AI agent.

Command Description
/speckit.digest.all Re-generate all available digests for the current feature
/speckit.digest.constitution Digest for the constitution step
/speckit.digest.specify Digest for the specify step
/speckit.digest.clarify Digest for the clarify step
/speckit.digest.plan Digest for the plan step
/speckit.digest.tasks Digest for the tasks step
/speckit.digest.implement Digest for the implement step
/speckit.digest.analyze Digest for the analyze step
/speckit.digest.history <step> Display the version history for the given step

Hooks

The extension hooks into SpecKit lifecycle events to generate digests automatically.

Required hooks

These hooks always fire after the corresponding step (optional: false).

Hook Trigger Optional
after_constitution /speckit.constitution Yes
after_specify /speckit.specify No
after_clarify /speckit.clarify No
after_plan /speckit.plan No
after_tasks /speckit.tasks No
after_analyze /speckit.analyze No
after_implement /speckit.implement Yes

Optional hooks

Hook Trigger Manual fallback
after_constitution /speckit.constitution /speckit.digest.constitution
after_implement /speckit.implement /speckit.digest.implement

Note: For optional hooks, if the hook does not fire automatically, use the corresponding manual command as a fallback.


Output Structure

Generated digests are written into the current feature folder:

.specify/
├── digest/                        # Project-wide digests (constitution)
│   ├── fr/
│   │   └── digest-constitution.md
│   └── en/
│       └── digest-constitution.md
└── features/<feature-name>/
    └── digest/                    # Feature-specific digests
        ├── fr/
        │   ├── digest-specify.md
        │   ├── digest-clarify.md
        │   ├── digest-plan.md
        │   ├── digest-tasks.md
        │   ├── digest-implement.md
        │   ├── digest-analyze.md
        │   └── history/               # Only if changelog.enabled: true
        │       ├── specify/
        │       │   ├── digest-specify-2026-04-21_17-45-00.md
        │       │   └── digest-specify-2026-04-22_09-10-00.md
        │       └── plan/
        │           └── digest-plan-2026-04-21_18-00-00.md
        └── en/
            ├── digest-specify.md
            ├── ...
            └── history/

Constitution note: The constitution digest is project-wide and stored at .specify/memory/digest/<lang>/, not inside a feature folder. Its header clearly states this scope.


Digest Document Structure

Every generated digest contains:

Header (all steps)

---
Source document(s): [link(s) to analyzed artifact(s)]
Estimated reading time (source): ~X min
Estimated reading time (this digest): ~Y min
Generated: YYYY-MM-DD HH:MM
Language: English
---

Body (step-specific)

See the table below for the content of each step.

Step Content
constitution Non-negotiable principles, tech stack, dev guidelines, points of vigilance
specify Functional need summary, scope (in/out), acceptance criteria, assumptions
clarify Identified ambiguities + resolutions, decisions, open points, spec impact
plan Technical architecture, impacted components, data model/API, technical choices
tasks Task count, phase breakdown, critical/blocking tasks, execution order
implement What was implemented, created/modified files, technical notes, remaining work
analyze Coherence analysis results, detected incoherences, recommendations, quality score

Footer (if changelog.enabled)

A Version History table listing all archived versions with their dates.


Changelog & Archiving

When changelog.enabled: true:

  1. Before each re-generation, the existing digest is archived to history/<step>/digest-<step>-<YYYY-MM-DD_HH-MM-SS>.md
  2. If the archive count exceeds max_history, the oldest archives are deleted
  3. The current digest file is never deleted — only archived copies beyond the limit
  4. Each digest ends with a Version History table showing all archived versions

When changelog.enabled: false:

  • The existing digest is simply overwritten
  • No history/ folder is created
  • No Version History section is appended

Extension File Structure

digest/
├── extension.yml               # Extension manifest
├── digest-config.yml           # Configuration template
├── README.md                   # This file
├── templates/
│   └── commands/
│       ├── digest-all.md       # /speckit.digest.all
│       ├── digest-constitution.md
│       ├── digest-specify.md
│       ├── digest-clarify.md
│       ├── digest-plan.md
│       ├── digest-tasks.md
│       ├── digest-implement.md
│       ├── digest-analyze.md
│       └── digest-history.md
└── hooks/
    ├── post-constitution.md
    ├── post-specify.md
    ├── post-clarify.md
    ├── post-plan.md
    ├── post-tasks.md
    ├── post-implement.md
    └── post-analyze.md

Compatibility

  • SpecKit: >=0.8.2
  • AI Agents: GitHub Copilot, Claude Code, Gemini CLI (agent-agnostic templates)

About

Auto-generate structured summary documents from SpecKit workflow artifacts to reduce human review time

Topics

Resources

License

Stars

1 star

Watchers

0 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors