工作区编辑器
不只是 AI 终端——智码 AICoder 内置了一套轻量代码工作区:文件树、带语法高亮的编辑器、代码大纲、Git 面板、终端和预览浏览器,让你在与 AI 协作的同时直接查看和修改代码,无需来回切换到外部 IDE。
工作区视图布局
工作区把一个项目目录的常用操作集中到一个视图里:
┌──────────┬───────────────────────────┬──────────┐
│ 文件树 │ 代码编辑器 │ 大纲 │
│ │ (语法高亮 + One Dark) │(符号导航)│
│ src/ │ │ │
│ ├ App │ 1 import ... │ ▸ 类 Foo │
│ ├ lib/ │ 2 function foo() { │ · 方法 │
│ └ ... │ 3 ... │ │
├──────────┴───────────────────────────┴──────────┤
│ Git 面板 / 内置终端 / 预览浏览器(可切换) │
└─────────────────────────────────────────────────┘本地项目和远程主机上的项目都能用同一套工作区界面操作。
内嵌到主窗口右侧(v5.2.0+)
工作区早期只能弹独立窗口——想看一眼文件树或改动清单就得切窗口,切回来还得重新找会话。现在它也能嵌在主窗口右边,跟终端并排。
- 常驻活动条 — 主窗右缘一条 40px 的窄栏,五个视图一键切换:项目文件、变更、分支、终端、远程文件
- 可拖宽面板 — 拖分隔条调宽度(280–720px);双击分隔条还原该视图的默认宽度(终端和远程文件天然需要更宽,各有各的舒适值)
- 随时弹出独立窗口 — 活动条上有按钮,需要大屏细看时一键弹出
- 点文件直接打开 — 内嵌栏没有编辑器,点文件会把路径带到工作区窗口并直接定位到那个文件
终端视图切走了也不会断
切到「变更」再切回「终端」,之前跑着的命令还在——终端视图一旦挂载就常驻,只是切换可见性,不会被卸载重开 shell。
本地工作区下「远程文件」按钮是置灰而不是隐藏,这样你能知道有这个能力、切到远程主机就能用。
另外还有一个悬浮终端窗:在项目目录拉起一个置顶小窗跑系统 shell,适合「边看终端边操作主窗口」,弹出后不受内嵌栏开合影响。
文件树
左侧文件树展示项目目录结构,支持完整的文件操作:
| 操作 | 方式 |
|---|---|
| 展开 / 折叠目录 | 点击目录行(chevron 图标居中对齐) |
| 新建文件 / 文件夹 | 右键菜单 → 新建 |
| 重命名 | 右键菜单 → 重命名 |
| 删除 | 右键菜单 → 删除 |
| 把文件作为 AI 上下文 | 右键菜单 → 加入上下文 |
| 长文件名查看 | 支持横向滚动,不截断 |
文件树针对深层目录和长文件名做了优化,配合横向滚动,再深的路径也能完整浏览。
代码编辑器
点击文件在中间区域打开,编辑器基于 CodeMirror,采用 One Dark 暗色主题:
语法高亮
覆盖常见语言:
| 类别 | 语言 |
|---|---|
| 前端 | JavaScript / TypeScript、HTML、CSS、Vue 单文件组件 |
| 后端 | Rust、Python、Java |
| 数据 / 配置 | JSON、YAML、XML |
| 文档 | Markdown |
Vue 单文件组件(v5.2.0+)
打开 .vue 文件时补全能认识你这个项目:
- 项目内组件 — 敲
<MyTa能补出项目里定义的组件 - 组件的 props — 敲
<MyTable :co能补出该组件声明过的 props - Vue 指令 —
v-if/v-for/@click/:prop这些都在补全里 <style lang="scss">— scss / less / postcss 的样式块正常高亮(此前会整块退化成纯文本)
关于缩进语法
.sass 与 stylus 这类缩进语法不接——它们和 CSS 差别太大,硬套 CSS 解析器的结果比纯文本还糟。
代码大纲
右侧大纲面板从当前文件提取符号结构(类、函数、方法等),点击可快速跳转到对应位置,适合在长文件里导航。
Git 面板
针对当前工作区目录的 Git 仓库,提供图形化操作:
| 功能 | 说明 |
|---|---|
| 状态 | 查看已修改 / 已暂存 / 未跟踪文件 |
| Diff | 逐文件查看改动内容(编辑器风格的差异视图),已删除的文件也能看 |
| 提交 | 暂存改动并填写提交信息提交 |
| 分支 | 查看 / 切换分支 |
远程工作区下,这些操作通过 SSH 作用于远端仓库。
构建面板(Maven,v5.2.0+)
Java 项目在内嵌栏里多一个「构建」视图,对标 IDEA 的 Maven 工具窗:
| 分区 | 内容 |
|---|---|
| 生命周期 | clean / validate / compile / test / package / verify / install / site / deploy 九项,点一下就在隔壁终端跑 |
| 依赖 | 刷新依赖树 |
| Profiles | 列出 pom 里定义的 profile |
| 模块 | 多模块项目的子模块清单 |
| 可启动 | 识别出的可运行入口(Spring Boot 主类等),一键启动 |
打开面板不会跑任何 Maven 命令
只读 pom、查一次 mvn 路径,都是毫秒级。dependency:tree 这类真要跑 Maven 的操作一律点了才触发——"打开项目就自动同步依赖"是 IDEA 挨骂最多的点,这里不学。
Maven wrapper(mvnw)、多模块递归、父子去重这些都已经处理好,与侧边栏的任务启动共用同一套项目扫描结果。
内置终端
工作区底部内置终端,与主会话终端独立,方便在不打断 AI 会话的情况下手动跑命令:
- 路径可点击:终端输出里的文件路径会被识别为链接,点击直接在编辑器中打开
- 远端 tmux:远程工作区的终端基于 tmux,开启了鼠标支持,滚轮可向上翻阅历史输出
- 其它面板能往它发命令:构建面板点「package」、任务面板点启动,命令都会送进这个终端执行,不再另开一个
预览浏览器
对于跑着本地开发服务器的前端项目,工作区可内嵌一个预览浏览器窗口,边改代码边看效果,无需切到外部浏览器。
本地与远程一致
工作区编辑器的所有能力——文件树、编辑器、大纲、Git、终端——在本地工作区和远程 SSH 工作区下表现一致。切换到远程工作区后,操作的就是远端主机上的文件和仓库。
相关章节
- 远程 SSH 工作区 — 在远端服务器上使用工作区编辑器
- 多标签会话管理 — 工作区与 AI 会话的协作
- 代码片段 — 常用代码与提示词的快速插入
