新增: u-claw 集成

This commit is contained in:
lxy
2026-10-05 14:59:11 +08:00
parent d4d3a8deaf
commit 7c76ee6a60
21 changed files with 835 additions and 4 deletions
+15 -2
View File
@@ -7,6 +7,7 @@ mod mcp;
// 本地工具代理统一网关:内嵌 axum 监听 127.0.0.1:8899,路由到 mysql/ssh/mongo/redis 4 代理端口
mod local_proxy_gateway;
mod tray;
mod feishu_channel;
use tauri::{Emitter, Listener, Manager};
// UX-P2 走查⑥:首次关窗托盘化提示走 OS 系统通知(应用内气泡窗口即隐看不见),需 NotificationExt
@@ -95,6 +96,9 @@ pub fn run() {
// setup 阶段回注进程级 OnceLock(重复注入忽略,首次生效)。
crate::commands::ai::tools::spawn_agent::init_app_handle(app.handle().clone());
// 飞书直连渠道:配置启用时起长连接(读 feishu-config;未配置/disabled 静默跳过)
feishu_channel::start_if_enabled(app.handle().clone());
// ── Phase3: 内嵌 HTTP MCP server + 托盘常驻 + 单实例 ──
// 1) MCP 运行时状态:先 manage 初始 running=false,spawn 绑定成功后更新为 true。
// mcp_get_status IPC 经 State<Mutex<McpStatus>> 读取,spawn 内写锁同步。
@@ -225,8 +229,15 @@ pub fn run() {
.await
.filter(|s| !s.is_empty())
.unwrap_or_else(|| "ws://localhost:8080/ws/device".to_string());
// token:固定常量(三端同源,对齐 df-relay relay.rs:37 DEFAULT_TOKEN)
let token = "devflow-relay-default-token".to_string();
// token:KV 取,无则回退默认常量(三端同源,对齐 df-relay relay.rs:37 DEFAULT_TOKEN)。
// 2026-10-05 配置化(原硬编码):relay 部署改 token 后桌面端无需重编译,
// 前端高级-连接面板(或 settings KV)写 relay_token 即生效。
let token = state
.settings
.get_string_norm("relay_token")
.await
.filter(|s| !s.is_empty())
.unwrap_or_else(|| "devflow-relay-default-token".to_string());
// subscriber task:subscribe ai_event_bus → tunnel.send_raw_event 透传 miniapp
// 治本:先查 is_connected()(AtomicBool 无锁读),未连接时静默丢弃事件,
@@ -357,6 +368,8 @@ pub fn run() {
commands::project::update_project,
commands::project::delete_project,
commands::project::list_deleted_projects,
commands::project::archive_project,
commands::project::list_archived_projects,
commands::project::restore_project,
commands::project::purge_project,
commands::project::scan_project_stack,