CLI

项目结构

Agent 项目目录、全局配置和运行数据的边界

项目结构

Agent 定义、Plugin 配置与运行数据都使用用户级文件。项目目录只作为 Workspace,保留项目环境、Skills 和业务源码。

目录布局

my-project/
├── .env                 # 项目环境变量
├── .agents/
│   └── skills/          # 用户管理、可进入版本控制的 Skills
└── src/                 # 业务代码(可选)

全局配置

用户级配置结构为:

~/.downcity/
├── agents/<agent_id>/
│   ├── agent.json
│   ├── SOUL.md
│   └── workspaces/<workspace_id>/
│       ├── sessions/
│       ├── archived-sessions/
│       └── logs/
├── plugins/<plugin_id>/config.toml
├── runtimes/city/
└── downcity.db

downcity.db 保存 Workspace ID 与路径、Token 和平台状态,不保存 Agent 定义、Plugin profile 或 Agent-Workspace 绑定。CLI 与 Desktop 读取同一套文件与数据库。

agent_idworkspace_id 是彼此独立的全局身份。Agent 只在一次具体执行时进入 Workspace。CLI City 的 daemon 状态记录在 ~/.downcity/runtimes/city/;Session 保存在 ~/.downcity/agents/<agent_id>/workspaces/<workspace_id>/sessions/ 下。

项目资产

Global Env 单独保存在 ~/.downcity/.env。项目 .env 覆盖 Global Env,启动进程显式环境变量拥有最高优先级;项目 .env 默认加入 .gitignore.agents/skills 是项目中唯一由用户管理并进入版本控制的 Agent 能力资产。

运行数据

Downcity 不再创建 <project>/.downcity/。AgentWorkspace 运行数据统一保存在 ~/.downcity/agents/<agent_id>/workspaces/<workspace_id>/;Plugin 自有数据使用当前 AgentWorkspace context 提供的存储作用域。

继续阅读: