xiantong 文档

工作区

使用多个工作区组织您的配置

工作区可让您为不同的场景(个人项目、工作、客户项目或不同环境)维护独立配置。每个工作区都有自己的来源、技能、状态和会话历史记录。

理解工作区#

工作区是一个自包含的配置单元,存储在:

~/.xiantong/workspaces/{workspace-id}/

每个工作区包含:

组件描述
来源连接到此工作区的 MCP 服务器、API 和本地文件系统
技能使用 @mention 调用的可复用指令
状态用于组织会话的工作流状态
会话特定于此工作区的聊天历史

添加工作区#

在初始设置期间,您会自动创建第一个工作区。要添加更多工作区:

  1. 点击侧边栏中的工作区下拉菜单(显示当前工作区名称)
  2. 选择 添加工作区…
  3. 输入新工作区的名称
  4. 工作区将以默认设置创建

切换工作区#

切换工作区的步骤:

  1. 点击侧边栏中的工作区下拉菜单
  2. 选择要切换到的工作区

下拉菜单会显示您当前的工作区名称。切换工作区会加载该工作区的来源、技能、状态和会话。

工作区特定配置#

每个工作区维护自己的:

数据描述
来源MCP 服务器、API 和本地文件系统
技能定义在 skills/ 中的可复用指令
状态定义在 statuses/config.json 中的状态
会话存储在 sessions/ 中的聊天历史
权限可选的探索模式规则,位于 permissions.json
主题可选的颜色主题覆盖(在 设置 → 外观 中配置)
默认 LLM 连接为新会话设置的可选默认 AI 连接

目录结构#

~/.xiantong/
workspaces/
{workspace-id}/
config.json # 工作区配置
.claude-plugin/ # 插件清单(Claude Code SDK 兼容性)
plugin.json # 包含技能和 Agent 的插件清单
sources/
{source-slug}/
config.json # 来源配置
guide.md # 使用说明文档
skills/
{skill-slug}/
SKILL.md # 技能定义
statuses/
config.json # 状态定义
icons/ # 自定义状态图标
todo.svg
done.svg
sessions/
{session-id}/
session.jsonl # JSONL 格式的对话
attachments/ # 上传文件
plans/ # 实施方案
permissions.json # 可选的探索模式规则
icon.png # 可选的工作区图标(png/jpg/svg)

工作区默认设置#

工作区可以覆盖 xiantong 应用默认的 AI 连接和主题:

{
"defaults": {
"defaultLlmConnection": "claude-max",
"colorTheme": "nord"
}
}

连接的解析顺序:

  1. 会话连接
  2. 工作区默认defaults.defaultLlmConnection
  3. 全局默认config.json 中的 defaultLlmConnection
  4. 列表中的第一个连接

远程工作区#

您可以连接运行在远程服务器上的工作区。远程工作区会在下拉切换菜单中与本地工作区一同显示。

连接到远程服务器#

  1. 点击侧边栏中的工作区下拉菜单
  2. 选择 添加工作区…连接远程服务器
  3. 输入服务器 URL(例如 wss://192.168.1.100:9100)和服务器令牌
  4. 点击 测试连接 — 绿色勾号表示连接成功
  5. 从下拉列表中选择一个已有工作区,或创建新工作区

多个远程工作区#

单个远程服务器可以托管多个工作区。连接时,您可以选择要添加到切换菜单的工作区。也可以连接多个服务器,每个远程工作区都是独立的。

连接状态#

远程工作区在切换菜单中显示其连接状态:

指示器含义
常规图标已连接且健康
CloudOff 图标无法连接 — 服务器宕机或网络问题

当您打开工作区切换器时,xiantong 会对远程工作区进行健康检查。

管理远程工作区#

  • 移除: 在切换菜单中右键某个工作区并选择 移除,或将鼠标悬停并点击垃圾桶图标。此操作会断开本地引用,但不会删除服务器上的工作区。
  • 切换: 点击任一工作区(本地或远程)即可切换。该工作区的会话列表、来源和技能会被加载。

会话转移#

您可以使用 发送到工作区 将会话从一个工作区复制到另一个工作区:

  1. 打开会话菜单(右键或标题菜单)
  2. 选择 发送到工作区
  3. 从列表中选择一个远程工作区
  4. 会话会被复制到目标工作区,并附上会话摘要以提供上下文

这会创建一个独立副本 — 一个工作区中的更改不会同步到另一个工作区。

会话转移目前仅支持从本地工作区到远程工作区。目标工作区在转移时必须可达。

用例#

个人与工作分离

保持个人项目与工作项目分开。每个工作区都有自己独立的来源、技能和会话历史 — 不会混淆上下文。

客户项目

顾问和自由职业者可以为每个客户设置一个独立工作区,每个工作区都有专属来源和定制技能。

开发环境

为开发、预发布和生产维护不同工作区 — 每个工作区使用适当的 API 端点和权限。

团队协作

通过复制工作区目录结构与团队成员共享工作区配置。

小贴士#

清晰命名工作区

使用描述性名称,让您一眼就能识别上下文。

从一个工作区开始

先熟悉基础,再添加更多工作区。您随时都可以添加新工作区。

自定义探索模式

添加一个 permissions.json 文件以允许在探索模式中执行额外操作。详情请参阅权限