[ PROMPT_NODE_24530 ]
cli_operations
[ SKILL_DOCUMENTATION ]
# CLI 操作参考
使用 CLI 操作 CocoIndex 工作流的完整指南。
## 概述
CocoIndex CLI (`cocoindex` 命令) 提供了用于管理和检查工作流的工具。大多数命令需要一个 `APP_TARGET` 参数来指定工作流定义的位置。
## 环境设置
### 环境变量
在项目目录中创建 `.env` 文件:
bash
# 数据库连接(必需)
COCOINDEX_DATABASE_URL=postgresql://user:password@localhost/cocoindex_db
# 可选:用于组织工作流的应用命名空间
COCOINDEX_APP_NAMESPACE=dev
# 可选:全局并发限制
COCOINDEX_SOURCE_MAX_INFLIGHT_ROWS=50
COCOINDEX_SOURCE_MAX_INFLIGHT_BYTES=524288000 # 500MB
# 可选:LLM API 密钥(如果使用 LLM 函数)
OPENAI_API_KEY=sk-...
ANTHROPIC_API_KEY=sk-ant-...
VOYAGE_API_KEY=pa-...
### 加载环境文件
bash
# 默认:从当前目录加载 .env
cocoindex ...
# 指定自定义 env 文件
cocoindex --env-file path/to/.env ...
# 指定应用目录
cocoindex --app-dir /path/to/project ...
## APP_TARGET 格式
`APP_TARGET` 告诉 CLI 工作流定义的位置:
### Python 模块
bash
# 从模块名称加载
cocoindex update main
# 从包模块加载
cocoindex update my_package.flows
### Python 文件
bash
# 从文件路径加载
cocoindex update main.py
# 从嵌套文件加载
cocoindex update path/to/flows.py
### 特定工作流
bash
# 目标模块中的特定工作流
cocoindex update main:MyFlowName
# 目标文件中的特定工作流
cocoindex update path/to/flows.py:MyFlowName
## 核心命令
### setup - 初始化工作流资源
创建工作流所需的所有持久化后端(数据库表、集合等)。
bash
# 设置所有工作流
cocoindex setup main.py
# 设置特定工作流
cocoindex setup main.py:MyFlow
**功能:**
- 在 Postgres 中创建内部存储表
- 创建目标资源(数据库表、向量集合、图结构)
- 如果工作流定义发生更改,则更新模式
- 如果已设置且无需更改,则不执行任何操作
**何时使用:**
- 首次运行工作流时
- 修改工作流结构后(新字段、新目标)
- 删除工作流以重新创建资源后
### update - 构建/更新目标数据
运行转换并根据当前源数据更新目标数据。
bash
# 一次性更新
cocoindex update main.py
# 带设置的一次性更新
cocoindex update --setup m