Skip to content

squad upgrade --self: refresh the source repo's own .ai-team/ to match current templates #68

Closed

Description

@bradygaster

Problem

When working on Squad from source, the .ai-team/ directory was hand-created early in development and has drifted from what squad init produces for customers. There's no way to refresh the source repo's team config without manually editing files.

More broadly, any long-running Squad project accumulates drift between its .ai-team/ state and the latest templates — missing role icons, outdated charter sections, stale formatting.

Proposal: squad upgrade --self

A new CLI flag that refreshes the current repo's .ai-team/ files to match current templates without losing custom content.

What it refreshes:

team.md:

  • Add role emoji icons to roster if missing
  • Update @copilot capabilities section to match templates/roster.md
  • Normalize coordinator name to "Squad"
  • Preserve all custom members, project context, and board config

Charters (.ai-team/agents/*/charter.md):

  • Ensure all standard sections exist (Identity, What I Own, How I Work, Boundaries, Model, Collaboration, Voice)
  • Add missing sections from templates/charter.md with sensible defaults
  • Never overwrite existing custom content in any section
  • Report which charters were updated and what sections were added

Structural files:

  • Ensure ceremonies.md, routing.md, decisions.md exist
  • Ensure casting/, skills/, orchestration-log/, log/, decisions/inbox/ dirs exist
  • Ensure .gitattributes has the merge=union drivers

What it does NOT touch:

  • history.md files (agent memory — never modified by upgrade)
  • decisions.md content (append-only ledger)
  • Agent names (casting is permanent)
  • Any custom sections agents have added to their charters

UX:

$ npx github:bradygaster/squad upgrade --self

Refreshing .ai-team/ to match current templates...

  team.md — added role icons to 9 members
  keaton/charter.md — added missing Model section
  fenster/charter.md — up to date
  ceremonies.md — up to date
  .gitattributes — added merge=union drivers
  
Self-upgrade complete. 2 files updated.

Why this matters

  1. Dogfooding — Brady and the squad squad get the latest UX automatically
  2. Customer value — any long-running project benefits from template improvements
  3. Meta-delightful — updating Squad inside of Squad is peak Squad

Acceptance Criteria

  • squad upgrade --self flag implemented in index.js
  • Refreshes team.md formatting (icons, structure) without losing custom content
  • Adds missing charter sections without overwriting existing ones
  • Ensures structural directories and files exist
  • Reports what was changed
  • Tests covering the refresh behavior
  • Works when run from the source repo itself

Activity

  1. added this to the v0.4.1 milestone on Feb 15, 2026
  2. bradygaster commented on Feb 16, 2026

    @bradygaster
    CollaboratorAuthor

    ✅ Implemented in latest commit. squad upgrade --self now refreshes squad repo's own .ai-team/ from templates while preserving agent histories.

  3. added a commit that references this issue on Feb 16, 2026
  4. added a commit that references this issue on Mar 26, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions