Metis — Run Metis
run_metisProcesses every research request through an 11-stage pipeline to classify content, block sensitive data and prompt injection, and return agent routing decisions.
Instructions
Master /metis entry point — runs the 11-stage pipeline and returns a routing decision.
Every /metis invocation passes through here. The pipeline:
1. Bootstraps or resumes the session
2. Classifies content (PUBLIC/INTERNAL/CONFIDENTIAL/SENSITIVE)
3. Data Guardian: blocks SENSITIVE requests outright
4. Cybersecurity: blocks prompt injection and suspicious URLs
5. Parses intent and selects the appropriate agent(s)
6. Allocates model and token budget
7. Assembles minimum surgical context from memory
8. Persists the turn to session_events
9. Returns routing decision — agents execute and then call:
save_session_event(..., 'result', output)
log_agent_run(..., session_id=session_id)
write_reflexion(session_id, agent_slug, ...)
Stages 10 (logging) and 11 (reflexion) are called by the executing agent
after completing their work.
Args:
request: The researcher's request text.
session_id: Existing session ID if resuming. Leave empty to auto-bootstrap.
client: Which Claude client is calling ('code'|'chat'|'cowork'|'dashboard').
max_turns: Maximum pipeline turns before graceful truncation (default 20).
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| client | No | code | |
| request | Yes | ||
| max_turns | No | ||
| session_id | No |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
| result | Yes |