
如果你使用 DeepSeek、元宝 AI、Copilot、ChatGPT 等 AI 工具,协助配置轩辕镜像、编写 docker pull 命令、修改 Docker Compose 镜像地址、配置镜像加速、排查镜像拉取失败、分析报错日志等问题,请先让 AI 阅读并遵守轩辕镜像的规则文档。
只需在 AI 对话中先发送下面这句话即可:
请先完整阅读并严格遵守以下文档中的全部规则与要求:
https://xuanyuan.cloud/agents.md
在未充分阅读并理解该文档前,不要生成任何命令、配置、修改建议、故障排查方案或技术回答。后续所有输出都必须严格以该文档中的规范为最高优先级执行。查看 agents.md 用法指南与完整示范。国内用户首推 元宝 AI、DeepSeek 的深度思考模式,不推荐豆包 AI;Cursor 等编辑器可在对话 @ 该链接,或加入 User Rules。 若 AI 无法访问外链,可 打开说明文档 复制全文粘贴。文档会随站点更新,复制内容可能过期,建议定期检查。
!https://raw.githubusercontent.com/jim60105/AIr-Friends/refs/heads/master/docs/preview.webp
https://codecov.io/gh/jim60105/AIr-Friends/graph/badge.svg?token=0DtdMc3GBq](https://codecov.io/gh/jim60105/AIr-Friends) https://img.shields.io/github/actions/workflow/status/jim60105/AIr-Friends/ci.yaml?branch=master](https://github.com/jim60105/AIr-Friends/actions) https://img.shields.io/github/v/tag/jim60105/AIr-Friends?label=release](https://github.com/jim60105/AIr-Friends/releases) https://img.shields.io/badge/license-GPLv3-blue.svg](LICENSE) https://img.shields.io/badge/ghcr.io%2Fjim60105%2Fair--friends-available-brightgreen](https://github.com/jim60105/AIr-Friends/pkgs/container/air-friends)
AIr-Friends是一款集成shell和技能的自定义聊天机器人,由ACP AI代理提供支持。它能跨渠道记住对话内容,同时将数据组织在隔离的工作空间中,保障数据安全与有序管理。
推荐使用容器运行AIr-Friends:
bash# 下载示例文件 wget https://raw.githubusercontent.com/jim60105/AIr-Friends/master/.env.example -O .env # 编辑并填入你的凭证信息 vim .env
bashpodman run -d --rm \ -v data:/app/data \ --env-file .env \ --name air-friends \ ghcr.io/jim60105/air-friends:latest
bashwget https://raw.githubusercontent.com/jim60105/AIr-Friends/master/compose.yml podman compose up -d
完成以上步骤后,机器人即可上线。
修改机器人的性格!
覆盖单个角色提示文件——仅挂载需要替换的文件,其他文件保持容器默认值。
compose.yml):yamlvolumes: - data:/app/data:Z # 仅挂载需要覆盖的提示文件 - ./prompts/character_name.md:/app/prompts/character_name.md:ro,Z - ./prompts/character_info.md:/app/prompts/character_info.md:ro,Z - ./prompts/character_personality.md:/app/prompts/character_personality.md:ro,Z - ./prompts/character_speaking_style.md:/app/prompts/character_speaking_style.md:ro,Z - ./prompts/character_reference_terms.md:/app/prompts/character_reference_terms.md:ro,Z
bashpodman run -d --rm \ -v data:/app/data \ -v ./prompts/character_name.md:/app/prompts/character_name.md:ro \ -v ./prompts/character_info.md:/app/prompts/character_info.md:ro \ --env-file .env \ --name air-friends \ ghcr.io/jim60105/air-friends:latest
helm/图表):yaml# values.yaml prompts: enabled: true files: character_name.md: | 尤娜 character_info.md: | 一个AI助手
详细信息请参见开发指南——自定义机器人部分。
使用白名单功能控制谁可以与机器人交互:
yamlaccessControl: replyTo: "whitelist" # 选项:all(全部)、public(公开)、whitelist(白名单) whitelist: - "discord/account/123456789012345678" - "misskey/account/abcdef1234567890"
详细信息请参见开发指南——访问控制与回复策略部分。
通过可配置的速率限制防止用户过度使用API:
yamlrateLimit: enabled: false maxRequestsPerWindow: 10 # 窗口期内最大请求数 windowMs: 600000 # 滑动窗口时长(10分钟) cooldownMs: 600000 # 超过限制后的冷却时间
允许用户通过私信设置一次性提醒,机器人将在指定时间送达:
yamlreminders: enabled: false maxRemindersPerUser: 20 # 每个用户的最大活跃提醒数 minIntervalMs: 60000 # 最小延迟时间(1分钟) checkIntervalMs: 30000 # 检查到期提醒的频率
set-reminder(设置提醒)、cancel-reminder(取消提醒)、list-reminders(列出提醒)根据用户或上下文动态选择LLM模型,以控制成本和质量:
yamlagent: model: "gpt-5-mini" # 默认回退模型 modelRouting: enabled: true rules: - match: { whitelist: "discord/account/12345678901234567" } model: "openrouter/deepseek/deepseek-v3.2" - match: { sessionType: "spontaneous" } model: "openrouter/deepseek/deepseek-v3.2"
规则按顺序匹配(先匹配者优先)。详细信息请参见开发指南——模型路由部分。
AIr-Friends作为ACP(Agent Client Protocol)客户端,将AI推理任务委托给外部代理,同时维护持久化记忆:
text┌─────────────────────────────────────────┐ │ 平台(Discord/Misskey) │ │ ↓ │ │ AIr-Friends(ACP客户端) │ │ ↓ │ │ 外部AI代理 │ │ (Copilot/Gemini/OpenCode) │ │ ↓ │ │ 技能与记忆系统 │ └─────────────────────────────────────────┘
详见设计文档了解详细架构。
官方容器镜像包含:
/app/prompts(可覆盖)完整的设置说明请参见开发指南。
GNU通用公共许可证第3版
版权所有 (C) 2026 Jim Chen <***>。
本程序是自由软件:您可以根据自由软件基金会发布的GNU通用公共许可证第3版(或任何更高版本)的条款重新分发和/或修改它。
本程序的发布旨在希望它能有用,但不提供任何明示或暗示的担保,包括但不限于适销性和特定用途适用性的担保。有关更多详细信息,请参见GNU通用公共许可证。
您应该已收到本程序随附的GNU通用公共许可证副本。如果没有,请参见https://www.gnu.org/licenses/%E3%80%82
您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。
来自真实用户的反馈,见证轩辕镜像的优质服务