# dsh-subagent-flowtext [English](README.md) `dsh-subagent-flowtext` 为 DeepSeek Harness 注册唯一的 `flowtext-direct / flowtext-agent` 路由。DSH 只接收用户指令,显示脱敏的精简执行轨迹并记录最终答案;分类、规划、查找、读取、写入、工具执行、追问、审批及收尾全部由 Obsidian FlowText Agent 完成。 本插件不注册 `SubagentProvider`,不提供 `subagent_flowtext`,也不安装 `tool-subagent-flowtext`。 ## 环境要求 - Node.js `^22.19.0` 或 `>=24` - DeepSeek Harness - Obsidian 桌面端已启用 FlowText Agent Gateway ## 安装 ```sh dsh plugin --profile web add github:ytmaps/dsh-subagent-flowtext ``` 安装包自带 `cordis.patch.yml`,只创建一个 Cordis 条目: ```yaml - id: flowtext-direct name: dsh-subagent-flowtext ``` 无需环境变量、复制 Token 或手工编辑 Profile。首次提交任务时,FlowText 会显示本机连接确认;允许一次后,凭据保存在 DSH 本地凭据目录中并自动复用。 升级前若安装过 `0.4.x` 或更早版本,请先删除旧包再重新添加,以清除旧版产生的 `subagent-flowtext` 和 `tool-subagent-flowtext` 配置条目。 ## 运行方式 - 插件固定把 DSH Agent 请求路由到 `flowtext-direct / flowtext-agent`。 - 只发送最新一条真实用户消息和 DSH `sessionId`。 - 不向 FlowText 发送 DSH 系统提示、工具目录、助手历史或插件上下文。 - 相同 DSH `sessionId` 复用同一个 FlowText 会话;不同 DSH 会话仍独立保存,但会优先复用已打开的空闲 Agent 面板。 - FlowText UI 显示完整执行过程;DSH 通过可折叠的 reasoning 区域实时显示脱敏执行摘要。 - 轨迹不会生成 DSH 工具调用,DSH 不会重复执行 FlowText 工具。 - FlowText UI 中的追问和危险操作审批会暂停 DSH,直到用户完成交互。 - 适配器禁用 DSH 模型重试,避免包含写操作的任务被重复执行。 ## 配置 | 字段 | 默认值 | 含义 | |---|---:|---| | `baseUrl` | `http://127.0.0.1:27124/flowtext-agent/v1` | FlowText Gateway 地址,只允许本机 HTTP。 | | `autoPair` | `true` | 无本机凭据时自动请求 FlowText 授权。 | | `credentialPath` | DSH 凭据目录 | 可选凭据文件路径。 | | `clientName` | `DeepSeek Harness` | FlowText 配对框显示名称。 | | `clientId` | `deepseek-harness` | 稳定客户端标识。 | | `modelId` | 未设置 | 可选 FlowText 模型。 | | `activePath` | 未设置 | 可选库内活动笔记路径。 | | `contextPaths` | `[]` | 可选库内上下文路径。 | | `policy` | `{}` | 请求权限;FlowText 前台策略仍是最终权限来源。 | | `runOptions` | `{}` | `thinkingEnabled` 等 FlowText 运行参数。 | | `requestTimeoutMs` | `30000` | 普通 HTTP 请求超时。 | | `longPollMs` | `25000` | Gateway 事件长轮询时间。 | | `maxResponseBytes` | `2097152` | Gateway 响应上限。 | | `maxPromptBytes` | `1048576` | 用户指令上限。 | | `maxAnswerBytes` | `1048576` | 最终答案上限。 | | `progressMode` | `summary` | `summary` 实时显示脱敏执行轨迹;`off` 仅显示最终答案。 | ## 安全边界 Gateway 只接受回环地址,自动配对拒绝浏览器来源并要求用户在 Obsidian 明确允许。凭据不会写入 Profile、仓库、Shell 历史或模型上下文。父请求取消或 DSH 关闭 Run 时,插件会取消对应的 FlowText 任务。 目前只支持文本指令和文本最终答案;图片及结构化输出不会从 DSH 转发。