配置
通过项目根目录的 ckg.config.json 配置。参考 ckg.config.example.json。
示例
json
{
"project": "my-project",
"ai": { "provider": "claude-cli" },
"analysis": {
"summaryWords": 30,
"contentWords": 150
},
"repos": [
{
"name": "my-service",
"path": "/absolute/path/to/repo",
"type": "backend",
"cpgFile": "data/my-service.json",
"packages": ["@myorg/shared"]
}
]
}顶层字段
project
类型: string — 必填
项目名称。
ai
类型: object — 必填
| 字段 | 类型 | 说明 |
|---|---|---|
provider | string | "claude-cli"(订阅,免费)或 "anthropic-api"(直接调 API) |
apiKey | string | 使用 anthropic-api 时必填。也可以在 Dashboard 中设置。 |
model | string | anthropic-api 使用的模型。默认 claude-sonnet-4-20250514。 |
TIP
claude-cli 走 Claude Max 订阅的 claude -p,没有 API 费用,不占白天额度。推荐大多数用户使用。
analysis
类型: object — 可选
| 字段 | 类型 | 默认值 | 说明 |
|---|---|---|---|
summaryWords | number | 30 | 决策摘要的目标字数 |
contentWords | number | 150 | 决策完整内容的目标字数 |
Repo 配置
repos
类型: array — 必填
| 字段 | 类型 | 必填 | 说明 |
|---|---|---|---|
name | string | 是 | Repo 标识符 |
path | string | 是 | Repo 在本机的绝对路径 |
type | string | 否 | 标签:"frontend"、"backend"、"shared-lib"、"infra"。仅展示用。 |
cpgFile | string | 是 | Joern CPG JSON 输出的相对路径 |
language | string | 否 | 主要语言:"javascript"、"typescript"、"python"、"java" |
srcDir | string | 否 | 源代码子目录(如 "src") |
packages | string[] | 否 | 此 repo 发布的 NPM 包名。用于跨 repo 依赖检测。 |
skipEdgeFunctions | boolean | 否 | 分析时跳过小型工具函数。减少大型 repo 的噪音。 |
环境变量
| 变量 | 默认值 | 说明 |
|---|---|---|
CKG_MEMGRAPH_PORT | 7687 | Memgraph bolt 端口 |
DASHBOARD_PORT | 3001 | Dashboard 端口 |
用于 dogfooding 设置,两个隔离实例跑在不同端口。
WARNING
ckg.config.json 包含机器相关的绝对路径,请加入 .gitignore。