[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"similar-looplj--axonhub":3,"tool-looplj--axonhub":62},[4,18,26,36,46,54],{"id":5,"name":6,"github_repo":7,"description_zh":8,"stars":9,"difficulty_score":10,"last_commit_at":11,"category_tags":12,"status":17},4358,"openclaw","openclaw\u002Fopenclaw","OpenClaw 是一款专为个人打造的本地化 AI 助手，旨在让你在自己的设备上拥有完全可控的智能伙伴。它打破了传统 AI 助手局限于特定网页或应用的束缚，能够直接接入你日常使用的各类通讯渠道，包括微信、WhatsApp、Telegram、Discord、iMessage 等数十种平台。无论你在哪个聊天软件中发送消息，OpenClaw 都能即时响应，甚至支持在 macOS、iOS 和 Android 设备上进行语音交互，并提供实时的画布渲染功能供你操控。\n\n这款工具主要解决了用户对数据隐私、响应速度以及“始终在线”体验的需求。通过将 AI 部署在本地，用户无需依赖云端服务即可享受快速、私密的智能辅助，真正实现了“你的数据，你做主”。其独特的技术亮点在于强大的网关架构，将控制平面与核心助手分离，确保跨平台通信的流畅性与扩展性。\n\nOpenClaw 非常适合希望构建个性化工作流的技术爱好者、开发者，以及注重隐私保护且不愿被单一生态绑定的普通用户。只要具备基础的终端操作能力（支持 macOS、Linux 及 Windows WSL2），即可通过简单的命令行引导完成部署。如果你渴望拥有一个懂你",349277,3,"2026-04-06T06:32:30",[13,14,15,16],"Agent","开发框架","图像","数据工具","ready",{"id":19,"name":20,"github_repo":21,"description_zh":22,"stars":23,"difficulty_score":10,"last_commit_at":24,"category_tags":25,"status":17},3808,"stable-diffusion-webui","AUTOMATIC1111\u002Fstable-diffusion-webui","stable-diffusion-webui 是一个基于 Gradio 构建的网页版操作界面，旨在让用户能够轻松地在本地运行和使用强大的 Stable Diffusion 图像生成模型。它解决了原始模型依赖命令行、操作门槛高且功能分散的痛点，将复杂的 AI 绘图流程整合进一个直观易用的图形化平台。\n\n无论是希望快速上手的普通创作者、需要精细控制画面细节的设计师，还是想要深入探索模型潜力的开发者与研究人员，都能从中获益。其核心亮点在于极高的功能丰富度：不仅支持文生图、图生图、局部重绘（Inpainting）和外绘（Outpainting）等基础模式，还独创了注意力机制调整、提示词矩阵、负向提示词以及“高清修复”等高级功能。此外，它内置了 GFPGAN 和 CodeFormer 等人脸修复工具，支持多种神经网络放大算法，并允许用户通过插件系统无限扩展能力。即使是显存有限的设备，stable-diffusion-webui 也提供了相应的优化选项，让高质量的 AI 艺术创作变得触手可及。",162132,"2026-04-05T11:01:52",[14,15,13],{"id":27,"name":28,"github_repo":29,"description_zh":30,"stars":31,"difficulty_score":32,"last_commit_at":33,"category_tags":34,"status":17},1381,"everything-claude-code","affaan-m\u002Feverything-claude-code","everything-claude-code 是一套专为 AI 编程助手（如 Claude Code、Codex、Cursor 等）打造的高性能优化系统。它不仅仅是一组配置文件，而是一个经过长期实战打磨的完整框架，旨在解决 AI 代理在实际开发中面临的效率低下、记忆丢失、安全隐患及缺乏持续学习能力等核心痛点。\n\n通过引入技能模块化、直觉增强、记忆持久化机制以及内置的安全扫描功能，everything-claude-code 能显著提升 AI 在复杂任务中的表现，帮助开发者构建更稳定、更智能的生产级 AI 代理。其独特的“研究优先”开发理念和针对 Token 消耗的优化策略，使得模型响应更快、成本更低，同时有效防御潜在的攻击向量。\n\n这套工具特别适合软件开发者、AI 研究人员以及希望深度定制 AI 工作流的技术团队使用。无论您是在构建大型代码库，还是需要 AI 协助进行安全审计与自动化测试，everything-claude-code 都能提供强大的底层支持。作为一个曾荣获 Anthropic 黑客大奖的开源项目，它融合了多语言支持与丰富的实战钩子（hooks），让 AI 真正成长为懂上",158594,2,"2026-04-16T23:34:05",[14,13,35],"语言模型",{"id":37,"name":38,"github_repo":39,"description_zh":40,"stars":41,"difficulty_score":42,"last_commit_at":43,"category_tags":44,"status":17},8272,"opencode","anomalyco\u002Fopencode","OpenCode 是一款开源的 AI 编程助手（Coding Agent），旨在像一位智能搭档一样融入您的开发流程。它不仅仅是一个代码补全插件，而是一个能够理解项目上下文、自主规划任务并执行复杂编码操作的智能体。无论是生成全新功能、重构现有代码，还是排查难以定位的 Bug，OpenCode 都能通过自然语言交互高效完成，显著减少开发者在重复性劳动和上下文切换上的时间消耗。\n\n这款工具专为软件开发者、工程师及技术研究人员设计，特别适合希望利用大模型能力来提升编码效率、加速原型开发或处理遗留代码维护的专业人群。其核心亮点在于完全开源的架构，这意味着用户可以审查代码逻辑、自定义行为策略，甚至私有化部署以保障数据安全，彻底打破了传统闭源 AI 助手的“黑盒”限制。\n\n在技术体验上，OpenCode 提供了灵活的终端界面（Terminal UI）和正在测试中的桌面应用程序，支持 macOS、Windows 及 Linux 全平台。它兼容多种包管理工具，安装便捷，并能无缝集成到现有的开发环境中。无论您是追求极致控制权的资深极客，还是渴望提升产出的独立开发者，OpenCode 都提供了一个透明、可信",144296,1,"2026-04-16T14:50:03",[13,45],"插件",{"id":47,"name":48,"github_repo":49,"description_zh":50,"stars":51,"difficulty_score":32,"last_commit_at":52,"category_tags":53,"status":17},2271,"ComfyUI","Comfy-Org\u002FComfyUI","ComfyUI 是一款功能强大且高度模块化的视觉 AI 引擎，专为设计和执行复杂的 Stable Diffusion 图像生成流程而打造。它摒弃了传统的代码编写模式，采用直观的节点式流程图界面，让用户通过连接不同的功能模块即可构建个性化的生成管线。\n\n这一设计巧妙解决了高级 AI 绘图工作流配置复杂、灵活性不足的痛点。用户无需具备编程背景，也能自由组合模型、调整参数并实时预览效果，轻松实现从基础文生图到多步骤高清修复等各类复杂任务。ComfyUI 拥有极佳的兼容性，不仅支持 Windows、macOS 和 Linux 全平台，还广泛适配 NVIDIA、AMD、Intel 及苹果 Silicon 等多种硬件架构，并率先支持 SDXL、Flux、SD3 等前沿模型。\n\n无论是希望深入探索算法潜力的研究人员和开发者，还是追求极致创作自由度的设计师与资深 AI 绘画爱好者，ComfyUI 都能提供强大的支持。其独特的模块化架构允许社区不断扩展新功能，使其成为当前最灵活、生态最丰富的开源扩散模型工具之一，帮助用户将创意高效转化为现实。",108322,"2026-04-10T11:39:34",[14,15,13],{"id":55,"name":56,"github_repo":57,"description_zh":58,"stars":59,"difficulty_score":32,"last_commit_at":60,"category_tags":61,"status":17},6121,"gemini-cli","google-gemini\u002Fgemini-cli","gemini-cli 是一款由谷歌推出的开源 AI 命令行工具，它将强大的 Gemini 大模型能力直接集成到用户的终端环境中。对于习惯在命令行工作的开发者而言，它提供了一条从输入提示词到获取模型响应的最短路径，无需切换窗口即可享受智能辅助。\n\n这款工具主要解决了开发过程中频繁上下文切换的痛点，让用户能在熟悉的终端界面内直接完成代码理解、生成、调试以及自动化运维任务。无论是查询大型代码库、根据草图生成应用，还是执行复杂的 Git 操作，gemini-cli 都能通过自然语言指令高效处理。\n\n它特别适合广大软件工程师、DevOps 人员及技术研究人员使用。其核心亮点包括支持高达 100 万 token 的超长上下文窗口，具备出色的逻辑推理能力；内置 Google 搜索、文件操作及 Shell 命令执行等实用工具；更独特的是，它支持 MCP（模型上下文协议），允许用户灵活扩展自定义集成，连接如图像生成等外部能力。此外，个人谷歌账号即可享受免费的额度支持，且项目基于 Apache 2.0 协议完全开源，是提升终端工作效率的理想助手。",100752,"2026-04-10T01:20:03",[45,13,15,14],{"id":63,"github_repo":64,"name":65,"description_en":66,"description_zh":67,"ai_summary_zh":68,"readme_en":69,"readme_zh":70,"quickstart_zh":71,"use_case_zh":72,"hero_image_url":73,"owner_login":74,"owner_name":75,"owner_avatar_url":76,"owner_bio":77,"owner_company":78,"owner_location":79,"owner_email":80,"owner_twitter":78,"owner_website":78,"owner_url":81,"languages":82,"stars":119,"forks":120,"last_commit_at":121,"license":122,"difficulty_score":32,"env_os":123,"env_gpu":124,"env_ram":125,"env_deps":126,"category_tags":131,"github_topics":132,"view_count":32,"oss_zip_url":78,"oss_zip_packed_at":78,"status":17,"created_at":147,"updated_at":148,"faqs":149,"releases":180},8265,"looplj\u002Faxonhub","axonhub","⚡️ Open-source AI Gateway — Use any SDK to call 100+ LLMs. Built-in failover, load balancing, cost control & end-to-end tracing.","AxonHub 是一款开源的一站式 AI 开发网关，旨在让开发者无需修改任何代码即可灵活调用全球 100 多种大语言模型。无论您习惯使用 OpenAI、Anthropic 还是其他主流 SDK，AxonHub 都能透明地将请求路由至任意支持的模型提供商，真正实现“一次接入，随处运行”。\n\n它主要解决了 AI 应用开发中的几大痛点：首先是打破厂商锁定，让您能在 GPT-4、Claude 或 Gemini 之间瞬间切换；其次是统一接口标准，将十多家供应商的复杂集成简化为一种 API 格式；此外，它还提供了企业级的可观测性与成本管控能力，填补了原生 SDK 在链路追踪和预算管理上的空白。\n\nAxonHub 特别适合后端工程师、AI 应用开发者及技术团队使用。其核心技术亮点包括智能负载均衡与自动故障转移（可在 100 毫秒内完成切换），确保服务高可用；内置细粒度的权限控制（RBAC）以保障数据安全；以及实时的费用追踪功能，能精确统计每次请求的输入、输出及缓存 Token 消耗。作为一个由 Go 语言构建并支持 Docker 部署的轻量级工具，AxonHub 帮助团队以更低的成本和更高的效率构建","AxonHub 是一款开源的一站式 AI 开发网关，旨在让开发者无需修改任何代码即可灵活调用全球 100 多种大语言模型。无论您习惯使用 OpenAI、Anthropic 还是其他主流 SDK，AxonHub 都能透明地将请求路由至任意支持的模型提供商，真正实现“一次接入，随处运行”。\n\n它主要解决了 AI 应用开发中的几大痛点：首先是打破厂商锁定，让您能在 GPT-4、Claude 或 Gemini 之间瞬间切换；其次是统一接口标准，将十多家供应商的复杂集成简化为一种 API 格式；此外，它还提供了企业级的可观测性与成本管控能力，填补了原生 SDK 在链路追踪和预算管理上的空白。\n\nAxonHub 特别适合后端工程师、AI 应用开发者及技术团队使用。其核心技术亮点包括智能负载均衡与自动故障转移（可在 100 毫秒内完成切换），确保服务高可用；内置细粒度的权限控制（RBAC）以保障数据安全；以及实时的费用追踪功能，能精确统计每次请求的输入、输出及缓存 Token 消耗。作为一个由 Go 语言构建并支持 Docker 部署的轻量级工具，AxonHub 帮助团队以更低的成本和更高的效率构建稳健的 AI 应用。","\u003Cdiv align=\"center\">\n\n# AxonHub - All-in-one AI Development Platform\n### Use any SDK. Access any model. Zero code changes.\n\n\u003Ca href=\"https:\u002F\u002Ftrendshift.io\u002Frepositories\u002F16225\" target=\"_blank\">\u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Flooplj_axonhub_readme_4a68feb902da.png\" alt=\"looplj%2Faxonhub | Trendshift\" style=\"width: 250px; height: 55px;\" width=\"250\" height=\"55\"\u002F>\u003C\u002Fa>\n\n\u003C\u002Fdiv>\n\n\u003Cdiv align=\"center\">\n\n[![Test Status](https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Factions\u002Fworkflows\u002Ftest.yml\u002Fbadge.svg)](https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Factions\u002Fworkflows\u002Ftest.yml)\n[![Lint Status](https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Factions\u002Fworkflows\u002Flint.yml\u002Fbadge.svg)](https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Factions\u002Fworkflows\u002Flint.yml)\n[![Go Version](https:\u002F\u002Fimg.shields.io\u002Fgithub\u002Fgo-mod\u002Fgo-version\u002Flooplj\u002Faxonhub?logo=go&logoColor=white)](https:\u002F\u002Fgolang.org\u002F)\n[![Docker Ready](https:\u002F\u002Fimg.shields.io\u002Fbadge\u002Fdocker-ready-2496ED?logo=docker&logoColor=white)](https:\u002F\u002Fdocker.com)\n\n[English](README.md) | [中文](README.zh-CN.md) | [日本語](README.ja-JP.md)\n\n\u003C\u002Fdiv>\n\n---\n\n> NOTE\n>\n> 1. This project is maintained by an individual. The author makes no warranties and assumes no liability for risks arising from its use. Please evaluate carefully.\n> 2. The core scope of this project does not include 2api (subscription-to-API conversion). If you need that, consider other open-source projects focused on 2api.\n\n---\n\n## 📖 Project Introduction\n\n### All-in-one AI Development Platform\n\n**AxonHub is the AI gateway that lets you switch between model providers without changing a single line of code.**\n\nWhether you're using OpenAI SDK, Anthropic SDK, or any AI SDK, AxonHub transparently translates your requests to work with any supported model provider. No refactoring, no SDK swaps—just change a configuration and you're done.\n\n**What it solves:**\n- 🔒 **Vendor lock-in** - Switch from GPT-4 to Claude or Gemini instantly\n- 🔧 **Integration complexity** - One API format for 10+ providers\n- 📊 **Observability gap** - Complete request tracing out of the box\n- 💸 **Cost control** - Real-time usage tracking and budget management\n\n\u003Cdiv align=\"center\">\n  \u003Cimg src=\"docs\u002Faxonhub-architecture-light.svg\" alt=\"AxonHub Architecture\" width=\"700\"\u002F>\n\u003C\u002Fdiv>\n\n### Core Features\n\n| Feature | What You Get |\n|---------|-------------|\n| 🔄 [**Any SDK → Any Model**](docs\u002Fen\u002Fapi-reference\u002Fopenai-api.md) | Use OpenAI SDK to call Claude, or Anthropic SDK to call GPT. Zero code changes. |\n| 🔍 [**Full Request Tracing**](docs\u002Fen\u002Fguides\u002Ftracing.md) | Complete request timelines with thread-aware observability. Debug faster. |\n| 🔐 [**Enterprise RBAC**](docs\u002Fen\u002Fguides\u002Fpermissions.md) | Fine-grained access control, usage quotas, and data isolation. |\n| ⚡ [**Smart Load Balancing**](docs\u002Fen\u002Fguides\u002Fload-balance.md) | Auto failover in \u003C100ms. Always route to the healthiest channel. |\n| 💰 [**Real-time Cost Tracking**](docs\u002Fen\u002Fguides\u002Fcost-tracking.md) | Per-request cost breakdown. Input, output, cache tokens—all tracked. |\n\n---\n\n## 📚 Documentation\n\nFor detailed technical documentation, API references, architecture design, and more, please visit\n- [![DeepWiki](https:\u002F\u002Fimg.shields.io\u002Fbadge\u002FDeepWiki-looplj%2Faxonhub-blue.svg?logo=data:image\u002Fpng;base64,iVBORw0KGgoAAAANSUhEUgAAACwAAAAyCAYAAAAnWDnqAAAAAXNSR0IArs4c6QAAA05JREFUaEPtmUtyEzEQhtWTQyQLHNak2AB7ZnyXZMEjXMGeK\u002FAIi+QuHrMnbChYY7MIh8g01fJoopFb0uhhEqqcbWTp06\u002Fuv1saEDv4O3n3dV60RfP947Mm9\u002FSQc0ICFQgzfc4CYZoTPAswgSJCCUJUnAAoRHOAUOcATwbmVLWdGoH\u002F\u002FPB8mnKqScAhsD0kYP3j\u002FYt5LPQe2KvcXmGvRHcDnpxfL2zOYJ1mFwrryWTz0advv1Ut4CJgf5uhDuDj5eUcAUoahrdY\u002F56ebRWeraTjMt\u002F00Sh3UDtjgHtQNHwcRGOC98BJEAEymycmYcWwOprTgcB6VZ5JK5TAJ+fXGLBm3FDAmn6oPPjR4rKCAoJCal2eAiQp2x0vxTPB3ALO2CRkwmDy5WohzBDwSEFKRwPbknEggCPB\u002FimwrycgxX2NzoMCHhPkDwqYMr9tRcP5qNrMZHkVnOjRMWwLCcr8ohBVb1OMjxLwGCvjTikrsBOiA6fNyCrm8V1rP93iVPpwaE+gO0SsWmPiXB+jikdf6SizrT5qKasx5j8ABbHpFTx+vFXp9EnYQmLx02h1QTTrl6eDqxLnGjporxl3NL3agEvXdT0WmEost648sQOYAeJS9Q7bfUVoMGnjo4AZdUMQku50McDcMWcBPvr0SzbTAFDfvJqwLzgxwATnCgnp4wDl6Aa+Ax283gghmj+vj7feE2KBBRMW3FzOpLOADl0Isb5587h\u002FU4gGvkt5v60Z1VLG8BhYjbzRwyQZemwAd6cCR5\u002FXFWLYZRIMpX39AR0tjaGGiGzLVyhse5C9RKC6ai42ppWPKiBagOvaYk8lO7DajerabOZP46Lby5wKjw1HCRx7p9sVMOWGzb\u002FvA1hwiWc6jm3MvQDTogQkiqIhJV0nBQBTU+3okKCFDy9WwferkHjtxib7t3xIUQtHxnIwtx4mpg26\u002FHfwVNVDb4oI9RHmx5WGelRVlrtiw43zboCLaxv46AZeB3IlTkwouebTr1y2NjSpHz68WNFjHvupy3q8TFn3Hos2IAk4Ju5dCo8B3wP7VPr\u002FFGaKiG+T+v+TQqIrOqMTL1VdWV1DdmcbO8KXBz6esmYWYKPwDL5b5FA1a0hwapHiom0r\u002FcKaoqr+27\u002FXcrS5UwSMbQAAAABJRU5ErkJggg==)](https:\u002F\u002Fdeepwiki.com\u002Flooplj\u002Faxonhub)\n- [![zread](https:\u002F\u002Fimg.shields.io\u002Fbadge\u002FAsk_Zread-_.svg?style=flat&color=00b0aa&labelColor=000000&logo=data%3Aimage%2Fsvg%2Bxml%3Bbase64%2CPHN2ZyB3aWR0aD0iMTYiIGhlaWdodD0iMTYiIHZpZXdCb3g9IjAgMCAxNiAxNiIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZD0iTTQuOTYxNTYgMS42MDAxSDIuMjQxNTZDMS44ODgxIDEuNjAwMSAxLjYwMTU2IDEuODg2NjQgMS42MDE1NiAyLjI0MDFWNC45NjAxQzEuNjAxNTYgNS4zMTM1NiAxLjg4ODEgNS42MDAxIDIuMjQxNTYgNS42MDAxSDQuOTYxNTZDNS4zMTUwMiA1LjYwMDEgNS42MDE1NiA1LjMxMzU2IDUuNjAxNTYgNC45NjAxVjIuMjQwMUM1LjYwMTU2IDEuODg2NjQgNS4zMTUwMiAxLjYwMDEgNC45NjE1NiAxLjYwMDFaIiBmaWxsPSIjZmZmIi8%2BCjxwYXRoIGQ9Ik00Ljk2MTU2IDEwLjM5OTlIMi4yNDE1NkMxLjg4ODEgMTAuMzk5OSAxLjYwMTU2IDEwLjY4NjQgMS42MDE1NiAxMS4wMzk5VjEzLjc1OTlDMS42MDE1NiAxNC4xMTM0IDEuODg4MSAxNC4zOTk5IDIuMjQxNTYgMTQuMzk5OUg0Ljk2MTU2QzUuMzE1MDIgMTQuMzk5OSA1LjYwMTU2IDE0LjExMzQgNS42MDE1NiAxMy43NTk5VjExLjAzOTlDNS42MDE1NiAxMC42ODY0IDUuMzE1MDIgMTAuMzk5OSA0Ljk2MTU2IDEwLjM5OTlaIiBmaWxsPSIjZmZmIi8%2BCjxwYXRoIGQ9Ik0xMy43NTg0IDEuNjAwMUgxMS4wMzg0QzEwLjY4NSAxLjYwMDEgMTAuMzk4NCAxLjg4NjY0IDEwLjM5ODQgMi4yNDAxVjQuOTYwMUMxMC4zOTg0IDUuMzEzNTYgMTAuNjg1IDUuNjAwMSAxMS4wMzg0IDUuNjAwMUgxMy43NTg0QzE0LjExMTkgNS42MDAxIDE0LjM5ODQgNS4zMTM1NiAxNC4zOTg0IDQuOTYwMVYyLjI0MDFDMTQuMzk4NCAxLjg4NjY0IDE0LjExMTkgMS42MDAxIDEzLjc1ODQgMS42MDAxWiIgZmlsbD0iI2ZmZiIvPgo8cGF0aCBkPSJNNCAxMkwxMiA0TDQgMTJaIiBmaWxsPSIjZmZmIi8%2BCjxwYXRoIGQ9Ik00IDEyTDEyIDQiIHN0cm9rZT0iI2ZmZiIgc3Ryb2tlLXdpZHRoPSIxLjUiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIvPgo8L3N2Zz4K&logoColor=ffffff)](https:\u002F\u002Fzread.ai\u002Flooplj\u002Faxonhub)\n\n---\n\n## 🎯 Demo\n\nTry AxonHub live at our [demo instance](https:\u002F\u002Faxonhub.onrender.com)!\n\n**Note**：The demo instance currently configures Zhipu and OpenRouter free models.\n\n### Demo Account\n\n- **Email**: demo@example.com\n- **Password**: 12345678\n\n---\n\n## ⭐ Features\n\n### 📸 Screenshots\n\nHere are some screenshots of AxonHub in action:\n\n\u003Ctable>\n  \u003Ctr>\n    \u003Ctd align=\"center\">\n      \u003Ca href=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Flooplj_axonhub_readme_2b157fd735d5.png\">\n        \u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Flooplj_axonhub_readme_2b157fd735d5.png\" alt=\"System Dashboard\" width=\"250\"\u002F>\n      \u003C\u002Fa>\n      \u003Cbr\u002F>\n      System Dashboard\n    \u003C\u002Ftd>\n    \u003Ctd align=\"center\">\n      \u003Ca href=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Flooplj_axonhub_readme_52c48b0e5779.png\">\n        \u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Flooplj_axonhub_readme_52c48b0e5779.png\" alt=\"Channel Management\" width=\"250\"\u002F>\n      \u003C\u002Fa>\n      \u003Cbr\u002F>\n      Channel Management\n    \u003C\u002Ftd>\n    \u003Ctd align=\"center\">\n      \u003Ca href=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Flooplj_axonhub_readme_0c380a57ed6e.png\">\n        \u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Flooplj_axonhub_readme_0c380a57ed6e.png\" alt=\"Model Price\" width=\"250\"\u002F>\n      \u003C\u002Fa>\n      \u003Cbr\u002F>\n      Model Price\n    \u003C\u002Ftd>\n  \u003C\u002Ftr>\n  \u003Ctr>\n  \u003Ctd align=\"center\">\n      \u003Ca href=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Flooplj_axonhub_readme_cc86616acb3e.png\">\n        \u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Flooplj_axonhub_readme_cc86616acb3e.png\" alt=\"Models\" width=\"250\"\u002F>\n      \u003C\u002Fa>\n      \u003Cbr\u002F>\n      Models\n    \u003C\u002Ftd>\n    \u003Ctd align=\"center\">\n      \u003Ca href=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Flooplj_axonhub_readme_a655fd062da8.png\">\n        \u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Flooplj_axonhub_readme_a655fd062da8.png\" alt=\"Trace Viewer\" width=\"250\"\u002F>\n      \u003C\u002Fa>\n      \u003Cbr\u002F>\n      Trace Viewer\n    \u003C\u002Ftd>\n    \u003Ctd align=\"center\">\n      \u003Ca href=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Flooplj_axonhub_readme_d8c77e5d3bdf.png\">\n        \u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Flooplj_axonhub_readme_d8c77e5d3bdf.png\" alt=\"Request Monitoring\" width=\"250\"\u002F>\n      \u003C\u002Fa>\n      \u003Cbr\u002F>\n      Request Monitoring\n    \u003C\u002Ftd>\n  \u003C\u002Ftr>\n\u003C\u002Ftable>\n\n---\n\n### 🚀 API Types\n\n| API Type             | Status     | Description                    | Document                                     |\n| -------------------- | ---------- | ------------------------------ | -------------------------------------------- |\n| **Text Generation**  | ✅ Done    | Conversational interface       | [OpenAI API](docs\u002Fen\u002Fapi-reference\u002Fopenai-api.md), [Anthropic API](docs\u002Fen\u002Fapi-reference\u002Fanthropic-api.md), [Gemini API](docs\u002Fen\u002Fapi-reference\u002Fgemini-api.md) |\n| **Image Generation** | ✅ Done | Image generation               | [Image Generation](docs\u002Fen\u002Fapi-reference\u002Fimage-generation.md) |\n| **Rerank**           | ✅ Done    | Results ranking                | [Rerank API](docs\u002Fen\u002Fapi-reference\u002Frerank-api.md) |\n| **Embedding**        | ✅ Done    | Vector embedding generation    | [Embedding API](docs\u002Fen\u002Fapi-reference\u002Fembedding-api.md) |\n| **Realtime**         | 📝 Todo    | Live conversation capabilities | -                                            |\n\n---\n\n### 🤖 Supported Providers\n\n| Provider               | Status     | Supported Models             | Compatible APIs |\n| ---------------------- | ---------- | ---------------------------- | --------------- |\n| **OpenAI**             | ✅ Done    | GPT-4, GPT-4o, GPT-5, etc.   | OpenAI, Anthropic, Gemini, Embedding, Image Generation |\n| **Anthropic**          | ✅ Done    | Claude 3.5, Claude 3.0, etc. | OpenAI, Anthropic, Gemini |\n| **Zhipu AI**           | ✅ Done    | GLM-4.5, GLM-4.5-air, etc.   | OpenAI, Anthropic, Gemini |\n| **Moonshot AI (Kimi)** | ✅ Done    | kimi-k2, etc.                | OpenAI, Anthropic, Gemini |\n| **DeepSeek**           | ✅ Done    | DeepSeek-V3.1, etc.          | OpenAI, Anthropic, Gemini |\n| **ByteDance Doubao**   | ✅ Done    | doubao-1.6, etc.             | OpenAI, Anthropic, Gemini, Image Generation |\n| **Gemini**             | ✅ Done    | Gemini 2.5, etc.             | OpenAI, Anthropic, Gemini, Image Generation |\n| **Fireworks**          | ✅ Done    | MiniMax-M2.5, GLM-5, Kimi K2.5, etc. | OpenAI |\n| **Jina AI**            | ✅ Done    | Embeddings, Reranker, etc.   | Jina Embedding, Jina Rerank |\n| **OpenRouter**         | ✅ Done    | Various models               | OpenAI, Anthropic, Gemini, Image Generation |\n| **ZAI**                | ✅ Done    | -                            | Image Generation |\n| **AWS Bedrock**        | 🔄 Testing | Claude on AWS                | OpenAI, Anthropic, Gemini |\n| **Google Cloud**       | 🔄 Testing | Claude on GCP                | OpenAI, Anthropic, Gemini |\n| **NanoGPT**            | ✅ Done    | Various models, Image Gen    | OpenAI, Anthropic, Gemini, Image Generation |\n\n---\n\n## 🚀 Quick Start\n\n### 30-Second Local Start\n\n```bash\n# Download and extract (macOS ARM64 example)\ncurl -sSL https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Freleases\u002Flatest\u002Fdownload\u002Faxonhub_darwin_arm64.tar.gz | tar xz\ncd axonhub_*\n\n# Run with SQLite (default)\n.\u002Faxonhub\n\n# Open http:\u002F\u002Flocalhost:8090\n# First run: Follow the setup wizard to initialize the system (create admin account, password must be at least 6 characters)\n```\n\nThat's it! Now configure your first AI channel and start calling models through AxonHub.\n\n### Zero-Code Migration Example\n\n**Your existing code works without any changes.** Just point your SDK to AxonHub:\n\n```python\nfrom openai import OpenAI\n\nclient = OpenAI(\n    base_url=\"http:\u002F\u002Flocalhost:8090\u002Fv1\",  # Point to AxonHub\n    api_key=\"your-axonhub-api-key\"        # Use AxonHub API key\n)\n\n# Call Claude using OpenAI SDK!\nresponse = client.chat.completions.create(\n    model=\"claude-3-5-sonnet\",  # Or gpt-4, gemini-pro, deepseek-chat...\n    messages=[{\"role\": \"user\", \"content\": \"Hello!\"}]\n)\n```\n\nSwitch models by changing one line: `model=\"gpt-4\"` → `model=\"claude-3-5-sonnet\"`. No SDK changes needed.\n\n### 1-click Deploy to Render\n\nDeploy AxonHub with 1-click on [Render](https:\u002F\u002Frender.com) for free.\n\n\u003Cdiv>\n\n\u003Ca href=\"https:\u002F\u002Frender.com\u002Fdeploy?repo=https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\">\n  \u003Cimg src=\"https:\u002F\u002Frender.com\u002Fimages\u002Fdeploy-to-render-button.svg\" alt=\"Deploy to Render\">\n\u003C\u002Fa>\n\n\u003C\u002Fdiv>\n\n---\n\n## 🚀 Deployment Guide\n\n### 💻 Personal Computer Deployment\n\nPerfect for individual developers and small teams. No complex configuration required.\n\n#### Quick Download & Run\n\n1. **Download the latest release** from [GitHub Releases](https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Freleases)\n\n   - Choose the appropriate version for your operating system:\n\n2. **Extract and run**\n\n   ```bash\n   # Extract the downloaded file\n   unzip axonhub_*.zip\n   cd axonhub_*\n\n   # Add execution permissions (only for Linux\u002FmacOS)\n   chmod +x axonhub\n\n   # Run directly - default SQLite database\n\n   # Install AxonHub to system\n   sudo .\u002Finstall.sh\n\n   # Start AxonHub service\n   .\u002Fstart.sh\n\n   # Stop AxonHub service\n   .\u002Fstop.sh\n   ```\n\n3. **Access the application**\n   ```\n   http:\u002F\u002Flocalhost:8090\n   ```\n\n---\n\n### 🖥️ Server Deployment\n\nFor production environments, high availability, and enterprise deployments.\n\n#### Database Support\n\nAxonHub supports multiple databases to meet different scale deployment needs:\n\n| Database       | Supported Versions | Recommended Scenario                             | Auto Migration | Links                                                       |\n| -------------- | ------------------ | ------------------------------------------------ | -------------- | ----------------------------------------------------------- |\n| **TiDB Cloud** | Starter            | Serverless, Free tier, Auto Scale                | ✅ Supported   | [TiDB Cloud](https:\u002F\u002Fwww.pingcap.com\u002Ftidb-cloud-starter\u002F)   |\n| **TiDB Cloud** | Dedicated          | Distributed deployment, large scale              | ✅ Supported   | [TiDB Cloud](https:\u002F\u002Fwww.pingcap.com\u002Ftidb-cloud-dedicated\u002F) |\n| **TiDB**       | V8.0+              | Distributed deployment, large scale              | ✅ Supported   | [TiDB](https:\u002F\u002Ftidb.io\u002F)                                    |\n| **Neon DB**    | -                  | Serverless, Free tier, Auto Scale                | ✅ Supported   | [Neon DB](https:\u002F\u002Fneon.com\u002F)                                |\n| **PostgreSQL** | 15+                | Production environment, medium-large deployments | ✅ Supported   | [PostgreSQL](https:\u002F\u002Fwww.postgresql.org\u002F)                   |\n| **MySQL**      | 8.0+               | Production environment, medium-large deployments | ✅ Supported   | [MySQL](https:\u002F\u002Fwww.mysql.com\u002F)                             |\n| **SQLite**     | 3.0+               | Development environment, small deployments       | ✅ Supported   | [SQLite](https:\u002F\u002Fwww.sqlite.org\u002Findex.html)                 |\n\n#### Configuration\n\nAxonHub uses YAML configuration files with environment variable override support:\n\n```yaml\n# config.yml\nserver:\n  port: 8090\n  name: \"AxonHub\"\n  debug: false\n\ndb:\n  dialect: \"tidb\"\n  dsn: \"\u003CUSER>.root:\u003CPASSWORD>@tcp(gateway01.us-west-2.prod.aws.tidbcloud.com:4000)\u002Faxonhub?tls=true&parseTime=true&multiStatements=true&charset=utf8mb4\"\n\nlog:\n  level: \"info\"\n  encoding: \"json\"\n```\n\nEnvironment variables:\n\n```bash\nAXONHUB_SERVER_PORT=8090\nAXONHUB_DB_DIALECT=\"tidb\"\nAXONHUB_DB_DSN=\"\u003CUSER>.root:\u003CPASSWORD>@tcp(gateway01.us-west-2.prod.aws.tidbcloud.com:4000)\u002Faxonhub?tls=true&parseTime=true&multiStatements=true&charset=utf8mb4\"\nAXONHUB_LOG_LEVEL=info\n```\n\nFor detailed configuration instructions, please refer to [configuration documentation](docs\u002Fen\u002Fdeployment\u002Fconfiguration.md).\n\n#### Docker Compose Deployment\n\n```bash\n# Clone project\ngit clone https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub.git\ncd axonhub\n\n# Set environment variables\nexport AXONHUB_DB_DIALECT=\"tidb\"\nexport AXONHUB_DB_DSN=\"\u003CUSER>.root:\u003CPASSWORD>@tcp(gateway01.us-west-2.prod.aws.tidbcloud.com:4000)\u002Faxonhub?tls=true&parseTime=true&multiStatements=true&charset=utf8mb4\"\n\n# Start services\ndocker-compose up -d\n\n# Check status\ndocker-compose ps\n```\n\n#### Helm Kubernetes Deployment\n\nDeploy AxonHub on Kubernetes using the official Helm chart:\n\n```bash\n# Quick installation\ngit clone https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub.git\ncd axonhub\nhelm install axonhub .\u002Fdeploy\u002Fhelm\n\n# Production deployment\nhelm install axonhub .\u002Fdeploy\u002Fhelm -f .\u002Fdeploy\u002Fhelm\u002Fvalues-production.yaml\n\n# Access AxonHub\nkubectl port-forward svc\u002Faxonhub 8090:8090\n# Visit http:\u002F\u002Flocalhost:8090\n```\n\n**Key Configuration Options:**\n\n| Parameter | Description | Default |\n|-----------|-------------|---------|\n| `axonhub.replicaCount` | Replicas | `1` |\n| `axonhub.dbPassword` | DB password | `axonhub_password` |\n| `postgresql.enabled` | Embedded PostgreSQL | `true` |\n| `ingress.enabled` | Enable ingress | `false` |\n| `persistence.enabled` | Data persistence | `false` |\n\nFor detailed configuration and troubleshooting, see [Helm Chart Documentation](deploy\u002Fhelm\u002FREADME.md).\n\n#### Virtual Machine Deployment\n\nDownload the latest release from [GitHub Releases](https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Freleases)\n\n```bash\n# Extract and run\nunzip axonhub_*.zip\ncd axonhub_*\n\n# Set environment variables\nexport AXONHUB_DB_DIALECT=\"tidb\"\nexport AXONHUB_DB_DSN=\"\u003CUSER>.root:\u003CPASSWORD>@tcp(gateway01.us-west-2.prod.aws.tidbcloud.com:4000)\u002Faxonhub?tls=true&parseTime=true&multiStatements=true&charset=utf8mb4\"\n\nsudo .\u002Finstall.sh\n\n# Configuration file check\naxonhub config check\n\n# Start service\n#  For simplicity, we recommend managing AxonHub with the helper scripts:\n\n# Start\n.\u002Fstart.sh\n\n# Stop\n.\u002Fstop.sh\n```\n\n---\n\n## 📖 Usage Guide\n\n### Unified API Overview\n\nAxonHub provides a unified API gateway that supports both OpenAI Chat Completions and Anthropic Messages APIs. This means you can:\n\n- **Use OpenAI API to call Anthropic models** - Keep using your OpenAI SDK while accessing Claude models\n- **Use Anthropic API to call OpenAI models** - Use Anthropic's native API format with GPT models\n- **Use Gemini API to call OpenAI models** - Use Gemini's native API format with GPT models\n- **Automatic API translation** - AxonHub handles format conversion automatically\n- **Zero code changes** - Your existing OpenAI or Anthropic client code continues to work\n\n### 1. Initial Setup\n\n1. **Access Management Interface**\n\n   ```\n   http:\u002F\u002Flocalhost:8090\n   ```\n\n2. **Configure AI Providers**\n\n   - Add API keys in the management interface\n   - Test connections to ensure correct configuration\n\n3. **Create Users and Roles**\n   - Set up permission management\n   - Assign appropriate access permissions\n\n### 2. Channel Configuration\n\nConfigure AI provider channels in the management interface. For detailed information on channel configuration, including model mappings, parameter overrides, and troubleshooting, see the [Channel Configuration Guide](docs\u002Fen\u002Fguides\u002Fchannel-management.md).\n\n### 3. Model Management\n\nAxonHub provides a flexible model management system that supports mapping abstract models to specific channels and model implementations through Model Associations. This enables:\n\n- **Unified Model Interface** - Use abstract model IDs (e.g., `gpt-4`, `claude-3-opus`) instead of channel-specific names\n- **Intelligent Channel Selection** - Automatically route requests to optimal channels based on association rules and load balancing\n- **Flexible Mapping Strategies** - Support for precise channel-model matching, regex patterns, and tag-based selection\n- **Priority-based Fallback** - Configure multiple associations with priorities for automatic failover\n\nFor comprehensive information on model management, including association types, configuration examples, and best practices, see the [Model Management Guide](docs\u002Fen\u002Fguides\u002Fmodel-management.md).\n\n### 4. Create API Keys\n\nCreate API keys to authenticate your applications with AxonHub. Each API key can be configured with multiple profiles that define:\n\n- **Model Mappings** - Transform user-requested models to actual available models using exact match or regex patterns\n- **Channel Restrictions** - Limit which channels an API key can use by channel IDs or tags\n- **Model Access Control** - Control which models are accessible through a specific profile\n- **Profile Switching** - Change behavior on-the-fly by activating different profiles\n\nFor detailed information on API key profiles, including configuration examples, validation rules, and best practices, see the [API Key Profile Guide](docs\u002Fen\u002Fguides\u002Fapi-key-profiles.md).\n\n### 5. AI Coding Tools Integration\n\nSee the dedicated guides for detailed setup steps, troubleshooting, and tips on combining these tools with AxonHub model profiles:\n- [OpenCode Integration Guide](docs\u002Fen\u002Fguides\u002Fopencode-integration.md)\n- [Claude Code Integration Guide](docs\u002Fen\u002Fguides\u002Fclaude-code-integration.md)\n- [Codex Integration Guide](docs\u002Fen\u002Fguides\u002Fcodex-integration.md)\n\n---\n\n### 6. SDK Usage\n\nFor detailed SDK usage examples and code samples, please refer to the API documentation:\n- [OpenAI API](docs\u002Fen\u002Fapi-reference\u002Fopenai-api.md)\n- [Anthropic API](docs\u002Fen\u002Fapi-reference\u002Fanthropic-api.md)\n- [Gemini API](docs\u002Fen\u002Fapi-reference\u002Fgemini-api.md)\n\n## 🛠️ Development Guide\n\nFor detailed development instructions, architecture design, and contribution guidelines, please see [docs\u002Fen\u002Fdevelopment\u002Fdevelopment.md](docs\u002Fen\u002Fdevelopment\u002Fdevelopment.md).\n\n---\n\n## 🤝 Acknowledgments\n\n- 🙏 [musistudio\u002Fllms](https:\u002F\u002Fgithub.com\u002Fmusistudio\u002Fllms) - LLM transformation framework, source of inspiration\n- 🎨 [satnaing\u002Fshadcn-admin](https:\u002F\u002Fgithub.com\u002Fsatnaing\u002Fshadcn-admin) - Admin interface template\n- 🔧 [99designs\u002Fgqlgen](https:\u002F\u002Fgithub.com\u002F99designs\u002Fgqlgen) - GraphQL code generation\n- 🌐 [gin-gonic\u002Fgin](https:\u002F\u002Fgithub.com\u002Fgin-gonic\u002Fgin) - HTTP framework\n- 🗄️ [ent\u002Fent](https:\u002F\u002Fgithub.com\u002Fent\u002Fent) - ORM framework\n- 🔧 [air-verse\u002Fair](https:\u002F\u002Fgithub.com\u002Fair-verse\u002Fair) - Auto reload Go service\n- ☁️ [Render](https:\u002F\u002Frender.com) - Free cloud deployment platform for hosting our demo\n- 🗃️ [TiDB Cloud](https:\u002F\u002Fwww.pingcap.com\u002Ftidb-cloud\u002F) - Serverless database platform for demo deployment\n\n---\n\n## 📄 License\n\nThis project is licensed under multiple licenses (Apache-2.0 and LGPL-3.0). See [LICENSE](LICENSE) file for the detailed licensing overview and terms.\n\n---\n\n\u003Cdiv align=\"center\">\n\n**AxonHub** - All-in-one AI Development Platform, making AI development simpler\n\n[🏠 Homepage](https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub) • [📚 Documentation](https:\u002F\u002Fdeepwiki.com\u002Flooplj\u002Faxonhub) • [🐛 Issue Feedback](https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Fissues)\n\nBuilt with ❤️ by the AxonHub team\n\n\u003C\u002Fdiv>\n","\u003Cdiv align=\"center\">\n\n# AxonHub - 一体化AI开发平台\n### 使用任意SDK。访问任意模型。无需更改代码。\n\n\u003Ca href=\"https:\u002F\u002Ftrendshift.io\u002Frepositories\u002F16225\" target=\"_blank\">\u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Flooplj_axonhub_readme_4a68feb902da.png\" alt=\"looplj%2Faxonhub | Trendshift\" style=\"width: 250px; height: 55px;\" width=\"250\" height=\"55\"\u002F>\u003C\u002Fa>\n\n\u003C\u002Fdiv>\n\n\u003Cdiv align=\"center\">\n\n[![测试状态](https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Factions\u002Fworkflows\u002Ftest.yml\u002Fbadge.svg)](https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Factions\u002Fworkflows\u002Ftest.yml)\n[![代码风格检查状态](https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Factions\u002Fworkflows\u002Flint.yml\u002Fbadge.svg)](https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Factions\u002Fworkflows\u002Flint.yml)\n[![Go版本](https:\u002F\u002Fimg.shields.io\u002Fgithub\u002Fgo-mod\u002Fgo-version\u002Flooplj\u002Faxonhub?logo=go&logoColor=white)](https:\u002F\u002Fgolang.org\u002F)\n[![支持Docker](https:\u002F\u002Fimg.shields.io\u002Fbadge\u002Fdocker-ready-2496ED?logo=docker&logoColor=white)](https:\u002F\u002Fdocker.com)\n\n[English](README.md) | [中文](README.zh-CN.md) | [日本語](README.ja-JP.md)\n\n\u003C\u002Fdiv>\n\n---\n\n> 注意\n>\n> 1. 本项目由个人维护。作者不提供任何担保，也不对因使用本项目而产生的风险承担任何责任。请谨慎评估。\n> 2. 本项目的核心范围不包括2api（订阅转API）。如果您需要该功能，请考虑其他专注于2api的开源项目。\n\n---\n\n## 📖 项目介绍\n\n### 一体化AI开发平台\n\n**AxonHub是AI网关，让您无需更改一行代码即可在不同模型提供商之间切换。**\n\n无论您使用的是OpenAI SDK、Anthropic SDK，还是任何其他AI SDK，AxonHub都能透明地将您的请求转换为与任何受支持的模型提供商兼容的格式。无需重构代码，无需更换SDK——只需更改配置即可完成切换。\n\n**它解决了以下问题：**\n- 🔒 **供应商锁定** - 可以立即从GPT-4切换到Claude或Gemini\n- 🔧 **集成复杂性** - 一种API格式即可对接10多家提供商\n- 📊 **可观测性缺失** - 开箱即用的完整请求追踪\n- 💸 **成本控制** - 实时使用情况跟踪和预算管理\n\n\u003Cdiv align=\"center\">\n  \u003Cimg src=\"docs\u002Faxonhub-architecture-light.svg\" alt=\"AxonHub架构\" width=\"700\"\u002F>\n\u003C\u002Fdiv>\n\n### 核心功能\n\n| 功能 | 您将获得 |\n|---------|-------------|\n| 🔄 [**任意SDK → 任意模型**](docs\u002Fen\u002Fapi-reference\u002Fopenai-api.md) | 使用OpenAI SDK调用Claude，或使用Anthropic SDK调用GPT。无需更改代码。 |\n| 🔍 [**完整请求追踪**](docs\u002Fen\u002Fguides\u002Ftracing.md) | 具备线程感知能力的完整请求时间线。更快地进行调试。 |\n| 🔐 [**企业级RBAC**](docs\u002Fen\u002Fguides\u002Fpermissions.md) | 细粒度的访问控制、使用配额和数据隔离。 |\n| ⚡ [**智能负载均衡**](docs\u002Fen\u002Fguides\u002Fload-balance.md) | 自动故障转移，耗时不到100毫秒。始终路由到最健康的通道。 |\n| 💰 [**实时成本跟踪**](docs\u002Fen\u002Fguides\u002Fcost-tracking.md) | 每个请求的成本明细。输入、输出、缓存Token等全部记录在案。 |\n\n---\n\n## 📚 文档\n\n有关详细的技术文档、API参考、架构设计等内容，请访问：\n- [![DeepWiki](https:\u002F\u002Fimg.shields.io\u002Fbadge\u002FDeepWiki-looplj%2Faxonhub-blue.svg?logo=data:image\u002Fpng;base64,iVBORw0KGgoAAAANSUhEUgAAACwAAAAyCAYAAAAnWDnqAAAAAXNSR0IArs4c6QAAA05JREFUaEPtmUtyEzEQhtWTQyQLHNak2AB7ZnyXZMEjXMGeK\u002FAIi+QuHrMnbChYY7MIh8g01fJoopFb0uhhEqqcbWTp06\u002Fuv1saEDv4O3n3dV60RfP947Mm9\u002FSQc0ICFQgzfc4CYZoTPAswgSJCCUJUnAAoRHOAUOcATwbmVLWdGoH\u002F\u002FPB8mnKqScAhsD0kYP3j\u002FYt5LPQe2KvcXmGvRHcDnpxfL2zOYJ1mFwrryWTz0advv1Ut4CJgf5uhDuDj5eUcAUoahrdY\u002F56ebRWeraTjMt\u002F00Sh3UDtjgHtQNHwcRGOC98BJEAEymycmYcWwOprTgcB6V5JK5TAJ+fXGLBm3FDAmn6oPPjR4rKCAoJCal2eAiQp2x0vxTPB3ALO2CRkwmDy5WohzBDwSEFKRwPbknEggCPB\u002FimwrycgxX2NzoMCHhPkDwqYMr9tRcP5qNrMZHkVnOjRMWwLCcr8ohBVb1OMjxLwGCvjTikrsBOiA6fNyCrm8V1rP93iVPpwaE+gO0SsWmPiXB+jikdf6SizrT5qKasx5j8ABbHpFTx+vFXp9EnYQmLx02h1QTTrl6eDqxLnGjporxl3NL3agEvXdT0WmEost648sQOYAeJS9Q7bfUVoMGnjo4AZdUMQku50McDcMWcBPvr0SzbTAFDfvJqwLzgxwATnCgnp4wDl6Aa+Ax283gghmj+vj7feE2KBBRMW3FzOpLOADl0Isb5587h\u002FU4gGvkt5v60Z1VLG8BhYjbzRwyQZemwAd6cCR5\u002FXFWLYZRIMpX39AR0tjaGGiGZQAAAABJRU5ErkJggg==)](https:\u002F\u002Fdeepwiki.com\u002Flooplj\u002Faxonhub)\n- [![zread](https:\u002F\u002Fimg.shields.io\u002Fbadge\u002FAsk_Zread-_.svg?style=flat&color=00b0aa&labelColor=000000&logo=data%3Aimage%2Fsvg%2Bxml%3Bbase64%2CPHN2ZyB3aWR0aD0iMTYiIGhlaWdodD0iMTYiIHZpZXdCb3g9IjAgMCAxNiAxNiIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZD0iTTQuOTYxNTYgMS42MDAxSDIuMjQxNTZDMS44ODgxIDEuNjAwMSAxLjYwMTU2IDEuODg2NjQgMS42MDE1NiAyLjI0MDFWNC45NjE1QzEuNjAxNTYgNS4zMTM1NiAxLjg4ODEgNS42MDAxIDIuMjQxNTZgNS42MDAxSDQuOTYxNTYgNS4zMTM1NiAxLjYwMDFaIiBmaWxsPSIjZmZmIi8%2BCjxwYXRoIGQ9Ik00Ljk2MTU2IDEwLjM5OTlIMi4yNDE1NkMxLjg4ODEgMTAuMzk5OSAxLjYwMTU2IDEwLjY4NjQgMS42MDE1NiAyLjI0MDFWNC45NjE1QzEuNjAxNTYgNS42MDAxIDEuODg4MSAxLjYwMDE1NiAyLjI0MDFWNC45NjE1QzEuNjAxNTYgNS42MDAxIDEuODg2NjQgMS42MDE1NiAyLjI0MDFWNC45NjE1QzEuNjAxNTYgNS42MDAxIDEuODg2NjQgMS42MDE1NiAyLjI0MDFWNC45NjE1QzEuNjAxNTYgNS42MDAxIDEuODg2NjQgMS42MDE1NiAyLjI0MDFWNC45NjE1QzEuNjAxNTYgNS42MDAxIDEuODg2NjQgMS42MDE1NiAyLjI0MDFWNC45NjE1QzEuNjAxNTYgNS42MDAxIDEuODg2NjQgMS42MDE1NiAyLjI0MDFWNC45NjE1QzEuNjAxNTYgNS42MDAxIDEuODg2NjQgMS42MDE1NiAyLjI0MDFWNC45NjE1QzEuNjAxNTYgNS42MDAxIDEuODg2NjQgMS42MDE1NiAyLjI0MDFWNC45NjE1QzEuNjAxNTYgNS42MDAxIDEuODg2NjQgMS42MDE1NiAyLjI0MDFWNC45NjE1QzEuNjAxNTYgNS42MDAxIDEuODg2NjQgMS42MDE1NiAyLjI......\u003Cdiv align=\"center\">\n\n# AxonHub - 多合一AI开发平台\n### 使用任意SDK。访问任意模型。无需更改代码。\n\n\u003Ca href=\"https:\u002F\u002Ftrendshift.io\u002Frepositories\u002F16225\" target=\"_blank\">\u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Flooplj_axonhub_readme_4a68feb902da.png\" alt=\"looplj%2Faxonhub | Trendshift\" style=\"width: 250px; height: 55px;\" width=\"250\" height=\"55\"\u002F>\u003C\u002Fa>\n\n\u003C\u002Fdiv>\n\n\u003Cdiv align=\"center\">\n\n[![测试状态](https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Factions\u002Fworkflows\u002Ftest.yml\u002Fbadge.svg)](https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Factions\u002Fworkflows\u002Ftest.yml)\n[![代码风格检查状态](https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Factions\u002Fworkflows\u002Flint.yml\u002Fbadge.svg)](https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Factions\u002Fworkflows\u002Flint.yml)\n[![Go版本](https:\u002F\u002Fimg.shields.io\u002Fgithub\u002Fgo-mod\u002Fgo-version\u002Flooplj\u002Faxonhub?logo=go&logoColor=white)](https:\u002F\u002Fgolang.org\u002F)\n[![支持Docker](https:\u002F\u002Fimg.shields.io\u002Fbadge\u002Fdocker-ready-2496ED?logo=docker&logoColor=white)](https:\u002F\u002Fdocker.com)\n\n[English](README.md) | [中文](README.zh-CN.md) | [日本語](README.ja-JP.md)\n\n\u003C\u002Fdiv>\n\n---\n\n> 注意\n>\n> 1. 本项目由个人维护，作者不提供任何担保，也不对因使用本项目而产生的风险承担任何责任，请您谨慎评估。\n> 2. 本项目的核心范围不包括2api（订阅转API）。如果您需要该功能，请考虑其他专注于2api的开源项目。\n\n---\n\n## 📖 项目介绍\n\n### 多合一AI开发平台\n\n**AxonHub是AI网关，让您无需修改一行代码即可在不同模型提供商之间切换。**\n\n无论您使用的是OpenAI SDK、Anthropic SDK，还是任何其他AI SDK，AxonHub都能透明地将您的请求转换为与任何受支持的模型提供商兼容的格式。无需重构代码，也无需更换SDK——只需更改配置即可完成切换。\n\n**它解决了以下问题：**\n- 🔒 **供应商锁定** - 可以立即从GPT-4切换到Claude或Gemini\n- 🔧 **集成复杂性** - 一种API格式适用于10多家提供商\n- 📊 **可观测性缺失** - 开箱即用的完整请求追踪\n- 💸 **成本控制** - 实时使用情况跟踪和预算管理\n\n\u003Cdiv align=\"center\">\n  \u003Cimg src=\"docs\u002Faxonhub-architecture-light.svg\" alt=\"AxonHub架构\" width=\"700\"\u002F>\n\u003C\u002Fdiv>\n\n### 核心功能\n\n| 功能 | 您将获得 |\n|---------|-------------|\n| 🔄 [**任意SDK → 任意模型**](docs\u002Fen\u002Fapi-reference\u002Fopenai-api.md) | 使用OpenAI SDK调用Claude，或使用Anthropic SDK调用GPT。无需更改代码。 |\n| 🔍 [**完整请求追踪**](docs\u002Fen\u002Fguides\u002Ftracing.md) | 具有线程感知的完整请求时间线。更快地进行调试。 |\n| 🔐 [**企业级RBAC**](docs\u002Fen\u002Fguides\u002Fpermissions.md) | 细粒度的访问控制、使用配额和数据隔离。 |\n| ⚡ [**智能负载均衡**](docs\u002Fen\u002Fguides\u002Fload-balance.md) | 自动故障转移，耗时不到100毫秒。始终路由到最健康的通道。 |\n| 💰 [**实时成本跟踪**](docs\u002Fen\u002Fguides\u002Fcost-tracking.md) | 每个请求的成本明细。输入、输出、缓存令牌——全部被跟踪。 |\n\n---\n\n## 📚 文档\n\n有关详细的技术文档、API参考、架构设计等信息，请访问：\n- [![DeepWiki](https:\u002F\u002Fimg.shields.io\u002Fbadge\u002FDeepWiki-looplj%2Faxonhub-blue.svg?logo=data:image\u002Fpng;base64,iVBORw0KGgoAAAANSUhEUgAAACwAAAAyCAYAAAAnWDnqAAAAAXNSR0IArs4c6QAAA05JREFUaEPtmUtyEzEQhtWTQyQLHNak2AB7ZnyXZMEjXMGeK\u002FAIi+QuHrMnbChYY7MIh8g01fJoopFb0uhhEqqcbWTp06\u002Fuv1saEDv4O3n3dV60RfP947Mm9\u002FSQc0ICFQgzfc4CYZoTPAswgSJCCUJUnAAoRHOAUOcATwbmVLWdGoH\u002F\u002FPB8mnKqScAhsD0kYP3j\u002FYt5LPQe2KvcXmGvRHcDnpxfL2zOYJ1mFwrryWTz0advv1Ut4CJgf5uhDuDj5eUcAUoahrdY\u002F56ebRWeraTjMt\u002F00Sh3UDtjgHtQNHwcRGOC98BJEAEymycmYcWwOprTgcB6V5JK5TAJ+fXGLBm3FDAmn6oPPjR4rKCAoJCal2eAiQp2x0vxTPB3ALO2CRkwmDy5WohzBDwSEFKRwPbknEggCPB\u002FimwrycgxX2NzoMCHhPkDwqYMr9tRcP5qNrMZHkVnOjRMWwLCcr8ohBVb1OMjxLwGCvjTikrsBOiA6fNyCrm8V1rP93iVPpwaE+gO0SsWmPiXB+jikdf6SizrT5qKasx5j8ABbHpFTx+vFXp9EnYQmLx02h1QTTrl6eDqxLnGjporxl3NL3agEvXdT0WmEost648sQOYAeJS9Q7bfUVoMGnjo4AZdUMQku50McDcMWcBPvr0SzbTAFDfvJqwLzgxwATnCgnp4wDl6Aa+Ax283gghmj+vj7feE2KBBRMW3FzOpLOADl0Isb5587h\u002FU4gGvkt5v60Z1VLG8BhYjbzRwyQZemwAd6cCR5\u002FXFWLYZRIMpX39AR0tjaGGiGzQAAAABJRU5ErkJggg==)](https:\u002F\u002Fdeepwiki.com\u002Flooplj\u002Faxonhub)\n- [![zread](https:\u002F\u002Fimg.shields.io\u002Fbadge\u002FAsk_Zread-_.svg?style=flat&color=00b0aa&labelColor=000000&logo=data%3Aimage%2Fsvg%2Bxml%3Bbase64%2CPHN2ZyB3aWR0aD0iMTYiIGhlaWdodD0iMTYiIHZpZXdCb3g9IjAgMCAxNiAxNiIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZD0iTTQuOTYxNTYgMS42MDAxSDIuMjQxNTZDMS44ODgxIDEuNjAwMSAxLjYwMTU2IDEuODg2NjQgMS42MDE1NiAyLjI0MDFWNC45NjE1QzEuNjAxNTYgNS4zMTM1NiAxLjg4ODEgNS42MDAxIDIuMjQxNTZgNS42MDAxSDQuOTYxNTYgNS4zMTM1NiAxLjYwMDFaIiBmaWxsPSIjZmZmIi8%2BCjxwYXRoIGQ9Ik00Ljk2MTU2IDEwLjMzk5OSDHMi4yNDE1NiNDMS44ODEgMTAuMzk5OSAxLjYwMTU2IDEwLjY4NjQgMS42MDE1NiAyLjI0MDFWNC45NjE1QzEuNjAxNTYgNS42MDAxIDEuODg4MSAxLjYwMDE1NiAyLjI0MDFWNC45NjE1QzEuNjAxNTYgNS42MDAxIDEuODg4MSAxLjYwMDE1NiAyLjI0MDFWNC45NjE1QzEuNjAxNTYgNS42MDAxIDEuODg4MSAxLjYwMDE1NiAyLjI0MDFWNC45NjE1QzEuNjAxNTYgNS42MDAxIDEuODg4MSAxLjYwMDE1NiAyLjI0MDFWNC45NjE1QzEuNjAxNTYgNS42MDAxIDEuODg4MSAxLjYwMDE1NiAyLjI0MDFWNC45NjE1QzEuNjAxNTYgNS42MDAxIDEuODg4MSAxLjYwMDE1NiAyLjI0MDFWNC45NjE1QzEuNjAxNTYgNS42MDAxIDEuODg4MSAxLjYwMDE1NiAyLjI0MDFWNC45NjE1QzEuNjAxNTYgNS42MDAxIDEuODg4MSAxLjYwMDE1NiAyLjI0MDFWNC45NjE1QzEuNjAxNTY......\n\n### 📸 截图\n\n以下是 AxonHub 运行时的一些截图：\n\n\u003Ctable>\n  \u003Ctr>\n    \u003Ctd align=\"center\">\n      \u003Ca href=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Flooplj_axonhub_readme_2b157fd735d5.png\">\n        \u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Flooplj_axonhub_readme_2b157fd735d5.png\" alt=\"系统仪表盘\" width=\"250\"\u002F>\n      \u003C\u002Fa>\n      \u003Cbr\u002F>\n      系统仪表盘\n    \u003C\u002Ftd>\n    \u003Ctd align=\"center\">\n      \u003Ca href=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Flooplj_axonhub_readme_52c48b0e5779.png\">\n        \u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Flooplj_axonhub_readme_52c48b0e5779.png\" alt=\"频道管理\" width=\"250\"\u002F>\n      \u003C\u002Fa>\n      \u003Cbr\u002F>\n      频道管理\n    \u003C\u002Ftd>\n    \u003Ctd align=\"center\">\n      \u003Ca href=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Flooplj_axonhub_readme_0c380a57ed6e.png\">\n        \u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Flooplj_axonhub_readme_0c380a57ed6e.png\" alt=\"模型价格\" width=\"250\"\u002F>\n      \u003C\u002Fa>\n      \u003Cbr\u002F>\n      模型价格\n    \u003C\u002Ftd>\n  \u003C\u002Ftr>\n  \u003Ctr>\n    \u003Ctd align=\"center\">\n      \u003Ca href=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Flooplj_axonhub_readme_cc86616acb3e.png\">\n        \u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Flooplj_axonhub_readme_cc86616acb3e.png\" alt=\"模型列表\" width=\"250\"\u002F>\n      \u003C\u002Fa>\n      \u003Cbr\u002F>\n      模型列表\n    \u003C\u002Ftd>\n    \u003Ctd align=\"center\">\n      \u003Ca href=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Flooplj_axonhub_readme_a655fd062da8.png\">\n        \u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Flooplj_axonhub_readme_a655fd062da8.png\" alt=\"追踪查看器\" width=\"250\"\u002F>\n      \u003C\u002Fa>\n      \u003Cbr\u002F>\n      追踪查看器\n    \u003C\u002Ftd>\n    \u003Ctd align=\"center\">\n      \u003Ca href=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Flooplj_axonhub_readme_d8c77e5d3bdf.png\">\n        \u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Flooplj_axonhub_readme_d8c77e5d3bdf.png\" alt=\"请求监控\" width=\"250\"\u002F>\n      \u003C\u002Fa>\n      \u003Cbr\u002F>\n      请求监控\n    \u003C\u002Ftd>\n  \u003C\u002Ftr>\n\u003C\u002Ftable>\n\n---\n\n### 🚀 API 类型\n\n| API 类型             | 状态     | 描述                    | 文档                                     |\n| -------------------- | ---------- | ------------------------------ | -------------------------------------------- |\n| **文本生成**  | ✅ 完成    | 对话式接口       | [OpenAI API](docs\u002Fen\u002Fapi-reference\u002Fopenai-api.md), [Anthropic API](docs\u002Fen\u002Fapi-reference\u002Fanthropic-api.md), [Gemini API](docs\u002Fen\u002Fapi-reference\u002Fgemini-api.md) |\n| **图像生成** | ✅ 完成 | 图像生成               | [图像生成](docs\u002Fen\u002Fapi-reference\u002Fimage-generation.md) |\n| **重排序**           | ✅ 完成    | 结果排序                | [Rerank API](docs\u002Fen\u002Fapi-reference\u002Frerank-api.md) |\n| **嵌入**        | ✅ 完成    | 向量嵌入生成    | [Embedding API](docs\u002Fen\u002Fapi-reference\u002Fembedding-api.md) |\n| **实时**         | 📝 待办    | 实时对话功能 | -                                            |\n\n---\n\n### 🤖 支持的提供商\n\n| 提供商               | 状态     | 支持的模型             | 兼容的 API |\n| ---------------------- | ---------- | ---------------------------- | --------------- |\n| **OpenAI**             | ✅ 完成    | GPT-4, GPT-4o, GPT-5, 等.   | OpenAI, Anthropic, Gemini, Embedding, Image Generation |\n| **Anthropic**          | ✅ 完成    | Claude 3.5, Claude 3.0, 等. | OpenAI, Anthropic, Gemini |\n| **Zhipu AI**           | ✅ 完成    | GLM-4.5, GLM-4.5-air, 等.   | OpenAI, Anthropic, Gemini |\n| **Moonshot AI (Kimi)** | ✅ 完成    | kimi-k2, 等.                | OpenAI, Anthropic, Gemini |\n| **DeepSeek**           | ✅ 完成    | DeepSeek-V3.1, 等.          | OpenAI, Anthropic, Gemini |\n| **ByteDance Doubao**   | ✅ 完成    | doubao-1.6, 等.             | OpenAI, Anthropic, Gemini, Image Generation |\n| **Gemini**             | ✅ 完成    | Gemini 2.5, 等.             | OpenAI, Anthropic, Gemini, Image Generation |\n| **Fireworks**          | ✅ 完成    | MiniMax-M2.5, GLM-5, Kimi K2.5, 等. | OpenAI |\n| **Jina AI**            | ✅ 完成    | 嵌入、重排序等   | Jina Embedding, Jina Rerank |\n| **OpenRouter**         | ✅ 完成    | 各种模型               | OpenAI, Anthropic, Gemini, Image Generation |\n| **ZAI**                | ✅ 完成    | -                            | Image Generation |\n| **AWS Bedrock**        | 🔄 测试 | Claude 在 AWS 上                | OpenAI, Anthropic, Gemini |\n| **Google Cloud**       | 🔄 测试 | Claude 在 GCP 上                | OpenAI, Anthropic, Gemini |\n| **NanoGPT**            | ✅ 完成    | 各种模型、图像生成    | OpenAI, Anthropic, Gemini, Image Generation |\n\n---\n\n## 🚀 快速入门\n\n### 30 秒本地启动\n\n```bash\n# 下载并解压（macOS ARM64 示例）\ncurl -sSL https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Freleases\u002Flatest\u002Fdownload\u002Faxonhub_darwin_arm64.tar.gz | tar xz\ncd axonhub_*\n\n# 使用 SQLite 运行（默认）\n.\u002Faxonhub\n\n# 打开 http:\u002F\u002Flocalhost:8090\n# 首次运行：按照设置向导初始化系统（创建管理员账号，密码至少 6 位）\n```\n\n就是这样！现在配置你的第一个 AI 频道，并通过 AxonHub 调用模型吧。\n\n### 无代码迁移示例\n\n**你现有的代码无需任何更改即可使用。** 只需将 SDK 指向 AxonHub 即可：\n\n```python\nfrom openai import OpenAI\n\nclient = OpenAI(\n    base_url=\"http:\u002F\u002Flocalhost:8090\u002Fv1\",  # 指向 AxonHub\n    api_key=\"your-axonhub-api-key\"        # 使用 AxonHub 的 API 密钥\n)\n\n# 使用 OpenAI SDK 调用 Claude！\nresponse = client.chat.completions.create(\n    model=\"claude-3-5-sonnet\",  # 或 gpt-4、gemini-pro、deepseek-chat...\n    messages=[{\"role\": \"user\", \"content\": \"你好！\"}]\n)\n```\n\n只需更改一行代码即可切换模型：`model=\"gpt-4\"` → `model=\"claude-3-5-sonnet\"`。无需修改 SDK。\n\n### 一键部署到 Render\n\n在 [Render](https:\u002F\u002Frender.com) 上一键免费部署 AxonHub。\n\n\u003Cdiv>\n\n\u003Ca href=\"https:\u002F\u002Frender.com\u002Fdeploy?repo=https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\">\n  \u003Cimg src=\"https:\u002F\u002Frender.com\u002Fimages\u002Fdeploy-to-render-button.svg\" alt=\"Deploy to Render\">\n\u003C\u002Fa>\n\n\u003C\u002Fdiv>\n\n---\n\n## 🚀 部署指南\n\n### 💻 个人电脑部署\n\n非常适合个人开发者和小型团队。无需复杂的配置。\n\n#### 快速下载与运行\n\n1. **从 GitHub Releases 下载最新版本**：\n\n   - 选择适合您操作系统的版本：\n\n2. **解压并运行**\n\n   ```bash\n   # 解压下载的文件\n   unzip axonhub_*.zip\n   cd axonhub_*\n\n   # 添加执行权限（仅限 Linux\u002FmacOS）\n   chmod +x axonhub\n\n   # 直接运行——默认使用 SQLite 数据库\n\n   # 将 AxonHub 安装到系统\n   sudo .\u002Finstall.sh\n\n   # 启动 AxonHub 服务\n   .\u002Fstart.sh\n\n   # 停止 AxonHub 服务\n   .\u002Fstop.sh\n   ```\n\n3. **访问应用**\n   ```\n   http:\u002F\u002Flocalhost:8090\n   ```\n\n---\n\n### 🖥️ 服务器部署\n\n适用于生产环境、高可用性和企业级部署。\n\n#### 数据库支持\n\nAxonHub 支持多种数据库，以满足不同规模的部署需求：\n\n| 数据库       | 支持版本 | 推荐场景                             | 自动迁移 | 链接                                                       |\n| -------------- | ------------------ | ------------------------------------------------ | -------------- | ----------------------------------------------------------- |\n| **TiDB Cloud** | Starter            | 无服务器、免费层级、自动扩展                | ✅ 支持   | [TiDB Cloud](https:\u002F\u002Fwww.pingcap.com\u002Ftidb-cloud-starter\u002F)   |\n| **TiDB Cloud** | Dedicated          | 分布式部署、大规模              | ✅ 支持   | [TiDB Cloud](https:\u002F\u002Fwww.pingcap.com\u002Ftidb-cloud-dedicated\u002F) |\n| **TiDB**       | V8.0+              | 分布式部署、大规模              | ✅ 支持   | [TiDB](https:\u002F\u002Ftidb.io\u002F)                                    |\n| **Neon DB**    | -                  | 无服务器、免费层级、自动扩展                | ✅ 支持   | [Neon DB](https:\u002F\u002Fneon.com\u002F)                                |\n| **PostgreSQL** | 15+                | 生产环境、中大型部署 | ✅ 支持   | [PostgreSQL](https:\u002F\u002Fwww.postgresql.org\u002F)                   |\n| **MySQL**      | 8.0+               | 生产环境、中大型部署 | ✅ 支持   | [MySQL](https:\u002F\u002Fwww.mysql.com\u002F)                             |\n| **SQLite**     | 3.0+               | 开发环境、小型部署       | ✅ 支持   | [SQLite](https:\u002F\u002Fwww.sqlite.org\u002Findex.html)                 |\n\n#### 配置\n\nAxonHub 使用 YAML 配置文件，并支持通过环境变量进行覆盖：\n\n```yaml\n# config.yml\nserver:\n  port: 8090\n  name: \"AxonHub\"\n  debug: false\n\ndb:\n  dialect: \"tidb\"\n  dsn: \"\u003CUSER>.root:\u003CPASSWORD>@tcp(gateway01.us-west-2.prod.aws.tidbcloud.com:4000)\u002Faxonhub?tls=true&parseTime=true&multiStatements=true&charset=utf8mb4\"\n\nlog:\n  level: \"info\"\n  encoding: \"json\"\n```\n\n环境变量：\n\n```bash\nAXONHUB_SERVER_PORT=8090\nAXONHUB_DB_DIALECT=\"tidb\"\nAXONHUB_DB_DSN=\"\u003CUSER>.root:\u003CPASSWORD>@tcp(gateway01.us-west-2.prod.aws.tidbcloud.com:4000)\u002Faxonhub?tls=true&parseTime=true&multiStatements=true&charset=utf8mb4\"\nAXONHUB_LOG_LEVEL=info\n```\n\n有关详细配置说明，请参阅[配置文档](docs\u002Fen\u002Fdeployment\u002Fconfiguration.md)。\n\n#### Docker Compose 部署\n\n```bash\n# 克隆项目\ngit clone https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub.git\ncd axonhub\n\n# 设置环境变量\nexport AXONHUB_DB_DIALECT=\"tidb\"\nexport AXONHUB_DB_DSN=\"\u003CUSER>.root:\u003CPASSWORD>@tcp(gateway01.us-west-2.prod.aws.tidbcloud.com:4000)\u002Faxonhub?tls=true&parseTime=true&multiStatements=true&charset=utf8mb4\"\n\n# 启动服务\ndocker-compose up -d\n\n# 检查状态\ndocker-compose ps\n```\n\n#### Helm Kubernetes 部署\n\n使用官方 Helm Chart 将 AxonHub 部署到 Kubernetes 上：\n\n```bash\n# 快速安装\ngit clone https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub.git\ncd axonhub\nhelm install axonhub .\u002Fdeploy\u002Fhelm\n\n# 生产环境部署\nhelm install axonhub .\u002Fdeploy\u002Fhelm -f .\u002Fdeploy\u002Fhelm\u002Fvalues-production.yaml\n\n# 访问 AxonHub\nkubectl port-forward svc\u002Faxonhub 8090:8090\n# 访问 http:\u002F\u002Flocalhost:8090\n```\n\n**关键配置选项：**\n\n| 参数 | 描述 | 默认值 |\n|-----------|-------------|---------|\n| `axonhub.replicaCount` | 副本数 | `1` |\n| `axonhub.dbPassword` | 数据库密码 | `axonhub_password` |\n| `postgresql.enabled` | 内嵌 PostgreSQL | `true` |\n| `ingress.enabled` | 启用 Ingress | `false` |\n| `persistence.enabled` | 数据持久化 | `false` |\n\n有关详细配置和故障排除，请参阅[Helm Chart 文档](deploy\u002Fhelm\u002FREADME.md)。\n\n#### 虚拟机部署\n\n从 [GitHub Releases](https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Freleases) 下载最新版本：\n\n```bash\n# 解压并运行\nunzip axonhub_*.zip\ncd axonhub_*\n\n# 设置环境变量\nexport AXONHUB_DB_DIALECT=\"tidb\"\nexport AXONHUB_DB_DSN=\"\u003CUSER>.root:\u003CPASSWORD>@tcp(gateway01.us-west-2.prod.aws.tidbcloud.com:4000)\u002Faxonhub?tls=true&parseTime=true&multiStatements=true&charset=utf8mb4\"\n\nsudo .\u002Finstall.sh\n\n# 检查配置文件\naxonhub config check\n\n# 启动服务\n# 为简便起见，建议使用辅助脚本管理 AxonHub：\n\n# 启动\n.\u002Fstart.sh\n\n# 停止\n.\u002Fstop.sh\n```\n\n---\n\n## 📖 使用指南\n\n### 统一 API 概览\n\nAxonHub 提供了一个统一的 API 网关，同时支持 OpenAI Chat Completions 和 Anthropic Messages API。这意味着您可以：\n\n- **使用 OpenAI API 调用 Anthropic 模型** - 在继续使用 OpenAI SDK 的同时访问 Claude 模型\n- **使用 Anthropic API 调用 OpenAI 模型** - 使用 Anthropic 的原生 API 格式调用 GPT 模型\n- **使用 Gemini API 调用 OpenAI 模型** - 使用 Gemini 的原生 API 格式调用 GPT 模型\n- **自动 API 转换** - AxonHub 会自动处理格式转换\n- **无需更改代码** - 您现有的 OpenAI 或 Anthropic 客户端代码可以继续正常工作\n\n### 1. 初始设置\n\n1. **访问管理界面**\n\n   ```\n   http:\u002F\u002Flocalhost:8090\n   ```\n\n2. **配置 AI 提供商**\n\n   - 在管理界面中添加 API 密钥\n   - 测试连接以确保配置正确\n\n3. **创建用户和角色**\n   - 设置权限管理\n   - 分配适当的访问权限\n\n### 2. 通道配置\n\n在管理界面中配置 AI 提供商通道。有关通道配置的详细信息，包括模型映射、参数覆盖和故障排除，请参阅[通道配置指南](docs\u002Fen\u002Fguides\u002Fchannel-management.md)。\n\n### 3. 模型管理\n\nAxonHub 提供了一个灵活的模型管理系统，支持通过模型关联将抽象模型映射到特定的通道和模型实现。这使得：\n\n- **统一的模型接口** - 可以使用抽象模型 ID（如 `gpt-4`、`claude-3-opus`）代替通道特定的名称\n- **智能通道选择** - 根据关联规则和负载均衡自动将请求路由到最佳通道\n- **灵活的映射策略** - 支持精确的通道-模型匹配、正则表达式模式和基于标签的选择\n- **优先级回退** - 可以配置多个具有优先级的关联，以便在出现故障时自动切换\n\n有关模型管理的全面信息，包括关联类型、配置示例和最佳实践，请参阅[模型管理指南](docs\u002Fen\u002Fguides\u002Fmodel-management.md)。\n\n### 4. 创建 API 密钥\n\n创建 API 密钥以对您的应用程序进行 AxonHub 身份验证。每个 API 密钥都可以配置多个配置文件，用于定义：\n\n- **模型映射** - 使用精确匹配或正则表达式模式将用户请求的模型转换为实际可用的模型\n- **渠道限制** - 通过渠道 ID 或标签限制 API 密钥可以使用的渠道\n- **模型访问控制** - 控制特定配置文件可访问的模型\n- **配置文件切换** - 通过激活不同的配置文件实现实时行为切换\n\n有关 API 密钥配置文件的详细信息，包括配置示例、验证规则和最佳实践，请参阅 [API 密钥配置文件指南](docs\u002Fen\u002Fguides\u002Fapi-key-profiles.md)。\n\n### 5. AI 编码工具集成\n\n请参阅专用指南，了解详细的设置步骤、故障排除以及如何将这些工具与 AxonHub 模型配置文件结合使用的技巧：\n- [OpenCode 集成指南](docs\u002Fen\u002Fguides\u002Fopencode-integration.md)\n- [Claude Code 集成指南](docs\u002Fen\u002Fguides\u002Fclaude-code-integration.md)\n- [Codex 集成指南](docs\u002Fen\u002Fguides\u002Fcodex-integration.md)\n\n---\n\n### 6. SDK 使用\n\n有关 SDK 的详细使用示例和代码片段，请参阅 API 文档：\n- [OpenAI API](docs\u002Fen\u002Fapi-reference\u002Fopenai-api.md)\n- [Anthropic API](docs\u002Fen\u002Fapi-reference\u002Fanthropic-api.md)\n- [Gemini API](docs\u002Fen\u002Fapi-reference\u002Fgemini-api.md)\n\n## 🛠️ 开发指南\n\n有关详细的开发说明、架构设计和贡献指南，请参阅 [docs\u002Fen\u002Fdevelopment\u002Fdevelopment.md](docs\u002Fen\u002Fdevelopment\u002Fdevelopment.md)。\n\n---\n\n## 🤝 致谢\n\n- 🙏 [musistudio\u002Fllms](https:\u002F\u002Fgithub.com\u002Fmusistudio\u002Fllms) - LLM 转换框架，灵感来源\n- 🎨 [satnaing\u002Fshadcn-admin](https:\u002F\u002Fgithub.com\u002Fsatnaing\u002Fshadcn-admin) - 管理界面模板\n- 🔧 [99designs\u002Fgqlgen](https:\u002F\u002Fgithub.com\u002F99designs\u002Fgqlgen) - GraphQL 代码生成\n- 🌐 [gin-gonic\u002Fgin](https:\u002F\u002Fgithub.com\u002Fgin-gonic\u002Fgin) - HTTP 框架\n- 🗄️ [ent\u002Fent](https:\u002F\u002Fgithub.com\u002Fent\u002Fent) - ORM 框架\n- 🔧 [air-verse\u002Fair](https:\u002F\u002Fgithub.com\u002Fair-verse\u002Fair) - Go 服务自动重载\n- ☁️ [Render](https:\u002F\u002Frender.com) - 免费云部署平台，用于托管我们的演示\n- 🗃️ [TiDB Cloud](https:\u002F\u002Fwww.pingcap.com\u002Ftidb-cloud\u002F) - 用于演示部署的无服务器数据库平台\n\n---\n\n## 📄 许可证\n\n本项目采用多重许可证（Apache-2.0 和 LGPL-3.0）授权。有关详细的许可概述和条款，请参阅 [LICENSE](LICENSE) 文件。\n\n---\n\n\u003Cdiv align=\"center\">\n\n**AxonHub** - 一体化 AI 开发平台，让 AI 开发更简单\n\n[🏠 首页](https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub) • [📚 文档](https:\u002F\u002Fdeepwiki.com\u002Flooplj\u002Faxonhub) • [🐛 问题反馈](https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Fissues)\n\n由 AxonHub 团队用心打造\n\n\u003C\u002Fdiv>","# AxonHub 快速上手指南\n\nAxonHub 是一个一站式 AI 开发平台（AI 网关），允许你在不修改任何代码的情况下，自由切换不同的模型提供商（如从 GPT-4 切换到 Claude 或 Gemini）。它统一了 API 格式，支持请求追踪、负载均衡和成本管控。\n\n## 环境准备\n\n*   **操作系统**：支持 macOS (Intel\u002FARM), Linux, Windows。\n*   **前置依赖**：无需安装额外依赖（二进制文件已包含所有必要组件）。\n*   **网络要求**：确保服务器或本地机器可以访问目标模型提供商的 API（如 OpenAI, Anthropic, 智谱 AI 等）。\n*   **端口占用**：默认使用 `8090` 端口，请确保该端口未被占用。\n\n## 安装步骤\n\n### 方式一：本地快速启动 (推荐开发测试)\n\n以下以 macOS ARM64 为例，其他架构请在 [GitHub Releases](https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Freleases) 下载对应版本。\n\n```bash\n# 1. 下载并解压最新版本\ncurl -sSL https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Freleases\u002Flatest\u002Fdownload\u002Faxonhub_darwin_arm64.tar.gz | tar xz\n\n# 2. 进入目录\ncd axonhub_*\n\n# 3. 运行程序 (默认使用 SQLite 存储配置)\n.\u002Faxonhub\n```\n\n启动成功后，访问 `http:\u002F\u002Flocalhost:8090`。首次访问需跟随向导初始化系统（创建管理员账号，密码至少 6 位）。\n\n### 方式二：Docker 部署\n\n```bash\ndocker run -d \\\n  --name axonhub \\\n  -p 8090:8090 \\\n  -v axonhub_data:\u002Fapp\u002Fdata \\\n  ghcr.io\u002Flooplj\u002Faxonhub:latest\n```\n\n### 方式三：一键部署到云端\n\n点击以下按钮即可在 Render 平台免费部署：\n\n[![Deploy to Render](https:\u002F\u002Frender.com\u002Fimages\u002Fdeploy-to-render-button.svg)](https:\u002F\u002Frender.com\u002Fdeploy?repo=https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub)\n\n## 基本使用\n\n### 1. 配置渠道 (Channel)\n登录 Web 界面 (`http:\u002F\u002Flocalhost:8090`)：\n1. 进入 **Channel Management (渠道管理)**。\n2. 添加你的模型提供商 API Key（支持 OpenAI, Anthropic, 智谱，Moonshot, DeepSeek 等）。\n3. 系统会自动同步可用模型列表。\n\n### 2. 零代码迁移示例\n无需修改现有代码逻辑，只需将 SDK 的 `base_url` 指向 AxonHub，并使用 AxonHub 生成的 API Key。\n\n**Python 示例 (使用 OpenAI SDK 调用 Claude 模型):**\n\n```python\nfrom openai import OpenAI\n\nclient = OpenAI(\n    base_url=\"http:\u002F\u002Flocalhost:8090\u002Fv1\",  # 指向 AxonHub 地址\n    api_key=\"your-axonhub-api-key\"        # 使用在 AxonHub 后台创建的 API Key\n)\n\n# 直接调用 Claude 模型，无需更换 SDK\nresponse = client.chat.completions.create(\n    model=\"claude-3-5-sonnet\",  # 可随意切换为 gpt-4, gemini-pro, deepseek-chat 等\n    messages=[{\"role\": \"user\", \"content\": \"Hello!\"}]\n)\n\nprint(response.choices[0].message.content)\n```\n\n**切换模型：**\n仅需更改代码中的 `model` 参数即可在不同提供商之间切换，无需重构代码或更换 SDK。\n\n### 3. 查看监控与追踪\n在 Web 界面的 **Trace Viewer** 或 **Request Monitoring** 中，可以实时查看请求链路、耗时、Token 消耗及成本明细。","某跨境电商团队正在开发一款智能客服系统，需要同时调用 GPT-4 处理复杂投诉、Claude 生成温情回复以及 Gemini 进行多语言翻译，以应对全球不同地区的用户需求。\n\n### 没有 axonhub 时\n- **代码耦合严重**：开发人员不得不在代码中硬编码多家厂商的 SDK（如 OpenAI、Anthropic），切换模型或新增供应商时需要重构大量业务逻辑。\n- **故障恢复缓慢**：当某个模型服务商出现网络波动或宕机时，系统缺乏自动熔断机制，导致用户请求直接报错，客服响应中断。\n- **成本黑盒难控**：无法实时追踪各业务线对不同模型的调用量和具体花费，月底结算时常发现预算超支却找不到原因。\n- **调试效率低下**：缺乏统一的链路追踪视图，排查“为什么这条回复生成慢了”的问题时，需要在多个服务商的控制台间反复跳转比对日志。\n\n### 使用 axonhub 后\n- **零代码切换模型**：团队只需在 axonhub 配置文件中修改路由策略，即可让原本调用 GPT-4 的业务无缝切换至 Claude，无需改动任何一行后端代码。\n- **毫秒级自动容灾**：axionhub 内置的智能负载均衡能在主通道故障的 100ms 内自动将流量切换至备用模型，确保客服系统 7x24 小时稳定在线。\n- **精细化成本管理**：通过 axonhub 的实时监控面板，团队能清晰看到每个 API 请求的 Token 消耗与费用明细，轻松实现按部门分摊成本并设置预算预警。\n- **全链路可观测性**：axonhub 提供端到端的请求追踪功能，开发人员可在一个界面完整查看请求耗时、缓存命中情况及各环节状态，故障定位时间缩短 80%。\n\naxonhub 让企业彻底摆脱了对单一模型厂商的依赖，以最低的开发成本构建了高可用、可观测且成本可控的 AI 基础设施。","https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Flooplj_axonhub_2b157fd7.png","looplj","Loop","https:\u002F\u002Foss.gittoolsai.com\u002Favatars\u002Flooplj_f56017c9.jpg","Coding for fun",null,"深圳","bababaa261@gmail.com","https:\u002F\u002Fgithub.com\u002Flooplj",[83,87,91,95,99,103,106,110,114,116],{"name":84,"color":85,"percentage":86},"Go","#00ADD8",64.6,{"name":88,"color":89,"percentage":90},"TypeScript","#3178c6",32.2,{"name":92,"color":93,"percentage":94},"Shell","#89e051",1.5,{"name":96,"color":97,"percentage":98},"CSS","#663399",0.6,{"name":100,"color":101,"percentage":102},"JavaScript","#f1e05a",0.4,{"name":104,"color":105,"percentage":102},"PowerShell","#012456",{"name":107,"color":108,"percentage":109},"Makefile","#427819",0.3,{"name":111,"color":112,"percentage":113},"Batchfile","#C1F12E",0,{"name":115,"color":85,"percentage":113},"Go Template",{"name":117,"color":118,"percentage":113},"HTML","#e34c26",3100,347,"2026-04-16T13:57:46","NOASSERTION","Linux, macOS, Windows","未说明 (作为 API 网关运行，通常无需专用 GPU)","未说明",{"notes":127,"python":128,"dependencies":129},"该项目主要使用 Go 语言开发，提供预编译的二进制文件，无需配置 Python 环境。支持通过 Docker 部署或直接下载二进制文件运行。默认使用 SQLite 数据库，首次运行需通过向导初始化管理员账户。","未说明 (核心由 Go 语言编写，提供二进制文件)",[130],"Docker (可选)",[15,45,35,13,14],[133,134,135,136,137,138,139,140,141,142,143,144,145,38,146],"ai","anthropic","openai","agent","agents","anthropic-api","api-gateway","cost-management","gemini-api","llm","claude","claude-code","codex","deepseek","2026-03-27T02:49:30.150509","2026-04-17T09:54:30.776001",[150,155,160,165,170,175],{"id":151,"question_zh":152,"answer_zh":153,"source_url":154},37006,"在 Codex 中配置 AxonHub 时，使用 OpenAI Chat Completion API 报错，但使用 Response API 正常，如何解决？","这是因为 Codex 的自定义工具（custom tool）不支持 OpenAI Chat Completion API 格式。解决方法是：在 AxonHub 中复制该渠道配置，将 API 格式从 'OpenAI Chat Completion' 改为 'Response API'，然后在 Codex 中使用这个新的 Response API 配置即可正常工作。","https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Fissues\u002F935",{"id":156,"question_zh":157,"answer_zh":158,"source_url":159},37007,"为什么 Python SDK 调用时报错，提示字段为 null 或 0 的问题，而 Go 语言通常没问题？","这是因为 Python 对 API 规范校验非常严格，而 Go 语言对零值（null 或 0）通常不做强校验。AxonHub 已进行两次修复：1. 当字段为 null 时不再返回该字段；2. 当字段为 0 时现在也会返回。如果仍遇到此类问题，建议确保使用的是最新版本，并注意 Python SDK 对参数格式的严格要求。","https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Fissues\u002F243",{"id":161,"question_zh":162,"answer_zh":163,"source_url":164},37008,"Anthropic 协议模型在 \u002Fv1\u002Fmodels 列表中不显示，且无法请求，怎么办？","目前只有关联了 OpenAI 协议的模型才会出现在 \u002Fv1\u002Fmodels 列表中。对于 Anthropic 协议模型，请确保在客户端 SDK 或工具（如 Claude Code）中将基础 URL 设置为 `https:\u002F\u002F你的域名\u002Fanthropic`，完整请求路径应为 `\u002Fanthropic\u002Fv1\u002Fmessages`。不要依赖 \u002Fv1\u002Fmodels 接口来查看 Anthropic 模型，直接配置正确的端点即可使用。","https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Fissues\u002F1227",{"id":166,"question_zh":167,"answer_zh":168,"source_url":169},37009,"每日概览统计数据显示为空，即使已设置模型价格，如何解决？","这通常是由于 MySQL 数据库缺少时区表导致的。虽然操作系统有时区信息，但 MySQL 需要单独加载。解决方法是在服务器上执行命令：`mysql_tzinfo_to_sql \u002Fusr\u002Fshare\u002Fzoneinfo | mysql -u root -p mysql`，将系统时区信息导入 MySQL，然后重启 AxonHub 服务即可正常显示统计数据。","https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Fissues\u002F744",{"id":171,"question_zh":172,"answer_zh":173,"source_url":174},37010,"添加 Codex 作为上游渠道时，测试 Responses 接口报错 'Invalid URL'，但实际使用正常，如何处理？","这是渠道测试功能的已知限制。Responses 接口默认测试方式使用 input string 格式，但某些服务（如 Codex）只支持 input array 格式。虽然测试会报错，但配置后实际使用是完全正常的。建议跳过测试步骤直接保存配置，或在后续版本中等待测试方式优化为默认使用 input array 格式。","https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Fissues\u002F384",{"id":176,"question_zh":177,"answer_zh":178,"source_url":179},37011,"调用 Gemini API 时报错 'illegal base64 data at input byte 7'，如何解决？","该问题已在最新版本中修复。错误通常与 Lobe Hub 2.0 或其他客户端发送的请求格式有关。请确保升级到 AxonHub 最新版本，如果问题仍然存在，检查客户端发送的 payload 是否符合 Gemini API 规范，特别是 base64 编码的数据部分。","https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Fissues\u002F227",[181,186,191,196,201,206,211,216,221,226,231,236,241,246,251,256,261,266,271,276],{"id":182,"version":183,"summary_zh":184,"released_at":185},297430,"v0.9.33","## 变更内容\n* 功能：新增 Gemini\u002F通义千问嵌入模型支持，由 @looplj 在 https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Fpull\u002F1388 中关闭 #1093 问题。\n* 优化：尝试修复频道\u002F模型缓存未刷新的问题，由 @looplj 在 https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Fpull\u002F1390 中完成。\n* 优化：使 Codex 跟踪头与最新 Codex CLI 保持一致，由 @yoke233 在 https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Fpull\u002F1387 中实现。\n* 功能：实现实时分块预览和响应预览，由 @LazuliKao 在 https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Fpull\u002F1342 中完成。\n* 功能：添加缓存诊断工具，由 @looplj 在 https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Fpull\u002F1394 中实现。\n* 修复：在 Driver() 中移除 DebugDriver 层的包装，以修复调试模型中的性能分析问题，由 @MoshiCoCo 在 https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Fpull\u002F1397 中完成。\n* 重构：使用直播中间件实现实时预览，由 @looplj 在 https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Fpull\u002F1395 中完成。\n* 功能：新增空流响应检测功能，由 @looplj 在 https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Fpull\u002F1399 中关闭 #292 问题。\n* 优化：为页面\u002F对话框提供移动端界面，由 @looplj 在 https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Fpull\u002F1400 中关闭 #946 问题。\n\n## 新贡献者\n* @yoke233 在 https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Fpull\u002F1387 中完成了首次贡献。\n* @MoshiCoCo 在 https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Fpull\u002F1397 中完成了首次贡献。\n\n**完整变更日志**：https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Fcompare\u002Fv0.9.32...v0.9.33","2026-04-16T00:57:29",{"id":187,"version":188,"summary_zh":189,"released_at":190},297431,"v0.9.32","## 变更内容\n* 功能：频道 RPM 设置，由 @looplj 在 https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Fpull\u002F1320 中关闭 #746\n* 功能：频道并发设置，由 @looplj 在 https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Fpull\u002F1322 中关闭 #1130\n* 构建依赖更新：升级 aws eventstream，由 @looplj 在 https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Fpull\u002F1332 中完成\n* 功能：添加 kwaipilot 开发者目录支持，由 @llc1123 在 https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Fpull\u002F1328 中完成\n* 功能：尊重频道响应并进行重试，由 @looplj 在 https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Fpull\u002F1333 中关闭 #858\n* 国际化改进：补充模型开发者本地化标签，由 @llc1123 在 https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Fpull\u002F1334 中完成\n* 功能：添加延迟感知策略，由 @looplj 在 https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Fpull\u002F1339 中关闭 #962\n* 功能：为 NanoGPT 频道添加图像生成支持，由 @djdembeck 在 https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Fpull\u002F1345 中完成\n* 修复：修复下游无 system message 时 Codex 渠道返回 400 的问题，由 @llc1123 在 https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Fpull\u002F1346 中完成\n* 功能：为 \u002Fv1\u002Fmodels 添加可配置的默认响应模式，由 @raikyou 在 https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Fpull\u002F1347 中完成\n* 国际化改进：修复 zh-CN 名称占位符，由 @qaqland 在 https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Fpull\u002F1349 中完成\n* 优化：小幅主题优化，由 @looplj 在 https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Fpull\u002F1354 中完成\n* 功能：批量测试频道 API 密钥，由 @looplj 在 https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Fpull\u002F1356 中关闭 #1318\n* 修复：自动注册锚点，由 @looplj 在 https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Fpull\u002F1359 中关闭 #1355\n* 修复：不对请求\u002F响应体进行 JSON 解码转义，由 @looplj 在 https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Fpull\u002F1360 中关闭 #1357\n* 修复：为 gemini vertex 生成 curl 命令，由 @looplj 在 https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Fpull\u002F1363 中关闭 #1329\n* 功能：在频道禁用时添加 Webhook 通知，由 @looplj 在 https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Fpull\u002F1365 中关闭 #1315\n* 修复：修复配额检查中的无限循环，由 @looplj 在 https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Fpull\u002F1366 中完成\n* 功能：为 Webhook 目标添加代理功能，由 @looplj 在 https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Fpull\u002F1367 中完成\n* 修复：从请求上下文中派生 prompt 缓存键，由 @zccrs 在 https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Fpull\u002F1350 中完成\n* 功能：允许查看测试历史，由 @looplj 在 https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Fpull\u002F1371 中完成\n* 修复：应过滤掉非响应通道的自定义工具，由 @looplj 在 https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Fpull\u002F1372 中关闭 #1370\n* 修复：为 copilot 推断 X-Initiator，用于配额跟踪，由 @djdembeck 在 https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Fpull\u002F1375 中完成\n* 功能：添加 nanogpt_responses 频道类型，由 @djdembeck 在 https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Fpull\u002F1376 中完成\n* 功能：为模型关联添加条件，由 @looplj 在 https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Fpull\u002F1379 中关闭 #535\n* 功能：项目\u002FAPI 密钥个人资料允许排除频道标签，由 @looplj 在 https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Fpull\u002F1382 中关闭 #1331\n\n## 新贡献者\n* @qaqland 在 https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Fpull\u002F1349 中完成了首次贡献\n* ","2026-04-13T03:44:18",{"id":192,"version":193,"summary_zh":194,"released_at":195},297432,"v0.9.31","## 变更内容\n* 修复：允许项目配置文件为 nil，由 @looplj 在 https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Fpull\u002F1317 中关闭 #1316\n\n\n**完整变更日志**：https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Fcompare\u002Fv0.9.30...v0.9.31","2026-04-07T15:04:54",{"id":197,"version":198,"summary_zh":199,"released_at":200},297433,"v0.9.30","## 变更内容\n* docs: 添加日文 README，由 @eltociear 在 https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Fpull\u002F1299 中完成\n* feat: 为频道筛选添加项目概览，关闭 #1233，由 @looplj 在 https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Fpull\u002F1303 中完成\n* feat: 按密钥搜索 API 密钥，关闭 #1301，由 @looplj 在 https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Fpull\u002F1305 中完成\n* chore: 清理 OAuth 频道中不必要的项目 ID，由 @looplj 在 https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Fpull\u002F1306 中完成\n* opt: 为 FX 启动添加超时机制，关闭 #1304，由 @looplj 在 https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Fpull\u002F1307 中完成\n* opt: 调整配额 badge 的浮窗，关闭 #1300，由 @looplj 在 https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Fpull\u002F1308 中完成\n* feat: 添加 NVIDIA 作为模型提供商，由 @djdembeck 在 https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Fpull\u002F1309 中完成\n* chore(deps-dev): 将 \u002Ffrontend 中的 vite 从 7.3.1 升级到 7.3.2，由 @dependabot[bot] 在 https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Fpull\u002F1310 中完成\n* opt(responses): 修复函数参数缺少属性的问题，关闭 #1032，由 @looplj 在 https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Fpull\u002F1311 中完成\n* fix: 项目缓存导致认证失败，关闭 #1298，由 @looplj 在 https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Fpull\u002F1312 中完成\n* chore: 清理代理规则，由 @looplj 在 https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Fpull\u002F1314 中完成\n\n## 新贡献者\n* @eltociear 在 https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Fpull\u002F1299 中完成了首次贡献\n\n**完整变更日志**: https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Fcompare\u002Fv0.9.29...v0.9.30","2026-04-07T04:25:25",{"id":202,"version":203,"summary_zh":204,"released_at":205},297434,"v0.9.29","## 变更内容\n* 修复：@looplj 在 https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Fpull\u002F1293 中修复了缺失的翻译和脚本。\n* 修复：@looplj 在 https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Fpull\u002F1296 中检查了翻译键脚本，并添加了缺失的 i18n 键，关闭了 #1295。\n* 文档：@looplj 在 https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Fpull\u002F1297 中添加了 SQLite WAL 相关文档。\n\n\n**完整变更日志**：https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Fcompare\u002Fv0.9.28...v0.9.29","2026-04-06T06:51:52",{"id":207,"version":208,"summary_zh":209,"released_at":210},297435,"v0.9.28","## 变更内容\n* 修复(moonshot)：@djdembeck 在 https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Fpull\u002F1276 中对负值输入 token 进行归一化处理\n* CI：@djdembeck 在 https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Fpull\u002F1275 中添加构建工作流\n* 文档：@looplj 在 https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Fpull\u002F1280 中发布 Claude Code 相关公告\n* 功能：@looplj 在 https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Fpull\u002F1284 中新增允许删除用户的功能\n* 功能：@looplj 在 https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Fpull\u002F1285 中新增允许删除项目的功能\n* 优化：@looplj 在 https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Fpull\u002F1289 中优化线程\u002F追踪 UI\n* 重构：@djdembeck 在 https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Fpull\u002F1286 中新增基于过时性的卡住处理记录清理机制\n* 功能：@looplj 在 https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Fpull\u002F1290 中新增追踪的流程\u002F树状视图\n* 功能：@looplj 在 https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Fpull\u002F1291 中新增按来源筛选请求的功能\n* 重构：@looplj 在 https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Fpull\u002F1292 中清理国际化键和变更错误信息\n\n\n**完整变更日志**：https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Fcompare\u002Fv0.9.27...v0.9.28","2026-04-05T15:18:43",{"id":212,"version":213,"summary_zh":214,"released_at":215},297436,"v0.9.27","## 变更内容\n* 修复：由 @looplj 在 https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Fpull\u002F1273 中提交的 cmd\u002Fschema 构建失败问题\n\n\n**完整变更日志**：https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Fcompare\u002Fv0.9.26...v0.9.27","2026-04-03T16:03:34",{"id":217,"version":218,"summary_zh":219,"released_at":220},297437,"v0.9.26","## 变更内容\n* 添加 OpenAI GET \u002Fv1\u002Fmodels\u002F{model} 端点，由 @SHLE1 在 https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Fpull\u002F1246 中完成\n* 功能：增加模型自动同步频率配置，由 @cikichen 在 https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Fpull\u002F1242 中完成\n* 功能（配置）：为配置自动生成 Schema，由 @LazuliKao 在 https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Fpull\u002F1100 中完成\n* 杂项：移除 skills 模块，迁移到 axonclaw-skills，由 @looplj 在 https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Fpull\u002F1250 中完成\n* 杂项（依赖）：将 \u002Fcmd\u002Fschema 目录下的 google.golang.org\u002Fgrpc 从 1.77.0 升级至 1.79.3，由 @dependabot[bot] 在 https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Fpull\u002F1252 中完成\n* 功能：添加 stepfun 模型，关闭 #1249，由 @looplj 在 https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Fpull\u002F1253 中完成\n* 功能：为预设代理添加名称，关闭 #1251，由 @looplj 在 https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Fpull\u002F1254 中完成\n* 杂项（依赖）：将 \u002Fcmd\u002Fschema 目录下的 go.opentelemetry.io\u002Fotel\u002Fsdk 从 1.39.0 升级至 1.40.0，由 @dependabot[bot] 在 https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Fpull\u002F1256 中完成\n* 杂项（依赖）：将 \u002Fcmd\u002Fschema 目录下的 github.com\u002Fbuger\u002Fjsonparser 从 1.1.1 升级至 1.1.2，由 @dependabot[bot] 在 https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Fpull\u002F1257 中完成\n* 修复：在透传中间件中尊重 User-Agent 头部的覆盖设置，由 @djdembeck 在 https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Fpull\u002F1245 中完成\n* 修复（copilot）：更新 API 头部及端点选择逻辑，由 @djdembeck 在 https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Fpull\u002F1258 中完成\n* 杂项（依赖）：将 \u002Fcmd\u002Fschema 目录下的 github.com\u002Fgo-jose\u002Fgo-jose\u002Fv4 从 4.1.3 升级至 4.1.4，由 @dependabot[bot] 在 https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Fpull\u002F1262 中完成\n* 杂项（依赖）：将 github.com\u002Fgo-jose\u002Fgo-jose\u002Fv4 从 4.1.3 升级至 4.1.4，由 @dependabot[bot] 在 https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Fpull\u002F1261 中完成\n* 修复：在 anthropic 流式使用中保留最终提示令牌，由 @KtzeAbyss 在 https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Fpull\u002F1263 中完成\n* 优化：尝试修复无法加载请求执行的问题，由 @looplj 在 https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Fpull\u002F1268 中完成\n* 杂项：清理不必要的错误 i18n 键，由 @looplj 在 https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Fpull\u002F1270 中完成\n* 修复：允许恢复已归档的频道，关闭 #1264，由 @looplj 在 https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Fpull\u002F1271 中完成\n* 功能：添加频道代理 IP 列，关闭 #1259，由 @looplj 在 https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Fpull\u002F1272 中完成\n\n## 新贡献者\n* @SHLE1 在 https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Fpull\u002F1246 中完成了首次贡献\n* @LazuliKao 在 https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Fpull\u002F1100 中完成了首次贡献\n* @KtzeAbyss 在 https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Fpull\u002F1263 中完成了首次贡献\n\n**完整变更日志**：https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Fcompare\u002Fv0.9.25...v0.9.26","2026-04-03T15:41:10",{"id":222,"version":223,"summary_zh":224,"released_at":225},297438,"v0.9.25","## 变更内容\n* 功能：新增用户代理透传设置，由 @djdembeck 在 https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Fpull\u002F1231 中实现\n* 功能（系统）：在初始化时添加首选语言支持，由 @myml 在 https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Fpull\u002F1236 中实现\n* 优化：对于 API 路径，不再路由到静态资源，由 @looplj 在 https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Fpull\u002F1237 中实现\n* 杂项：清理 xxx 指针以使用 lo，由 @looplj 在 https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Fpull\u002F1238 中完成\n* 功能：API 密钥个人资料渠道标签组合，关闭 #1220，由 @looplj 在 https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Fpull\u002F1240 中实现\n\n\n**完整变更日志**：https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Fcompare\u002Fv0.9.24...v0.9.25","2026-04-02T01:20:15",{"id":227,"version":228,"summary_zh":229,"released_at":230},297439,"v0.9.24","## 变更内容\n* 重构：登录页背景动画循环，并补充调试入口 by @llc1123 在 https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Fpull\u002F1221 中\n* 修复：在 Copilot 通道中透传 X-Initiator 头，用于计费控制 by @JasonWenTheFox 在 https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Fpull\u002F1222 中\n* 功能：批量测试通道，关闭 #1219 by @looplj 在 https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Fpull\u002F1228 中\n* 修复（nanogpt）：为 NanoGPT 转换器实现 XML 工具调用解析 by @djdembeck 在 https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Fpull\u002F1211 中\n* 功能：添加提示词保护规则预览，关闭 #1215 by @looplj 在 https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Fpull\u002F1229 中\n\n## 新贡献者\n* @JasonWenTheFox 在 https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Fpull\u002F1222 中完成了首次贡献\n\n**完整变更日志**：https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Fcompare\u002Fv0.9.23...v0.9.24","2026-03-31T14:55:49",{"id":232,"version":233,"summary_zh":234,"released_at":235},297440,"v0.9.23","## What's Changed\r\n* chore(codex): upgrade codex ua version by @looplj in https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Fpull\u002F1151\r\n* doc: add request processing by @looplj in https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Fpull\u002F1155\r\n* fix: auto disble text, close #1156 by @looplj in https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Fpull\u002F1159\r\n* chore: 为 Codex 计划补充 gpt-5.3-codex-spark 和 gpt-5.4-mini 模型 by @llc1123 in https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Fpull\u002F1162\r\n* refactor: 去除 Codex CLI 伪装并简化 Codex 兼容逻辑 by @llc1123 in https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Fpull\u002F1166\r\n* feat: add Fireworks AI channel support by @djdembeck in https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Fpull\u002F1200\r\n* feat(llm): response compact API by @looplj in https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Fpull\u002F1161\r\n* fix: restore channel losing sync models pattern, close #1203 by @looplj in https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Fpull\u002F1205\r\n* fix(channels): prevent ChannelsTypeTabs from wrapping on small screens by @nb5p in https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Fpull\u002F1206\r\n* fix: doubao anthropic fetch models by @looplj in https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Fpull\u002F1207\r\n* opt: allow invalid api key if allow no auth, close #1201 by @looplj in https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Fpull\u002F1208\r\n* fix: duplicate override path when apply template by @looplj in https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Fpull\u002F1209\r\n* feat: prompt inject condition for api key, close #1202 by @looplj in https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Fpull\u002F1210\r\n\r\n## New Contributors\r\n* @llc1123 made their first contribution in https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Fpull\u002F1162\r\n* @nb5p made their first contribution in https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Fpull\u002F1206\r\n\r\n**Full Changelog**: https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Fcompare\u002Fv0.9.22...v0.9.23","2026-03-28T16:11:12",{"id":237,"version":238,"summary_zh":239,"released_at":240},297441,"v0.9.22","## What's Changed\r\n* feat: standardize chart legend lists by @djdembeck in https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Fpull\u002F1141\r\n* build: add freebsd support for releases by @cikichen in https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Fpull\u002F1146\r\n* feat: add cli + skill, close #1085 by @looplj in https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Fpull\u002F1149\r\n* fix: anthropic adaptive thinking effort did not pass to other outbound by @looplj in https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Fpull\u002F1150\r\n\r\n\r\n**Full Changelog**: https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Fcompare\u002Fv0.9.21...v0.9.22","2026-03-24T15:55:35",{"id":242,"version":243,"summary_zh":244,"released_at":245},297442,"v0.9.21","## What's Changed\r\n* chore: sync model developers data by @github-actions[bot] in https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Fpull\u002F1122\r\n* fix(gemini): remove metadata and disable inbound query merge by @rainive in https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Fpull\u002F1124\r\n* feat(dashboard): add time period filter to all charts by @djdembeck in https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Fpull\u002F1129\r\n* fix(anthropic): empty thinking cause content block not stop by @looplj in https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Fpull\u002F1135\r\n* fix(ci): sync model workflow should based on the unstable branch, close  #1125 by @looplj in https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Fpull\u002F1136\r\n* chore(deps): bump google.golang.org\u002Fgrpc from 1.77.0 to 1.79.3 in \u002Fintegration_test\u002Fgemini by @dependabot[bot] in https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Fpull\u002F1138\r\n* chore: update issue template by @looplj in https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Fpull\u002F1140\r\n\r\n## New Contributors\r\n* @rainive made their first contribution in https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Fpull\u002F1124\r\n\r\n**Full Changelog**: https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Fcompare\u002Fv0.9.20...v0.9.21","2026-03-23T18:02:17",{"id":247,"version":248,"summary_zh":249,"released_at":250},297443,"v0.9.20","## What's Changed\r\n* feat: allow no auth for api, close #1104 by @looplj in https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Fpull\u002F1107\r\n* feat: prompt protect, close #850 wip by @looplj in https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Fpull\u002F1109\r\n* fix(anthropic): omitted thinking block, close #1105 by @looplj in https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Fpull\u002F1113\r\n* fix(anthropic): panic for some cases, close #1112 by @looplj in https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Fpull\u002F1114\r\n* fix: no auth and prompt protect, misc by @looplj in https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Fpull\u002F1116\r\n* chore(deps): bump google.golang.org\u002Fgrpc from 1.77.0 to 1.79.3 in \u002Fllm by @dependabot[bot] in https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Fpull\u002F1115\r\n* feat: video input, close #892 by @looplj in https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Fpull\u002F1117\r\n* feat: audio input\u002Foutput by @looplj in https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Fpull\u002F1118\r\n* opt: do not block for load font, close #1089 by @looplj in https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Fpull\u002F1119\r\n\r\n\r\n**Full Changelog**: https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Fcompare\u002Fv0.9.19...v0.9.20","2026-03-21T07:29:23",{"id":252,"version":253,"summary_zh":254,"released_at":255},297444,"v0.9.19","## What's Changed\r\n* feat(apikeys): add token usage statistics with read permission support by @hen7777777 in https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Fpull\u002F1087\r\n* opt(llm): thinking signature encode with channel footprint, close #1035 by @looplj in https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Fpull\u002F1066\r\n* chore(deps): bump google.golang.org\u002Fgrpc from 1.77.0 to 1.79.3 by @dependabot[bot] in https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Fpull\u002F1096\r\n* doc: add note to readme by @looplj in https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Fpull\u002F1099\r\n* fix(llm): claude code user id compatible by @looplj in https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Fpull\u002F1102\r\n* feat: request\u002Fcost\u002Ftoken by channel\u002Fmodel\u002Fapikey, close #1097 by @looplj in https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Fpull\u002F1106\r\n\r\n## New Contributors\r\n* @hen7777777 made their first contribution in https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Fpull\u002F1087\r\n\r\n**Full Changelog**: https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Fcompare\u002Fv0.9.18...v0.9.19","2026-03-19T17:56:25",{"id":257,"version":258,"summary_zh":259,"released_at":260},297445,"v0.9.18","## What's Changed\r\n* feat(llm): add Reasoning field support for additional provider compatibility by @djdembeck in https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Fpull\u002F1077\r\n* feat: add copy url button on api key dialog, close 1072 by @looplj in https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Fpull\u002F1079\r\n* feat: save channel proxy configs, close #1078 by @looplj in https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Fpull\u002F1080\r\n* feat: show request execution error status code, close #1049 by @looplj in https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Fpull\u002F1082\r\n* feat: disable ssl verification, close #1024 by @looplj in https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Fpull\u002F1084\r\n* feat: add Homebrew tap support for automated formula publishing by @cikichen in https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Fpull\u002F1086\r\n\r\n\r\n**Full Changelog**: https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Fcompare\u002Fv0.9.17...v0.9.18","2026-03-17T16:59:30",{"id":262,"version":263,"summary_zh":264,"released_at":265},297446,"v0.9.17","## What's Changed\r\n* fix: preserve JSON-like string values in header override by @GhostFlying in https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Fpull\u002F1052\r\n* opt: image display in request\u002Ftrace, close #1047 by @looplj in https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Fpull\u002F1056\r\n* fix(dashboard): incorrect time conversion in MySQL by @imlonghao in https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Fpull\u002F1058\r\n* fix(orchestrator): preserve completed responses on client disconnect by @Chengxiwei in https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Fpull\u002F1059\r\n* chore: sync model developers data by @github-actions[bot] in https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Fpull\u002F1063\r\n* fix(github-copilot): GPT-5.4 should use Responses API by @imlonghao in https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Fpull\u002F1064\r\n\r\n## New Contributors\r\n* @GhostFlying made their first contribution in https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Fpull\u002F1052\r\n* @imlonghao made their first contribution in https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Fpull\u002F1058\r\n* @Chengxiwei made their first contribution in https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Fpull\u002F1059\r\n\r\n**Full Changelog**: https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Fcompare\u002Fv0.9.16...v0.9.17","2026-03-15T17:53:25",{"id":267,"version":268,"summary_zh":269,"released_at":270},297447,"v0.9.16","## What's Changed\r\n* fix: gemini 转换中 lastPart 为 nil 时避免 panic by @MomentDerek in https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Fpull\u002F1051\r\n* Revert \"opt: reduce sqlite \"database is locked\" error (#1009)\" by @looplj in https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Fpull\u002F1053\r\n* Revert \"opt: auto reorder channels, close #822 (#1005)\" by @looplj in https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Fpull\u002F1055\r\n\r\n\r\n**Full Changelog**: https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Fcompare\u002Fv0.9.15...v0.9.16","2026-03-13T14:48:11",{"id":272,"version":273,"summary_zh":274,"released_at":275},297448,"v0.9.15","## What's Changed\r\n* fix: sqlite \"database is locked\" error by @myml in https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Fpull\u002F1009\r\n* feat: refine GC cleanup logic to support manual full purge by @cikichen in https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Fpull\u002F1010\r\n* refactor: rename GraphQL mutation to triggerGcCleanup (follow-up to #1010) by @cikichen in https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Fpull\u002F1017\r\n* feat: unlock codex stream limit by @PA733 in https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Fpull\u002F1019\r\n* fix(biz): resolve WebDAV 405 error on Synology NAS by normalizing paths by @cikichen in https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Fpull\u002F1014\r\n* fix: curl with duplicated version, close #1018 by @looplj in https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Fpull\u002F1020\r\n* chore: add sql default value for time, close #1013 by @looplj in https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Fpull\u002F1021\r\n* opt: disalbed channel notice, close #1025 by @looplj in https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Fpull\u002F1026\r\n* opt: should not panic if the metrics type is empty, close #990 by @looplj in https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Fpull\u002F1027\r\n* fix: should pass through the stream error, close #948 by @looplj in https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Fpull\u002F1031\r\n* opt: always return the configured models, close #919 by @looplj in https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Fpull\u002F1038\r\n* doc: update model settings guideline, close #1036 by @looplj in https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Fpull\u002F1039\r\n* opt: improve compatible with error code, close #1037 by @looplj in https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Fpull\u002F1040\r\n* opt: chat process does not need any extra scopes, close #1033 by @looplj in https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Fpull\u002F1041\r\n* opt: allow fetch models for third part codex\u002Fcc channel by @looplj in https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Fpull\u002F1042\r\n* opt: longcat request compatibity, close #1032 by @looplj in https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Fpull\u002F1044\r\n\r\n\r\n**Full Changelog**: https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Fcompare\u002Fv0.9.14...v0.9.15","2026-03-12T16:54:34",{"id":277,"version":278,"summary_zh":279,"released_at":280},297449,"v0.9.14","## What's Changed\r\n* feat: allow type editing for third-party codex\u002Fclaudecode channels and make channel name clickable by @raikyou in https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Fpull\u002F992\r\n* fix(gemini): response json schema compatible, close #991 by @looplj in https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Fpull\u002F1000\r\n* feat(system): add manual log cleanup trigger UI by @cikichen in https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Fpull\u002F1001\r\n* opt: auto reorder channels, close #822 by @looplj in https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Fpull\u002F1005\r\n* feat: add gpt-5.4 to codex, close #999 by @looplj in https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Fpull\u002F1006\r\n* feat: filter requests by model id, close #994 by @looplj in https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Fpull\u002F1007\r\n\r\n## New Contributors\r\n* @cikichen made their first contribution in https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Fpull\u002F1001\r\n\r\n**Full Changelog**: https:\u002F\u002Fgithub.com\u002Flooplj\u002Faxonhub\u002Fcompare\u002Fv0.9.13...v0.9.14","2026-03-09T15:53:41"]