推荐安装
先安装 FlyHub CLI,再用它写入配置文件与环境变量(安装 dsh、写入 ~/.dsh 配置与 FLYHUB_API_KEY)。将 Key 换成控制台里的密钥即可。
# 安装 FlyHub CLI
curl -fsSL https://flyhub.cn/install.sh | bash
export PATH="$HOME/.flyhub/bin:$PATH"
# 一键配置(将 Key 替换为控制台密钥)
flyhub setup deepseek-harness --key <FLYHUB_API_KEY>若已安装过 CLI,可只执行 flyhub setup deepseek-harness --key <FLYHUB_API_KEY>。已设置 FLYHUB_API_KEY 时可省略 --key。更多工具:flyhub setup list
手动安装
1. 准备工作
开始前请安装 Node.js 24,并在 FlyHub 控制台准备有效的 API Key。
- DeepSeek:
deepseek-v4、deepseek-v4-flash - OpenAI 兼容:
gpt-5.6-sol - Anthropic 兼容(OpenAI 格式):
claude-sonnet-5
1.1 安装 Node.js 24
DeepSeek Harness 需要 Node.js 24(自带 npm)。安装后重新打开终端并检查版本:
node --version
npm --versionnode --version 输出应以 v24. 开头。
2. 一键配置并启动
若未使用上方 FlyHub CLI,可将下方脚本中的 API Key 替换为你的 FlyHub Key,复制整段到终端执行。
bash <<'FLYHUB_SETUP'
set -e
npm install -g @deepseek-ai/dsh
FLYHUB_API_KEY="sk-flyhub-replace-with-your-api-key"
export FLYHUB_API_KEY
NODE_PATH="$(npm root -g)/@deepseek-ai/dsh/node_modules" node <<'NODE'
const fs = require('fs');
const os = require('os');
const path = require('path');
const yaml = require('js-yaml');
const home = process.env.DSH_HOME || path.join(os.homedir(), '.dsh');
const settingsPath = path.join(home, 'settings.yaml');
fs.mkdirSync(home, { recursive: true });
const current = fs.existsSync(settingsPath)
? (yaml.load(fs.readFileSync(settingsPath, 'utf8')) || {})
: {};
if (fs.existsSync(settingsPath)) {
fs.copyFileSync(settingsPath, settingsPath + '.bak.' + Date.now());
}
current['llm-pi-ai'] ??= {};
current['llm-pi-ai'].providers ??= {};
current['llm-pi-ai'].providers.flyhub = {
displayName: 'FlyHub',
apiKeyEnv: 'FLYHUB_API_KEY',
api: 'openai-completions',
baseURL: 'https://api.flyhub.cn/v1',
models: [
{ id: 'deepseek-v4-pro', name: 'DeepSeek V4 Pro' },
{ id: 'deepseek-v4-flash', name: 'DeepSeek V4 Flash' },
{ id: 'gpt-5.6-sol', name: 'GPT-5.6 Sol' },
{ id: 'claude-sonnet-5', name: 'Claude Sonnet 5' },
],
};
current['agent-default-model'] = {
provider: 'flyhub',
model: 'deepseek-v4-pro',
};
fs.writeFileSync(
settingsPath,
yaml.dump(current, { lineWidth: -1, noRefs: true }),
{ mode: 0o600 },
);
const envPath = path.join(home, '.env');
const oldLines = fs.existsSync(envPath)
? fs.readFileSync(envPath, 'utf8').split(/\r?\n/)
: [];
const lines = oldLines.filter(
(line) => line && !line.startsWith('FLYHUB_API_KEY='),
);
lines.push('FLYHUB_API_KEY=' + process.env.FLYHUB_API_KEY);
fs.writeFileSync(envPath, lines.join('\n') + '\n', { mode: 0o600 });
console.log('FlyHub configured. Default model: deepseek-v4-pro');
NODE
dsh web
FLYHUB_SETUP命令会安装 Harness、备份并合并已有配置、写入 Key、注册 FlyHub 模型并启动服务。启动后终端会显示本地地址(通常为 http://127.0.0.1:3080),在浏览器打开并新建会话即可。
dsh web在指定项目目录中使用 Harness 时,请先 cd 到项目目录再运行 dsh web。
3. 验证连接
使用 headless 模式发送最小请求,验证 Key 与模型配置:
export FLYHUB_API_KEY="sk-flyhub-replace-with-your-api-key"
dsh --profile headless "Reply with OK only"若终端返回 OK,说明 Harness 已通过 FlyHub 成功调用模型。之后可运行 dsh web 打开 Web 界面。
4. 添加与切换模型
在 ~/.dsh/settings.yaml 的 models 列表中添加更多 FlyHub 模型。修改 agent-default-model.model 可设置新会话默认模型:
llm-pi-ai:
providers:
flyhub:
displayName: FlyHub
apiKeyEnv: FLYHUB_API_KEY
api: openai-completions
baseURL: https://api.flyhub.cn/v1
models:
- id: deepseek-v4-pro
name: DeepSeek V4 Pro
- id: deepseek-v4-flash
name: DeepSeek V4 Flash
- id: gpt-5.6-sol
name: GPT-5.6 Sol
- id: claude-sonnet-5
name: Claude Sonnet 5
agent-default-model:
provider: flyhub
model: deepseek-v4-pro实时模型列表请调用 GET /v1/models。FlyHub 模型目录会持续更新,请以接口返回为准。
5. 故障排查
401 / invalid_bearer_token:确认 Key 完整、无空格、未被删除。仍失败请在控制台轮换 Key 后重试。
准备好了?登录控制台 · 充值 · 创建 API Key