feat: 为全部 39 个 Rust 源文件添加系统性中文注释
为整个项目添加了详尽的中文文档注释,覆盖所有模块: 入口与架构: - main.rs — 架构图、数据流、4 个关键设计决策 - cli.rs — 所有 CLI 子命令中文化 - Cargo.toml — 每个依赖的作用说明 - channel/mod.rs — 渠道标识设计意图 核心守护进程与消息队列: - daemon.rs — 三消费者架构图、审批流 - queue/* — 公平轮转算法、路由调度架构 LLM 层: - types.rs — Role/Message/ToolCall 等每个字段含义 - provider.rs — Provider trait 设计 + SSE 解析 - conversation.rs — 工具循环流程图、摘要机制 - deepseek.rs — API 请求格式 上下文管理: - context/types.rs — ChatSession 消息生命周期 - context/builder.rs — Token 预算管理策略 - context/tools.rs — MemoryStore 双写策略 工具系统: - tools/mod.rs — 两层元工具架构图 - tools/approval.rs — 审批流程 - tools/definitions.rs — 声明式工具三要素 - tools/subprocess.rs — 执行流程 + 缓存策略 数据库与状态: - db/* — 5 张表用途、回退策略 - state.rs — 文件存储回退方案 - scheduler.rs — SKIP LOCKED 防重复 已废弃模块: - ipc.rs — 旧 UDS 协议 - worker.rs — 旧 vs 新架构对比
This commit is contained in:
+23
-4
@@ -3,7 +3,10 @@ use std::future::Future;
|
||||
use std::pin::Pin;
|
||||
use std::sync::Arc;
|
||||
|
||||
// ─── 风险等级 ───
|
||||
/// ## 风险等级 —— 工具的安全级别
|
||||
///
|
||||
/// * `Low` — 低风险,直接执行(如天气查询、日期时间)
|
||||
/// * `High` — 高风险,需要用户输入确认码审批(如写备忘录、发消息)
|
||||
|
||||
#[derive(Debug, Clone, PartialEq, Deserialize)]
|
||||
#[serde(rename_all = "lowercase")]
|
||||
@@ -14,7 +17,14 @@ pub enum RiskLevel {
|
||||
|
||||
impl RiskLevel {}
|
||||
|
||||
// ─── 工具元数据 ───
|
||||
/// ## 工具元数据(SkillSpec)—— 工具的自描述信息
|
||||
///
|
||||
/// 用于给 LLM 展示"有什么工具可用、怎么用"。
|
||||
/// * `name` — 工具名称
|
||||
/// * `description` — 工具描述
|
||||
/// * `risk_level` — 风险等级(Low/High)
|
||||
/// * `parameters` — JSON Schema 格式的参数定义
|
||||
/// * `timeout_secs` — 执行超时时间
|
||||
|
||||
#[derive(Debug, Clone, Deserialize)]
|
||||
pub struct SkillSpec {
|
||||
@@ -36,7 +46,11 @@ fn default_timeout() -> u64 {
|
||||
30
|
||||
}
|
||||
|
||||
// ─── 工具执行结果 ───
|
||||
/// ## 工具执行结果
|
||||
///
|
||||
/// * `success` — 执行是否成功
|
||||
/// * `output` — 可读的输出文本(将返回给 LLM)
|
||||
/// * `data` — 结构化数据(可选),用于后续处理
|
||||
|
||||
#[derive(Debug, Clone, Serialize)]
|
||||
pub struct SkillResult {
|
||||
@@ -89,7 +103,12 @@ impl SkillResult {
|
||||
}
|
||||
}
|
||||
|
||||
// ─── 执行上下文 ───
|
||||
/// ## 执行上下文 —— 工具执行时需要的环境信息
|
||||
///
|
||||
/// 当工具在 daemon 上下文中执行时,携带以下信息:
|
||||
/// * `user_id` — 触发工具的用户
|
||||
/// * `approval_manager` — 审批管理器(高风险工具需要)
|
||||
/// * `send_wechat` — 微信发送回调(用于向用户发送审批提示)
|
||||
|
||||
pub type WechatSender = Arc<
|
||||
dyn Fn(&str, &str) -> Pin<Box<dyn Future<Output = Result<(), String>> + Send>> + Send + Sync,
|
||||
|
||||
Reference in New Issue
Block a user