Replace mcp_core::prompt with rmcp::model types (#3561)
This commit is contained in:
@@ -397,9 +397,10 @@ impl Validator for GooseCompleter {
|
||||
|
||||
#[cfg(test)]
|
||||
mod tests {
|
||||
use rmcp::model::PromptArgument;
|
||||
|
||||
use super::*;
|
||||
use crate::session::output;
|
||||
use mcp_core::prompt::PromptArgument;
|
||||
use std::sync::{Arc, RwLock};
|
||||
|
||||
// Helper function to create a test completion cache
|
||||
|
||||
@@ -362,34 +362,7 @@ impl Session {
|
||||
}
|
||||
|
||||
pub async fn get_prompt(&mut self, name: &str, arguments: Value) -> Result<Vec<PromptMessage>> {
|
||||
let result = self.agent.get_prompt(name, arguments).await?;
|
||||
// Convert mcp_core::prompt::PromptMessage to rmcp::model::PromptMessage
|
||||
let converted_messages = result
|
||||
.messages
|
||||
.into_iter()
|
||||
.map(|msg| rmcp::model::PromptMessage {
|
||||
role: match msg.role {
|
||||
mcp_core::prompt::PromptMessageRole::User => {
|
||||
rmcp::model::PromptMessageRole::User
|
||||
}
|
||||
mcp_core::prompt::PromptMessageRole::Assistant => {
|
||||
rmcp::model::PromptMessageRole::Assistant
|
||||
}
|
||||
},
|
||||
content: match msg.content {
|
||||
mcp_core::prompt::PromptMessageContent::Text { text } => {
|
||||
rmcp::model::PromptMessageContent::Text { text }
|
||||
}
|
||||
mcp_core::prompt::PromptMessageContent::Image { image } => {
|
||||
rmcp::model::PromptMessageContent::Image { image }
|
||||
}
|
||||
mcp_core::prompt::PromptMessageContent::Resource { resource } => {
|
||||
rmcp::model::PromptMessageContent::Resource { resource }
|
||||
}
|
||||
},
|
||||
})
|
||||
.collect();
|
||||
Ok(converted_messages)
|
||||
Ok(self.agent.get_prompt(name, arguments).await?.messages)
|
||||
}
|
||||
|
||||
/// Process a single message and get the response
|
||||
|
||||
@@ -4,9 +4,9 @@ use goose::config::Config;
|
||||
use goose::message::{Message, MessageContent, ToolRequest, ToolResponse};
|
||||
use goose::providers::pricing::get_model_pricing;
|
||||
use indicatif::{MultiProgress, ProgressBar, ProgressStyle};
|
||||
use mcp_core::prompt::PromptArgument;
|
||||
use mcp_core::tool::ToolCall;
|
||||
use regex::Regex;
|
||||
use rmcp::model::PromptArgument;
|
||||
use serde_json::Value;
|
||||
use std::cell::RefCell;
|
||||
use std::collections::HashMap;
|
||||
|
||||
Reference in New Issue
Block a user