claudish

GitHub
704 88 简单 1 次阅读 今天图像Agent开发框架
AI 解读 由 AI 自动生成,仅供参考

Claudish 是一款命令行工具,旨在让开发者能够使用任意 AI 模型来运行强大的 Claude Code 编程助手。它通过在本机搭建一个兼容 Anthropic API 的代理服务,巧妙地将用户已有的 AI 订阅(如 Gemini Advanced、ChatGPT Plus、Kimi、GLM 等)或本地部署的开源模型(如 Ollama、LM Studio)接入 Claude Code 的工作流中。

这一工具主要解决了用户无需为特定模型重复付费的问题,实现了“自带密钥”(BYOK)的灵活模式。用户不仅可以统一管理多个平台的订阅以降低成本,还能在完全离线的环境下利用本地模型处理敏感代码,确保数据隐私安全。

Claudish 特别适合希望提升编码效率且对成本敏感的软件开发者、技术研究人员以及注重数据隐私的企业团队。其技术亮点包括支持超过 580 种模型的智能路由、自动识别主流模型名称、实时流式输出以及与原生 Claude Code 协议的高度兼容。无论是云端大模型还是本地轻量级模型,Claudish 都能让用户在熟悉的终端环境中自由切换,享受无缝的 AI 编程体验。

使用场景

某全栈开发者需要在本地重构一个遗留的 Python 数据处理模块,希望利用 Claude Code 强大的多文件编辑能力,但受限于团队预算无法额外购买 Anthropic 订阅,且部分代码涉及敏感数据严禁上传云端。

没有 claudish 时

  • 工具割裂:必须在终端手动切换不同的 AI 客户端,无法享受 Claude Code 统一的命令行交互体验和多文件自动编排能力。
  • 成本高昂:为了使用高级编码代理功能,被迫单独开通昂贵的 Anthropic Max 订阅,导致现有 Gemini Advanced 或 ChatGPT Plus 会员权益闲置浪费。
  • 隐私风险:处理敏感业务逻辑时,只能选择功能较弱的本地脚本或完全断网开发,难以在保障数据不出域的前提下获得高质量的代码建议。
  • 配置繁琐:每次尝试不同模型(如从 GPT-4o 切换到 Qwen)都需要重写复杂的 API 调用脚本,无法在同一会话中灵活热切换。

使用 claudish 后

  • 体验统一:直接通过 claudish --model oai@gpt-4o 命令,即可让现有的 ChatGPT Plus 账号在原生 Claude Code 界面中运行,无缝获得多文件重构能力。
  • 降本增效:复用团队已购买的 Google Vertex AI 或 OpenRouter 额度,无需新增任何订阅费用,真正实现“一份投入,多端通用”。
  • 安全合规:针对敏感模块,一键切换至本地 Ollama 模型(claudish --model ollama@qwen2.5-coder),确保代码全程在本地运行,彻底杜绝泄露风险。
  • 灵活调度:在单次开发会话中,可根据任务难度动态切换模型,简单任务用轻量模型省钱,复杂架构用高端模型提质,全程无需重启或重新配置。

claudish 的核心价值在于打破了模型供应商与顶级编码交互界面之间的壁垒,让开发者能自由组合现有资源,以最低成本和最高安全性释放 AI 编程潜力。

运行环境要求

操作系统
  • Linux
  • macOS
  • Windows
GPU
  • 非必需
  • 仅在使用本地模型(如 Ollama, LM Studio, vLLM, MLX)时取决于所选模型的需求
  • 云端模型无需本地 GPU
内存

未说明(取决于是否运行本地模型及模型大小)

依赖
notes该工具是一个 CLI 代理,核心依赖是已安装的 'Claude Code' 官方客户端。支持通过 npm 或 Bun 安装。若使用云端模型(如 OpenRouter, Gemini, OpenAI),需配置相应的 API Key;若使用本地模型,需自行部署 Ollama、LM Studio 等服务。首次使用可通过交互式向导配置。
python未说明
Node.js (LTS)
Bun (v1.3.0+, 可选)
Claude Code CLI
claudish hero image

快速开始

🔮 Claudish

Claude 代码。任何模型。

npm version license Claude Code

使用你现有的 AI 订阅与 Claude Code 配合使用。 支持 Anthropic Max、Gemini Advanced、ChatGPT Plus/Codex、Kimi、GLM、OllamaCloud — 以及通过 OpenRouter 的 580 多种模型和本地模型,确保完全的隐私。

官网 · 文档 · 报告问题


Claudish(类似于 Claude)是一个命令行工具,它允许你通过本地 Anthropic API 兼容服务器代理请求,从而使用任何 AI 模型运行 Claude Code。

支持的提供商:

  • 云端: OpenRouter(580+ 模型)、Google Gemini、OpenAI、MiniMax、Kimi、GLM、Z.AI、OllamaCloud、OpenCode Zen
  • 本地: Ollama、LM Studio、vLLM、MLX
  • 企业级: Vertex AI(Google Cloud)

使用你现有的 AI 订阅

停止为多个 AI 订阅付费。 Claudish 让你可以用已有的订阅配合 Claude Code 强大的界面:

你的订阅 命令
Anthropic Max 原生支持(直接使用 claude
Gemini Advanced claudish --model g@gemini-3-pro-preview
ChatGPT Plus/Codex claudish --model oai@gpt-5.3oai@gpt-5.3-codex
Kimi claudish --model kimi@kimi-k2.5
GLM claudish --model glm@GLM-4.7
MiniMax claudish --model mm@minimax-m2.1
OllamaCloud claudish --model oc@qwen3-next
OpenCode Zen Go claudish --model zgo@glm-5

100% 离线选项——你的代码永远不会离开你的设备:

claudish --model ollama@qwen3-coder:latest "your task"

自带密钥(BYOK)

Claudish 是一个 自带密钥的 AI 编码助手

  • ✅ 使用你已经拥有的 API 密钥
  • ✅ 无需额外订阅费用
  • ✅ 完全掌控成本——只为你使用的部分付费
  • ✅ 适用于任何提供商
  • ✅ 会话中可随时切换模型

特性

  • 多提供商支持 - OpenRouter、Gemini、Vertex AI、OpenAI、OllamaCloud 和本地模型
  • 新的路由语法 - 使用 provider@model[:concurrency] 进行显式路由(例如 google@gemini-2.0-flash
  • 原生自动检测 - 像 gpt-4ogemini-2.0-flashllama-3.1-70b 这样的模型会自动路由到它们的原生 API
  • 直接 API 访问 - Google、OpenAI、MiniMax、Kimi、GLM、Z.AI、OllamaCloud、Poe 可直接计费
  • Vertex AI Model Garden - 访问 Google 及合作伙伴的模型(MiniMax、Mistral、DeepSeek、Qwen、OpenAI OSS)
  • 本地模型支持 - Ollama、LM Studio、vLLM、MLX 支持 ollama@lmstudio@ 语法及并发控制
  • 跨平台 - 适用于 Node.js 和 Bun(v1.3.0+)
  • 通用兼容性 - 可以用 npxbunx 使用,无需安装
  • 交互式设置 - 如果未提供 API 密钥和模型,会提示输入(零配置!)
  • 监控模式 - 代理到真实的 Anthropic API 并记录所有流量(用于调试)
  • 协议兼容性 - 与 Claude Code 通信协议 1:1 兼容
  • 无头模式 - 非交互式执行时自动打印模式
  • 静默模式 - 默认输出整洁(无日志污染)
  • JSON 输出 - 结构化数据便于工具集成
  • 实时流式传输 - 实时查看 Claude Code 的输出
  • 并行运行 - 每个实例都有独立的代理
  • 自主模式 - 通过标志绕过所有提示
  • 上下文继承 - 在当前目录下运行,并使用相同的 .claude 设置
  • Claude Code 标志传递 - 以任意顺序转发任何 Claude Code 标志(--agent--effort--permission-mode 等)
  • 视觉代理 - 非视觉模型会自动通过 Claude 获取图像描述,使每个模型都能“看见”

安装

快速安装

# Shell 脚本(Linux/macOS)
curl -fsSL https://raw.githubusercontent.com/MadAppGang/claudish/main/install.sh | bash

# Homebrew(macOS)
brew tap MadAppGang/tap && brew install claudish

# npm
npm install -g claudish

# Bun
bun install -g claudish

先决条件

其他安装选项

无需安装即可使用:

npx claudish@latest --model x-ai/grok-code-fast-1 "your prompt"
bunx claudish@latest --model x-ai/grok-code-fast-1 "your prompt"

从源代码安装:

git clone https://github.com/MadAppGang/claudish.git
cd claudish
bun install && bun run build && bun link

快速入门

步骤 0:初始化 Claudish 技能(仅首次)

# 导航到你的项目目录
cd /path/to/your/project

# 安装 Claudish 技能以实现自动最佳实践
claudish --init

# 重新加载 Claude Code 以发现该技能

作用:

  • ✅ 将 Claudish 使用技能安装在 .claude/skills/claudish-usage/
  • ✅ 启用自动子代理委派
  • ✅ 强制执行基于文件的指令模式
  • ✅ 防止上下文窗口污染

运行 --init 后,Claude 会自动:

  • 当你提到外部模型(Grok、GPT-5 等)时使用子代理
  • 遵循 Claudish 使用的最佳实践
  • 为不同任务建议专业代理

选项 1:交互模式(最简单)

# 直接运行——会提示输入 API 密钥和模型
claudish

# 按提示输入你的 OpenRouter API 密钥
# 从列表中选择一个模型
# 开始编码!

选项 2:使用环境变量

# 设置环境
export OPENROUTER_API_KEY=sk-or-v1-...     # 用于 OpenRouter 模型
export GEMINI_API_KEY=...                   # 用于直接 Google API
export OPENAI_API_KEY=sk-...                # 用于直接 OpenAI API
export ANTHROPIC_API_KEY=sk-ant-api03-placeholder  # 必需的占位符

# 使用自动检测的模型运行
claudish --model gpt-4o "implement user authentication"     # → OpenAI
claudish --model gemini-2.0-flash "add tests"               # → Google

# 或者使用显式提供者
claudish --model openrouter@anthropic/claude-3.5-sonnet "review code"

注意: 在交互模式下,如果未设置 OPENROUTER_API_KEY 环境变量,系统会提示您输入。这使得首次使用变得非常简单!

AI 代理使用

对于在 Claude Code 中运行的 AI 代理: 请使用专门的 AI 代理指南,以获取关于基于文件的模式和子代理委派的全面说明。

# 打印完整的 AI 代理使用指南
claudish --help-ai

# 将指南保存到文件以供参考
claudish --help-ai > claudish-agent-guide.md

AI 代理快速参考:

AI 代理的主要工作流程

  1. 获取可用模型:

    # 列出所有模型或搜索
    claudish --models
    claudish --models gemini
    
    # 获取顶级推荐模型(JSON 格式)
    claudish --top-models --json
    
  2. 通过子代理运行 Claudish(推荐模式):

    // 不要在主对话中直接运行 Claudish
    // 使用 Task 工具委派给子代理
    const result = await Task({
      subagent_type: "general-purpose",
      description: "使用 Grok 实现功能",
      prompt: `
    使用 Claudish 通过 Grok 模型实现功能。
    
    步骤:
    1. 创建指令文件:/tmp/claudish-task-${Date.now()}.md
    2. 将功能需求写入文件
    3. 运行:claudish --model x-ai/grok-code-fast-1 --stdin < /tmp/claudish-task-*.md
    4. 阅读结果并仅返回摘要(2-3 句)
    
    不要返回完整实现。回复内容不超过 300 个 token。
      `
    });
    
  3. 基于文件的指令模式(避免上下文污染):

    // 将指令写入文件
    const instructionFile = `/tmp/claudish-task-${Date.now()}.md`;
    const resultFile = `/tmp/claudish-result-${Date.now()}.md`;
    
    await Write({ file_path: instructionFile, content: `
    # 任务
    您的任务描述在此
    
    # 输出
    将结果写入:${resultFile}
    ` });
    
    // 使用 stdin 运行 Claudish
    await Bash(`claudish --model x-ai/grok-code-fast-1 --stdin < ${instructionFile}`);
    
    // 读取结果
    const result = await Read({ file_path: resultFile });
    
    // 仅返回摘要
    return extractSummary(result);
    

关键原则:

  • ✅ 使用基于文件的模式以避免上下文窗口污染
  • ✅ 委派给子代理而不是直接运行
  • ✅ 仅返回摘要(而非完整对话记录)
  • ✅ 根据任务选择合适的模型(参见 --models--top-models

资源:

  • 完整的 AI 代理指南:claudish --help-ai
  • 技能文档:skills/claudish-usage/SKILL.md(位于仓库根目录)
  • 模型集成:skills/claudish-integration/SKILL.md(位于仓库根目录)

使用方法

基本语法

claudish [选项] <claude-args...>

选项

有关所有详细信息的完整参考,请参阅 设置参考

标志 缩写 描述 默认值
--model <model> -m 要使用的模型(provider@model 语法) 交互式选择器
--model-opus <model> 用于 Opus 角色的模型(规划、复杂任务)
--model-sonnet <model> 用于 Sonnet 角色的模型(默认编码)
--model-haiku <model> 用于 Haiku 角色的模型(快速任务)
--model-subagent <model> 用于子代理的模型(Task 工具)
--profile <name> -p 用于模型映射的命名配置文件 默认配置文件
--interactive -i 交互模式(持久会话) 当无提示时自动启用
--auto-approve -y 跳过权限提示 false
--no-auto-approve 显式启用权限提示
--dangerous 传递 --dangerouslyDisableSandbox false
--port <port> 代理服务器端口 随机(3000-9000)
--debug -d 启用调试日志记录至 logs/ false
--log-level <level> 日志详细程度:debuginfominimal info
--quiet -q 屈服 [claudish] 消息 单次执行时默认开启
--verbose -v 显示 [claudish] 消息 交互式时默认开启
--json 用于工具集成的 JSON 输出(隐含 --quiet false
--stdin 从标准输入读取提示 false
--free 在选择器中仅显示免费模型 false
--monitor 代理真实的 Anthropic API 并记录流量 false
--summarize-tools 总结工具描述(适用于本地模型) false
--cost-tracker 启用成本跟踪(同时启用监控模式) false
--audit-costs 显示成本分析报告
--reset-costs 重置累计成本统计
--models [query] -s 列出所有模型或模糊搜索
--top-models 显示精选推荐模型
--force-update 强制刷新模型缓存
--init 在当前项目中安装 Claudish 技能
--mcp 作为 MCP 服务器运行
--gemini-login 通过 OAuth 登录 Gemini Code Assist
--gemini-logout 清除 Gemini 的 OAuth 凭证
--kimi-login 通过 OAuth 登录 Kimi
--kimi-logout 清除 Kimi 的 OAuth 凭证
--help-ai 显示 AI 代理使用指南
--version 显示版本信息
--help -h 显示帮助信息
-- 所有后续参数将传递给 Claude Code

标志透传:任何未识别的标志都会自动转发给 Claude Code(例如 --agent--effort--permission-mode)。

環境変数

Claudish は起動時に現在のディレクトリから .env ファイルを自動的に読み込みます。詳細なリストについては、設定リファレンスをご参照ください。

API キー(クラウドモデルには少なくとも 1 つが必要)

変数 プロバイダー 別名
OPENROUTER_API_KEY OpenRouter(デフォルトバックエンド、580+ モデル)
GEMINI_API_KEY Google Gemini (g@, google@)
OPENAI_API_KEY OpenAI (oai@)
MINIMAX_API_KEY MiniMax (mm@, mmax@)
MINIMAX_CODING_API_KEY MiniMax コーディングプラン (mmc@)
MOONSHOT_API_KEY Kimi/Moonshot (kimi@) KIMI_API_KEY
KIMI_CODING_API_KEY Kimi コーディングプラン (kc@) または --kimi-login による OAuth
ZHIPU_API_KEY GLM/Zhipu (glm@) GLM_API_KEY
GLM_CODING_API_KEY GLM コーディングプラン (gc@) ZAI_CODING_API_KEY
ZAI_API_KEY Z.AI (zai@)
OLLAMA_API_KEY OllamaCloud (oc@)
OPENCODE_API_KEY OpenCode Zen (zen@) — 無料モデルの場合にはオプション
LITELLM_API_KEY LiteLLM (ll@) — LITELLM_BASE_URL が必要
POE_API_KEY Poe (poe@)
VERTEX_API_KEY Vertex AI Express (v@)
VERTEX_PROJECT Vertex AI OAuth モード (v@) GOOGLE_CLOUD_PROJECT
ANTHROPIC_API_KEY プレースホルダー(Claude Code のダイアログを抑制)

Claudish 設定

変数 説明 デフォルト値
CLAUDISH_MODEL デフォルトモデル(ANTHROPIC_MODEL を上書き) 対話型セレクター
CLAUDISH_PORT デフォルトのプロキシポート ランダム(3000–9000)
CLAUDISH_CONTEXT_WINDOW コンテキストウィンドウサイズの上書き(ローカルモデル) 自動検出
CLAUDISH_MODEL_OPUS Opus ロール用モデル
CLAUDISH_MODEL_SONNET Sonnet ロール用モデル
CLAUDISH_MODEL_HAIKU Haiku ロール用モデル
CLAUDISH_MODEL_SUBAGENT サブエージェント用モデル
CLAUDISH_SUMMARIZE_TOOLS ツール説明の要約(true/1 false
CLAUDISH_TELEMETRY テレメトリの上書き(0/false/off で無効化) 設定ファイルから
CLAUDISH_LOCAL_MAX_PARALLEL 最大同時ローカルモデルリクエスト数(1–8) 1
CLAUDISH_LOCAL_QUEUE_ENABLED ローカルモデルキューの有無 true
CLAUDISH_QWEN_NO_THINK Qwen モデルの思考機能を無効化(1

Claude Code 互換性

変数 説明
ANTHROPIC_MODEL CLAUDISH_MODEL のフォールバック
ANTHROPIC_DEFAULT_OPUS_MODEL CLAUDISH_MODEL_OPUS のフォールバック
ANTHROPIC_DEFAULT_SONNET_MODEL CLAUDISH_MODEL_SONNET のフォールバック
ANTHROPIC_DEFAULT_HAIKU_MODEL CLAUDISH_MODEL_HAIKU のフォールバック
CLAUDE_CODE_SUBAGENT_MODEL CLAUDISH_MODEL_SUBAGENT のフォールバック
CLAUDE_PATH Claude Code バイナリのカスタムパス

カスタムエンドポイント

変数 プロバイダー デフォルト値
GEMINI_BASE_URL Gemini API https://generativelanguage.googleapis.com
OPENAI_BASE_URL OpenAI/Azure https://api.openai.com
MINIMAX_BASE_URL MiniMax https://api.minimax.io
MOONSHOT_BASE_URL Kimi/Moonshot https://api.moonshot.ai
ZHIPU_BASE_URL GLM/Zhipu https://open.bigmodel.cn
ZAI_BASE_URL Z.AI https://api.z.ai
OLLAMACLOUD_BASE_URL OllamaCloud https://ollama.com
OPENCODE_BASE_URL OpenCode Zen https://opencode.ai/zen
LITELLM_BASE_URL LiteLLM プロキシサーバー (LITELLM_API_KEY 使用時に必須)
OLLAMA_BASE_URL Ollama(ローカル) http://localhost:11434
OLLAMA_HOST OLLAMA_BASE_URL の別名
LMSTUDIO_BASE_URL LM Studio(ローカル) http://localhost:1234
VLLM_BASE_URL vLLM(ローカル) http://localhost:8000
MLX_BASE_URL MLX(ローカル) http://127.0.0.1:8080

優先順位: CLI フラグ > CLAUDISH_* 環境変数 > ANTHROPIC_* 環境変数 > プロファイル設定 > 対話型セレクター。

重要なお知らせ:

  • ANTHROPIC_API_KEY=sk-ant-api03-placeholder(または任意の値)を設定すると、Claude Code のログインダイアログが表示されなくなります。
  • 対話モードでは、API キーが設定されていない場合、入力を求められます。

設定ファイル

Claudish は 2 スコープの設定システムを使用しています:

ファイル スコープ 目的
~/.claudish/config.json グローバル プロファイル、テレメトリ、ルーティングルール(プロジェクト間で共有)
.claudish.json ローカル プロジェクト固有のプロファイルとルーティングルール(グローバルを上書き)
.env ローカル 環境変数(起動時に自動読み込み)

プロファイル設定~/.claudish/config.json):

{
  "version": "1.0.0",
  "defaultProfile": "default",
  "profiles": {
    "default": {
      "name": "default",
      "models": {
        "opus": "oai@gpt-5.3",
        "sonnet": "google@gemini-3-pro",
        "haiku": "mm@MiniMax-M2.1",
        "subagent": "google@gemini-2.0-flash"
      }
    }
  },
  "routing": {
    "kimi-*": ["kc", "kimi", "openrouter"],
    "glm-*": ["gc", "glm"],
    "*": ["litellm", "openrouter"]
  }
}

カスタムルーティングルールは、モデル名のパターンを優先順位付きのプロバイダーのフォールバックチェーンにマッピングします。パターンには正確な名前、ワイルドカード(kimi-*)、および万能記号(*)が対応可能です。ローカルの .claudish.json ルーティングルールは、グローバルルールを完全に置き換えます。

プロファイルの管理には以下を使用します:

claudish init [--local|--global]            # セットアップウィザード
claudish profile list [--local|--global]    # プロファイルの一覧表示
claudish profile add [--local|--global]     # プロファイルの追加
claudish profile use <name>                 # デフォルト設定
claudish profile edit <name>                # プロファイルの編集

完全な設定リファレンスについては、設定リファレンスをご参照ください。

モデルルーティング(v4.0.0+)

Claudish は明示的なルーティングのために provider@model[:concurrency] 構文を使用し、ネイティブプロバイダーに対しては スマートな自動検出を行います。

新しい構文: provider@model[:concurrency]

# 明示的なプロバイダールーティング
claudish --model google@gemini-2.0-flash "迅速なタスク"
claudish --model openrouter@deepseek/deepseek-r1 "分析"
claudish --model oai@gpt-4o "機能の実装"
claudish --model ollama@llama3.2:3 "コードレビュー"  # 3 件の同時リクエスト

提供商快捷方式

快捷方式 提供商 API 密钥 示例
g@, google@ Google Gemini GEMINI_API_KEY g@gemini-2.0-flash
oai@ OpenAI Direct OPENAI_API_KEY oai@gpt-4o
or@, openrouter@ OpenRouter OPENROUTER_API_KEY or@deepseek/deepseek-r1
mm@, mmax@ MiniMax Direct MINIMAX_API_KEY mm@MiniMax-M2.1
kimi@, moon@ Kimi Direct MOONSHOT_API_KEY kimi@kimi-k2
glm@, zhipu@ GLM Direct ZHIPU_API_KEY glm@glm-4
zai@ Z.AI Direct ZAI_API_KEY zai@glm-4
llama@, lc@, meta@ OllamaCloud OLLAMA_API_KEY llama@llama-3.1-70b
oc@ OllamaCloud OLLAMA_API_KEY oc@llama-3.1-70b
zen@ OpenCode Zen (免费/付费) OPENCODE_API_KEY (可选) zen@gpt-5-nano
zgo@, zengo@ OpenCode Zen Go 方案 OPENCODE_API_KEY zgo@glm-5
v@, vertex@ Vertex AI VERTEX_API_KEY v@gemini-2.5-flash
go@ Gemini CodeAssist (OAuth) go@gemini-2.5-flash
poe@ Poe POE_API_KEY poe@GPT-4o
ollama@ Ollama (本地) (无) ollama@llama3.2
lms@, lmstudio@ LM Studio (本地) (无) lms@qwen2.5-coder
vllm@ vLLM (本地) (无) vllm@mistral-7b
mlx@ MLX (本地) (无) mlx@llama-3.2-3b

原生模型自动检测

当未指定提供商时,Claudish 会根据模型名称自动检测:

模型模式 路由至 示例
gemini-*, google/* Google Gemini gemini-2.0-flash
gpt-*, o1-*, o3-* OpenAI Direct gpt-4o
llama-*, meta-llama/* OllamaCloud llama-3.1-70b
abab-*, minimax/* MiniMax Direct abab-6.5
kimi-*, moonshot-* Kimi Direct kimi-k2
glm-*, zhipu/* GLM Direct glm-4
poe:* Poe poe:GPT-4o
claude-*, anthropic/* Native Anthropic claude-sonnet-4
未知 vendor/model 错误 使用 openrouter@vendor/model

示例

# 自动检测原生路由(无需前缀!)
claudish --model gemini-2.0-flash "快速任务"      # → Google API
claudish --model gpt-4o "实现功能"          # → OpenAI API
claudish --model llama-3.1-70b "代码审查"         # → OllamaCloud

# 显式指定提供商路由
claudish --model google@gemini-2.5-pro "复杂分析"
claudish --model oai@o1 "复杂推理"
claudish --model openrouter@deepseek/deepseek-r1 "深度分析"

# OllamaCloud - 云端托管的 Llama 模型
claudish --model llama@llama-3.1-70b "代码审查"
claudish --model oc@llama-3.2-vision "分析图片"

# Vertex AI - Google Cloud
VERTEX_API_KEY=... claudish --model v@gemini-2.5-flash "任务"
VERTEX_PROJECT=my-project claudish --model vertex@gemini-2.5-flash "OAuth 模式"

# 本地模型并发控制
claudish --model ollama@llama3.2:3 "审查"     # 3 个并发请求
claudish --model ollama@llama3.2:0 "快速"       # 无限制(绕过队列)

# 未知厂商需显式使用 OpenRouter
claudish --model openrouter@qwen/qwen-2.5 "任务"
claudish --model or@mistralai/mistral-large "分析"

旧版语法(已弃用)

旧的 前缀/模型 语法仍然可用,但会显示弃用警告:

# 旧版(已弃用)          →  新版(推荐)
claudish --model g/gemini-pro     →  claudish --model g@gemini-pro
claudish --model oai/gpt-4o       →  claudish --model oai@gpt-4o
claudish --model ollama/llama3.2  →  claudish --model ollama@llama3.2

精选模型

开发推荐顶级模型(v3.1.1):

模型 提供商 最佳用途
openai/gpt-5.3 OpenAI 默认 - 最先进的推理能力
minimax/minimax-m2.1 MiniMax 经济实惠,速度快
z-ai/glm-4.7 Z.AI 性能均衡
google/gemini-3-pro-preview Google 100万上下文窗口
moonshotai/kimi-k2-thinking MoonShot 扩展推理能力
deepseek/deepseek-v3.2 DeepSeek 代码专家
qwen/qwen3-vl-235b-a22b-thinking Alibaba 视觉 + 推理

Vertex AI 合作伙伴模型(MaaS - Google Cloud 计费):

模型 提供商 最佳用途
vertex/minimax/minimax-m2-maas MiniMax 快速、经济
vertex/mistralai/codestral-2 Mistral 代码专家
vertex/deepseek/deepseek-v3-2-maas DeepSeek 深度推理
vertex/qwen/qwen3-coder-480b-a35b-instruct-maas Qwen 代理式编码
vertex/openai/gpt-oss-120b-maas OpenAI 开放权重推理

列出所有模型:

claudish --models              # 列出所有 OpenRouter 模型
claudish --models gemini       # 搜索特定模型
claudish --top-models          # 显示精选推荐

Claude Code 标志透传(v5.3.0 新增)

Claudish 会将所有未识别的标志直接传递给 Claude Code。这意味着任何 Claude Code 标志都可以与 Claudish 一起使用——无需包装器:

# 使用 Claude Code 代理
claudish --model grok --agent code-review "审查认证系统"

# 控制工作量和权限
claudish --model grok --effort high --permission-mode plan "设计 API"

# 设置预算上限
claudish --model grok --max-budget-usd 0.50 "快速修复"

# 自定义系统提示
claudish --model grok --append-system-prompt "始终以 JSON 格式回复" "列出文件"

# 限制可用工具
claudish --model grok --allowedTools "Read,Grep" "搜索认证漏洞"

Claudish 标志(--model--stdin--quiet-y 等)可以按 任意顺序 出现——无论位置如何,它们都会被识别。

当 Claude Code 标志值以 - 开头时,请使用 --

claudish --model grok -- --system-prompt "-verbose logging" "任务"

视觉代理(v5.1.0 新功能)

现在所有模型都能“看”图像——即使是那些本身不支持视觉输入的模型。

当你向一个不具备视觉处理能力的模型(比如本地 Ollama 模型)发送图像时,Claudish 会自动执行以下操作:

  1. 检测到该模型无法处理图像
  2. 将每张图像发送至 Anthropic API(Claude Sonnet),生成详细的描述文本
  3. [Image Description: ...] 文本替换图像块
  4. 将补充了描述信息的消息转发给目标模型
Claude Code → 图像 + “这是什么?” → Claudish
                                             ↓
                              ┌──────────────────────────────┐
                              │ 模型是否支持视觉?         │
                              │ 是 → 直接传递图像          │
                              │ 否 → 使用 Claude 描述图像 → │
                              │        替换为文本           │
                              └──────────────────────────────┘
                                             ↓
                                      目标模型

工作原理:

  • 使用你现有的 Claude Code x-api-key(无需额外配置)
  • 每张图像会并行进行描述(即使有多张图像也能快速完成)
  • 每张图像有 30 秒超时时间,超时后会优雅地回退到移除图像
  • 描述内容包括文本、布局、颜色、代码、图表和 UI 元素等信息

示例:

# 本地 Ollama 模型(无视觉能力)——图像会被自动描述
claudish --model ollama@llama3.2 “这张截图里有什么?”

# 支持视觉的模型——图像会原样传递
claudish --model g@gemini-2.5-flash “这张截图里有什么?”

回退行为: 如果视觉代理失败(网络错误、超时或 API 问题),Claudish 会回退到移除图像——请求仍然会继续,只是没有图像上下文信息。

状态栏显示

Claudish 会自动在 Claude Code 的状态栏中显示关键信息——无需任何设置!

超紧凑格式: 目录 • 模型ID • $成本 • 上下文%

视觉设计:

  • 🔵 目录(亮青色,加粗)——当前所在目录
  • 🟡 模型ID(亮黄色)——实际的 OpenRouter 模型 ID
  • 🟢 成本(亮绿色)——来自 OpenRouter 的实时会话费用
  • 🟣 上下文(亮品红色)——剩余上下文窗口的百分比
  • 分隔符(浅色)——视觉分隔线

示例:

  • claudish • x-ai/grok-code-fast-1 • $0.003 • 95% — 使用 Grok 模型,已花费 $0.003,还剩 95% 的上下文空间
  • my-project • openai/gpt-5-codex • $0.12 • 67% — 使用 GPT-5 模型,已花费 $0.12,还剩 67% 的上下文空间
  • backend • minimax/minimax-m2 • $0.05 • 82% — 使用 MiniMax M2 模型,已花费 $0.05,还剩 82% 的上下文空间
  • test • openrouter/auto • $0.01 • 90% — 使用任意自定义模型,已花费 $0.01,还剩 90% 的上下文空间

关键跟踪(实时更新):

  • 💰 成本跟踪——基于 Claude Code 会话数据的实时美元费用
  • 📊 上下文监控——模型剩余上下文窗口的百分比
  • 性能优化——超紧凑设计,适合与思考模式界面完美融合

针对思考模式优化:

  • 超紧凑——目录限制在 15 个字符内,为其他信息留出空间
  • 重要信息优先——最重要的信息(目录、模型)放在最前面
  • 智能截断——长目录用“…”缩短
  • 预留空间——为 Claude 的思考模式界面预留约 40 个字符的空间
  • 颜色编码——便于快速目视扫描
  • 不会溢出——即使启用思考模式也能完美适配

自定义模型支持:

  • 任何 OpenRouter 模型——不限于推荐列表(例如 openrouter/auto 或自定义模型)
  • 实际模型ID——显示确切的 OpenRouter 模型 ID,不做任何翻译
  • 上下文回退——对于未知模型,使用 10 万 token 的上下文窗口作为安全默认值
  • 短名单优化——我们推荐的模型都具有准确的上下文大小
  • 面向未来——适用于未来添加到 OpenRouter 的新模型

工作原理:

  • 每个 Claudish 实例都会创建一个临时设置文件,用于自定义状态栏
  • 设置通过 --settings 标志实现(不会修改全局的 Claude Code 配置)
  • 状态栏使用简单的 Bash 脚本结合 ANSI 颜色实现(无需外部依赖!)
  • 显示来自 CLAUDISH_ACTIVE_MODEL_NAME 环境变量的实际 OpenRouter 模型 ID
  • 上下文跟踪会根据我们推荐列表中的模型使用特定的上下文大小,对于其他模型则使用 10 万 token 作为默认值
  • 临时文件会在 Claudish 退出时自动清理
  • 每个实例完全隔离——可以并行运行多个实例!

实例间隔离:

  • ✅ 不会修改 ~/.claude/settings.json
  • ✅ 每个实例都有自己的配置
  • ✅ 可以安全地并行运行多个 Claudish 实例
  • ✅ 不会影响标准的 Claude Code
  • ✅ 临时文件会在退出时自动清理
  • ✅ 无外部依赖(仅使用 Bash,无需 jq!)

示例

基本用法

# 简单提示
claudish “修复 user.ts 中的 bug”

# 多词提示
claudish “使用 JWT 令牌实现用户认证”

指定模型

# 自动检测路由(模型名称决定提供商)
claudish --model gpt-4o “重构整个 API 层”           # → OpenAI
claudish --model gemini-2.0-flash “快速修复”                 # → Google
claudish --model llama-3.1-70b “代码审查”                  # → OllamaCloud

# 显式指定提供商(新的 @ 语法)
claudish --model google@gemini-2.5-pro “复杂分析”
claudish --model oai@o1 “深度推理任务”
claudish --model openrouter@deepseek/deepseek-r1 “分析”   # 对于未知厂商需要显式指定 OpenRouter

# 本地模型并发控制
claudish --model ollama@llama3.2 “代码审查”
claudish --model ollama@llama3.2:3 “并行处理”      # 3 个并发任务
claudish --model lmstudio@qwen2.5-coder “实现仪表盘 UI”

自主模式

自动批准功能是默认开启的。如果需要完全自主模式,只需添加 --dangerous 参数:

# 基本用法(自动批准已开启)
claudish “删除未使用的文件”

# 完全自主模式(自动批准 + 危险沙盒关闭)
claudish --dangerous “安装依赖项”

# 如果需要手动确认,可关闭自动批准
claudish --no-auto-approve “进行重要更改”

自定义端口

# 使用特定端口
claudish --port 3000 “分析代码库”

# 或者设置默认端口
export CLAUDISH_PORT=3000
claudish “你的任务”

传递 Claude 标志

# 详细模式
claudish “调试问题” --verbose

# 自定义工作目录
claudish “分析代码” --cwd /path/to/project

# 多个标志
claudish --model openai/gpt-5.3-codex “任务” --verbose --debug

监控模式

新增! Claudish 现在提供监控模式,帮助你了解 Claude Code 内部的工作机制。


# 启用监控模式(需要真实的 Anthropic API 密钥)
claudish --monitor --debug "实现一个功能"

监控模式的作用:

  • 代理至真实的 Anthropic API(非 OpenRouter) - 使用您实际的 Anthropic API 密钥
  • 记录所有流量 - 捕获完整的请求和响应
  • 支持流式传输和 JSON 格式 - 记录 SSE 流和 JSON 响应
  • 将调试日志保存到文件 - 当使用 --debug 时,会保存到 logs/claudish_*.log
  • 直通代理 - 不进行任何翻译,原样转发给 Anthropic

何时使用监控模式:

  • 🔍 理解 Claude Code 的 API 协议
  • 🐛 调试集成问题
  • 📊 分析 Claude Code 的行为
  • 🔬 研究与开发

所需条件:

# 监控模式需要真实的 Anthropic API 密钥(而非占位符)
export ANTHROPIC_API_KEY='sk-ant-api03-...'

# 结合 `--debug` 使用以保存日志到文件
claudish --monitor --debug "您的任务"

# 日志将保存至:logs/claudish_TIMESTAMP.log

示例输出:

[Monitor] 服务器已在 http://127.0.0.1:8765 上启动
[Monitor] 模式:直通真实 Anthropic API
[Monitor] 所有流量都将被记录以便分析

=== [MONITOR] Claude Code → Anthropic API 请求 ===
{
  "model": "claude-sonnet-4.5",
  "messages": [...],
  "max_tokens": 4096,
  ...
}
=== 请求结束 ===

=== [MONITOR] Anthropic API → Claude Code 响应(流式) ===
event: message_start
data: {"type":"message_start",...}

event: content_block_start
data: {"type":"content_block_start",...}
...
=== 流式响应结束 ===

注意: 监控模式会从您的 Anthropic 账户中扣费(而非 OpenRouter)。请使用 --debug 标志来保存日志以便分析。

输出模式

Claudish 支持三种输出模式,适用于不同的场景:

1. 静默模式(单次调用默认)

干净的输出,不含 [claudish] 日志信息,非常适合与其他工具配合使用:

# 单次调用默认为静默模式
claudish "2+2 是多少?"
# 输出:2 + 2 等于 4。

# 在管道中使用
claudish "列出 3 种颜色" | grep -i blue

# 重定向到文件
claudish "分析代码" > analysis.txt

2. 详细模式

显示所有 [claudish] 日志信息,便于调试:

# 详细模式
claudish --verbose "2+2 是多少?"
# 输出:
# [claudish] 正在启动 Claude Code,使用 openai/gpt-4o
# [claudish] 代理地址:http://127.0.0.1:8797
# [claudish] 状态行:dir • openai/gpt-4o • $成本 • 上下文%
# ...
# 2 + 2 等于 4。
# [claudish] 正在关闭代理服务器...
# [claudish] 完成

# 交互模式默认为详细模式
claudish --interactive

3. JSON 输出模式

结构化的输出,非常适合自动化和工具集成:

# JSON 输出(始终为静默模式)
claudish --json "2+2 是多少?"
# 输出:{"type":"result","result":"2 + 2 等于 4.","total_cost_usd":0.068,"usage":{...}}

# 使用 jq 提取结果
claudish --json "列出 3 种颜色" | jq -r '.result'

# 获取费用和 token 使用情况
claudish --json "分析代码" | jq '{result, cost: .total_cost_usd, tokens: .usage.input_tokens}'

# 在脚本中使用
RESULT=$(claudish --json "检查测试是否通过" | jq -r '.result')
echo "AI 说:$RESULT"

# 跟踪多次运行的费用
for task in task1 task2 task3; do
  claudish --json "$task" | jq -r '"\(.total_cost_usd)"'
done | awk '{sum+=$1} END {print "总计:$"sum}'

JSON 输出字段:

  • result - AI 的回答文本
  • total_cost_usd - 总费用(美元)
  • usage.input_tokens - 输入 token 数量
  • usage.output_tokens - 输出 token 数量
  • duration_ms - 总耗时(毫秒)
  • num_turns - 对话轮数
  • modelUsage - 各模型的使用情况细分

工作原理

架构

claudish "您的提示"
    ↓
1. 解析参数(--model、--no-auto-approve、--dangerous 等)
2. 查找可用端口(随机或指定)
3. 在 http://127.0.0.1:PORT 上启动本地代理
4. 启动:claude --auto-approve --env ANTHROPIC_BASE_URL=http://127.0.0.1:PORT
5. 代理将 Anthropic API 转换为 OpenRouter API 格式
6. 实时流式输出
7. 退出时清理代理

请求流程

普通模式(OpenRouter):

Claude Code → Anthropic API 格式 → 本地代理 → OpenRouter API 格式 → OpenRouter
                                         ↓
Claude Code ← Anthropic API 格式 ← 本地代理 ← OpenRouter API 格式 ← OpenRouter

监控模式(Anthropic 直通):

Claude Code → Anthropic API 格式 → 本地代理(记录日志) → Anthropic API
                                         ↓
Claude Code ← Anthropic API 格式 ← 本地代理(记录日志) ← Anthropic API

并行运行

每次 claudish 调用:

  • 获取一个唯一的随机端口
  • 启动独立的代理服务器
  • 运行独立的 Claude Code 实例
  • 退出时进行清理

这使得可以同时运行多个实例:

# 终端 1
claudish --model x-ai/grok-code-fast-1 "任务 A"

# 终端 2
claudish --model openai/gpt-5.3-codex "任务 B"

# 终端 3
claudish --model minimax/minimax-m2 "任务 C"

扩展思考支持

v1.1.0 新增: Claudish 现在完全支持具有扩展思考/推理能力的模型(Grok、o1 等),并完全符合 Anthropic Messages API 协议。

思考转换模型(v1.5.0)

Claudish 包含一个复杂的 思考转换模型,能够将 Claude Code 的原生思考预算与各大 AI 提供商的独特需求相匹配。

当您在 Claude 中设置思考预算时(例如 budget: 16000),Claudish 会自动进行转换:

提供商 模型 转换逻辑
OpenAI o1、o3 将预算映射到 reasoning_effort(minimal/low/medium/high)
Google Gemini 3 映射到 thinking_level(low/high)
Google Gemini 2.x 直接传递精确的 thinking_budget(上限为 24k)
xAI Grok 3 Mini 将预算映射到 reasoning_effort(low/high)
Qwen Qwen 2.5 启用 enable_thinking + 精确预算
MiniMax M2 启用 reasoning_split(交错思考)
DeepSeek R1 自动管理推理(为安全起见会剥离相关参数)

这确保您可以使用标准的 Claude Code 思考控制功能,与 任何 支持的模型配合使用,而无需担心 API 的具体差异。

什么是扩展思考?

一些 AI 模型(如 Grok 和 OpenAI 的 o1)可以在给出最终答案之前展示其内部的推理过程。这些“思考”内容有助于您理解模型是如何得出结论的。

Claudish 如何处理思考

Claudish 实现了 Anthropic Messages API 的 interleaved-thinking 协议:

思考块(隐藏):

  • 包含模型的推理过程
  • 在 Claude Code 界面中自动折叠
  • 显示“Claude 正在思考…”指示器
  • 用户可以展开查看推理过程

文本块(可见):

  • 包含最终回答
  • 正常显示
  • 逐步流式输出

支持思考模式的模型

  • x-ai/grok-code-fast-1 - Grok 的推理模式
  • openai/gpt-5-codex - o1 推理(启用时)
  • openai/o1-preview - 完整推理支持
  • openai/o1-mini - 紧凑型推理
  • ⚠️ 其他模型未来可能支持推理

技术细节

流式协议(V2 - 协议合规):

1. message_start
2. content_block_start(文本,索引=0)      ← 立即发送!(必需)
3. ping
4. [若推理到达]
   - content_block_stop(索引=0)           ← 关闭初始空块
   - content_block_start(思考,索引=1)   ← 推理内容
   - thinking_delta 事件 × N 次
   - content_block_stop(索引=1)
5. content_block_start(文本,索引=2)      ← 响应内容
6. text_delta 事件 × M 次
7. content_block_stop(索引=2)
8. message_delta + message_stop

关键: content_block_start 必须在 message_start 之后、ping 之前立即发送。这是 Anthropic Messages API 协议的要求,以确保 UI 能够正确初始化。

主要特性:

  • ✅ 思考与文本块分离(使用正确的索引)
  • thinking_deltatext_delta 事件类型
  • ✅ 思考内容默认隐藏
  • ✅ 各块之间平滑过渡
  • ✅ 完全兼容 Claude Code UI

UX 优势

之前(v1.0.0 - 不支持思考):

  • 推理内容以普通文本形式显示
  • 内部思考与输出混杂,令人困惑
  • 无进度指示
  • 消息一次性全部更新

之后(v1.1.0 - 完全协议支持):

  • ✅ 推理内容隐藏/折叠
  • ✅ 输出整洁、专业
  • ✅ 显示“Claude 正在思考…”提示
  • ✅ 平滑的增量流式传输
  • ✅ 消息头和结构清晰可见
  • ✅ 符合 Anthropic Messages API 协议

文档

完整协议文档请参见:

动态推理支持(v1.4.0 新增)

Claudish 现在能够智能适配任何支持推理的模型!

不再需要硬编码列表或手动标记。Claudish 会动态查询 OpenRouter 元数据,为所有支持推理的模型启用相应功能。

🧠 动态思考功能

  1. 自动检测:

    • 启动时自动检查模型能力
    • 仅在支持时启用扩展思考 UI
    • 具有前瞻性:可即时支持新模型(如 deepseek-r1minimax-m2
  2. 智能参数映射:

    • Claude: 直接传递 token 预算(如 16k tokens)
    • OpenAI (o1/o3): 将预算转换为 reasoning_effort
      • “ultrathink”(≥32k)→ high
      • “think hard”(16k-32k)→ medium
      • “think”(<16k)→ low
    • Gemini & Grok: 自动保留思考签名和 XML 轨迹
  3. 通用兼容性:

    • 可使用“ultrathink”或“think hard”提示词,适用于任何支持的模型
    • Claudish 会为您处理翻译层

上下文缩放与自动压缩

v1.2.0 新增: Claudish 现在能够智能管理 token 计数,支持任意上下文窗口大小(从 128k 到 2M+),同时保留 Claude Code 原生的自动压缩行为。

挑战

Claude Code 默认假设一个固定的上下文窗口(通常为 Sonnet 的 200k tokens)。

  • 小型模型(如 Grok 128k): Claude 可能过度消耗上下文而崩溃。
  • 超大型模型(如 Gemini 2M): Claude 会在使用量仅为 10% 时就过早压缩,浪费模型潜力。

解决方案:Token 缩放

Claudish 实现了一种“双重计数”系统:

  1. 内部缩放(用于 Claude):

    • 从 OpenRouter 获取真实的上下文限制(如 1M tokens)。
    • 我们按比例调整报告的 token 使用量,使 Claude 认为 1M tokens 相当于 200k。
    • 结果: 自动压缩将在正确的使用百分比(如 90%)触发,无论实际限制是多少。
  2. 准确报告(供您使用):

    • 状态栏显示真实未缩放的使用量真实上下文百分比
    • 您可以看到具体的成本和限制,而 Claude 仍然保持稳定运行。

好处:

  • 适用于任何模型规模(128k、1M、2M 等)
  • 解锁超大上下文窗口(Claude Code 在 Gemini 下性能提升 10 倍!)
  • 防止小型模型崩溃(Grok)
  • 原生行为(压缩功能正常运作)

开发

项目结构

mcp/claudish/
├── src/
│   ├── index.ts              # 主入口文件
│   ├── cli.ts                # CLI 参数解析器
│   ├── proxy-server.ts       # 基于 Hono 的代理服务器
│   ├── transform.ts          # API 格式转换(来自 claude-code-proxy)
│   ├── claude-runner.ts      # Claude CLI 运行程序(创建临时设置)
│   ├── port-manager.ts       # 端口管理工具
│   ├── config.ts             # 常量和默认值
│   ├── types.ts              # TypeScript 类型定义
│   └── services/
│       └── vision-proxy.ts   # 非视觉模型的图像描述服务
├── tests/                    # 测试文件
├── package.json
├── tsconfig.json
└── biome.json

代理实现

Claudish 使用基于 Hono 的代理服务器,灵感来源于 claude-code-proxy

  • 框架: Hono - 快速、轻量级的 Web 框架
  • API 转换: 将 Anthropic API 格式 ↔ OpenAI 格式进行转换
  • 流式传输: volle支持 Server-Sent Events (SSE)
  • 工具调用: 处理 Claude 的 tool_use ↔ OpenAI 的 tool_calls
  • 实战验证: 基于生产级的 claude-code-proxy 实现

为什么选择 Hono?

  • 原生支持 Bun(无需适配器)
  • 极其快速且轻量
  • 支持中间件(CORS、日志等)
  • 可跨 Node.js、Bun 和 Cloudflare Workers 使用

构建与测试

# 安装依赖
bun install

# 开发模式
bun run dev "测试提示"

# 构建
bun run build

# 代码检查
bun run lint

# 格式化
bun run format

# 类型检查
bun run typecheck

# 运行测试
bun test

协议合规性测试

Claudish 包含一套全面的快照测试系统,以确保与官方 Claude Code 协议的 1:1 兼容性:

# 运行快照测试(13/13 通过 ✅)
bun test tests/snapshot.test.ts

# 完整工作流程:捕获测试用例 + 运行测试
./tests/snapshot-workflow.sh --full

# 从监控模式捕获新的测试用例
./tests/snapshot-workflow.sh --capture

# 调试 SSE 事件
bun tests/debug-snapshot.ts

测试内容:

  • ✅ 事件序列(message_start → content_block_start → deltas → stop → message_delta → message_stop)
  • ✅ 内容块索引(按顺序:0、1、2、...)
  • ✅ 工具输入流式传输(细粒度的 JSON 数据块)
  • ✅ 使用量指标(在 message_start 和 message_delta 中存在)
  • ✅ 停止原因(始终存在且有效)
  • ✅ 缓存指标(创建和读取令牌)

文档:

全局安装

# 全局使用链接
bun run install:global

# 现在可以在任何地方使用
claudish "你的任务"

故障排除

“Claude Code CLI 未安装”

安装 Claude Code:

npm install -g claude-code
# 或访问:https://claude.com/claude-code

“需要 OPENROUTER_API_KEY 环境变量”

设置您的 API 密钥:

export OPENROUTER_API_KEY=sk-or-v1-...

或者将其添加到您的 shell 配置文件中(~/.zshrc~/.bashrc):

echo 'export OPENROUTER_API_KEY=sk-or-v1-...' >> ~/.zshrc
source ~/.zshrc

“未找到可用端口”

指定自定义端口:

claudish --port 3000 "你的任务"

或者在 src/config.ts 中增加端口范围。

代理错误

检查 OpenRouter API 状态:

验证您的 API 密钥是否有效:

状态行未显示模型

如果状态行没有显示模型名称:

  1. 检查是否传递了 --settings 标志:

    # 在 Claudish 输出中查找以下内容:
    # [claudish] 实例设置:/tmp/claudish-settings-{时间戳}.json
    
  2. 验证环境变量是否已设置:

    # 应该由 Claudish 自动设置
    echo $CLAUDISH_ACTIVE_MODEL_NAME
    # 应输出类似:xAI/Grok-1 的内容
    
  3. 手动测试状态行命令:

    export CLAUDISH_ACTIVE_MODEL_NAME="xAI/Grok-1"
    cat > /dev/null && echo "[$CLAUDISH_ACTIVE_MODEL_NAME] 📁 $(basename "$(pwd)")"
    # 应输出:[xAI/Grok-1] 📁 你的目录名
    
  4. 检查临时设置文件:

    # 文件创建在 /tmp/claudish-settings-*.json 中
    ls -la /tmp/claudish-settings-*.json 2>/dev/null | tail -1
    cat /tmp/claudish-settings-*.json | head -1
    
  5. 验证 bash 是否可用:

    which bash
    # 应显示 bash 的路径(通常是 /bin/bash 或 /usr/bin/bash)
    

注意: 临时设置文件会在 Claudish 退出时自动清理。如果您看到多个文件,可能有实例崩溃——可以安全地手动删除它们。

与 Claude Code 的比较

特性 Claude Code Claudish
模型 仅 Anthropic 模型 任意 OpenRouter 模型
API Anthropic API OpenRouter API
成本 Anthropic 定价 OpenRouter 定价
设置 API 密钥 → 直接 API 密钥 → 代理 → OpenRouter
速度 直接连接 ~相同(本地代理)
功能 所有 Claude Code 功能 所有 Claude Code 功能
视觉功能 原生支持(Anthropic 模型) 任意模型(通过 Claude 自动描述)

何时使用 Claudish:

  • ✅ 想尝试不同模型(Grok、GPT-5 等)
  • ✅ 需要 OpenRouter 特定功能
  • ✅ 更倾向于 OpenRouter 的定价
  • ✅ 测试模型性能

何时使用 Claude Code:

  • ✅ 只想使用最新的 Anthropic 模型
  • ✅ 需要官方 Anthropic 支持
  • ✅ 设置更简单(无需代理)

贡献

欢迎贡献!请:

  1. 分支仓库
  2. 创建功能分支:git checkout -b feature/amazing
  3. 提交更改:git commit -m '添加惊人功能'
  4. 推送到分支:git push origin feature/amazing
  5. 打开拉取请求

许可证

MIT © MadAppGang

致谢

Claudish 的代理实现基于 @kiyo-eclaude-code-proxy。我们对其优秀的基于 Hono 的 API 转换层进行了改造,以实现与 OpenRouter 的集成。

来自 claude-code-proxy 的关键贡献:

  • Anthropic ↔ OpenAI API 格式转换(transform.ts
  • 使用服务器发送事件处理流式响应
  • 工具调用兼容层
  • 干净的 Hono 框架架构

感谢 claude-code-proxy 团队构建了如此强大且可用于生产的基础设施!🙏

链接


MadAppGang 用心打造

版本历史

v6.6.02026/04/01
v6.5.32026/04/01
v6.5.22026/04/01
v6.5.12026/04/01
v6.5.02026/04/01
v6.4.62026/03/30
v6.4.52026/03/28
v6.4.22026/03/28
v6.4.12026/03/28
v6.4.02026/03/27
v6.3.22026/03/25
v6.3.12026/03/25
v6.3.02026/03/25
v6.2.22026/03/24
v6.2.12026/03/24
v6.2.02026/03/24
v6.1.12026/03/24
v6.1.02026/03/23
v6.0.12026/03/23
v6.0.02026/03/22

常见问题

相似工具推荐

stable-diffusion-webui

stable-diffusion-webui 是一个基于 Gradio 构建的网页版操作界面,旨在让用户能够轻松地在本地运行和使用强大的 Stable Diffusion 图像生成模型。它解决了原始模型依赖命令行、操作门槛高且功能分散的痛点,将复杂的 AI 绘图流程整合进一个直观易用的图形化平台。 无论是希望快速上手的普通创作者、需要精细控制画面细节的设计师,还是想要深入探索模型潜力的开发者与研究人员,都能从中获益。其核心亮点在于极高的功能丰富度:不仅支持文生图、图生图、局部重绘(Inpainting)和外绘(Outpainting)等基础模式,还独创了注意力机制调整、提示词矩阵、负向提示词以及“高清修复”等高级功能。此外,它内置了 GFPGAN 和 CodeFormer 等人脸修复工具,支持多种神经网络放大算法,并允许用户通过插件系统无限扩展能力。即使是显存有限的设备,stable-diffusion-webui 也提供了相应的优化选项,让高质量的 AI 艺术创作变得触手可及。

162.1k|★★★☆☆|今天
开发框架图像Agent

everything-claude-code

everything-claude-code 是一套专为 AI 编程助手(如 Claude Code、Codex、Cursor 等)打造的高性能优化系统。它不仅仅是一组配置文件,而是一个经过长期实战打磨的完整框架,旨在解决 AI 代理在实际开发中面临的效率低下、记忆丢失、安全隐患及缺乏持续学习能力等核心痛点。 通过引入技能模块化、直觉增强、记忆持久化机制以及内置的安全扫描功能,everything-claude-code 能显著提升 AI 在复杂任务中的表现,帮助开发者构建更稳定、更智能的生产级 AI 代理。其独特的“研究优先”开发理念和针对 Token 消耗的优化策略,使得模型响应更快、成本更低,同时有效防御潜在的攻击向量。 这套工具特别适合软件开发者、AI 研究人员以及希望深度定制 AI 工作流的技术团队使用。无论您是在构建大型代码库,还是需要 AI 协助进行安全审计与自动化测试,everything-claude-code 都能提供强大的底层支持。作为一个曾荣获 Anthropic 黑客大奖的开源项目,它融合了多语言支持与丰富的实战钩子(hooks),让 AI 真正成长为懂上

139k|★★☆☆☆|今天
开发框架Agent语言模型

ComfyUI

ComfyUI 是一款功能强大且高度模块化的视觉 AI 引擎,专为设计和执行复杂的 Stable Diffusion 图像生成流程而打造。它摒弃了传统的代码编写模式,采用直观的节点式流程图界面,让用户通过连接不同的功能模块即可构建个性化的生成管线。 这一设计巧妙解决了高级 AI 绘图工作流配置复杂、灵活性不足的痛点。用户无需具备编程背景,也能自由组合模型、调整参数并实时预览效果,轻松实现从基础文生图到多步骤高清修复等各类复杂任务。ComfyUI 拥有极佳的兼容性,不仅支持 Windows、macOS 和 Linux 全平台,还广泛适配 NVIDIA、AMD、Intel 及苹果 Silicon 等多种硬件架构,并率先支持 SDXL、Flux、SD3 等前沿模型。 无论是希望深入探索算法潜力的研究人员和开发者,还是追求极致创作自由度的设计师与资深 AI 绘画爱好者,ComfyUI 都能提供强大的支持。其独特的模块化架构允许社区不断扩展新功能,使其成为当前最灵活、生态最丰富的开源扩散模型工具之一,帮助用户将创意高效转化为现实。

107.7k|★★☆☆☆|2天前
开发框架图像Agent

NextChat

NextChat 是一款轻量且极速的 AI 助手,旨在为用户提供流畅、跨平台的大模型交互体验。它完美解决了用户在多设备间切换时难以保持对话连续性,以及面对众多 AI 模型不知如何统一管理的痛点。无论是日常办公、学习辅助还是创意激发,NextChat 都能让用户随时随地通过网页、iOS、Android、Windows、MacOS 或 Linux 端无缝接入智能服务。 这款工具非常适合普通用户、学生、职场人士以及需要私有化部署的企业团队使用。对于开发者而言,它也提供了便捷的自托管方案,支持一键部署到 Vercel 或 Zeabur 等平台。 NextChat 的核心亮点在于其广泛的模型兼容性,原生支持 Claude、DeepSeek、GPT-4 及 Gemini Pro 等主流大模型,让用户在一个界面即可自由切换不同 AI 能力。此外,它还率先支持 MCP(Model Context Protocol)协议,增强了上下文处理能力。针对企业用户,NextChat 提供专业版解决方案,具备品牌定制、细粒度权限控制、内部知识库整合及安全审计等功能,满足公司对数据隐私和个性化管理的高标准要求。

87.6k|★★☆☆☆|今天
开发框架语言模型

ML-For-Beginners

ML-For-Beginners 是由微软推出的一套系统化机器学习入门课程,旨在帮助零基础用户轻松掌握经典机器学习知识。这套课程将学习路径规划为 12 周,包含 26 节精炼课程和 52 道配套测验,内容涵盖从基础概念到实际应用的完整流程,有效解决了初学者面对庞大知识体系时无从下手、缺乏结构化指导的痛点。 无论是希望转型的开发者、需要补充算法背景的研究人员,还是对人工智能充满好奇的普通爱好者,都能从中受益。课程不仅提供了清晰的理论讲解,还强调动手实践,让用户在循序渐进中建立扎实的技能基础。其独特的亮点在于强大的多语言支持,通过自动化机制提供了包括简体中文在内的 50 多种语言版本,极大地降低了全球不同背景用户的学习门槛。此外,项目采用开源协作模式,社区活跃且内容持续更新,确保学习者能获取前沿且准确的技术资讯。如果你正寻找一条清晰、友好且专业的机器学习入门之路,ML-For-Beginners 将是理想的起点。

85k|★★☆☆☆|今天
图像数据工具视频

ragflow

RAGFlow 是一款领先的开源检索增强生成(RAG)引擎,旨在为大语言模型构建更精准、可靠的上下文层。它巧妙地将前沿的 RAG 技术与智能体(Agent)能力相结合,不仅支持从各类文档中高效提取知识,还能让模型基于这些知识进行逻辑推理和任务执行。 在大模型应用中,幻觉问题和知识滞后是常见痛点。RAGFlow 通过深度解析复杂文档结构(如表格、图表及混合排版),显著提升了信息检索的准确度,从而有效减少模型“胡编乱造”的现象,确保回答既有据可依又具备时效性。其内置的智能体机制更进一步,使系统不仅能回答问题,还能自主规划步骤解决复杂问题。 这款工具特别适合开发者、企业技术团队以及 AI 研究人员使用。无论是希望快速搭建私有知识库问答系统,还是致力于探索大模型在垂直领域落地的创新者,都能从中受益。RAGFlow 提供了可视化的工作流编排界面和灵活的 API 接口,既降低了非算法背景用户的上手门槛,也满足了专业开发者对系统深度定制的需求。作为基于 Apache 2.0 协议开源的项目,它正成为连接通用大模型与行业专有知识之间的重要桥梁。

77.1k|★★★☆☆|昨天
Agent图像开发框架