无极开物Docs
代码编写与审查

文件与编辑器

可在任意客户端浏览、搜索、上传、预览和编辑会话工作区中的文件。

会话挂载在你某台设备上的某个文件夹中,无极开物(Kaiwu)会直接向你呈现该文件夹——既不是副本,也不是智能体生成的摘要。你可以在不离开会话的情况下,直接查看智能体正在处理的内容、亲手修改错别字、将截图放入代码仓库,或者打开它刚刚提及的文件。

浏览和预览文件是普通会话界面的一部分。内嵌编辑器是 Settings → Features → Embedded file editor 下的一个开关项,默认开启。部分操作需要运行该会话的设备处于可访问状态;不过,即使会话处于未激活状态,只要该设备仍在线,Kaiwu 依然能通过设备级工作区 API 加载文件数据。

功能入口

桌面端布局:侧边栏 + 详情面板

工作区界面围绕两个相辅相成的面板进行设计:

  • 右侧边栏:快速导航、树状结构/状态浏览、分支概览、已修改文件列表以及历史记录列表
  • 详情面板:对当前打开的项开展深度工作

典型工作流:

  1. 在右侧边栏中打开 Files 或 Git。
  2. 点击某个项,在详情面板中将其打开。
  3. 可将该项作为临时预览标签页保留,也可将其固定,以便在查看其他文件时保持打开状态。

详情标签页

详情面板支持多个标签页,可用于:

  • 文件预览
  • 可编辑文件
  • 审查标签页
  • 历史提交 diff
  • 贮藏(stash)详情

重要特性:

  • 标签页在相互切换时会保留各自的本地状态。
  • 切回标签页时,滚动位置依然保持。
  • 一旦开始编辑文件,Kaiwu 会保留该编辑状态,而不会在每次切换标签页时重新加载。
  • 被固定的标签页会一直保持打开,直至你主动将其关闭。
  • 在较小的界面布局下,详情面板可以切换为浮层/对焦模式,避免挤占主会话区域的空间。

对焦 / 全屏模式

详情面板包含对焦模式,方便你临时隐藏左侧会话区域,为当前的审查或编辑工作留出更大空间。

这在以下场景非常实用:

  • 审查大型 diff
  • 与 Git 侧边栏并排编辑文件
  • 在小屏笔记本或较小的浏览器窗口中工作

在手机尺寸的布局下,这些面板会收纳在移动端 Cockpit 中,并为 Files 和 Git 提供独立的标签页。

文件(Files)

Files 标签页是当前工作区的会话内文件管理器。

支持的操作

  • 浏览仓库目录树。
  • 在当前工作区中搜索文件。
  • 创建文件和文件夹。
  • 将文件上传至工作区。
  • 选择明确的上传目标路径(若不希望上传至项目根目录)。
  • 重命名及删除文件或文件夹。
  • 下载单个文件。
  • 将文件夹下载为 .zip。
  • 将单个文件下载为 .zip(若你需要与文件夹下载保持归档格式的一致性)。
  • 以预览或编辑模式打开文件。
  • 筛选目录树,仅显示已修改的文件。
  • 查看传输进度,并可随时取消正在进行的上传或下载。

无论你是从文件树、已修改文件列表行、审查 diff、会话记录中的文件链接、审查评论跳转链接,还是从输入框(composer)中的关联文件标签打开文件,都会复用同一个详情面板来展示。

目录树列表行与状态角标

文件树具备代码仓库感知能力。

在获取到版本控制数据时,Kaiwu 可以显示:

  • 已修改 / 新增 / 删除角标
  • 行数变更汇总(例如新增行数 / 删除行数)
  • 由子项聚合而成的文件夹层级变更汇总

这样你无需离开 Files 标签页,就能轻量直观地获知“这里改动了什么”。

长路径经过了格式化处理,以确保文件名清晰易读。在 Web 端,对于层级很深的目录采用了前段省略处理,在文件名被挤压前会优先缩短长路径的左侧部分。

搜索与“仅显示已修改”筛选

如果你大致明确目标,可直接使用 Files 的搜索框。

如果你希望文件树更聚焦于变动,表现更像一个“已修改文件”浏览器,可以使用“仅显示已修改”筛选。

常见使用场景:

  • 将大型仓库的展示范围收窄至当前任务涉及的文件
  • 按名称查找配置文件,并直接跳转至编辑器
  • 仅浏览已修改的文件,同时保留目录层级上下文

创建文件与文件夹

Files 工具栏提供了创建以下内容的快捷操作:

  • 新建文件
  • 新建文件夹

这些操作旨在方便你在不离开会话的前提下,对工作区进行轻量级修改。

上传

Kaiwu 支持多种上传方式:

  • 通过 Files 工具栏上传文件
  • 在 Web 端上传文件夹
  • 在 Web 端拖拽文件或文件夹
  • 拖拽至指定目录以直接上传到该目录中
  • 上传文件夹或嵌套目录树时保留相对目录结构

平台说明:

  • Web 端:支持拖拽、多文件上传及文件夹上传
  • iOS / Android 端:支持文件选择器;文件夹上传仅限 Web 端

如果你的目的是随下一条消息发送文件,而不是将其存入工作区,请改用会话的附件流程。

参阅:附件与图片预览

选择上传目标路径

工具栏的上传菜单中包含目标路径选择器。

  • 若留空,Kaiwu 将默认上传至项目根目录。
  • 若指定工作区相对路径,Kaiwu 会将文件上传至该目标位置,并按需自动创建缺失的父级目录。
  • 拖拽至特定文件夹行时,会覆盖根目录/默认目标路径,直接上传至该文件夹。

常见使用场景:

  • 将生成的资源文件传入 docs/assets
  • 将日志上传至 .project/logs/...
  • 将文件夹直接拖入 src/components

上传冲突处理

当目标路径已存在同名文件时,Kaiwu 会提示你选择批量冲突解决策略:

  • 跳过
  • 替换
  • 保留两者

Keep both 为默认选项。Kaiwu 会自动生成带后缀的新名称,例如 file (1).txt。

传输进度与取消

上传与下载均作为受管传输任务运行,而非触发即不管的操作。

  • 上传或下载进行期间,Kaiwu 会实时显示传输进度。
  • 你可以在传输完成前随时取消。
  • 文件夹 .zip 下载会先打包生成,随后分块流式传输返回。
  • 无论是直接文件预览、文件下载、文件夹下载,还是审查/diff 的加载,处理会话工作区数据时均走同一条传输与解密路径。

平台说明:

  • Web 端:下载遵循浏览器原生的下载流程。
  • iOS / Android 端:下载内容会先写入本地临时文件,再交由系统的分享/打开流程处理。

重命名、删除与下载

每个目录树行都提供了操作菜单。

对于文件,支持的操作包括:

  • 重命名
  • 删除
  • 下载
  • 下载为 .zip
  • 复制路径

对于目录,支持的操作包括:

  • 重命名
  • 删除
  • 下载为 .zip
  • 复制路径

删除目录需要明确确认,且会递归删除其下所有内容。

文件预览与编辑

从 Files 标签页或审查(Review)中打开文件,均会在详情面板中呈现。

根据文件类型,Kaiwu 可以展示:

  • 文本预览
  • 实时编辑器
  • 图片预览
  • 不适合内嵌渲染时的二进制文件占位提示

图片与二进制文件处理

Kaiwu 现已将图片预览纳为一等支持的工作流:

  • 常见光栅图像均可直接在内嵌视图中预览
  • SVG 文件同样支持预览,而不会被当作不透明的二进制文件
  • 真正的二进制文件受到安全保护,不会尝试走文本 diff 渲染管线

如果某个文件没有文本形式的 diff(例如图片或二进制数据块),Kaiwu 会避免 diff 渲染器崩溃,而是回退到正确的预览或占位呈现逻辑。

编辑行为

编辑器的设计初衷是提供真正编辑器的体验,而非一次性的简易预览:

  • 切换标签页不会丢失正在进行的编辑
  • 打开其他文件不会替换已固定的编辑器标签页
  • 重新打开同一标签页会恢复离开时的状态

这在以下场景尤为重要:

  • 在编辑某个文件的同时比对两个文件
  • 在 Review 与编辑器标签页之间频繁切换
  • 切换至其他会话后再返回

文件详情操作栏

文件详情共用一个操作栏,涵盖预览、diff、编辑、提交选择以及还原操作。

根据文件及仓库状态,操作栏可包含:

  • 文件/diff 视图下拉菜单
  • 待定(pending)/已包含(included)/合并(combined)diff 下拉菜单
  • 编辑操作
  • 选择以提交或从选择中移除
  • 选定行操作(在支持行级选择时)
  • 还原操作(当文件可以安全还原时)

在宽屏布局下,路径与操作按钮并列排布在同一行。在窄屏布局下,Kaiwu 会将操作折叠至紧凑的第二行,确保路径、文件名及关键操作均清晰可见。

从会话输入框关联项目文件

会话输入框(composer)包含一个 Link file(关联文件)标签组件。

当你希望随下一条消息附带工作区上下文,又不想手动输入路径时,可以使用此功能。

功能说明

  • 打开一个依附于输入框的弹出面板
  • 复用与文件侧边栏相同的仓库/文件浏览模型
  • 允许你直接在当前工作区中搜索并选取项目文件

这在输入如下提示词时非常有用:

  • “解释这个文件为什么会变动”
  • “重构我关联的这些文件”
  • “对比这两个文件”

在受支持的环境中,你还可以在输入框中使用 @ 风格的文件搜索。其目的相同:快速附带相关的工作区上下文。

从会话记录中打开工作区文件链接

当助手的回复包含指向当前工作区内文件的 Markdown 链接时,Kaiwu 可将其转换为应用内文件跳转,避免跳转至失效的浏览器 URL。

支持的链接格式包括:

  • 工作区相对链接,如 src/index.ts
  • 带有行号和列号后缀的链接,如 src/index.ts:12 或 src/index.ts:12:4
  • 工作区内的本地绝对路径
  • 工作区内的 file:// URL
  • Web 端回环展开链接,如 http://localhost:18829/Users/alice/project/src/index.ts:12
  • Windows 盘符路径,如 C:\Users\Alice\project\src\index.ts
  • 工作区内的 Windows file:///C:/... 链接以及 UNC 样式的 file URL

Kaiwu 仅会打开解析后位于当前工作区内的链接。工作区以外的链接、目录遍历路径以及非本地回环的任意 http/https URL,均保留为外部链接或在工作区导航中被忽略。

在桌面端,打开工作区文件链接会呼出右侧边栏/详情面板。在手机尺寸的布局下,它会在 Tabs 面板中打开文件,同时保持会话顶栏可见。

限制与安全机制

  • 在相应操作支持的前提下,系统会自动创建缺失的父级目录。
  • 文件预览设有大小上限,文件夹的 zip 打包与下载流程也受到守护进程的大小限制与校验。
  • 文件夹上传仅限 Web 端。

相关内容

© 乾元执中(南京)科技有限公司 · WUJI-Labs

On this page