Skip to content

[Feature Request] 工作区目录树管理、模型一键拉取与独立参数配置,及多任务并行处理(远期规划) #23

Description

@xing6yi

作者您好,

首先感谢您对 FileProvider 方案的快速落地。经过实测,我们发现了两个能显著提升日常使用效率的核心痛点,以及一个可作为远期探索方向的功能设想。现整理如下,供您评估。

一、工作区目录树文件管理(升级为 SAF DocumentsProvider)【强烈建议】

当前痛点

· “分享工作区目录”基于 FileProvider 生成临时 content:// URI,点击后仅弹出系统分享面板(如“保存到夸克”“发送到电脑”等),未提供任何系统文件管理器或可交互的目录树界面。
· 用户无法批量浏览、复制、重命名或删除工作区内的子目录(如 skills/、临时输出),每次操作均需重复分享路径,效率极低。

期望方案
参照 MTDataFilesProvider 及 Android DocumentsProvider 标准:

· 注册继承 DocumentsProvider 的组件,将工作区根目录作为 root 暴露。
· 实现 queryRoots、queryDocument、queryChildDocuments 支持递归浏览,实现 openDocument(读写)、createDocument、deleteDocument、renameDocument 等 CRUD。
· 在“扩展 → Skills”页面将按钮改为“挂载工作区到文件系统”,调用 Intent.ACTION_OPEN_DOCUMENT_TREE 并附加初始 URI,允许用户将其固定到系统文件管理器(如 Android“文件”侧栏或 MT 管理器)中长期使用。

收益:一次挂载,永久访问,像本地目录一样管理。

二、模型配置:一键拉取所有模型,独立参数调整,主界面快速切换【强烈建议】

当前痛点(见“修改模型”界面截图)

· 当前每次仅能配置单个模型 ID,若需添加同一服务端的多个模型(如在openai服务商下 随时切换GPT-5.6 Sol、GPT-5.6 Luna 等),即使供应商相同,仍要反复填写相同的 Base URL 和 API Key,操作重复且易错。
· 虽然已有 /model 命令可在主界面切换模型,但模型列表需手动逐个添加,无法自动批量拉取,配置体验不佳。
· 每个模型无法独立设置上下文窗口、输入/输出模式(文本/图片)、能力开关(工具/推理等),难以针对不同任务精细调优。

期望方案

· 自动拉取模型列表:在“修改模型”或“编辑提供商”页面填写 Base URL 和 API Key 后,增加“拉取模型”按钮,自动调用服务端接口(如 /v1/models)获取所有可用模型 ID,并批量生成模型条目。
· 每个模型独立参数:拉取后,每个模型条目可独立编辑以下参数:
· 输入窗口 / 输出窗口(Token 数)
· 输入模式(文本、图片等复选框)
· 输出模式(文本、图片等复选框)
· 能力开关(工具调用、推理、联网搜索等)
· 主界面快速切换:保留并增强现有 /model 命令,同时在输入框上方或顶部工具栏增加下拉列表,列出所有已配置的模型名称,点击即可实时切换。

收益:大幅减少重复配置,不同任务可快速匹配最优模型与参数。

三、多会话并行处理(远期探索,可暂缓)

说明
软件目前已具备“会话”与“工作区”概念,但任务执行仍为串行模式。此功能实现复杂度较高(涉及任务调度、状态同步、资源隔离等),建议作为中远期规划,不必在当前版本立即实现。若作者认为合适,可后续版本缓慢迭代。

期望方案

· 并行任务队列:允许同一会话或不同会话中的任务异步执行,主界面显示各任务状态(进行中、完成、失败)。
· 后台执行支持:当用户切换会话或离开当前会话时,正在进行的生成/处理任务在后台继续运行,完成后通过通知或状态更新提醒用户。
· 任务管理面板:增加一个统一的任务中心,显示所有会话中的活跃任务,支持暂停、取消、查看日志。
· 资源隔离:每个会话的任务使用独立的模型上下文和内存空间,避免互相干扰。

收益

· 大幅提升多任务场景下的并发效率,减少等待时间。
· 充分发挥软件多工作区的潜力,使工作流更顺畅。

补充说明

· 前两项建议已有成熟的技术路径(DocumentsProvider 标准接口、OpenAI 兼容的模型列表 API),实现风险可控,期望能优先纳入迭代计划。
· 第三项仅为方向性提议,作者可根据项目节奏自由取舍。

本人愿意配合测试或提供更细节的实现参考,若需进一步沟通,随时联系。再次感谢您的辛劳付出!

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions