跳转至

账号、工作区、会话与编辑器

本页介绍登录、工作区、会话、IDE、帮助和退出命令。

分类 命令 用途
账号管理 login、logout 登录或退出账号
工作区管理 workspace 管理运行文件与快照版本
会话管理 session 管理会话及其绑定的工作区
编辑器管理 ide [file] 选择 IDE 或打开项目文件
帮助与退出 help、exit 查看命令或离开当前位置

命令的补全、确认和取消规则见命令体系。

账号管理

login

命令 描述
login 在浏览器中登录账号

执行后,TrisMind 打印登录地址并尝试自动打开浏览器:

project ▸ login
opening  http://127.0.0.1:53128/auth
waiting for browser...

超过 3 秒仍未打开时,可点击终端中的链接,或复制到浏览器。登录完成后,终端显示账号:

successfully logged in as alice@example.com

登录状态在本机保持,切换项目不需要重新登录。已登录时再次执行,只显示当前账号,不重复打开浏览器。

submit、run 和运行中访问远端服务的操作需要登录。登录失败或回调超时见故障排查。

logout

命令 描述
logout 退出当前账号

执行后显示退出的账号:

project ▸ logout
successfully logged out alice@example.com

未登录时显示 not logged in。退出登录不删除项目、工作区、会话或构建产物;本地编辑、校验和构建仍可继续。

工作区管理

工作区是 Agent 运行时读写文件的目录。每个工作区可以创建快照、比较两个版本,并回滚到旧版本。

工作区可以是项目内的子目录,也可以是项目外的独立目录。项目根目录及其上级目录不能作为工作区,避免运行文件覆盖项目源码。

命令 描述 示例
workspace 进入 Workspace ▸ workspace
list 列出工作区、快照和绑定的会话 list
new [path] 新建工作区 new ./workspace/guide
snapshot <workspace_id> [message] 创建快照 snapshot ws_001 before-refactor
diff <workspace_id> [snapshot_a] [snapshot_b] 比较快照或当前内容 diff ws_001 snap_001 snap_002
revert <workspace_id> [snapshot_id] 回滚到指定快照 revert ws_001 snap_002
delete <workspace_id> 删除工作区记录及其会话 delete ws_001
exit 退出工作区管理 exit

除 workspace 外,其余命令在 Workspace ▸ 下输入。需要工作区 id 的命令都支持 Tab 补全。

列出工作区

list 展示每个工作区的路径、创建时间、最后修改时间、文件数量、总大小、全部快照和绑定的会话。

Workspace ▸ list

ws_001  workspace/guide
    field     value
    ────────  ───────────────────
    created   2026-10-24 09:12
    modified  2026-10-24 16:40
    files     18 (2.4 MB)
    snapshots
      id        time              message
      ────────  ────────────────  ─────────────────
      snap_001  2026-10-24 09:15  initial
      snap_002  2026-10-24 13:30  before-refactor
      snap_003  2026-10-24 16:40  final-draft
    sessions
      id        name
      ────────  ──────────
      sess_001  东京三日游
      sess_004  京都攻略

ws_002  workspace/draft
    field     value
    ────────  ───────────────────
    created   2026-10-24 14:30
    modified  2026-10-24 14:30
    files     0 (0 B)
    snapshots
      (none)
    sessions
      (none)
字段 含义
id 其它工作区命令使用的唯一 id
path 工作区目录;项目内目录显示相对路径
created 创建时间
modified 目录内容最近一次变更时间
files 工作区内的文件数量
size 文件总大小
snapshots 快照 id、创建时间和说明
sessions 绑定的会话 id 和名称

list 只读取并显示信息,不修改文件,也不创建快照。

新建工作区

命令 行为
new 打开输入界面,要求填写目录
new [path] 直接使用给出的目录

相对路径从项目根目录开始计算。例如项目位于 ~/agents/travel-guide,输入 new ./workspace/guide 会创建:

~/agents/travel-guide/workspace/guide

绝对路径直接使用原地址,例如:

new /Volumes/project-data/travel-guide

创建前会检查目录是否可写、是否与其它工作区重复、是否会覆盖项目源码。项目源码目录(trismind/、abilities/、skills/、tools/、knowledge/、prompts/、test/、.trismind/)不能作为工作区:

Workspace ▸ new abilities
✗ workspace path must not be the project root, an ancestor, or project source: .../abilities

如果目录已存在且非空,TrisMind 不会直接使用,也不会静默覆盖,而是明确显示将被删除的文件数量和大小:

┌ Create workspace ──────────────────────────────────────┐
│ ./workspace/guide 已包含 12 个文件,共 1.8 MB          │
│                                                       │
│ 继续创建会永久删除这些文件。                           │
│                                                       │
│   Cancel                         Clear and create      │
└───────────────────────────────────────────────────────┘

选择 Clear and create 后,TrisMind 清空目录并创建工作区;选择 Cancel 不修改目录。

成功后显示工作区 id 和路径,并停在 Workspace ▸:

✓ created ws_003
  path workspace/guide
  snapshots (none)

新建工作区本身不创建快照。后续创建会话时,工作区选择器默认停在最近创建的工作区,但仍需用户确认。

创建快照

snapshot <workspace_id> [message] 记录工作区当前的完整文件状态。省略说明时会要求输入说明。

Workspace ▸ snapshot ws_001 before-refactor
successfully created snap_004
workspace  ws_001
message    before-refactor

快照只记录版本,不修改工作区文件。没有快照时,该工作区没有可比较或可回滚的历史。

比较版本

diff 有三种用法:

命令 比较内容
diff <workspace_id> 打开快照选择器,依次选择两个版本
diff <workspace_id> <snapshot_a> 比较该快照与工作区当前内容
diff <workspace_id> <snapshot_a> <snapshot_b> 比较两个快照

选择工作区后,Tab 只显示该工作区的快照 id、时间和说明。省略第二个快照时,“当前内容”指工作区此刻磁盘上的文件,不是一个特殊参数,也不会创建新快照。

输出按文件列出新增、修改、删除和行数变化。diff 不修改任何文件。

工作区没有快照时,命令提示先执行 snapshot <workspace_id>。

回滚

revert <workspace_id> 打开快照选择器;同时给出 <snapshot_id> 时直接选择该快照。快照 id 支持 Tab 补全。

确认界面显示工作区路径、目标快照,以及将被删除的后续快照:

┌ Revert workspace ──────────────────────────────────────┐
│ ws_001 · ./workspace/guide                             │
│ 回滚到 snap_002 · before-refactor                      │
│                                                       │
│ 将永久删除                                             │
│   • 当前未保存的文件改动                               │
│   • snap_003 · final-draft                             │
│   • snap_004 · review-complete                         │
│                                                       │
│   Cancel                              Revert           │
└───────────────────────────────────────────────────────┘

确认后,工作区文件恢复到目标快照;目标之后的快照和当前未保存改动都会删除,无法通过 TrisMind 找回。回滚不修改项目源码,也不删除会话记录。

删除工作区

delete <workspace_id> 支持 Tab 补全。执行后先显示工作区路径、绑定的会话和实际文件是否保留:

Workspace ▸ delete ws_001

┌ Delete workspace ──────────────────────────────────────┐
│ ws_001 · ./workspace/guide                             │
│                                                       │
│ 将删除                                                 │
│   • 工作区记录                                         │
│   • sess_001 · 东京三日游                              │
│   • sess_004 · 京都攻略                                │
│                                                       │
│ 不会删除                                               │
│   • ./workspace/guide 中的实际文件                     │
│                                                       │
│   Cancel                              Delete           │
└───────────────────────────────────────────────────────┘

确认后删除工作区记录及其绑定的会话。工作区目录和文件保留;需要清理磁盘时,在系统中手动删除目录。

退出工作区管理

exit 回到进入 Workspace ▸ 之前的提示符。

会话管理

会话保存一次运行的名称、用户输入、绑定的工作区和产物路径。

命令 描述 示例
session 进入 Session ▸ session
list 列出会话 list
new [name] [--workspace <id>] 新建会话并绑定工作区 new 东京三日游 --workspace ws_001
delete <session_id> 删除会话记录 delete sess_003
exit 退出会话管理 exit

除 session 外,其余命令在 Session ▸ 下输入。

列出会话

list 显示会话 id、名称、绑定的工作区、最后一次用户输入和最后结束时间。

Session ▸ list

  id        name        workspace  modified           last input
  ────────  ──────────  ─────────  ─────────────────  ─────────────────────────
  sess_001  东京三日游  ws_001     2026-10-24 10:15   帮我排一次东京三日游
  sess_002  京都两日游  ws_001     2026-10-24 11:40   换成京都

列表只显示记录,不读取或修改工作区文件。

新建会话

  • 省略 <name>:打开输入界面填写名称。
  • 省略 --workspace:打开工作区选择器,默认停在最近创建的工作区。
  • 给出 --workspace <id>:直接绑定该工作区;id 支持 Tab 补全。

项目没有工作区时,命令停止并提示先进入 Workspace ▸ 执行 new。它不会在会话创建过程中自动创建工作区。

成功后生成形如 sess_001 的唯一 id,显示名称和绑定的工作区,并停在 Session ▸。名称可以重复,后续命令使用唯一 id。绑定关系创建后不能修改;需要更换工作区时,新建一个会话。

删除会话

delete <session_id> 支持 Tab 补全。执行后显示会话名称与绑定的工作区:

Session ▸ delete sess_003

┌ Delete session ────────────────────────────────────────┐
│ sess_003 · 东京三日游                                 │
│ workspace · ws_001                                    │
│                                                       │
│ 只删除会话记录,不删除工作区和其中的文件。             │
│                                                       │
│   Cancel                              Delete           │
└───────────────────────────────────────────────────────┘

确认后删除会话记录。

退出会话管理

exit 回到进入 Session ▸ 之前的提示符。

编辑器管理

ide 不带路径时进入 IDE 管理;带路径时打开文件,并停在原提示符。

命令 描述 示例
ide [file] 进入 IDE 管理,或打开指定文件 ide trismind/config.yaml
status 显示当前 IDE 和连接状态 status
config 选择项目默认 IDE config
exit 退出 IDE 管理 exit

IDE 选择顺序

TrisMind 按以下顺序选择用于打开文件的 IDE:

  1. 用户为当前项目明确选择的 IDE;
  2. VISUAL 环境变量;
  3. EDITOR 环境变量;
  4. 当前已经打开的受支持 IDE;
  5. 系统中已经安装的受支持 IDE。

都不可用时,ide <file> 显示文件的绝对路径,提示手动打开。

打开文件

ide <file> 接受项目内相对路径、绝对路径或文件名,支持 Tab 补全。相对路径从项目根目录开始计算;越出项目目录的路径会被拒绝。

只输入文件名且项目中存在多个同名文件时,TrisMind 打开选择器并列出完整路径。选定后启动 IDE,并保持原提示符。

ide 不带参数只进入 IDE ▸,不会自动打开当前资源的配置文件。

查看与修改 IDE 设置

status 显示当前 IDE、选择来源、其它可用 IDE 和连接状态,不修改设置。

config 打开可用 IDE 的选择器。确认后,TrisMind 记住当前项目在本机的选择;不修改项目源文件,也不随项目提交。

exit 回到进入 IDE ▸ 之前的提示符。

帮助与退出

help

命令 描述
help 显示当前提示符下的命令清单
? 同 help

输出先显示当前提示符,再列出可执行命令。每行左侧是完整签名,右侧是简短说明;终端支持链接时,命令名可以直接打开本手册对应小节。

project ▸ help

project ▸
  help                    显示当前可用命令
  login                   登录账号
  logout                  退出账号
  validate [target]     校验项目或当前资源
  build                   构建提交产物
  submit [options]        提交上架
  ability                 选择或新建 Ability
  ...

清单与真正可执行的命令一致。? 是输入别名,但帮助清单只展示 help,避免重复。

exit

命令 描述
exit 退出当前位置
当前提示符 结果
Ability、Node 或其它资源 回到进入该资源之前的提示符
Workspace ▸、Session ▸、IDE ▸ 回到进入管理位置之前的提示符
project ▸ 退出 TrisMind

运行层的退出规则见 4.6。

退出 TrisMind 不删除项目文件、工作区、会话或登录状态。Ctrl+D 在普通输入状态下直接退出;确认界面打开时,按键先由该界面处理。

完整示例:工作区、快照、回滚与会话【待完善,勿看】

project ▸ workspace
Workspace ▸ new workspace/day1
✓ created ws_001
  path workspace/day1
  snapshots (none)

Workspace ▸ snapshot ws_001 "before refactor"
✓ successfully created snap_001
  workspace ws_001
  message before refactor

Workspace ▸ snapshot ws_001 "after refactor"
✓ successfully created snap_002

Workspace ▸ diff ws_001 snap_001 snap_002
  M      itinerary.md                            +12 -3
  A      notes/day1.md                           +8 -0
  base   snap_001
  target snap_002

回滚需要确认:

Workspace ▸ revert ws_001 snap_001
  Revert ws_001?
  workspace       workspace/day1
  target          snap_001 · before refactor
  unsaved changes 3 file(s) will be deleted
  later snapshots snap_002 will be deleted
  ● Cancel        ○ Revert workspace
  ↑↓ select · Enter confirm · Esc cancel

创建会话并绑定工作区:

Workspace ▸ exit
project ▸ session
Session ▸ new "Tokyo trip" --workspace ws_001
✓ created session sess_001
  name      Tokyo trip
  workspace ws_001

Session ▸ list
  id        name        workspace  modified           last input
  ────────  ──────────  ─────────  ─────────────────  ──────────
  sess_001  Tokyo trip  ws_001     2026-10-25 14:20   -

删除工作区只删除记录和绑定会话,目录文件保留:

Session ▸ exit
project ▸ workspace
Workspace ▸ delete ws_001
  Delete workspace ws_001?
  path            workspace/day1
  sessions        sess_001 will be deleted
  files           the workspace directory and its files are KEPT
  ● Cancel        ○ Delete record