crabmate 0.4.0

Rust AI agent: OpenAI-compatible chat/completions, function calling, HTTP serve, ops CLI
Documentation
//! CrabMate 内部服务层:工具注册与执行、工作区、MCP、长期记忆等。
//!
//! SSE 控制面协议与运行时已迁至 [`crate::cm_sse_protocol`] 的 `sse` 模块。

pub(crate) use crate::cm_config;
pub(crate) use crate::cm_config as config;
pub(crate) use crate::cm_memory;
pub(crate) use crate::cm_types;
pub(crate) use crate::cm_types as types;

pub mod agent_errors;
pub mod agent_role_turn;
pub mod agent_turn_prep;
pub mod clarification_sse_bridge;
pub mod context_bootstrap;
pub mod dynamic_tools;
pub mod health;
pub mod long_term_memory_tools;
pub mod mcp;
pub mod memory_tool_hosts;
pub mod observability;
pub mod process_handles;
pub mod readonly_tool_ttl_cache;
pub mod request_chrome_trace;
pub mod session_mode_turn;
pub mod terminal_session;
pub mod text_util;
pub mod tool_approval;
pub mod tool_call_explain;
pub mod tool_registry;
pub mod tool_sandbox;
pub mod tool_stats;
pub mod user_data;
pub mod user_message_file_refs;
pub mod web_static_dir;

pub use clarification_sse_bridge::clarification_questionnaire_body_if_tool_ok;
pub use crate::cm_memory::memory;
pub use crate::cm_tools::clarification_questionnaire;
pub use crate::cm_tools::{
    cargo_metadata, github_token, health_dep_compat, project_metrics, read_file_turn_cache, redact,
    text_encoding, tool_result, tools, workspace,
};

pub use process_handles::{ProcessHandles, TurnProcessHandles};

#[cfg(test)]
pub fn reset_process_tool_globals_for_tests() {
    tools::reset_process_tool_globals_for_tests();
}