fix: Agent beads now reference shared role beads
crew_add.go: Use gt-crew-role instead of per-instance role bead polecat/manager.go: Add RoleBead field pointing to gt-polecat-role Per agent-as-bead design, role beads are shared class definitions. Each agent bead references its role via the role_bead field/slot. Fixes gt-ne9he 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
@@ -88,7 +88,7 @@ func runCrewAdd(cmd *cobra.Command, args []string) error {
|
||||
RoleType: "crew",
|
||||
Rig: rigName,
|
||||
AgentState: "idle",
|
||||
RoleBead: crewID + "-role",
|
||||
RoleBead: "gt-crew-role",
|
||||
}
|
||||
desc := fmt.Sprintf("Crew worker %s in %s - human-managed persistent workspace.", name, rigName)
|
||||
if _, err := bd.CreateAgentBead(crewID, desc, fields); err != nil {
|
||||
|
||||
@@ -221,6 +221,7 @@ func (m *Manager) Add(name string) (*Polecat, error) {
|
||||
RoleType: "polecat",
|
||||
Rig: m.rig.Name,
|
||||
AgentState: "spawning",
|
||||
RoleBead: "gt-polecat-role",
|
||||
})
|
||||
if err != nil {
|
||||
// Non-fatal - log warning but continue
|
||||
@@ -427,6 +428,7 @@ func (m *Manager) Recreate(name string, force bool) (*Polecat, error) {
|
||||
RoleType: "polecat",
|
||||
Rig: m.rig.Name,
|
||||
AgentState: "spawning",
|
||||
RoleBead: "gt-polecat-role",
|
||||
})
|
||||
if err != nil {
|
||||
fmt.Printf("Warning: could not create agent bead: %v\n", err)
|
||||
|
||||
Reference in New Issue
Block a user