最佳实践:多项目管理
当需要同时分析多个业务项目、环境或数据平台账号时,建议把它们放在同一个项目集目录下,每个子目录对应一个独立的 OpenInsight project。
1. 创建项目集目录
先创建一个用于集中管理 OpenInsight 项目的目录:
mkdir openinsight-projects
cd openinsight-projects
项目集目录只负责承载多个项目子目录。每个子目录都有自己的 .open-insight.json,可以连接不同的数据平台、环境或账号。
2. 分别初始化项目
在项目集目录下多次执行 setup,为每个项目初始化一个子目录:
openinsight setup ./project-a --project project-a
openinsight setup ./project-b --project project-b
openinsight setup ./project-c --project project-c
初始化后目录结构类似:
openinsight-projects/
├── project-a/
│ ├── .open-insight.json
│ └── source/
├── project-b/
│ ├── .open-insight.json
│ └── source/
└── project-c/
├── .open-insight.json
└── source/
3. 进入子项目运行
运行 OpenInsight 命令或让 Agent 查询数据时,进入对应的项目子目录即可:
cd openinsight-projects/project-a
openinsight current
OpenInsight 会从当前目录向上查找 .open-insight.json,自动使用当前项目的连接配置和本地数据。因此切换项目时,只需要切换工作目录:
cd ../project-b
openinsight current
4. 在 Codex 中使用对应项目
如果使用 Codex,建议为每个 OpenInsight project 单独创建一个 Codex 项目,并把项目路径指向具体的子目录,例如:
/path/to/openinsight-projects/project-a
/path/to/openinsight-projects/project-b
在 Codex 项目列表中点击新增,然后选择“使用现有文件夹”,再选择对应的 OpenInsight 子项目目录。

这样 Codex 在该项目中运行时,会直接读取对应子目录下的 .open-insight.json,查询结果也会自动匹配当前项目的数据上下文。