[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"similar-yushangxiao--claude2api":3,"tool-yushangxiao--claude2api":61},[4,17,27,36,44,53],{"id":5,"name":6,"github_repo":7,"description_zh":8,"stars":9,"difficulty_score":10,"last_commit_at":11,"category_tags":12,"status":16},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 真正成长为懂上",160784,2,"2026-04-19T11:32:54",[13,14,15],"开发框架","Agent","语言模型","ready",{"id":18,"name":19,"github_repo":20,"description_zh":21,"stars":22,"difficulty_score":23,"last_commit_at":24,"category_tags":25,"status":16},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",[14,26],"插件",{"id":28,"name":29,"github_repo":30,"description_zh":31,"stars":32,"difficulty_score":10,"last_commit_at":33,"category_tags":34,"status":16},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",[26,14,35,13],"图像",{"id":37,"name":38,"github_repo":39,"description_zh":40,"stars":41,"difficulty_score":10,"last_commit_at":42,"category_tags":43,"status":16},4721,"markitdown","microsoft\u002Fmarkitdown","MarkItDown 是一款由微软 AutoGen 团队打造的轻量级 Python 工具，专为将各类文件高效转换为 Markdown 格式而设计。它支持 PDF、Word、Excel、PPT、图片（含 OCR）、音频（含语音转录）、HTML 乃至 YouTube 链接等多种格式的解析，能够精准提取文档中的标题、列表、表格和链接等关键结构信息。\n\n在人工智能应用日益普及的今天，大语言模型（LLM）虽擅长处理文本，却难以直接读取复杂的二进制办公文档。MarkItDown 恰好解决了这一痛点，它将非结构化或半结构化的文件转化为模型“原生理解”且 Token 效率极高的 Markdown 格式，成为连接本地文件与 AI 分析 pipeline 的理想桥梁。此外，它还提供了 MCP（模型上下文协议）服务器，可无缝集成到 Claude Desktop 等 LLM 应用中。\n\n这款工具特别适合开发者、数据科学家及 AI 研究人员使用，尤其是那些需要构建文档检索增强生成（RAG）系统、进行批量文本分析或希望让 AI 助手直接“阅读”本地文件的用户。虽然生成的内容也具备一定可读性，但其核心优势在于为机器",93400,"2026-04-06T19:52:38",[26,13],{"id":45,"name":46,"github_repo":47,"description_zh":48,"stars":49,"difficulty_score":50,"last_commit_at":51,"category_tags":52,"status":16},4487,"LLMs-from-scratch","rasbt\u002FLLMs-from-scratch","LLMs-from-scratch 是一个基于 PyTorch 的开源教育项目，旨在引导用户从零开始一步步构建一个类似 ChatGPT 的大型语言模型（LLM）。它不仅是同名技术著作的官方代码库，更提供了一套完整的实践方案，涵盖模型开发、预训练及微调的全过程。\n\n该项目主要解决了大模型领域“黑盒化”的学习痛点。许多开发者虽能调用现成模型，却难以深入理解其内部架构与训练机制。通过亲手编写每一行核心代码，用户能够透彻掌握 Transformer 架构、注意力机制等关键原理，从而真正理解大模型是如何“思考”的。此外，项目还包含了加载大型预训练权重进行微调的代码，帮助用户将理论知识延伸至实际应用。\n\nLLMs-from-scratch 特别适合希望深入底层原理的 AI 开发者、研究人员以及计算机专业的学生。对于不满足于仅使用 API，而是渴望探究模型构建细节的技术人员而言，这是极佳的学习资源。其独特的技术亮点在于“循序渐进”的教学设计：将复杂的系统工程拆解为清晰的步骤，配合详细的图表与示例，让构建一个虽小但功能完备的大模型变得触手可及。无论你是想夯实理论基础，还是为未来研发更大规模的模型做准备",90106,3,"2026-04-06T11:19:32",[15,35,14,13],{"id":54,"name":55,"github_repo":56,"description_zh":57,"stars":58,"difficulty_score":10,"last_commit_at":59,"category_tags":60,"status":16},8553,"spec-kit","github\u002Fspec-kit","Spec Kit 是一款专为提升软件开发效率而设计的开源工具包，旨在帮助团队快速落地“规格驱动开发”（Spec-Driven Development）模式。传统开发中，需求文档往往与代码实现脱节，导致沟通成本高且结果不可控；而 Spec Kit 通过将规格说明书转化为可执行的指令，让 AI 直接依据明确的业务场景生成高质量代码，从而减少从零开始的随意编码，确保产出结果的可预测性。\n\n该工具特别适合希望利用 AI 辅助编程的开发者、技术负责人及初创团队。无论是启动全新项目还是在现有工程中引入规范化流程，用户只需通过简单的命令行操作，即可初始化项目并集成主流的 AI 编程助手。其核心技术亮点在于“规格即代码”的理念，支持社区扩展与预设模板，允许用户根据特定技术栈定制开发流程。此外，Spec Kit 强调官方维护的安全性，提供稳定的版本管理，帮助开发者在享受 AI 红利的同时，依然牢牢掌握架构设计的主动权，真正实现从“凭感觉写代码”到“按规格建系统”的转变。",88749,"2026-04-17T09:48:14",[15,35,14,13],{"id":62,"github_repo":63,"name":64,"description_en":65,"description_zh":66,"ai_summary_zh":67,"readme_en":68,"readme_zh":69,"quickstart_zh":70,"use_case_zh":71,"hero_image_url":72,"owner_login":73,"owner_name":74,"owner_avatar_url":75,"owner_bio":76,"owner_company":76,"owner_location":76,"owner_email":76,"owner_twitter":76,"owner_website":76,"owner_url":77,"languages":78,"stars":87,"forks":88,"last_commit_at":89,"license":90,"difficulty_score":10,"env_os":91,"env_gpu":92,"env_ram":93,"env_deps":94,"category_tags":100,"github_topics":76,"view_count":10,"oss_zip_url":76,"oss_zip_packed_at":76,"status":16,"created_at":101,"updated_at":102,"faqs":103,"releases":144},9700,"yushangxiao\u002Fclaude2api","claude2api","将Claude 的网页服务转为 Api 服务，支持识图，文件上传，思考输出……","claude2api 是一款轻量级开源工具，旨在将 Anthropic Claude 的网页服务无缝转换为标准的 API 接口。它主要解决了开发者无法直接通过代码调用 Claude 高级功能（如识图、长文件分析、思维链输出）的痛点，让原本仅限网页交互的能力能够轻松集成到各类应用程序中。\n\n这款工具特别适合后端开发者、AI 应用构建者以及希望自动化工作流的研究人员使用。通过 claude2api，用户可以像调用 OpenAI 接口一样访问 Claude，大幅降低了接入门槛。其核心技术亮点包括：原生支持图像识别与大文件上传，能够自动管理对话上下文并在超长时自动转为文件处理；独特地支持输出 Claude 的“思考过程”（Thinking Process），便于调试复杂推理任务；同时具备流式传输、自动重试、代理支持及多会话负载均衡等企业级特性。\n\n部署方面，claude2api 提供了极高的灵活性，既支持通过 Docker 一键容器化部署，也兼容 Hugging Face Spaces 云端托管，还可直接编译运行。无论是构建智能客服、数据分析助手，还是开发需要深度推理的 AI Agent，cl","claude2api 是一款轻量级开源工具，旨在将 Anthropic Claude 的网页服务无缝转换为标准的 API 接口。它主要解决了开发者无法直接通过代码调用 Claude 高级功能（如识图、长文件分析、思维链输出）的痛点，让原本仅限网页交互的能力能够轻松集成到各类应用程序中。\n\n这款工具特别适合后端开发者、AI 应用构建者以及希望自动化工作流的研究人员使用。通过 claude2api，用户可以像调用 OpenAI 接口一样访问 Claude，大幅降低了接入门槛。其核心技术亮点包括：原生支持图像识别与大文件上传，能够自动管理对话上下文并在超长时自动转为文件处理；独特地支持输出 Claude 的“思考过程”（Thinking Process），便于调试复杂推理任务；同时具备流式传输、自动重试、代理支持及多会话负载均衡等企业级特性。\n\n部署方面，claude2api 提供了极高的灵活性，既支持通过 Docker 一键容器化部署，也兼容 Hugging Face Spaces 云端托管，还可直接编译运行。无论是构建智能客服、数据分析助手，还是开发需要深度推理的 AI Agent，claude2api 都能提供稳定高效的底层支持，帮助用户快速释放 Claude 模型的全部潜力。","# Claude2Api\nTransform Claude's web service into an API service, supporting image recognition, file upload, streaming transmission, thing output... \nThe API supports access in the OpenAI format.\n\n[![Go Report Card](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fyushangxiao_claude2api_readme_efd995592516.png)](https:\u002F\u002Fgoreportcard.com\u002Freport\u002Fgithub.com\u002Fyushangxiao\u002Fclaude2api)\n[![License](https:\u002F\u002Fimg.shields.io\u002Fgithub\u002Flicense\u002Fyushangxiao\u002Fclaude2api)](LICENSE)\n|[中文](https:\u002F\u002Fgithub.com\u002Fyushangxiao\u002Fclaude2api\u002Fblob\u002Fmain\u002Fdocs\u002Fchinses.md)\n\n\nNOTICE: ONLY PRO USER CAN USE ALL MODELS , FREE USER ONLY CAN USE claude-sonnet-4-20250514\n\n## ✨ Features\n\n- 🖼️ **Image Recognition** - Send images to Claude for analysis\n- 📝 **Automatic Conversation Management** -  Conversation can be automatically deleted after use\n- 🌊 **Streaming Responses** - Get real-time streaming outputs from Claude\n- 📁 **File Upload Support** - Upload long context\n- 🧠 **Thinking Process** - Access Claude's step-by-step reasoning, support \u003Cthink>\n- 🔄 **Chat History Management** - Control the length of conversation context , exceeding will upload file\n- 🌐 **Proxy Support** - Route requests through your preferred proxy\n- 🔐 **API Key Authentication** - Secure your API endpoints\n- 🔁 **Automatic Retry** - Feature to automatically retry requests when request fail\n- 🌐 **Direct Proxy** -let sk-ant-sid01* as key to use\n\n## 📋 Prerequisites\n\n- Go 1.23+ (for building from source)\n- Docker (for containerized deployment)\n\n## 🚀 Deployment Options\n\n### Docker\n\n```bash\ndocker run -d \\\n  -p 8080:8080 \\\n  -e SESSIONS=sk-ant-sid01-xxxx,sk-ant-sid01-yyyy \\\n  -e APIKEY=123 \\\n  -e CHAT_DELETE=true \\\n  -e MAX_CHAT_HISTORY_LENGTH=10000 \\\n  -e NO_ROLE_PREFIX=false \\\n  -e PROMPT_DISABLE_ARTIFACTS=false \\\n  -e ENABLE_MIRROR_API=false \\\n  -e MIRROR_API_PREFIX=\u002Fmirror \\\n  --name claude2api \\\n  ghcr.io\u002Fyushangxiao\u002Fclaude2api:latest\n```\n\n### Docker Compose\n\nCreate a `docker-compose.yml` file:\n\n```yaml\nversion: '3'\nservices:\n  claude2api:\n    image: ghcr.io\u002Fyushangxiao\u002Fclaude2api:latest\n    container_name: claude2api\n    ports:\n      - \"8080:8080\"\n    environment:\n      - SESSIONS=sk-ant-sid01-xxxx,sk-ant-sid01-yyyy\n      - ADDRESS=0.0.0.0:8080\n      - APIKEY=123\n      - PROXY=http:\u002F\u002Fproxy:2080  # Optional\n      - CHAT_DELETE=true\n      - MAX_CHAT_HISTORY_LENGTH=10000\n      - NO_ROLE_PREFIX=false\n      - PROMPT_DISABLE_ARTIFACTS=true\n      - ENABLE_MIRROR_API=false\n      - MIRROR_API_PREFIX=\u002Fmirror\n    restart: unless-stopped\n\n```\n\nThen run:\n\n```bash\ndocker-compose up -d\n```\n\n### Hugging Face Spaces\n\nYou can deploy this project to Hugging Face Spaces with Docker:\n\n1. Fork the Hugging Face Space at [https:\u002F\u002Fhuggingface.co\u002Fspaces\u002Frclon\u002Fclaude2api](https:\u002F\u002Fhuggingface.co\u002Fspaces\u002Frclon\u002Fclaude2api)\n2. Configure your environment variables in the Settings tab\n3. The Space will automatically  deploy the Docker image\n\nnotice: In Hugging Face, \u002Fv1 might be blocked, you can use \u002Fhf\u002Fv1 instead.\n### Direct Deployment\n\n```bash\n# Clone the repository\ngit clone https:\u002F\u002Fgithub.com\u002Fyushangxiao\u002Fclaude2api.git\ncd claude2api\ncp .env.example .env  \nvim .env  \n# Build the binary\ngo build -o claude2api .\n\n.\u002Fclaude2api\n```\n\n## ⚙️ Configuration\n\n### YAML Configuration\n\nYou can configure Claude2API using a `config.yaml` file in the application's root directory. If this file exists, it will be used instead of environment variables.\n\nExample `config.yaml`:\n\n```yaml\n# Sessions configuration\nsessions:\n  - sessionKey: \"sk-ant-sid01-xxxx\"\n    orgID: \"\"\n  - sessionKey: \"sk-ant-sid01-yyyy\"\n    orgID: \"\"\n\n# Server address\naddress: \"0.0.0.0:8080\"\n\n# API authentication key\napiKey: \"123\"\n\n# Other configuration options...\nchatDelete: true\nmaxChatHistoryLength: 10000\nnoRolePrefix: false\npromptDisableArtifacts: false\nenableMirrorApi: false\nmirrorApiPrefix: \"\"\n```\n\nA sample configuration file is provided as `config.yaml.example` in the repository.\n\n### Environment Variables\n\nIf `config.yaml` doesn't exist, the application will use environment variables for configuration:\n\n| Environment Variable | Description | Default |\n|----------------------|-------------|---------|\n| `SESSIONS` | Comma-separated list of Claude API session keys | Required |\n| `ADDRESS` | Server address and port | `0.0.0.0:8080` |\n| `APIKEY` | API key for authentication | Required |\n| `PROXY` | HTTP proxy URL | Optional |\n| `CHAT_DELETE` | Whether to delete chat sessions after use | `true` |\n| `MAX_CHAT_HISTORY_LENGTH` | Exceeding will text to file | `10000` |\n| `NO_ROLE_PREFIX` | Do not add role in every message | `false` |\n| `PROMPT_DISABLE_ARTIFACTS` | Add Prompt try to disable Artifacts | `false` |\n| `ENABLE_MIRROR_API` | Enable direct use sk-ant-* as key | `false` |\n| `MIRROR_API_PREFIX` | Add Prefix to protect Mirror，required when ENABLE_MIRROR_API is true | `` |\n\n\n## 📝 API Usage\n\n### Authentication\n\nInclude your API key in the request header:\n\n```\nAuthorization: Bearer YOUR_API_KEY\n```\n\n### Chat Completion\n\n```bash\ncurl -X POST http:\u002F\u002Flocalhost:8080\u002Fv1\u002Fchat\u002Fcompletions \\\n  -H \"Content-Type: application\u002Fjson\" \\\n  -H \"Authorization: Bearer YOUR_API_KEY\" \\\n  -d '{\n    \"model\": \"claude-3-7-sonnet-20250219\",\n    \"messages\": [\n      {\n        \"role\": \"user\",\n        \"content\": \"Hello, Claude!\"\n      }\n    ],\n    \"stream\": true\n  }'\n```\n\n### Image Analysis\n\n```bash\ncurl -X POST http:\u002F\u002Flocalhost:8080\u002Fv1\u002Fchat\u002Fcompletions \\\n  -H \"Content-Type: application\u002Fjson\" \\\n  -H \"Authorization: Bearer YOUR_API_KEY\" \\\n  -d '{\n    \"model\": \"claude-3-7-sonnet-20250219\",\n    \"messages\": [\n      {\n        \"role\": \"user\",\n        \"content\": [\n          {\n            \"type\": \"text\",\n            \"text\": \"What\\'s in this image?\"\n          },\n          {\n            \"type\": \"image_url\",\n            \"image_url\": {\n              \"url\": \"data:image\u002Fjpeg;base64,...\"\n            }\n          }\n        ]\n      }\n    ]\n  }'\n```\n\n\n## 🤝 Contributing\n\nContributions are welcome! Please feel free to submit a Pull Request.\n\n1. Fork the repository\n2. Create a feature branch (`git checkout -b feature\u002Famazing-feature`)\n3. Commit your changes (`git commit -m 'Add some amazing feature'`)\n4. Push to the branch (`git push origin feature\u002Famazing-feature`)\n5. Open a Pull Request\n\n## 📄 License\n\nThis project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.\n\n## 🙏 Acknowledgments\n\n- [Anthropic](https:\u002F\u002Fwww.anthropic.com\u002F) for creating Claude\n- The Go community for the amazing ecosystem\n\n---\n ## 🎁 Support\n\nIf you find this project helpful, consider supporting me on [Afdian](https:\u002F\u002Fafdian.com\u002Fa\u002Fiscoker)  😘\n\n## Star History\n\n[![Star History Chart](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fyushangxiao_claude2api_readme_4db84abbf309.png)](https:\u002F\u002Fwww.star-history.com\u002F#yushangxiao\u002Fclaude2api&Date)\n\nMade with ❤️ by [yushangxiao](https:\u002F\u002Fgithub.com\u002Fyushangxiao)\n","# Claude2Api\n将 Claude 的 Web 服务转换为 API 服务，支持图像识别、文件上传、流式传输、思维过程输出等。\n\n该 API 支持 OpenAI 格式的访问。\n\n[![Go Report Card](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fyushangxiao_claude2api_readme_efd995592516.png)](https:\u002F\u002Fgoreportcard.com\u002Freport\u002Fgithub.com\u002Fyushangxiao\u002Fclaude2api)\n[![License](https:\u002F\u002Fimg.shields.io\u002Fgithub\u002Flicense\u002Fyushangxiao\u002Fclaude2api)](LICENSE)\n|[中文](https:\u002F\u002Fgithub.com\u002Fyushangxiao\u002Fclaude2api\u002Fblob\u002Fmain\u002Fdocs\u002Fchinses.md)\n\n\n注意：只有 Pro 用户才能使用所有模型，免费用户仅能使用 claude-sonnet-4-20250514。\n\n## ✨ 功能\n\n- 🖼️ **图像识别** - 将图片发送给 Claude 进行分析\n- 📝 **自动会话管理** - 会话在使用后可自动删除\n- 🌊 **流式响应** - 获取来自 Claude 的实时流式输出\n- 📁 **文件上传支持** - 上传长上下文\n- 🧠 **思考过程** - 访问 Claude 的逐步推理过程，支持 `\u003Cthink>` 标签\n- 🔄 **聊天历史管理** - 控制对话上下文长度，超出时会上传文件\n- 🌐 **代理支持** - 通过您首选的代理路由请求\n- 🔐 **API 密钥认证** - 保护您的 API 端点\n- 🔁 **自动重试** - 请求失败时自动重试的功能\n- 🌐 **直接代理** - 可以使用 sk-ant-sid01* 作为密钥来使用\n\n## 📋 前置条件\n\n- Go 1.23+（用于从源代码构建）\n- Docker（用于容器化部署）\n\n## 🚀 部署选项\n\n### Docker\n\n```bash\ndocker run -d \\\n  -p 8080:8080 \\\n  -e SESSIONS=sk-ant-sid01-xxxx,sk-ant-sid01-yyyy \\\n  -e APIKEY=123 \\\n  -e CHAT_DELETE=true \\\n  -e MAX_CHAT_HISTORY_LENGTH=10000 \\\n  -e NO_ROLE_PREFIX=false \\\n  -e PROMPT_DISABLE_ARTIFACTS=false \\\n  -e ENABLE_MIRROR_API=false \\\n  -e MIRROR_API_PREFIX=\u002Fmirror \\\n  --name claude2api \\\n  ghcr.io\u002Fyushangxiao\u002Fclaude2api:latest\n```\n\n### Docker Compose\n\n创建一个 `docker-compose.yml` 文件：\n\n```yaml\nversion: '3'\nservices:\n  claude2api:\n    image: ghcr.io\u002Fyushangxiao\u002Fclaude2api:latest\n    container_name: claude2api\n    ports:\n      - \"8080:8080\"\n    environment:\n      - SESSIONS=sk-ant-sid01-xxxx,sk-ant-sid01-yyyy\n      - ADDRESS=0.0.0.0:8080\n      - APIKEY=123\n      - PROXY=http:\u002F\u002Fproxy:2080  # 可选\n      - CHAT_DELETE=true\n      - MAX_CHAT_HISTORY_LENGTH=10000\n      - NO_ROLE_PREFIX=false\n      - PROMPT_DISABLE_ARTIFACTS=true\n      - ENABLE_MIRROR_API=false\n      - MIRROR_API_PREFIX=\u002Fmirror\n    restart: unless-stopped\n\n```\n\n然后运行：\n\n```bash\ndocker-compose up -d\n```\n\n### Hugging Face Spaces\n\n您可以使用 Docker 将此项目部署到 Hugging Face Spaces：\n\n1. 分叉 Hugging Face Space：[https:\u002F\u002Fhuggingface.co\u002Fspaces\u002Frclon\u002Fclaude2api](https:\u002F\u002Fhuggingface.co\u002Fspaces\u002Frclon\u002Fclaude2api)\n2. 在“设置”选项卡中配置您的环境变量\n3. 该 Space 将自动部署 Docker 镜像\n\n注意：在 Hugging Face 中，`\u002Fv1` 可能会被阻止，您可以改用 `\u002Fhf\u002Fv1`。\n\n### 直接部署\n\n```bash\n# 克隆仓库\ngit clone https:\u002F\u002Fgithub.com\u002Fyushangxiao\u002Fclaude2api.git\ncd claude2api\ncp .env.example .env  \nvim .env  \n# 构建二进制文件\ngo build -o claude2api .\n\n.\u002Fclaude2api\n```\n\n## ⚙️ 配置\n\n### YAML 配置\n\n您可以在应用程序根目录下使用 `config.yaml` 文件来配置 Claude2API。如果该文件存在，则会优先于环境变量使用。\n\n示例 `config.yaml`：\n\n```yaml\n# 会话配置\nsessions:\n  - sessionKey: \"sk-ant-sid01-xxxx\"\n    orgID: \"\"\n  - sessionKey: \"sk-ant-sid01-yyyy\"\n    orgID: \"\"\n\n# 服务器地址\naddress: \"0.0.0.0:8080\"\n\n# API 认证密钥\napiKey: \"123\"\n\n# 其他配置选项...\nchatDelete: true\nmaxChatHistoryLength: 10000\nnoRolePrefix: false\npromptDisableArtifacts: false\nenableMirrorApi: false\nmirrorApiPrefix: \"\"\n```\n\n仓库中提供了一个名为 `config.yaml.example` 的示例配置文件。\n\n### 环境变量\n\n如果 `config.yaml` 不存在，则应用程序将使用环境变量进行配置：\n\n| 环境变量 | 描述 | 默认值 |\n|----------------------|-------------|---------|\n| `SESSIONS` | 用逗号分隔的 Claude API 会话密钥列表 | 必填 |\n| `ADDRESS` | 服务器地址和端口 | `0.0.0.0:8080` |\n| `APIKEY` | 用于认证的 API 密钥 | 必填 |\n| `PROXY` | HTTP 代理 URL | 可选 |\n| `CHAT_DELETE` | 是否在使用后删除聊天会话 | `true` |\n| `MAX_CHAT_HISTORY_LENGTH` | 超出时将文本保存到文件 | `10000` |\n| `NO_ROLE_PREFIX` | 不在每条消息前添加角色 | `false` |\n| `PROMPT_DISABLE_ARTIFACTS` | 尝试禁用提示中的 Artifacts | `false` |\n| `ENABLE_MIRROR_API` | 启用直接使用 sk-ant-* 作为密钥 | `false` |\n| `MIRROR_API_PREFIX` | 添加前缀以保护镜像，当 ENABLE_MIRROR_API 为 true 时必需 | `` |\n\n## 📝 API 使用\n\n### 认证\n\n在请求头中包含您的 API 密钥：\n\n```\nAuthorization: Bearer YOUR_API_KEY\n```\n\n### 聊天完成\n\n```bash\ncurl -X POST http:\u002F\u002Flocalhost:8080\u002Fv1\u002Fchat\u002Fcompletions \\\n  -H \"Content-Type: application\u002Fjson\" \\\n  -H \"Authorization: Bearer YOUR_API_KEY\" \\\n  -d '{\n    \"model\": \"claude-3-7-sonnet-20250219\",\n    \"messages\": [\n      {\n        \"role\": \"user\",\n        \"content\": \"你好，Claude！\"\n      }\n    ],\n    \"stream\": true\n  }'\n```\n\n### 图像分析\n\n```bash\ncurl -X POST http:\u002F\u002Flocalhost:8080\u002Fv1\u002Fchat\u002Fcompletions \\\n  -H \"Content-Type: application\u002Fjson\" \\\n  -H \"Authorization: Bearer YOUR_API_KEY\" \\\n  -d '{\n    \"model\": \"claude-3-7-sonnet-20250219\",\n    \"messages\": [\n      {\n        \"role\": \"user\",\n        \"content\": [\n          {\n            \"type\": \"text\",\n            \"text\": \"这张图片里有什么？\"\n          },\n          {\n            \"type\": \"image_url\",\n            \"image_url\": {\n              \"url\": \"data:image\u002Fjpeg;base64,...\"\n            }\n          }\n        ]\n      }\n    ]\n  }'\n```\n\n\n## 🤝 贡献\n\n欢迎贡献！请随时提交 Pull Request。\n\n1. 分叉仓库\n2. 创建功能分支 (`git checkout -b feature\u002Famazing-feature`)\n3. 提交更改 (`git commit -m '添加一些很棒的功能'`)\n4. 推送到分支 (`git push origin feature\u002Famazing-feature`)\n5. 打开 Pull Request\n\n## 📄 许可证\n\n本项目采用 MIT 许可证授权 - 详情请参阅 [LICENSE](LICENSE) 文件。\n\n## 🙏 致谢\n\n- [Anthropic](https:\u002F\u002Fwww.anthropic.com\u002F) 创造了 Claude\n- Go 社区提供了出色的生态系统\n\n---\n ## 🎁 支持\n\n如果您觉得这个项目很有帮助，请考虑在 [Afdian](https:\u002F\u002Fafdian.com\u002Fa\u002Fiscoker) 上支持我 😘\n\n## 星标历史\n\n[![星标历史图](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fyushangxiao_claude2api_readme_4db84abbf309.png)](https:\u002F\u002Fwww.star-history.com\u002F#yushangxiao\u002Fclaude2api&Date)\n\n由 [yushangxiao](https:\u002F\u002Fgithub.com\u002Fyushangxiao) 用心制作","# Claude2API 快速上手指南\n\nClaude2API 是一个将 Claude 网页服务转换为 API 服务的开源工具，支持图片识别、文件上传、流式传输及思维链输出。其接口完全兼容 OpenAI 格式，方便接入现有应用。\n\n> **注意**：仅 Pro 用户可使用所有模型，免费用户仅限使用 `claude-sonnet-4-20250514`。\n\n## 环境准备\n\n在部署前，请确保您的系统满足以下任一条件：\n\n*   **方案 A（推荐）**: 已安装 **Docker** 或 **Docker Compose**。\n*   **方案 B（源码编译）**: 已安装 **Go 1.23+** 版本。\n\n## 安装步骤\n\n### 方式一：使用 Docker（推荐）\n\n这是最快捷的部署方式。运行以下命令即可启动服务，请将 `SESSIONS` 替换为您真实的 Claude Session Key（格式为 `sk-ant-sid01-...`），将 `APIKEY` 设置为您自定义的访问密钥。\n\n```bash\ndocker run -d \\\n  -p 8080:8080 \\\n  -e SESSIONS=sk-ant-sid01-xxxx,sk-ant-sid01-yyyy \\\n  -e APIKEY=123 \\\n  -e CHAT_DELETE=true \\\n  -e MAX_CHAT_HISTORY_LENGTH=10000 \\\n  --name claude2api \\\n  ghcr.io\u002Fyushangxiao\u002Fclaude2api:latest\n```\n\n**国内加速提示**：如果拉取 `ghcr.io` 镜像较慢，可配置 Docker 镜像加速器，或使用代理环境变量 `-e PROXY=http:\u002F\u002Fyour-proxy:port`。\n\n### 方式二：使用 Docker Compose\n\n创建 `docker-compose.yml` 文件：\n\n```yaml\nversion: '3'\nservices:\n  claude2api:\n    image: ghcr.io\u002Fyushangxiao\u002Fclaude2api:latest\n    container_name: claude2api\n    ports:\n      - \"8080:8080\"\n    environment:\n      - SESSIONS=sk-ant-sid01-xxxx,sk-ant-sid01-yyyy\n      - ADDRESS=0.0.0.0:8080\n      - APIKEY=123\n      - CHAT_DELETE=true\n      - MAX_CHAT_HISTORY_LENGTH=10000\n    restart: unless-stopped\n```\n\n执行启动命令：\n\n```bash\ndocker-compose up -d\n```\n\n### 方式三：源码直接部署\n\n适合需要自定义构建或调试的开发者。\n\n```bash\n# 克隆仓库\ngit clone https:\u002F\u002Fgithub.com\u002Fyushangxiao\u002Fclaude2api.git\ncd claude2api\n\n# 复制并编辑配置文件\ncp .env.example .env  \nvim .env  # 在此文件中填入 SESSIONS 和 APIKEY\n\n# 编译二进制文件\ngo build -o claude2api .\n\n# 运行\n.\u002Fclaude2api\n```\n\n## 基本使用\n\n服务启动后，默认监听 `8080` 端口。您可以使用兼容 OpenAI 格式的客户端或直接通过 `curl` 调用。\n\n### 1. 基础对话\n\n请求头需携带您在环境变量中设置的 `APIKEY`。\n\n```bash\ncurl -X POST http:\u002F\u002Flocalhost:8080\u002Fv1\u002Fchat\u002Fcompletions \\\n  -H \"Content-Type: application\u002Fjson\" \\\n  -H \"Authorization: Bearer 123\" \\\n  -d '{\n    \"model\": \"claude-3-7-sonnet-20250219\",\n    \"messages\": [\n      {\n        \"role\": \"user\",\n        \"content\": \"你好，请介绍一下你自己。\"\n      }\n    ],\n    \"stream\": true\n  }'\n```\n\n### 2. 图片识别\n\n支持发送 Base64 编码的图片进行分析：\n\n```bash\ncurl -X POST http:\u002F\u002Flocalhost:8080\u002Fv1\u002Fchat\u002Fcompletions \\\n  -H \"Content-Type: application\u002Fjson\" \\\n  -H \"Authorization: Bearer 123\" \\\n  -d '{\n    \"model\": \"claude-3-7-sonnet-20250219\",\n    \"messages\": [\n      {\n        \"role\": \"user\",\n        \"content\": [\n          {\n            \"type\": \"text\",\n            \"text\": \"这张图片里有什么？\"\n          },\n          {\n            \"type\": \"image_url\",\n            \"image_url\": {\n              \"url\": \"data:image\u002Fjpeg;base64,\u002F9j\u002F4AAQSkZJRg...\"\n            }\n          }\n        ]\n      }\n    ]\n  }'\n```\n\n### 关键配置说明\n\n*   **SESSIONS**: 多个 Session Key 请用逗号分隔，工具会自动轮询使用。\n*   **CHAT_DELETE**: 设为 `true` 可在每次请求后自动清理对话上下文，节省额度。\n*   **PROXY**: 若服务器无法直接访问 Claude，可在此处配置 HTTP 代理地址。\n*   **Hugging Face 部署**: 若部署在 HF Spaces，接口路径可能需要调整为 `\u002Fhf\u002Fv1`。","某初创团队希望将 Claude 3.5 Sonnet 强大的多模态分析能力（识图、长文档理解）集成到自研的自动化运维监控系统中，但受限于官方仅开放网页端且缺乏标准 API 接口。\n\n### 没有 claude2api 时\n- **集成壁垒高**：开发团队只能编写复杂的浏览器自动化脚本（如 Selenium）模拟人工操作，代码脆弱且极易因网页结构微调而崩溃。\n- **功能受限**：无法直接通过代码发送截图或上传大型日志文件，导致系统只能处理纯文本报警，丢失了关键的视觉上下文信息。\n- **响应延迟大**：缺乏流式传输支持，用户必须等待模型生成完全部回复才能看到结果，在紧急故障排查时体验极差。\n- **会话管理混乱**：难以编程控制对话历史长度，长期运行后容易超出上下文限制或产生冗余数据，且无法自动清理旧会话。\n- **思维过程黑盒**：无法获取 Claude 的 `\u003Cthink>` 思考链输出，运维人员难以理解模型判断故障的根本逻辑，降低了信任度。\n\n### 使用 claude2api 后\n- **无缝标准化接入**：claude2api 将网页服务转换为兼容 OpenAI 格式的 API，团队仅需修改几行代码即可复用现有的 AI 调用框架，稳定性大幅提升。\n- **多模态能力解锁**：系统现在能直接发送服务器仪表盘截图和 GB 级日志文件，Claude 可精准识别图像异常并分析长文档，实现全方位监控。\n- **实时流式反馈**：借助流式传输特性，故障分析报告逐字实时推送到前端，运维人员在生成过程中即可提前介入判断，显著缩短响应时间。\n- **智能上下文管控**：配置 `MAX_CHAT_HISTORY_LENGTH` 后，claude2api 自动截断超长对话或将溢出内容转为文件上传，并按需自动删除旧会话，保持系统轻量。\n- **推理透明化**：API 直接返回模型的逐步思考过程，帮助团队验证故障推导逻辑，便于后续优化监控策略和复盘。\n\nclaude2api 成功打破了 Claude 网页版与后端系统间的隔阂，让企业能以低成本、标准化的方式将顶级多模态智能融入核心业务流程。","https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fyushangxiao_claude2api_5cbc9fc2.png","yushangxiao","yuxiao","https:\u002F\u002Foss.gittoolsai.com\u002Favatars\u002Fyushangxiao_236f6fe0.jpg",null,"https:\u002F\u002Fgithub.com\u002Fyushangxiao",[79,83],{"name":80,"color":81,"percentage":82},"Go","#00ADD8",98.7,{"name":84,"color":85,"percentage":86},"Dockerfile","#384d54",1.3,580,131,"2026-04-16T02:40:39","MIT","Linux, macOS, Windows","无 GPU 需求","未说明",{"notes":95,"python":96,"dependencies":97},"该工具是基于 Go 语言开发的代理服务，用于将 Claude 网页服务转换为 API。运行需要有效的 Claude 会话密钥 (SESSIONS)。支持通过 Docker 部署或直接编译二进制文件运行。若从源码构建，需安装 Go 1.23 或更高版本。","不需要 Python",[98,99],"Go 1.23+","Docker (可选)",[15,26],"2026-03-27T02:49:30.150509","2026-04-20T04:04:27.564597",[104,109,114,119,124,129,134,139],{"id":105,"question_zh":106,"answer_zh":107,"source_url":108},43567,"项目是否支持非流式（non-streaming）输出？","支持。目前在 Cherry Studio、OpenWebUI 以及直接通过程序调用时，设置 \"stream\": false 均可正常返回非流式响应。如果遇到问题，请检查客户端配置或更新到最新版本。","https:\u002F\u002Fgithub.com\u002Fyushangxiao\u002Fclaude2api\u002Fissues\u002F4",{"id":110,"question_zh":111,"answer_zh":112,"source_url":113},43568,"遇到 'Failed to get org ID: unexpected status code: 403' 错误怎么办？","这通常是 IP 地址被限制导致的。即使重新获取 token 也无法解决，因为限制针对的是 IP。建议更换网络环境或使用代理 IP 尝试。","https:\u002F\u002Fgithub.com\u002Fyushangxiao\u002Fclaude2api\u002Fissues\u002F9",{"id":115,"question_zh":116,"answer_zh":117,"source_url":118},43566,"如何获取 API Key（sessionKey）？","是的，需要登录 Claude 官方网页，API Key 即为浏览器 Cookie 中 sessionKey 的值。请注意，逆向接口不如原生 API 稳定，可能存在封号风险，请自行判断是否使用。","https:\u002F\u002Fgithub.com\u002Fyushangxiao\u002Fclaude2api\u002Fissues\u002F6",{"id":120,"question_zh":121,"answer_zh":122,"source_url":123},43569,"开启镜像 API (ENABLE_MIRROR_API) 后报错 'handlers are already registered' 如何解决？","当开启环境变量 ENABLE_MIRROR_API 时，必须同时提供 MIRROR_API_PREFIX 环境变量值（例如设置为 \u002Fmirror）。此时镜像接口的请求路径将变为前缀加原路径，如 \u002Fmirror\u002Fv1\u002Fchat\u002Fcompletions，以避免路径冲突。","https:\u002F\u002Fgithub.com\u002Fyushangxiao\u002Fclaude2api\u002Fissues\u002F3",{"id":125,"question_zh":126,"answer_zh":127,"source_url":128},43570,"Session Key (sessionKey) 会过期吗？需要自动续期吗？","Session Key 的有效期很长，通常可以维持几个月没有问题，一般不需要部署额外的自动续期机制。","https:\u002F\u002Fgithub.com\u002Fyushangxiao\u002Fclaude2api\u002Fissues\u002F35",{"id":130,"question_zh":131,"answer_zh":132,"source_url":133},43571,"是否支持适配 Claude Code API 或原生 Function Call？","不支持也不建议强行适配。因为普通账号没有原生的 Function Call 支持，且额度有限，强行适配体验极差。Pro 和 Max 用户建议直接使用官方原生 API 以获得最佳体验。","https:\u002F\u002Fgithub.com\u002Fyushangxiao\u002Fclaude2api\u002Fissues\u002F23",{"id":135,"question_zh":136,"answer_zh":137,"source_url":138},43572,"项目是否支持 Anthropic 原生的 \u002Fv1\u002Fmessages 接口？","不支持。该项目主要模拟 OpenAI 格式的 \u002Fv1\u002Fchat\u002Fcompletions 接口，不直接兼容 Anthropic 原生的 \u002Fv1\u002Fmessages 接口格式。","https:\u002F\u002Fgithub.com\u002Fyushangxiao\u002Fclaude2api\u002Fissues\u002F31",{"id":140,"question_zh":141,"answer_zh":142,"source_url":143},43573,"是否已支持 Claude 4 模型及图片输入功能？","是的，项目已更新支持 Claude 4 模型，同时也支持图片（image）输入功能。","https:\u002F\u002Fgithub.com\u002Fyushangxiao\u002Fclaude2api\u002Fissues\u002F11",[145,149,153,157,161,165,169,173,177,181,185,189,193,197,201,205,209],{"id":146,"version":147,"summary_zh":76,"released_at":148},343185,"v1.1.7","2025-07-01T10:21:38",{"id":150,"version":151,"summary_zh":76,"released_at":152},343186,"v1.1.6","2025-06-16T02:59:49",{"id":154,"version":155,"summary_zh":76,"released_at":156},343187,"v1.1.5","2025-05-24T04:02:36",{"id":158,"version":159,"summary_zh":76,"released_at":160},343188,"v1.1.4","2025-05-23T07:00:37",{"id":162,"version":163,"summary_zh":76,"released_at":164},343189,"v1.1.3","2025-05-23T06:02:03",{"id":166,"version":167,"summary_zh":76,"released_at":168},343190,"v1.1.2","2025-05-23T05:52:31",{"id":170,"version":171,"summary_zh":76,"released_at":172},343191,"v1.1.1","2025-05-23T05:45:20",{"id":174,"version":175,"summary_zh":76,"released_at":176},343192,"v1.1.0","2025-04-25T02:11:03",{"id":178,"version":179,"summary_zh":76,"released_at":180},343193,"v1.0.9","2025-04-15T02:55:47",{"id":182,"version":183,"summary_zh":76,"released_at":184},343194,"v1.0.8","2025-04-06T12:52:23",{"id":186,"version":187,"summary_zh":76,"released_at":188},343195,"v1.0.7","2025-04-04T07:25:41",{"id":190,"version":191,"summary_zh":76,"released_at":192},343196,"v1.0.6","2025-04-03T12:47:39",{"id":194,"version":195,"summary_zh":76,"released_at":196},343197,"v1.0.5","2025-04-02T15:50:11",{"id":198,"version":199,"summary_zh":76,"released_at":200},343198,"v1.0.4","2025-04-02T02:11:54",{"id":202,"version":203,"summary_zh":76,"released_at":204},343199,"v1.0.3","2025-03-31T11:41:31",{"id":206,"version":207,"summary_zh":76,"released_at":208},343200,"v1.0.2","2025-03-31T11:22:06",{"id":210,"version":211,"summary_zh":76,"released_at":212},343201,"v1.0.1","2025-03-31T11:15:10"]