You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Replace mas_manager.py with native supervisor-agents CLI
The supervisor-agents CLI group (Beta, CLI 0.299.2+) covers the full
lifecycle previously implemented in mas_manager.py — create/list/get/
update/delete agents, tools, and examples — so the 640-line Python
shim is no longer needed.
- Rewrote agent-bricks SKILL.md + 2-supervisor-agents.md around
`databricks supervisor-agents ...` invocations
- Verified Genie + KA tool wiring end-to-end against real resources;
routing returned correct results for both
- Corrected knowledge_assistant block field: `knowledge_assistant_id`
(not `id`) — only genie_space uses `id`
- Marked unverified tool types as such instead of asserting wrong
field shapes
- Deleted mas_manager.py + its integration test
- Bumped MIN_CLI_VERSION to 0.299.2 (required for supervisor-agents)
Co-authored-by: Isaac
@@ -61,20 +69,27 @@ The `description` field drives routing. Be specific:
61
69
62
70
## Adding Examples
63
71
64
-
Examples help evaluation and routing optimization. **The MAS endpoint must be ONLINE.** Right after `create_mas` (or a big `update_mas`), the endpoint is `NOT_READY` and takes **up to ~10 minutes** to come ONLINE. Pass `--wait`to block until then:
72
+
Examples help evaluation and routing optimization. **The serving endpoint must be ONLINE.** Right after `create-supervisor-agent` (or a structural `update-supervisor-agent`), the endpoint takes **up to ~10 minutes** to come ONLINE. Examples can be added before that — they're stored on the agent definition — but querying the endpoint to evaluate routing requires readiness.
**No CLI** — use `mas_manager.py` from this skill's `scripts/` folder. All `<SKILL_ROOT>/...` paths below are relative to the directory containing this SKILL.md (resolve to the absolute path in your install location).
57
+
Native CLI: `databricks supervisor-agents` (Beta, requires CLI ≥ 0.299.2). Resource paths look like `supervisor-agents/{id}` — every command takes either that full path or a `PARENT` of that shape. `list-supervisor-agents` and `list-examples`/`list-tools` return bare JSON arrays.
58
58
59
59
```bash
60
-
# Create MAS
61
-
python <SKILL_ROOT>/scripts/mas_manager.py create_mas "My Supervisor"'{
62
-
"description": "Routes queries to specialized agents",
63
-
"instructions": "Route data questions to analyst, document questions to docs_agent.",
Each tool wires the supervisor to a downstream resource. `tool_type` lives in `--json` (the CLI rejects it as a positional when `--json` is used). Each type has a type-specific block (`genie_space`, `knowledge_assistant`, etc.) whose identifier field differs by type — see the table below.
83
+
84
+
```bash
85
+
# Attach a Genie space — find its space_id with `databricks genie list-spaces`
| Other types (`serving_endpoint`, `lakeview_dashboard`, `supervisor_agent`, `uc_table`, `vector_search_index`, `catalog`, `schema`, `web_search`) | Block name and field shape vary | Run `databricks supervisor-agents create-tool --help` and probe — these were not verified end-to-end here. |
116
+
117
+
### Examples (training the supervisor)
118
+
119
+
Examples must use `--json` — the positional `GUIDELINES` arg doesn't accept any encoding because guidelines is a `repeated string`.
**Status:**`NOT_READY` (up to ~10 min after create/big update) → `ONLINE` → `OFFLINE`
132
+
**Endpoint readiness:**after `create-supervisor-agent`, the serving endpoint takes up to ~10 minutes to come online before it can answer queries. `get-supervisor-agent` returns the endpoint name immediately, but querying it is gated on the endpoint's own readiness — check via `databricks serving-endpoints get <endpoint_name>`.
0 commit comments