Skip to content

feat: orchestrator/project scope for multi-repo distribution #17

@arcaven

Description

@arcaven

Context

When using sideshow in an orchestrator-pattern project (like aae-orc with ~10 gitignored subrepos), there's a distribution scope gap.

Current scopes:

  • Global — install for all projects on the machine (~/.config/sideshow/)
  • Repo — install for one specific repo (.claude/commands/, .claude/rules/)

Missing scope: project/orchestrator — install once at the parent repo, propagate to all listed subrepos within that project.

Use case: beads integration

We adopted beads (bd) as a task tracker alongside kos. bd init at the orchestrator root creates config that needs to exist in each subrepo for Claude sessions started there:

  • .claude/settings.json hooks (SessionStart/PreCompact → bd prime)
  • AGENTS.md template
  • .claude/rules/beads-workflow.md or CLAUDE.md beads section
  • .beads symlink creation (pointing to orchestrator's .beads/)
  • .gitignore entry for .beads

Currently these must be manually copied to each subrepo. This is exactly what sideshow was built to solve, but the orchestrator topology isn't supported.

Questions

  1. Does sideshow need a "project" scope that reads a manifest (repos.yaml?) and distributes to listed subrepos?
  2. Push model (sideshow pushes to subrepos) vs pull model (each subrepo references the orchestrator)?
  3. Does sideshow need to support .claude/settings.json hook distribution (not just commands/rules)?
  4. Can pack post-install hooks handle the .beads symlink creation?
  5. What does a beads-integration pack look like in sideshow's format?

Design constraints

  • Subrepos are independent git repos, gitignored from the orchestrator
  • Each subrepo has its own .git/, .claude/, CLAUDE.md
  • The orchestrator knows its subrepos via repos.yaml
  • Sideshow's value over a justfile recipe: version tracking and backward-propagating updates

Related

  • aae-orc _kos/nodes/frontier/question-sideshow-orchestrator-scope.yaml
  • aae-orc charter.md F6 (Content Pack Format)
  • aae-orc _kos/ideas/forestage-sideshow-integration.md

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions