claude-code-restored-runtime
Compare original and translation side by side
🇺🇸
Original
English🇨🇳
Translation
Chineseclaude-code-restored-runtime
claude-code-restored-runtime
What It Does
功能介绍
claude-code-rev- A local AI coding agent runtime that works with GitHub-backed inference providers
- Support for both GitHub Models (OpenAI-compatible) and GitHub Copilot endpoints
- Multi-provider switching with interactive CLI commands
- Chrome MCP and Computer Use MCP compatibility layers
- Restored CLI bootstrap with full command tree
The project is not the original upstream repository—some modules are shims or degraded implementations to enable runnable workflows.
claude-code-rev- 可与GitHub支持的推理提供商配合使用的本地AI编码agent运行时
- 同时支持GitHub Models(兼容OpenAI)和GitHub Copilot端点
- 通过交互式CLI命令实现多提供商切换
- Chrome MCP和Computer Use MCP兼容层
- 完整命令树的恢复版CLI引导程序
本项目并非原始上游仓库——部分模块是垫片或降级实现,以支持可运行的工作流。
Installation
安装
Prerequisites
前置要求
- Bun 1.3.5 or newer
- Node.js 24 or newer
- GitHub CLI () for account-based authentication (optional but recommended)
gh
- Bun 1.3.5或更高版本
- Node.js 24或更高版本
- GitHub CLI () 用于基于账户的身份验证(可选但推荐)
gh
Clone and Install
克隆并安装
bash
git clone https://github.com/oboard/claude-code-rev.git
cd claude-code-rev
bun installbash
git clone https://github.com/oboard/claude-code-rev.git
cd claude-code-rev
bun installVerify Installation
验证安装
bash
bun run version
bun run dev --helpbash
bun run version
bun run dev --helpAuthentication Setup
身份验证设置
Both GitHub providers use this lookup order:
- Provider-specific environment variable
GH_TOKENGITHUB_TOKEN- (GitHub CLI)
gh auth token
两种GitHub提供商均按以下顺序查找凭证:
- 提供商特定的环境变量
GH_TOKENGITHUB_TOKEN- (GitHub CLI)
gh auth token
Option 1: GitHub CLI (Recommended)
选项1:GitHub CLI(推荐)
bash
gh auth loginThis enables account-based authentication without manual token management.
bash
gh auth login这种方式无需手动管理令牌,即可实现基于账户的身份验证。
Option 2: Environment Variable
选项2:环境变量
bash
export GITHUB_TOKEN="ghp_your_token_here"Or add to :
.envbash
GITHUB_TOKEN=ghp_your_token_herebash
export GITHUB_TOKEN="ghp_your_token_here"或添加到文件:
.envbash
GITHUB_TOKEN=ghp_your_token_hereRunning the Runtime
运行运行时
Default Run
默认运行
bash
bun run devbash
bun run devWith GitHub Models Provider
使用GitHub Models提供商
bash
bun run dev --settings '{"provider":"github-models"}'Specify a model:
bash
bun run dev --settings '{"provider":"github-models"}' --model "openai/gpt-4.1"bash
bun run dev --settings '{"provider":"github-models"}'指定模型:
bash
bun run dev --settings '{"provider":"github-models"}' --model "openai/gpt-4.1"With GitHub Copilot Provider
使用GitHub Copilot提供商
bash
bun run dev --settings '{"provider":"github-copilot"}'Specify a Copilot-hosted Claude model:
bash
bun run dev --settings '{"provider":"github-copilot"}' --model "claude-opus-4.6"bash
bun run dev --settings '{"provider":"github-copilot"}'指定Copilot托管的Claude模型:
bash
bun run dev --settings '{"provider":"github-copilot"}' --model "claude-opus-�ins \H构造
"Keep"LINE Vis elementary current providerCLI Commands
CLI命令
Provider Management
提供商管理
| Command | Description |
|---|---|
| Open interactive provider picker |
| Show current provider and environment overrides |
| Switch directly to GitHub Copilot |
| Switch directly to GitHub Models |
| 命令 | 描述 |
|---|---|
| 打开交互式提供商选择器 |
| 显示当前提供商和环境覆盖配置 |
| 直接切换到GitHub Copilot |
| 直接切换到GitHub Models |
Model Management
模型管理
| Command | Description |
|---|---|
| Open model picker for current provider |
| 命令 | 描述 |
|---|---|
| 为当前提供商打开模型选择器 |
General Commands
通用命令
bash
bun run dev --help # Show full command tree
bun run version # Print restored versionbash
bun run dev --help # 查看完整命令树
bun run version # 打印恢复版本号Supported Models
支持的模型
GitHub Copilot – Validated Claude Models
GitHub Copilot – 已验证的Claude模型
These models work with the Claude Code runtime and tool loop:
claude-sonnet-4.6claude-opus-4.6claude-haiku-4.5claude-sonnet-4.5claude-opus-4.5claude-sonnet-4
Note: Copilot GPT/Grok models are not fully wired yet—they require the API path instead of the current chat/messages shim.
/responses这些模型可与Claude Code运行时和工具循环配合使用:
claude-sonnet-4.6claude-opus-4.6claude-haiku-4.5claude-sonnet-4.5claude-opus-4.5claude-sonnet-4
注意: Copilot GPT/Grok模型尚未完全适配——它们需要 API路径,而非当前的chat/messages垫片。
/responsesGitHub Models
GitHub Models
Any OpenAI-compatible model available through GitHub Models, including:
openai/gpt-4.1openai/gpt-4ometa-llama/Llama-3.3-70B-Instruct
任何通过GitHub Models提供的兼容OpenAI的模型,包括:
openai/gpt-4.1openai/gpt-4ometa-llama/Llama-3.3-70B-Instruct
Configuration Examples
配置示例
Runtime Settings File
运行时设置文件
Settings are stored in user config and can be overridden via CLI:
bash
undefined设置存储在用户配置中,可通过CLI覆盖:
bash
undefinedInline settings override
内联设置覆盖
bun run dev --settings '{"provider":"github-copilot","autoSave":true}'
undefinedbun run dev --settings '{"provider":"github-copilot","autoSave":true}'
undefinedEnvironment-Based Provider Override
基于环境的提供商覆盖
bash
undefinedbash
undefinedForce GitHub Models provider via env
通过环境变量强制使用GitHub Models提供商
export CLAUDE_CODE_PROVIDER="github-models"
bun run dev
undefinedexport CLAUDE_CODE_PROVIDER="github-models"
bun run dev
undefinedMulti-Provider Workflow
多提供商工作流
bash
undefinedbash
undefinedStart with GitHub Models
启动GitHub Models会话
bun run dev --settings '{"provider":"github-models"}'
bun run dev --settings '{"provider":"github-models"}'
Inside CLI, switch to Copilot
在CLI内切换到Copilot
/provider github-copilot
/provider github-copilot
Pick a specific model
选择特定模型
/model
/model
(select claude-opus-4.6 from picker)
(从选择器中选择claude-opus-4.6)
undefinedundefinedCode Integration Examples
代码集成示例
TypeScript: Provider Interface
TypeScript:提供商接口
typescript
import { GitHubModelsProvider } from './providers/github-models';
const provider = new GitHubModelsProvider({
apiKey: process.env.GITHUB_TOKEN,
model: 'openai/gpt-4.1',
});
const response = await provider.chat({
messages: [
{ role: 'user', content: 'Explain this function' },
],
});
console.log(response.content);typescript
import { GitHubModelsProvider } from './providers/github-models';
const provider = new GitHubModelsProvider({
apiKey: process.env.GITHUB_TOKEN,
model: 'openai/gpt-4.1',
});
const response = await provider.chat({
messages: [
{ role: 'user', content: 'Explain this function' },
],
});
console.log(response.content);TypeScript: Copilot Provider
TypeScript:Copilot提供商
typescript
import { GitHubCopilotProvider } from './providers/github-copilot';
const copilot = new GitHubCopilotProvider({
token: process.env.GITHUB_TOKEN,
model: 'claude-sonnet-4.6',
});
const result = await copilot.complete({
prompt: 'Write a binary search in Rust',
maxTokens: 500,
});typescript
import { GitHubCopilotProvider } from './providers/github-copilot';
const copilot = new GitHubCopilotProvider({\在线.prL_phparDue旁边-links summ/**\的 Prepare� 完成后,将其添加到你的项目中:
```typescript
import { GitHubCopilotProvider } from './providers/github-copilot';
const copilot = new GitHubCopilotProvider({
token: process.env.GITHUB_TOKEN,
model: 'claude-sonnet-4.6',
});
const result = await copilot.complete({
prompt: 'Write a binary search in Rust',
maxTokens: 500,
});TypeScript: Runtime Bootstrap
TypeScript:运行时引导程序
typescript
import { bootstrap } from './cli/bootstrap';
async function main() {
await bootstrap({
provider: process.env.CLAUDE_CODE_PROVIDER || 'github-models',
model: process.env.CLAUDE_CODE_MODEL,
autoSave: true,
});
}
main().catch(console.error);typescript
import { bootstrap } from './cli/bootstrap';
async function main() {
await bootstrap({
provider: process.env.CLAUDE_CODE_PROVIDER || 'github-models',
model: process.env.CLAUDE_CODE_MODEL,
autoSave: true,
});
}
main().catch(console.error);Common Patterns
常见模式
Pattern 1: Quick Provider Switch
模式1:快速切换提供商
bash
undefinedbash
undefinedStart session
启动会话
bun run dev
bun run dev
Switch provider mid-session
会话中切换提供商
/provider
/provider
Select github-copilot from picker
从选择器中选择github-copilot
Verify active provider
验证当前提供商
/provider info
undefined/provider info
undefinedPattern 2: Scripted Model Selection
模式2:脚本化模型选择
bash
#!/bin/bash
export GITHUB_TOKEN=$(gh auth token)
bun run dev \
--settings '{"provider":"github-copilot"}' \
--model "claude-opus-4.6"bash
#!/bin/bash
export GITHUB_TOKEN=$(gh auth token)
bun run dev \\
--settings '{"provider":"github-copilot"}' \\
--model "claude-opus-4.6"Pattern 3: Fallback Chain
模式3:降级链
typescript
// Automatic fallback if primary provider fails
const providers = [
new GitHubCopilotProvider({ token: process.env.GITHUB_TOKEN }),
new GitHubModelsProvider({ apiKey: process.env.GH_TOKEN }),
];
for (const provider of providers) {
try {
return await provider.chat(messages);
} catch (err) {
console.warn(`Provider ${provider.name} failed:`, err);
}
}
throw new Error('All providers failed');typescript
// 如果主提供商失败,自动降级到备用提供商
const providers = [
new GitHubCopilotProvider({ token: process.env.GITHUB_TOKEN }),
new GitHubModelsProvider({ apiKey: process.env.GH_TOKEN }),
];
for (const provider of providers) {
try {
return await provider.chat(messages);
} catch (err) {
console.warn(`Provider ${provider.name} failed:`, err);
}
}
throw new Error('All providers failed');Troubleshooting
故障排除
Issue: bun install
Fails
bun install问题:bun install
失败
bun installCause: Bun version too old or missing native dependencies.
Fix:
bash
bun --version # Must be 1.3.5+
bun upgrade
bun install --force原因: Bun版本过旧或缺少原生依赖。
修复:
bash
bun --version # 必须为1.3.5+
bun upgrade
bun install --forceIssue: Authentication Fails
问题:身份验证失败
Cause: No valid GitHub token found.
Fix:
bash
undefined原因: 未找到有效的GitHub令牌。
修复:
bash
undefinedVerify token presence
验证令牌是否存在
gh auth status
gh auth status
Re-authenticate
重新认证
gh auth login
gh auth login
Or manually set token
或手动设置令牌
export GITHUB_TOKEN="ghp_..."
undefinedexport GITHUB_TOKEN="ghp_..."
undefinedIssue: Model Not Available
问题:模型不可用
Cause: Model name mismatch or provider doesn't support the model.
Fix:
bash
undefined原因: 模型名称不匹配或提供商不支持该模型。
修复:
bash
undefinedUse /model picker instead of manual entry
使用/model选择器而非手动输入
bun run dev --settings '{"provider":"github-copilot"}'
bun run dev --settings '{"provider":"github-copilot"}'
Then run: /model
然后运行:/model
undefinedundefinedIssue: Copilot GPT Models Not Working
问题:Copilot GPT模型无法工作
Cause: Copilot GPT/Grok models require API (not yet fully wired).
/responsesFix: Use Copilot-hosted Claude models instead:
bash
bun run dev \
--settings '{"provider":"github-copilot"}' \
--model "claude-sonnet-4.6"原因: Copilot GPT/Grok模型需要 API(尚未完全适配)。
/responses修复: 使用Copilot托管的Claude模型替代:
bash
bun run dev \\
无法运行 underlying Occ}`文 SC择代码... r升级版无法获得?不,应该是:
bun run dev \\
--settings '{"provider":"github-copilot"}' \\
--model "claude-sonnet-4.6"Issue: Source Map Restoration Artifacts
问题:源映射恢复产物问题
Cause: Some modules are shims or degraded implementations.
Symptoms: Missing features, unexpected behavior in non-core paths.
Fix: Check if the feature relies on a private/native integration. File an issue on the repo if critical functionality is broken.
原因: 部分模块是垫片或降级实现。
症状: 功能缺失,非核心路径出现意外行为。
修复: 检查该功能是否依赖私有/原生集成。如果关键功能损坏,请在仓库提交issue。
Issue: Tool Loop Hangs
问题:工具循环挂起
Cause: MCP compatibility layer returning malformed responses.
Fix:
bash
undefined原因: MCP兼容层返回格式错误的响应。
修复:
bash
undefinedEnable debug logging
启用调试日志
DEBUG=* bun run dev
DEBUG=* bun run dev
Check for MCP tool catalog errors
检查MCP工具目录错误
Report specific tool failures to repo issues
向仓库issue报告具体工具故障
undefinedundefinedDevelopment Workflow
开发工作流
Run in Dev Mode
以开发模式运行
bash
bun run devbash
bun run devInspect Restored CLI Structure
检查恢复的CLI结构
bash
bun run dev --helpbash
bun run dev --helpShows full command tree from restored bootstrap
查看恢复引导程序的完整命令树
undefinedundefinedTest Provider Switching
测试提供商切换
typescript
// In your test suite
import { switchProvider } from './cli/commands/provider';
await switchProvider('github-copilot');
const info = await getProviderInfo();
assert(info.active === 'github-copilot');typescript
// 在测试套件中
import { switchProvider } from './cli/commands/provider';
await switchProvider('github-copilot');
const info = await getProviderInfo();
assert(info.active === 'github-copilot');Key Files
关键文件
- – Restored CLI entry point
cli/bootstrap.ts - – GitHub Models provider
providers/github-models.ts - – GitHub Copilot provider
providers/github-copilot.ts - – Chrome MCP compatibility layer
mcp/chrome-mcp.ts - – Computer Use MCP shim
mcp/computer-use-mcp.ts
- – 恢复的CLI入口点
cli/bootstrap.ts - – GitHub Models提供商
providers/github-models.ts - – GitHub Copilot提供商
providers/github-copilot.ts - – Chrome MCP兼容层
mcp/chrome-mcp.ts - – Computer Use MCP垫片
mcp/computer-use-mcp.ts
Limitations
限制
- Not the original upstream codebase—some modules are restored from source maps
- Copilot GPT/Grok models not fully integrated (require API)
/responses - Private/native integrations replaced with shims
- Some dynamic imports and resource files may be incomplete
- 并非原始上游代码库——部分模块从源映射恢复
- Copilot GPT/Grok模型尚未完全集成(需要API)
/responses - 私有/原生集成已替换为垫片
- 部分动态导入和资源文件可能不完整
Resources
资源
- Repository: https://github.com/oboard/claude-code-rev
- Provider Docs: Run in CLI for active provider details
/provider info - Model Catalog: Run to see available models for current provider
/model
- 仓库: https://github.com/oboard/claude-code-rev
- 提供商文档: 在CLI中运行查看当前提供商详情
/provider info - 模型目录: 运行查看当前提供商可用的模型 ",
/model