Skip to content

配置参考

OpenPollen 使用 JSON5 格式的配置文件,支持注释和尾逗号。配置文件位于 ~/.openpollen/openpollen.json,也可以在项目根目录放置 openpollen.json

环境变量使用 ${VAR_NAME} 语法在配置文件中引用。

agent

Agent 运行时配置。

字段类型默认值说明
modelstringclaude-sonnet-4-20250514主模型标识
fallbackModelstring备选模型(主模型失败时使用)
maxTurnsnumber15单次对话最大轮数(1-100)
maxBudgetUsdnumber1.0单次对话预算上限(美元)
systemPromptstring自定义系统提示词
defaultSkillsstring[][]默认加载的技能名称列表
defaultToolsstring[]["Read","Grep","Glob","WebSearch"]默认可用工具列表

gateway

Gateway HTTP 服务配置。

字段类型默认值说明
hoststring127.0.0.1监听地址
portnumber18800监听端口

gateway.auth

认证配置。

字段类型默认值说明
modestringnone认证模式:api-key / jwt / none
backendUrlstringJWT 验证后端 URL

gateway.session

会话管理配置。

字段类型默认值说明
timeoutMinutesnumber30会话超时时间(分钟)
maxConcurrentnumber50最大并发会话数

channels

渠道配置。每个渠道是独立的子对象。

channels.webchat

内置 WebChat 网页聊天。

字段类型默认值说明
enabledbooleantrue是否启用
portnumber3001WebChat 服务端口
assistantNamestringOpenPollen聊天界面显示的助手名称

channels.dingtalk

钉钉 Bot(通过插件实现)。

字段类型默认值说明
enabledbooleanfalse是否启用
clientIdstring钉钉应用 Client ID
clientSecretstring钉钉应用 Client Secret
robotCodestring机器人编码(可选,默认使用 clientId)
groupPolicystringmention群消息策略:mention(需@)/ all(所有消息)

channels.wechat

企业微信(通过插件实现)。

字段类型默认值说明
enabledbooleanfalse是否启用
corpIdstring企业 ID
agentIdstring应用 Agent ID
secretstring应用 Secret
tokenstring回调 Token
encodingAESKeystring回调加密 Key
callbackPortnumber3002回调服务端口

providers

模型提供商配置。支持同时配置多个,第一个 enabled: true 的将被使用。

providers.beelive

Beelive 云端代理(推荐国内用户)。

字段类型默认值说明
enabledbooleanfalse是否启用
apiKeystringBeelive API Key
baseUrlstringhttps://lite.beebywork.com/api/v1/anthropic-proxy代理地址

providers.anthropic

Anthropic 官方 API。

字段类型默认值说明
enabledbooleanfalse是否启用
apiKeystringAnthropic API Key

providers.openai

OpenAI 兼容 API。

字段类型默认值说明
enabledbooleanfalse是否启用
apiKeystringOpenAI API Key

providers.ollama

本地 Ollama 模型。

字段类型默认值说明
enabledbooleanfalse是否启用
baseUrlstringhttp://localhost:11434Ollama 服务地址
modelstringqwen3-coder模型名称

skills

技能系统配置。

字段类型默认值说明
directorystring~/.openpollen/skills技能存储目录
enabledstring[][]启用的技能白名单(空 = 全部启用)

memory

记忆系统配置。

字段类型默认值说明
backendstringsqlite存储后端:sqlite / file
sqlitePathstring~/.openpollen/memory.dbSQLite 数据库路径
fileDirectorystring~/.openpollen/memoryMarkdown 文件存储目录

logging

日志配置。

字段类型默认值说明
levelstringinfo日志级别:trace / debug / info / warn / error / fatal
filestring日志文件路径(如 ~/.openpollen/logs/openpollen.log

marketplace

技能市场配置。

字段类型默认值说明
apiUrlstringhttps://lite.beebywork.com/api/v1/skills-market市场 API 地址

完整示例

json5
{
  "agent": {
    "model": "claude-sonnet-4-20250514",
    "fallbackModel": "claude-haiku-4-20250514",
    "maxTurns": 15,
    "maxBudgetUsd": 1.0,
    "systemPrompt": "You are a helpful AI assistant.",
    "defaultSkills": [],
    "defaultTools": ["Read", "Grep", "Glob", "WebSearch"]
  },
  "gateway": {
    "host": "127.0.0.1",
    "port": 18800,
    "auth": { "mode": "none" },
    "session": { "timeoutMinutes": 30, "maxConcurrent": 50 }
  },
  "channels": {
    "webchat": { "enabled": true, "port": 3001 },
    "dingtalk": {
      "enabled": false,
      "clientId": "${DINGTALK_CLIENT_ID}",
      "clientSecret": "${DINGTALK_CLIENT_SECRET}"
    }
  },
  "providers": {
    "anthropic": {
      "enabled": true,
      "apiKey": "${ANTHROPIC_API_KEY}"
    }
  },
  "skills": { "directory": "~/.openpollen/skills", "enabled": [] },
  "memory": { "backend": "sqlite", "sqlitePath": "~/.openpollen/memory.db" },
  "logging": { "level": "info", "file": "~/.openpollen/logs/openpollen.log" }
}