speckit-baseline

SKILL.md

Speckit Baseline Skill

The user input to you can be provided directly by the agent or as a command argument - you MUST consider it before proceeding with the prompt (if not empty).

User input:

$ARGUMENTS

What This Does

The baseline workflow creates foundational documentation by:

  1. Establishing a comprehensive baseline specification of the project
  2. Creating a change tracking document for all subsequent modifications

This provides essential context for you (the AI agent) when working on future tasks.

Your Task

  1. Run the script .specify/scripts/bash/create-baseline.sh --json from repo root and parse its JSON output for BASELINE_SPEC, CURRENT_STATE, BASELINE_COMMIT, and HAS_EXISTING_SPECS. All file paths must be absolute. Note: The script only accepts the --json flag and ignores $ARGUMENTS. IMPORTANT You must only ever run this script once. The JSON is provided in the terminal as output - always refer to it to get the actual content you're looking for.

  2. Analyze the Project:

    a. If HAS_EXISTING_SPECS is "true":

    • The baseline commit represents the project state BEFORE spec-kit was used
    • Use git show BASELINE_COMMIT:path/to/file to examine files at that point
    • Analyze that historical state to document what existed before specs

    b. If HAS_EXISTING_SPECS is "false":

    • Analyze the current project state
    • This is a fresh baseline for future work
  3. Generate baseline-spec.md:

    Load .specify/extensions/workflows/baseline/baseline-spec-template.md to understand the structure.

    Then comprehensively analyze the codebase (at the baseline commit if applicable) and fill in BASELINE_SPEC with:

    • Executive Summary: High-level overview of project purpose
    • Project Structure: Directory layout and key components
    • Architecture: System design, technology stack, patterns
    • Core Functionality: Primary features and user workflows
    • Data Model: Core entities and their relationships
    • External Dependencies: Third-party libraries and external services
    • Build and Deployment: Build process, testing strategy, deployment
    • Configuration: Environment variables, feature flags
    • Known Issues: Current limitations and technical debt
    • Future Considerations: Planned improvements and scalability concerns

    Be thorough - examine:

    • Package files (package.json, requirements.txt, pom.xml, etc.)
    • Build configurations (webpack, vite, Makefile, etc.)
    • Source code structure and key modules
    • README, documentation files
    • Configuration files
    • Database schemas or migrations
    • API routes/endpoints
    • Test files to understand tested functionality
  4. Generate current-state.md:

    Load .specify/extensions/workflows/baseline/current-state-template.md for structure.

    Scan the specs directory and enumerate all changes by type:

    • Features: List all specs/###-* directories with descriptions
    • Modifications: Find specs/###-*/modifications/ subdirectories
    • Bugfixes: List specs/bugfix/ entries
    • Refactors: List specs/refactor/ entries
    • Hotfixes: List specs/hotfix/ entries
    • Deprecations: List specs/deprecate/ entries

    For unspecified changes (if HAS_EXISTING_SPECS is true):

    • Compare commits from BASELINE_COMMIT to HEAD
    • Identify commits not associated with spec directories

    Calculate statistics:

    • Counts for each workflow type
    • Total commits, files changed, lines added/removed
    • Specification coverage percentage
  5. Report completion:

✅ Baseline documentation created

**Location**: specs/history/
**Baseline Spec**: [BASELINE_SPEC path]
**Current State**: [CURRENT_STATE path]

{{If HAS_EXISTING_SPECS is true:}}
**Baseline Commit**: [BASELINE_COMMIT]
Note: Baseline represents project state before first spec-kit usage
{{end if}}

📋 **What Was Documented:**

**Baseline Specification**:
- Project structure: [X] components identified
- Technology stack: [Languages/Frameworks]
- Core features: [X] primary features documented
- Architecture: [Brief architecture summary]

**Current State**:
- Features: [X] implemented
- Modifications: [X] tracked
- Bugfixes: [X] fixed
- Other workflows: [X] total
{{If unspecified changes found}}
- Unspecified: [X] commits without specs
{{end if}}

💡 **Using This Context:**

The baseline documentation will help me (your AI assistant) understand:
- What the project does and how it's structured
- What has been built and modified
- Where technical debt exists
- What patterns and conventions to follow

This context will improve my suggestions for all future work.

📌 **Next Steps:**
1. Review the generated documentation for accuracy
2. Make any corrections or additions to baseline-spec.md
3. Use this context when creating new specs with other workflows
4. Periodically update current-state.md as new specs are completed

Important Notes

  • Do not create a git branch - This is a documentation task
  • Be comprehensive - The baseline is foundational context for all future work
  • Analyze deeply - Don't just list files, understand what they do
  • Track everything - In current-state.md, account for all changes
  • Update timestamps - Replace {{DATE}} placeholders with actual dates
  • Link to sources - Reference specific files and line numbers where relevant

Quality Checks

Before finishing:

  • baseline-spec.md covers all major aspects of the project
  • Technology stack is accurately documented
  • Core features are clearly described
  • current-state.md accounts for all spec directories
  • Statistics are calculated and included
  • Both files use the provided template structure
  • All placeholders are replaced with actual content
Weekly Installs
1
GitHub Stars
1
First Seen
5 days ago
Installed on
mcpjam1
claude-code1
windsurf1
zencoder1
crush1
amp1