mirror of
https://github.com/openai/codex.git
synced 2026-10-23 18:08:45 +00:00
## What changed
- Add the default-disabled `code_mode_tool_search` feature to expose `await tools.tool_search({query: "...", limit: 8})` in code mode when the model supports tool search.
- Return BM25-ranked deferred tools as `{tools: [{name, description}]}`, including callable names and TypeScript declarations for use in later code cells.
- Filter results through the current step's nested-tool policy before applying the limit, preserving namespace restrictions, normalized identities, description prefixes, and schema budgets.
- Add ranked-search guidance while retaining `ALL_TOOLS` catalog discovery and description overrides.
## Testing
Add coverage for feature and model-capability gating, namespace restrictions, argument validation, schema budgets, and discovery followed by deferred MCP and dynamic tool calls. Extend the scenario snapshot to cover search, invocation, yielding, and completion through `wait`.
GitOrigin-RevId: 092a29dd5f0773c518f53a001b9cafb917422f13
56 lines
2.0 KiB
Rust
56 lines
2.0 KiB
Rust
mod description;
|
|
pub mod grpc;
|
|
pub mod host;
|
|
mod json_schema_types;
|
|
mod response;
|
|
mod runtime;
|
|
mod session;
|
|
|
|
pub use description::CODE_MODE_PRAGMA_PREFIX;
|
|
pub use description::CodeModeToolKind;
|
|
pub use description::DeferredToolDiscovery;
|
|
pub use description::EnabledToolMetadata;
|
|
pub use description::ImageDetailVisibility;
|
|
pub use description::TOOL_SEARCH_GUIDANCE;
|
|
pub use description::ToolDefinition;
|
|
pub use description::ToolNamespaceDescription;
|
|
pub use description::augment_tool_definition;
|
|
pub use description::build_exec_tool_description;
|
|
pub use description::build_wait_tool_description;
|
|
pub use description::enabled_tool_metadata;
|
|
pub use description::is_code_mode_nested_tool;
|
|
pub use description::normalize_code_mode_identifier;
|
|
pub use description::parse_exec_source;
|
|
pub use description::render_code_mode_sample;
|
|
pub use json_schema_types::DEFAULT_INPUT_SCHEMA_MAX_BYTES;
|
|
pub use json_schema_types::render_json_schema_to_typescript;
|
|
pub use response::DEFAULT_IMAGE_DETAIL;
|
|
pub use response::FunctionCallOutputContentItem;
|
|
pub use response::ImageDetail;
|
|
pub use runtime::CodeModeNestedToolCall;
|
|
pub use runtime::DEFAULT_EXEC_YIELD_TIME_MS;
|
|
pub use runtime::DEFAULT_MAX_OUTPUT_TOKENS_PER_EXEC_CALL;
|
|
pub use runtime::DEFAULT_WAIT_YIELD_TIME_MS;
|
|
pub use runtime::ExecuteRequest;
|
|
pub use runtime::ExecuteToPendingOutcome;
|
|
pub use runtime::MissingCodeModeHostDuration;
|
|
pub use runtime::RuntimeResponse;
|
|
pub use runtime::WaitOutcome;
|
|
pub use runtime::WaitRequest;
|
|
pub use runtime::WaitToPendingOutcome;
|
|
pub use runtime::WaitToPendingRequest;
|
|
pub use session::CellId;
|
|
pub use session::CodeModeSession;
|
|
pub use session::CodeModeSessionCellExecutionLimits;
|
|
pub use session::CodeModeSessionDelegate;
|
|
pub use session::CodeModeSessionProvider;
|
|
pub use session::CodeModeSessionProviderFuture;
|
|
pub use session::CodeModeSessionResultFuture;
|
|
pub use session::NoopCodeModeSessionDelegate;
|
|
pub use session::NotificationFuture;
|
|
pub use session::StartedCell;
|
|
pub use session::ToolInvocationFuture;
|
|
|
|
pub const PUBLIC_TOOL_NAME: &str = "exec";
|
|
pub const WAIT_TOOL_NAME: &str = "wait";
|