docs(crew): Work off main, no feature branches
Crew workers are trusted maintainers who push directly to main: - Own their clones (no isolation needed) - Fast work cycles (10-15 min) make branch overhead wasteful - Branches go stale with context cycling - Polecats use branches/MRs; crew does not need review Also updated two-level beads docs (removed stale rig-level references). 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
37
CLAUDE.md
37
CLAUDE.md
@@ -67,20 +67,37 @@ go test ./...
|
||||
- `gt mail send mayor/ -s "Subject" -m "Message"` - To Mayor
|
||||
- `gt mail send gastown/crew/max -s "Subject" -m "Message"` - To yourself (handoff)
|
||||
|
||||
## Beads Database
|
||||
## Git Workflow: Work Off Main
|
||||
|
||||
**Two-level beads architecture** - understand this to avoid confusion:
|
||||
**Crew workers push directly to main. No feature branches.**
|
||||
|
||||
| Level | Location | sync-branch | Prefix | Purpose |
|
||||
|-------|----------|-------------|--------|---------|
|
||||
| Town | `~/gt/.beads/` | NOT set | `hq-*` | Mayor mail, HQ coordination |
|
||||
| Rig | `crew/max/.beads/` (this clone) | `beads-sync` | `gt-*` | Project issues |
|
||||
Why:
|
||||
- You own your clone - no isolation needed
|
||||
- Work is fast (10-15 min) - branch overhead exceeds value
|
||||
- Branches go stale with context cycling - main is always current
|
||||
- You're a trusted maintainer, not a contributor needing review
|
||||
|
||||
Workflow:
|
||||
```bash
|
||||
git pull # Start fresh
|
||||
# ... do work ...
|
||||
git add -A && git commit -m "description"
|
||||
git push # Direct to main
|
||||
```
|
||||
|
||||
If push fails (someone else pushed): `git pull --rebase && git push`
|
||||
|
||||
## Two-Level Beads Architecture
|
||||
|
||||
| Level | Location | Prefix | Purpose |
|
||||
|-------|----------|--------|---------|
|
||||
| Town | `~/gt/.beads/` | `hq-*` | ALL mail and coordination |
|
||||
| Clone | `crew/max/.beads/` | `gt-*` | Project issues only |
|
||||
|
||||
**Key points:**
|
||||
- You're in a **gastown.git clone** - your `.beads/` is tracked in the gastown repo
|
||||
- The rig-level `~/gt/gastown/.beads/` is **gitignored** (local runtime state)
|
||||
- Your beads sync via `beads-sync` branch to coordinate with other clones
|
||||
- Run `bd sync` to push/pull beads changes
|
||||
- Mail ALWAYS uses town beads - `gt mail` routes there automatically
|
||||
- Project issues use your clone's beads - `bd` commands use local `.beads/`
|
||||
- Run `bd sync` to push/pull beads changes via the `beads-sync` branch
|
||||
|
||||
Issue prefix: `gt-`
|
||||
|
||||
|
||||
@@ -33,14 +33,14 @@ Town ({{ .TownRoot }})
|
||||
|
||||
## Two-Level Beads Architecture
|
||||
|
||||
| Level | Location | sync-branch | Prefix | Purpose |
|
||||
|-------|----------|-------------|--------|---------|
|
||||
| Town | `~/gt/.beads/` | NOT set | `hq-*` | Mayor mail, HQ coordination |
|
||||
| Rig | `crew/{{ .Polecat }}/.beads/` | `beads-sync` | project prefix | Project issues |
|
||||
| Level | Location | Prefix | Purpose |
|
||||
|-------|----------|--------|---------|
|
||||
| Town | `~/gt/.beads/` | `hq-*` | ALL mail and coordination |
|
||||
| Clone | `crew/{{ .Polecat }}/.beads/` | project prefix | Project issues only |
|
||||
|
||||
**Key points:**
|
||||
- You're in a project git clone - your `.beads/` is tracked in the project repo
|
||||
- The rig-level `{{ .RigName }}/.beads/` is **gitignored** (local runtime state)
|
||||
- Mail ALWAYS uses town beads - `gt mail` routes there automatically
|
||||
- Project issues use your clone's beads - `bd` commands use local `.beads/`
|
||||
- Run `bd sync` to push/pull beads changes via the `beads-sync` branch
|
||||
|
||||
## Your Workspace
|
||||
@@ -50,6 +50,26 @@ You work from: {{ .WorkDir }}
|
||||
This is a full git clone of the project repository. You have complete autonomy
|
||||
over this workspace.
|
||||
|
||||
## Git Workflow: Work Off Main
|
||||
|
||||
**Crew workers push directly to main. No feature branches.**
|
||||
|
||||
Why:
|
||||
- You own your clone - no isolation needed
|
||||
- Work is fast (10-15 min) - branch overhead exceeds value
|
||||
- Branches go stale with context cycling - main is always current
|
||||
- You're a trusted maintainer, not a contributor needing review
|
||||
|
||||
Workflow:
|
||||
```bash
|
||||
git pull # Start fresh
|
||||
# ... do work ...
|
||||
git add -A && git commit -m "description"
|
||||
git push # Direct to main
|
||||
```
|
||||
|
||||
If push fails (someone else pushed): `git pull --rebase && git push`
|
||||
|
||||
## Key Commands
|
||||
|
||||
### Finding Work
|
||||
@@ -91,7 +111,6 @@ When your context fills up, cycle to a fresh session:
|
||||
gt mail send {{ .RigName }}/crew/{{ .Polecat }} -s "🤝 HANDOFF: Work in progress" -m "
|
||||
## Current State
|
||||
Working on: <issue-id or description>
|
||||
Branch: <current branch>
|
||||
Status: <what's done, what remains>
|
||||
|
||||
## Next Steps
|
||||
|
||||
Reference in New Issue
Block a user