diff --git a/codex-rs/core/src/client_common.rs b/codex-rs/core/src/client_common.rs index fb0a7a1d0..ccc2f6297 100644 --- a/codex-rs/core/src/client_common.rs +++ b/codex-rs/core/src/client_common.rs @@ -156,13 +156,6 @@ fn strip_total_output_header(output: &str) -> Option<(&str, u32)> { Some((remainder, total_lines)) } -pub(crate) mod tools { - #[cfg(test)] - pub(crate) use codex_tools::ResponsesApiTool; - pub(crate) use codex_tools::ToolSearchOutputTool; - pub(crate) use codex_tools::ToolSpec; -} - pub struct ResponseStream { pub(crate) rx_event: mpsc::Receiver>, } diff --git a/codex-rs/core/src/tools/code_mode/mod.rs b/codex-rs/core/src/tools/code_mode/mod.rs index c8f16ca60..45e67271f 100644 --- a/codex-rs/core/src/tools/code_mode/mod.rs +++ b/codex-rs/core/src/tools/code_mode/mod.rs @@ -14,7 +14,6 @@ use codex_protocol::models::ResponseInputItem; use serde_json::Value as JsonValue; use tokio_util::sync::CancellationToken; -use crate::client_common::tools::ToolSpec; use crate::codex::Session; use crate::codex::TurnContext; use crate::function_tool::FunctionCallError; @@ -28,6 +27,7 @@ use crate::tools::router::ToolCallSource; use crate::tools::router::ToolRouterParams; use crate::unified_exec::resolve_max_tokens; use codex_features::Feature; +use codex_tools::ToolSpec; use codex_tools::tool_spec_to_code_mode_tool_definition; use codex_utils_output_truncation::TruncationPolicy; use codex_utils_output_truncation::formatted_truncate_text_content_items_with_policy; diff --git a/codex-rs/core/src/tools/context.rs b/codex-rs/core/src/tools/context.rs index 58d040cbe..7c486640e 100644 --- a/codex-rs/core/src/tools/context.rs +++ b/codex-rs/core/src/tools/context.rs @@ -1,4 +1,3 @@ -use crate::client_common::tools::ToolSearchOutputTool; use crate::codex::Session; use crate::codex::TurnContext; use crate::tools::TELEMETRY_PREVIEW_MAX_BYTES; @@ -14,6 +13,7 @@ use codex_protocol::models::ResponseInputItem; use codex_protocol::models::SearchToolCallParams; use codex_protocol::models::ShellToolCallParams; use codex_protocol::models::function_call_output_content_items_to_text; +use codex_tools::ToolSearchOutputTool; use codex_utils_output_truncation::TruncationPolicy; use codex_utils_output_truncation::formatted_truncate_text; use codex_utils_string::take_bytes_at_char_boundary; diff --git a/codex-rs/core/src/tools/context_tests.rs b/codex-rs/core/src/tools/context_tests.rs index 5a3c48809..f7641a1db 100644 --- a/codex-rs/core/src/tools/context_tests.rs +++ b/codex-rs/core/src/tools/context_tests.rs @@ -142,7 +142,7 @@ fn tool_search_payloads_roundtrip_as_tool_search_outputs() { }; let response = ToolSearchOutput { tools: vec![ToolSearchOutputTool::Function( - crate::client_common::tools::ResponsesApiTool { + codex_tools::ResponsesApiTool { name: "create_event".to_string(), description: String::new(), strict: false, diff --git a/codex-rs/core/src/tools/js_repl/mod.rs b/codex-rs/core/src/tools/js_repl/mod.rs index beb2930b2..0cfbd2a60 100644 --- a/codex-rs/core/src/tools/js_repl/mod.rs +++ b/codex-rs/core/src/tools/js_repl/mod.rs @@ -31,7 +31,6 @@ use tracing::trace; use tracing::warn; use uuid::Uuid; -use crate::client_common::tools::ToolSpec; use crate::codex::Session; use crate::codex::TurnContext; use crate::exec::ExecCapturePolicy; @@ -46,6 +45,7 @@ use codex_sandboxing::SandboxCommand; use codex_sandboxing::SandboxManager; use codex_sandboxing::SandboxTransformRequest; use codex_sandboxing::SandboxablePreference; +use codex_tools::ToolSpec; use codex_utils_output_truncation::TruncationPolicy; use codex_utils_output_truncation::truncate_text; diff --git a/codex-rs/core/src/tools/parallel.rs b/codex-rs/core/src/tools/parallel.rs index 0cc0989fb..dbcf4f639 100644 --- a/codex-rs/core/src/tools/parallel.rs +++ b/codex-rs/core/src/tools/parallel.rs @@ -9,7 +9,6 @@ use tracing::Instrument; use tracing::instrument; use tracing::trace_span; -use crate::client_common::tools::ToolSpec; use crate::codex::Session; use crate::codex::TurnContext; use crate::error::CodexErr; @@ -22,6 +21,7 @@ use crate::tools::router::ToolCall; use crate::tools::router::ToolCallSource; use crate::tools::router::ToolRouter; use codex_protocol::models::ResponseInputItem; +use codex_tools::ToolSpec; #[derive(Clone)] pub(crate) struct ToolCallRuntime { diff --git a/codex-rs/core/src/tools/registry.rs b/codex-rs/core/src/tools/registry.rs index 0e77caac7..6cacfd27a 100644 --- a/codex-rs/core/src/tools/registry.rs +++ b/codex-rs/core/src/tools/registry.rs @@ -3,7 +3,6 @@ use std::sync::Arc; use std::time::Duration; use std::time::Instant; -use crate::client_common::tools::ToolSpec; use crate::function_tool::FunctionCallError; use crate::hook_runtime::record_additional_contexts; use crate::hook_runtime::run_post_tool_use_hooks; @@ -25,6 +24,7 @@ use codex_hooks::HookToolInputLocalShell; use codex_hooks::HookToolKind; use codex_protocol::models::ResponseInputItem; use codex_tools::ConfiguredToolSpec; +use codex_tools::ToolSpec; use codex_utils_readiness::Readiness; use serde_json::Value; use tracing::warn; diff --git a/codex-rs/core/src/tools/router.rs b/codex-rs/core/src/tools/router.rs index 646c1d138..8bc8b5fce 100644 --- a/codex-rs/core/src/tools/router.rs +++ b/codex-rs/core/src/tools/router.rs @@ -1,4 +1,3 @@ -use crate::client_common::tools::ToolSpec; use crate::codex::Session; use crate::codex::TurnContext; use crate::function_tool::FunctionCallError; @@ -18,6 +17,7 @@ use codex_protocol::models::SearchToolCallParams; use codex_protocol::models::ShellToolCallParams; use codex_tools::ConfiguredToolSpec; use codex_tools::DiscoverableTool; +use codex_tools::ToolSpec; use rmcp::model::Tool; use std::collections::HashMap; use std::sync::Arc; diff --git a/codex-rs/core/src/tools/spec.rs b/codex-rs/core/src/tools/spec.rs index 9e4f4cf40..7ba1b0aee 100644 --- a/codex-rs/core/src/tools/spec.rs +++ b/codex-rs/core/src/tools/spec.rs @@ -1,4 +1,3 @@ -use crate::client_common::tools::ToolSpec; use crate::mcp::CODEX_APPS_MCP_SERVER_NAME; use crate::mcp_connection_manager::ToolInfo; use crate::shell::Shell; @@ -24,6 +23,7 @@ use codex_tools::DiscoverableTool; use codex_tools::ShellToolOptions; use codex_tools::SpawnAgentToolOptions; use codex_tools::ToolSearchAppSource; +use codex_tools::ToolSpec; use codex_tools::ToolUserShellType; use codex_tools::ViewImageToolOptions; use codex_tools::WaitAgentTimeoutOptions;