feat(prime): add check-in announcements for all agent roles
Extend the startup protocol to have all roles announce themselves: - Mayor: "Mayor, checking in." (already present) - Witness: "Witness, checking in." - Polecat: "Polecat <name>, checking in." - Refinery: "Refinery, checking in." - Crew: "Crew <name>, checking in." (new case added) This provides consistent startup behavior across all Gas Town agents. 🤝 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
@@ -406,28 +406,40 @@ func outputStartupDirective(ctx RoleContext) {
|
||||
fmt.Println("---")
|
||||
fmt.Println()
|
||||
fmt.Println("**STARTUP PROTOCOL**: You are the Witness. Please:")
|
||||
fmt.Println("1. Check for handoff: `gt mail inbox` - look for 🤝 HANDOFF messages")
|
||||
fmt.Println("2. Check polecat status: `gt polecat list " + ctx.Rig + " --json`")
|
||||
fmt.Println("3. Process any lifecycle requests from inbox")
|
||||
fmt.Println("4. If polecats stuck/idle, nudge them")
|
||||
fmt.Println("5. If all quiet, wait for activity")
|
||||
fmt.Println("1. Announce: \"Witness, checking in.\"")
|
||||
fmt.Println("2. Check for handoff: `gt mail inbox` - look for 🤝 HANDOFF messages")
|
||||
fmt.Println("3. Check polecat status: `gt polecat list " + ctx.Rig + " --json`")
|
||||
fmt.Println("4. Process any lifecycle requests from inbox")
|
||||
fmt.Println("5. If polecats stuck/idle, nudge them")
|
||||
fmt.Println("6. If all quiet, wait for activity")
|
||||
case RolePolecat:
|
||||
fmt.Println()
|
||||
fmt.Println("---")
|
||||
fmt.Println()
|
||||
fmt.Println("**STARTUP PROTOCOL**: You are a polecat. Please:")
|
||||
fmt.Println("1. Check mail: `gt mail inbox`")
|
||||
fmt.Println("2. If assigned work, begin immediately")
|
||||
fmt.Println("3. If no work, announce ready and await assignment")
|
||||
fmt.Printf("1. Announce: \"Polecat %s, checking in.\"\n", ctx.Polecat)
|
||||
fmt.Println("2. Check mail: `gt mail inbox`")
|
||||
fmt.Println("3. If assigned work, begin immediately")
|
||||
fmt.Println("4. If no work, announce ready and await assignment")
|
||||
case RoleRefinery:
|
||||
fmt.Println()
|
||||
fmt.Println("---")
|
||||
fmt.Println()
|
||||
fmt.Println("**STARTUP PROTOCOL**: You are the Refinery. Please:")
|
||||
fmt.Println("1. Check mail: `gt mail inbox`")
|
||||
fmt.Printf("2. Check merge queue: `gt refinery queue %s`\n", ctx.Rig)
|
||||
fmt.Println("3. If MRs pending, process them one at a time")
|
||||
fmt.Println("4. If no work, monitor for new MRs periodically")
|
||||
fmt.Println("1. Announce: \"Refinery, checking in.\"")
|
||||
fmt.Println("2. Check mail: `gt mail inbox`")
|
||||
fmt.Printf("3. Check merge queue: `gt refinery queue %s`\n", ctx.Rig)
|
||||
fmt.Println("4. If MRs pending, process them one at a time")
|
||||
fmt.Println("5. If no work, monitor for new MRs periodically")
|
||||
case RoleCrew:
|
||||
fmt.Println()
|
||||
fmt.Println("---")
|
||||
fmt.Println()
|
||||
fmt.Println("**STARTUP PROTOCOL**: You are a crew worker. Please:")
|
||||
fmt.Printf("1. Announce: \"Crew %s, checking in.\"\n", ctx.Polecat)
|
||||
fmt.Println("2. Check mail: `gt mail inbox`")
|
||||
fmt.Println("3. If there's a 🤝 HANDOFF message, read it and continue the work")
|
||||
fmt.Println("4. If no mail, await user instruction")
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user