[Feature]: support and guidance for multi-repo products (microservices architecture)

オープン
#4,583 コメント 0 件 リアクション 2 件 担当者 0 名 GitHub で見る

まだ誰も着手していません。

評価

難易度
5/5
見積もり時間
1週間以上
初心者へのやさしさ
30/100
issue の種類
機能追加
明瞭さ
おおむね明確
活発さ
活発
技術スタック
python
領域
cli, documentation

調査の方向性

ファイルやテストは指定されていません。まず既存の monorepo ガイダンスと CLI の初期化およびコマンドのワークフローを確認し、次にプロダクトレベルのマルチリポジトリモデルをどこに適用できるかを判断してください。クロスリポジトリのリンク、依存関係の処理、バージョニング、リリース調整、および完全な microservices の例を文書化または実装できれば完了です。

索引モデルが issue の本文から書いたものです。

説明

enhancement needs-triage triage-can-wait
Problem Statement

Spec Kit currently provides guidance for monorepo scenarios, but many real-world products are built as multiple repositories (microservices), where each repository serves a different function within the same product.

For many organizations, monorepo is not viable due to constraints such as:

  • security boundaries,
  • team ownership models,
  • compliance requirements,
  • independent release cadences,
  • operational limitations.

Without a dedicated multi-repo approach, applying Spec-Driven Development consistently at the product level becomes difficult, especially for cross-service changes.

Proposed Solution

Add official support (feature and/or documentation) for a multi-repo product workflow tailored to microservices architectures.

Suggested scope:

  • Define a way to represent a product as a logical grouping of multiple repositories/services.
  • Support linking and tracking spec dependencies across repos.
  • Provide a recommended workflow for cross-repo changes, including:
  • creating/updating specs per service,
  • dependency management,
  • compatibility validation,
  • release coordination.
  • Establish conventions for versioning and traceability across repositories.
  • Include practical, end-to-end examples for non-monorepo microservices.
Alternatives Considered

Use monorepo guidance as-is
Not sufficient when monorepo cannot be adopted for organizational or technical reasons.

Keep ad-hoc team conventions per repo
Leads to inconsistent practices, weak traceability, and higher coordination overhead.

Rely only on external tooling/process docs
Helps partially, but lacks first-class, opinionated support within Spec Kit’s own workflow.

Component

Specify CLI (initialization, commands)

AI Agent (if applicable)

GitHub Copilot

Use Cases
  1. A product is composed of several microservices, each in its own repository.
  2. A product-level feature requires coordinated updates to multiple services/specs.
  3. An API contract change in one service affects dependent services in other repos.
  4. Teams need clear mapping from product intent/spec to implementation across all involved repositories.
  5. Release readiness depends on compatibility and sequencing across multiple repos.
Acceptance Criteria
  • Documentation clearly describes when and how to use a multi-repo workflow (especially when monorepo is not possible).
  • A product-level model/grouping for multiple repos/services is defined.
  • Cross-repo spec linking/dependency handling is documented (or supported as a feature).
  • A recommended end-to-end flow for cross-repo changes is provided.
  • Versioning and traceability conventions across repos are defined.
  • At least one practical microservices example (non-monorepo) is included.
Additional Context

No response

主要言語
Python
スター
138k
フォーク
12.4k
平均マージ
3日 6時間
マージ済み PR(30日)
136

コントリビューションガイド

コントリビューションガイドを開く

はじめの一歩

  1. issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
  2. 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
  3. リポジトリをフォークし、ブランチを切って変更します。
  4. issue 番号を参照したプルリクエストを送ります。

github/spec-kit のほかの issue

github/spec-kit の issue をすべて見る

似ている issue

Python の issue をもっと見る

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。