release v1.0.49
This commit is contained in:
@@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"name": "@musistudio/claude-code-router",
|
"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",
|
"description": "Use Claude Code without an Anthropics account and route it to another LLM provider",
|
||||||
"bin": {
|
"bin": {
|
||||||
"ccr": "./dist/cli.js"
|
"ccr": "./dist/cli.js"
|
||||||
|
|||||||
14
src/index.ts
14
src/index.ts
@@ -358,12 +358,16 @@ async function run(options: RunOptions = {}) {
|
|||||||
return done(null, originalStream)
|
return done(null, originalStream)
|
||||||
}
|
}
|
||||||
sessionUsageCache.put(req.sessionId, payload.usage);
|
sessionUsageCache.put(req.sessionId, payload.usage);
|
||||||
}
|
if (typeof payload ==='object') {
|
||||||
if (typeof payload ==='object') {
|
if (payload.error) {
|
||||||
if (payload.error) {
|
return done(payload.error, null)
|
||||||
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)
|
done(null, payload)
|
||||||
});
|
});
|
||||||
|
|||||||
@@ -5,6 +5,7 @@ import {
|
|||||||
} from "@anthropic-ai/sdk/resources/messages";
|
} from "@anthropic-ai/sdk/resources/messages";
|
||||||
import { get_encoding } from "tiktoken";
|
import { get_encoding } from "tiktoken";
|
||||||
import { sessionUsageCache, Usage } from "./cache";
|
import { sessionUsageCache, Usage } from "./cache";
|
||||||
|
import { readFile } from 'fs/promises'
|
||||||
|
|
||||||
const enc = get_encoding("cl100k_base");
|
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 lastMessageUsage = sessionUsageCache.get(req.sessionId);
|
||||||
const { messages, system = [], tools }: MessageCreateParamsBase = req.body;
|
const { messages, system = [], tools }: MessageCreateParamsBase = req.body;
|
||||||
|
if (config.REWRITE_SYSTEM_PROMPT && system.length > 1 && system[1]?.text?.includes('<env>')) {
|
||||||
|
const prompt = await readFile(config.REWRITE_SYSTEM_PROMPT, 'utf-8');
|
||||||
|
system[1].text = `${prompt}<env>${system[1].text.split('<env>').pop()}`
|
||||||
|
}
|
||||||
|
|
||||||
try {
|
try {
|
||||||
const tokenCount = calculateTokenCount(
|
const tokenCount = calculateTokenCount(
|
||||||
messages as MessageParam[],
|
messages as MessageParam[],
|
||||||
|
|||||||
Reference in New Issue
Block a user