Lead status tool

This commit is contained in:
Ian Gulliver
2026-10-17 08:04:05 -07:00
parent 3b23691bd7
commit 1ba79e99df
5 changed files with 35 additions and 13 deletions
+14
View File
@@ -95,6 +95,20 @@ func (m *Manager) leadTools(l *live) []mcp.Tool {
return string(b), err
}),
tool("read_status",
"Read byre's health as JSON, the same as the Status tab: rate_limits (the latest each vendor reported: how much of its window is used, when it resets, and whether it is allowed or allowed_warning), "+
"agent_processes with each one's health, zombies, protocol_errors and running_turns. "+
"Check it before starting a batch of work or when agents misbehave: warn the human when a vendor nears its limit, and put new work on the vendor with headroom.",
`{"type": "object", "properties": {}}`,
func(ctx context.Context, user api.User, raw json.RawMessage) (string, error) {
status, err := m.status(ctx)
if err != nil {
return "", err
}
b, err := json.MarshalIndent(status, "", " ")
return string(b), err
}),
tool("answer_question",
"Respond to an open inbox item on the human's behalf. Only when the answer is clear or the human told you it. "+
"type option: options holds the chosen choices' exact text (one for pick-one; pick-any may add text). "+