Skip to content

[Architecture] Move .squad/ state out of working tree (git-notes or orphan branch) #792

Closed

Description

@tamirdresher

Move .squad/ Out of the Working Tree

Problem

  • .squad/ lives in the working tree → destroyed on branch switch
  • Some users don't want squad state in version control at all
  • State pollutes PRs and diffs

Proposed solutions (from Tamir's blog Part 7b)

Option A: Git Notes (refs/notes/squad)

  • Squad state stored in git notes ref, not working tree
  • Survives branch switches (ref-based, not file-based)
  • Invisible in git status, git diff, PRs
  • Accessed via git notes --ref=squad show HEAD

Option B: Orphan Branch (squad-state)

  • Dedicated branch with no common ancestor
  • State files live there, never merged into main
  • Read via git show squad-state:.squad/team.md

Option C: External directory (~/.squad/projects/{repo-hash}/)

  • State outside repo entirely
  • No git integration needed
  • Fallback for repos where user has no write access

Blog reference

https://tamirdresher.github.io — Part 7b of the Scaling AI series

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or improvement

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions