22 lines
825 B
Rust
22 lines
825 B
Rust
//! The `consult` tool: `brokerd` decides it and POSTs an allowlisted body (M6 spec, section 4).
|
|
//! It is not core; the parent finds it with `find_tool` and calls it through `call_tool`.
|
|
|
|
pub const CONSULT: &str = "consult";
|
|
|
|
pub fn schema() -> crate::llama::ToolSchema {
|
|
crate::llama::ToolSchema {
|
|
name: CONSULT.to_string(),
|
|
description: "Ask a remote model a question. The session history is not sent. Needs a grant from the owner.".to_string(),
|
|
parameters: serde_json::json!({
|
|
"type": "object",
|
|
"properties": {
|
|
"question": {
|
|
"type": "string",
|
|
"description": "The question to send. Nothing else of the session is included."
|
|
}
|
|
},
|
|
"required": ["question"]
|
|
}),
|
|
}
|
|
}
|