仓库级配置
在仓库中放置 .fennoai.yml 文件,为该仓库定制 Fenno 的行为。此文件是可选的 —— 不放也能正常工作,Fenno 会使用合理的默认值。
文件位置
配置文件可以放在以下任一位置(按优先级从高到低):
your-repo/
├── .fennoai.yml ← 最高优先级
├── .github/
│ └── fennoai.yml ← GitHub 风格
└── .codeagent/
└── fennoai.yml ← 专用目录
Fenno 按顺序检查这些路径,使用第一个找到的文件。
可配置选项
仓库级配置主要用于模型设置。敏感信息(API Key、Base URL 等)通过全局配置和环境变量管理,不在仓库配置中设置。
设置默认 AI 模型
# .fennoai.yml
default_ai_provider: claude
支持的值:claude、deepseek、gemini、minimax、kimi、zhipu、codex
控制谁可以触发 Fenno
使用 require_member_to_trigger 控制是否仅允许仓库成员触发 @fennoai 和斜杠命令。
# .fennoai.yml
require_member_to_trigger: true
当该字段未设置时,默认行为为:
- 公开仓库:
true(仅成员可触发)
常见示例:
# 公开仓库放开限制:允许任意用户触发
require_member_to_trigger: false
自定义 Provider 模型
可以为每个 Provider 覆盖具体的模型名称:
# .fennoai.yml
default_ai_provider: claude
claude:
model: 'claude-sonnet-4'
# deepseek:
# model: "deepseek/deepseek-v3.2-251201"
# gemini:
# model: "gemini-3.0-pro-preview"
注意:仓库配置中只能设置模型名称。API Key、Base URL 等敏感配置仍然从全局配置和环境变量读取。
配置生效方式
大多数 .fennoai.yml 配置会在后续请求中自动生效,无需重启或重新部署。Fenno 会从默认分支读取该文件。
如果你配置了 schedule: 定时任务,需要注意:
- 定时任务会在默认分支收到 push 后同步
- 仅修改功能分支中的配置,不会立刻更新线上定时任务
- 任务的详细说明见定时任务
配置优先级:命令行参数 > 仓库配置 > 全局配置