From f7adb7b28e6f7f11a21d642f4f422cdb30fef9e3 Mon Sep 17 00:00:00 2001 From: musistudio Date: Tue, 9 Sep 2025 22:43:01 +0800 Subject: [PATCH] release v1.0.49 --- package.json | 2 +- src/index.ts | 14 +++++++++----- src/utils/router.ts | 6 ++++++ 3 files changed, 16 insertions(+), 6 deletions(-) diff --git a/package.json b/package.json index ca2a631..24cbf54 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "@musistudio/claude-code-router", - "version": "1.0.48", + "version": "1.0.49", "description": "Use Claude Code without an Anthropics account and route it to another LLM provider", "bin": { "ccr": "./dist/cli.js" diff --git a/src/index.ts b/src/index.ts index c10534a..207b9e9 100644 --- a/src/index.ts +++ b/src/index.ts @@ -358,12 +358,16 @@ async function run(options: RunOptions = {}) { return done(null, originalStream) } sessionUsageCache.put(req.sessionId, payload.usage); - } - if (typeof payload ==='object') { - if (payload.error) { - return done(payload.error, null) + if (typeof payload ==='object') { + if (payload.error) { + return done(payload.error, null) + } else { + return done(payload, null) + } } - return done(payload) + } + if (typeof payload ==='object' && payload.error) { + return done(payload.error, null) } done(null, payload) }); diff --git a/src/utils/router.ts b/src/utils/router.ts index 1977e2e..2d54503 100644 --- a/src/utils/router.ts +++ b/src/utils/router.ts @@ -5,6 +5,7 @@ import { } from "@anthropic-ai/sdk/resources/messages"; import { get_encoding } from "tiktoken"; import { sessionUsageCache, Usage } from "./cache"; +import { readFile } from 'fs/promises' const enc = get_encoding("cl100k_base"); @@ -147,6 +148,11 @@ export const router = async (req: any, _res: any, context: any) => { } const lastMessageUsage = sessionUsageCache.get(req.sessionId); const { messages, system = [], tools }: MessageCreateParamsBase = req.body; + if (config.REWRITE_SYSTEM_PROMPT && system.length > 1 && system[1]?.text?.includes('')) { + const prompt = await readFile(config.REWRITE_SYSTEM_PROMPT, 'utf-8'); + system[1].text = `${prompt}${system[1].text.split('').pop()}` + } + try { const tokenCount = calculateTokenCount( messages as MessageParam[],