Files
MyAiDesk/nomifun-tauri/crates/backend/nomifun-gateway/Cargo.toml
T
freedak f7a720204a Update: 将子项目从 submodule 转为完整内容
- 移除 GovAI, nomifun-tauri, 算力盒子 的 submodule 引用
- 添加所有子项目的完整源代码
- 保留原始 .git 为 .git.bak 备份
2026-07-04 19:20:46 +08:00

69 lines
3.4 KiB
TOML
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
[package]
name = "nomifun-gateway"
version.workspace = true
edition.workspace = true
license.workspace = true
repository.workspace = true
[features]
# P3-GW1 路线 A:网关浏览器工具(per-companion BrowserTool registry)。门控因为它拉入
# `nomi-browser`(→ chromiumoxide CDP 栈 + 受管 Chromium)——无浏览器的 headless 宿主不应被迫依赖。
# 由 `nomifun-app` 的同名 feature 经 `nomifun-gateway/browser-use` 向下传导;关时网关不暴露
# nomi_browser_* 工具(dispatch 走 unknown toolschema 不注册)。依赖方向:gateway → nomi-browser
# nomi-browser 不反依赖 gateway,已核对无环)。
browser-use = ["dep:nomi-browser", "dep:nomi-types", "dep:nomi-config", "dep:nomi-tools", "dep:nomifun-secret", "dep:futures"]
# Gateway computer-use tools (single shared desktop ComputerTool). Forwarded by
# `nomifun-app`'s `computer-use` feature via `nomifun-gateway/computer-use`; off
# on headless/web hosts (which never pull the native screen/input/UIA stack).
# Reuses the optional nomi-types/-config/-tools deps shared with browser-use.
computer-use = ["dep:nomi-computer", "dep:nomi-types", "dep:nomi-config", "dep:nomi-tools"]
[dependencies]
nomifun-common.workspace = true
nomifun-api-types.workspace = true
nomifun-conversation.workspace = true
nomifun-cron.workspace = true
nomifun-requirement.workspace = true
nomifun-companion.workspace = true
nomifun-ai-agent.workspace = true
nomifun-db.workspace = true
nomifun-terminal.workspace = true
nomifun-idmm.workspace = true
nomifun-knowledge.workspace = true
# System domain capabilities (settings / client preferences / providers / model fetch).
nomifun-system.workspace = true
# Channel domain capabilities (IM bot plugins / pairing / users / companion binding).
nomifun-channel.workspace = true
# Filesystem + shell-open domain capabilities.
nomifun-file.workspace = true
nomifun-shell.workspace = true
# MCP-server + extensions/hub/skills domain capabilities.
nomifun-mcp.workspace = true
nomifun-extension.workspace = true
# P3-GW1: per-companion BrowserTool registry(路线 A)。optional + feature 门控,关时不拉浏览器栈。
nomi-browser = { workspace = true, optional = true }
# Computer-use: shared desktop ComputerTool. optional + feature 门控,关时不拉 screen/input/UIA 栈。
nomi-computer = { workspace = true, optional = true }
# P3-X2: per-pet secret vault path resolver for gateway-driven secret:NAME (browser-use only).
nomifun-secret = { workspace = true, optional = true }
nomi-types = { workspace = true, optional = true }
nomi-config = { workspace = true, optional = true }
# `Tool` traitexecute/category)——facade BrowserTool 实现它,registry 经它驱动动作。
nomi-tools = { workspace = true, optional = true }
# CC: BrowserRegistry::execute_parallel 用 futures::future::join_all 并行多 key(异 key 真并发/同 key 串行)。
futures = { workspace = true, optional = true }
axum.workspace = true
tokio.workspace = true
serde.workspace = true
serde_json.workspace = true
# Capability registry: single-source JSON Schema generation from each capability's
# typed Request struct (same schemars major as rmcp 1.7 re-exports → identical shape
# for the MCP clients consuming tools/list). The bridge passes these schema maps
# straight through to `rmcp::model::Tool`, so only the gateway needs schemars.
schemars = "1"
tracing.workspace = true
dirs.workspace = true
[dev-dependencies]
reqwest.workspace = true