CLI
项目结构
Agent 项目目录、全局配置和运行数据的边界
项目结构
Agent 的管理配置统一保存在全局数据库。Agent 不需要项目声明文件;项目目录只作为 Workspace,保留环境、Skills 和业务运行数据。
目录布局
my-project/
├── .env # 项目环境变量
├── .agents/
│ └── skills/ # 用户管理、可进入版本控制的 Skills
├── .downcity/ # Agent 与 Plugin 运行数据
│ ├── agents/ # 会话与消息数据
│ ├── chat/ # Chat Access、路由和历史数据
│ ├── logs/ # 运行日志
│ ├── memory/ # 记忆数据
│ └── task/ # 任务运行数据
└── src/ # 业务代码(可选)全局配置
默认保存在 ~/.downcity/downcity.db,设置 DC_PLATFORM_ROOT 后改为 $DC_PLATFORM_ROOT/downcity.db。其中包含:
- Agent ID、项目路径和启动参数
- 模型绑定与 Plugin 配置
- Plugin Resource 与 Agent Plugin Binding
- City 登录态和其他平台管理状态
CLI、交互管理器和 Agent daemon 都读取同一份数据库,不维护项目配置副本。
agent_id 是全局主键,Workspace 路径不是身份。一个 Workspace 可以同时绑定多个 Agent;每个 Agent 的 daemon 状态独立保存在 ~/.downcity/runtimes/<agent_id>/daemon.json、daemon.pid 和 daemon.log。
项目资产
Global Env 单独保存在 ~/.downcity/.env。项目 .env 覆盖 Global Env,启动进程显式环境变量拥有最高优先级;项目 .env 默认加入 .gitignore。.agents/skills 是项目中唯一由用户管理并进入版本控制的 Agent 能力资产。
运行数据
.downcity/ 只保存会话、Chat Access、任务、记忆和缓存等业务运行数据。不要把管理配置、PID 或 daemon 元数据写入该目录。
继续阅读: