完善CCR检测

This commit is contained in:
2025-09-08 00:11:04 +08:00
parent 50cce7a22c
commit 0e78b08549
3 changed files with 251 additions and 52 deletions

View File

@@ -28,6 +28,8 @@ export function CcrRouterManager({ onBack }: CcrRouterManagerProps) {
try {
setLoading(true);
const status = await ccrApi.getServiceStatus();
console.log("CCR service status:", status);
console.log("CCR raw output:", status.raw_output);
setServiceStatus(status);
} catch (error) {
console.error("Failed to load CCR service status:", error);
@@ -411,7 +413,7 @@ export function CcrRouterManager({ onBack }: CcrRouterManagerProps) {
Claude Code Router 使
</p>
<Button
onClick={() => open("https://www.npmjs.com/package/@musistudio/claude-code-router")}
onClick={() => open("https://github.com/musistudio/claude-code-router/tree/main")}
className="gap-2"
>
<Download className="w-4 h-4" />
@@ -443,6 +445,29 @@ export function CcrRouterManager({ onBack }: CcrRouterManagerProps) {
<li>Web UI 便</li>
<li> Anthropic 使 Claude Code</li>
</ul>
{!serviceStatus?.has_ccr_binary && (
<div className="mt-4 p-3 bg-yellow-50 dark:bg-yellow-900/20 rounded-lg border border-yellow-200 dark:border-yellow-800">
<p className="text-sm font-medium text-yellow-800 dark:text-yellow-200 mb-2">
</p>
<code className="block p-2 bg-black/5 dark:bg-white/5 rounded text-xs">
npm install -g @musistudio/claude-code-router
</code>
<p className="text-xs mt-2 text-muted-foreground">
访 <a
href="#"
onClick={(e) => {
e.preventDefault();
open("https://github.com/musistudio/claude-code-router/tree/main");
}}
className="text-blue-600 hover:underline"
>
GitHub
</a>
</p>
</div>
)}
</CardContent>
</Card>
</motion.div>

View File

@@ -2686,6 +2686,7 @@ export interface CcrServiceStatus {
has_ccr_binary: boolean;
ccr_version?: string;
process_id?: number;
raw_output?: string;
}
export interface CcrServiceInfo {