完整配置手册
这份手册面向“准备长期运行 CountBot”的场景,重点解释配置存在哪里、每一层配置怎么生效,以及它们和技能、团队、定时任务、外部编码工具之间的联动关系。
配置总览
当前配置主要分成几类:
- Provider 与模型
- 会话与人格
- 工作空间与安全
- 渠道与账号
- 外部编码工具
- 技能系统
- 智能体团队
- 定时任务
- 远程访问认证
配置存储与生效方式
主配置
系统主配置通过 settings API 持久化到数据库,再由后端加载为统一配置对象。
常用接口:
| 方法 | 路径 | 说明 |
|---|---|---|
GET | /api/settings | 获取完整配置 |
PUT | /api/settings | 保存配置 |
GET | /api/settings/providers | 获取 Provider 元数据 |
POST | /api/settings/test-connection | 测试模型连接 |
GET | /api/settings/security/dangerous-patterns | 查看危险命令规则 |
工作空间配置
工作空间相关能力既受主配置影响,也依赖工作空间目录中的实际文件:
workspace/skills/workspace/.skills_config.jsonworkspace/memory/workspace/temp/
Provider 与模型配置
Provider 配置负责什么
每个 Provider 至少需要关心:
enabledapi_keyapi_base
它决定某个模型提供商是否可用,以及请求该发到哪里。
全局模型配置负责什么
全局模型配置决定默认运行时参数,例如:
providermodeltemperaturemax_tokensmax_iterations
这些值会被 Web 聊天、渠道消息处理和部分工作流执行路径共同读取。
测试连接的推荐顺序
- 先保存 Provider 的
api_key - 如有必要再改
api_base - 选择一个目标模型
- 调用
/api/settings/test-connection - 测试通过后再进行真实对话
会话自定义配置
会话层支持对全局配置做局部覆盖。
当前会话可覆盖什么
modelpersona
会话配置接口
| 方法 | 路径 | 说明 |
|---|---|---|
GET | /api/chat/sessions/{session_id}/config | 获取会话自定义配置 |
PUT | /api/chat/sessions/{session_id}/config | 保存会话自定义配置 |
DELETE | /api/chat/sessions/{session_id}/config | 清空会话自定义配置 |
生效优先级
普通会话运行时,模型配置优先级为:
- 会话自定义配置
- 全局 Provider 配置
- Provider 默认元数据
这意味着同一个 CountBot 实例里, 不同会话可以临时跑不同模型,而不影响系统默认值。
人格与对话配置
人格相关配置决定聊天助手的自我介绍、称呼方式和历史长度控制。
常见字段:
ai_nameuser_namepersonalitycustom_personalitymax_history_messages
max_history_messages 的实际影响
- 影响每次对话带多少历史消息
- 值越大,上下文越完整,但 token 成本越高
- 过长对话会触发记忆系统做摘要沉淀
工作空间配置
工作空间路径影响哪些能力
- 文件工具默认根目录
- Shell 工具默认工作目录
- 技能目录位置
- 记忆文件位置
- 截图、临时文件输出路径
什么时候需要重启
和工作空间根目录强绑定的组件通常在启动时初始化,所以修改工作空间路径后,建议重启应用,让技能、记忆和文件工具都重新绑定新目录。
安全配置
安全配置主要控制命令执行边界和审计能力。
常见字段:
dangerous_commands_blockedcustom_deny_patternscommand_whitelist_enabledcustom_allow_patternsaudit_log_enabledcommand_timeoutsubagent_timeoutmax_output_lengthrestrict_to_workspace
最重要的两个开关
dangerous_commands_blocked
启用后,后端会拦截明显危险的命令模式,例如强制删除、格式化磁盘、关机重启 等。
restrict_to_workspace
启用后,文件与命令执行会尽量被限制在工作空间内。它适合更严格的部署环境,但变更后通常需要重启才能完全生效。
渠道与账号配置
CountBot 的渠道配置是账号级设计,不是“整个渠道一个总开关”。
账号层的关键字段
enableddisplay_nameaccount_idallow_fromrouting_modeexternal_coding_profile
为什么是账号级
因为你往往需要:
- 同一渠道挂多个机器人
- 不同团队绑定不同默认路由
- 生产和测试走不同默认编码工具