Skip to content

feat: Spec-Kit (github/spec-kit) integration support #184

@JARVIS-coding-Agent

Description

@JARVIS-coding-Agent

Summary

Add GitHub Spec-Kit integration to OpenAB, enabling spec-driven development workflows directly from Discord.

Motivation

Spec-Kit provides a structured approach to software development: write specs first, then let AI agents generate implementations. Integrating it into OpenAB allows teams to drive the full spec-driven workflow (constitution → specify → plan → tasks → implement) from Discord without switching tools.

Proposed Changes

1. Dockerfile — Pre-install spec-kit (all 4 images)

  • Install uv + specify-cli@v0.6.0 in Dockerfile, Dockerfile.claude, Dockerfile.codex, Dockerfile.gemini
  • Add ~/.local/bin to PATH

2. Discord command rewriting (direction 1)

  • Intercept /speckit.* messages in discord.rs
  • Rewrite into structured prompts the downstream agent can act on
  • Supported commands: constitution, specify, plan, tasks, implement (with fallback for others)

3. Session context injection (direction 4)

  • On session_new, read .specify/ directory in the agent working dir
  • Inject constitution.md, spec.md, plan.md, tasks.md as context into the first prompt
  • Silently skip if .specify/ does not exist

4. Configuration

[speckit]
rewrite_commands = true   # intercept /speckit.* commands
inject_context = true     # inject .specify/ on session init

Both default to true. Omitting the section keeps both enabled.

5. Documentation

  • Add docs/speckit-integration.md covering usage, configuration, and setup

Files Changed

  • Dockerfile, Dockerfile.claude, Dockerfile.codex, Dockerfile.gemini
  • src/discord.rs
  • src/acp/connection.rs
  • src/acp/pool.rs
  • src/config.rs
  • src/main.rs
  • config.toml.example
  • docs/speckit-integration.md (new)

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions