Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 4 additions & 4 deletions src/api/providers/__tests__/constants.spec.ts
Original file line number Diff line number Diff line change
Expand Up @@ -11,24 +11,24 @@ describe("DEFAULT_HEADERS", () => {
})

it("should have correct HTTP-Referer value", () => {
expect(DEFAULT_HEADERS["HTTP-Referer"]).toBe("https://github.com/RooVetGit/Roo-Cline")
expect(DEFAULT_HEADERS["HTTP-Referer"]).toBe("https://github.com/Zoo-Code-Org/Zoo-Code")
})

it("should have correct X-Title value", () => {
expect(DEFAULT_HEADERS["X-Title"]).toBe("Roo Code")
expect(DEFAULT_HEADERS["X-Title"]).toBe("Zoo Code")
})

it("should have correct User-Agent format", () => {
const userAgent = DEFAULT_HEADERS["User-Agent"]
expect(userAgent).toBe(`RooCode/${Package.version}`)
expect(userAgent).toBe(`ZooCode/${Package.version}`)

// Verify it follows the tool_name/version pattern
expect(userAgent).toMatch(/^[a-zA-Z-]+\/\d+\.\d+\.\d+$/)
})

it("should have User-Agent with correct tool name", () => {
const userAgent = DEFAULT_HEADERS["User-Agent"]
expect(userAgent.startsWith("RooCode/")).toBe(true)
expect(userAgent.startsWith("ZooCode/")).toBe(true)
})

it("should have User-Agent with semantic version format", () => {
Expand Down
6 changes: 3 additions & 3 deletions src/api/providers/__tests__/openai.spec.ts
Original file line number Diff line number Diff line change
Expand Up @@ -111,9 +111,9 @@ describe("OpenAiHandler", () => {
baseURL: expect.any(String),
apiKey: expect.any(String),
defaultHeaders: {
"HTTP-Referer": "https://github.com/RooVetGit/Roo-Cline",
"X-Title": "Roo Code",
"User-Agent": `RooCode/${Package.version}`,
"HTTP-Referer": "https://github.com/Zoo-Code-Org/Zoo-Code",
"X-Title": "Zoo Code",
"User-Agent": `ZooCode/${Package.version}`,
},
timeout: expect.any(Number),
})
Expand Down
6 changes: 3 additions & 3 deletions src/api/providers/__tests__/openrouter.spec.ts
Original file line number Diff line number Diff line change
Expand Up @@ -100,9 +100,9 @@ describe("OpenRouterHandler", () => {
baseURL: "https://openrouter.ai/api/v1",
apiKey: mockOptions.openRouterApiKey,
defaultHeaders: {
"HTTP-Referer": "https://github.com/RooVetGit/Roo-Cline",
"X-Title": "Roo Code",
"User-Agent": `RooCode/${Package.version}`,
"HTTP-Referer": "https://github.com/Zoo-Code-Org/Zoo-Code",
"X-Title": "Zoo Code",
"User-Agent": `ZooCode/${Package.version}`,
},
})
})
Expand Down
12 changes: 6 additions & 6 deletions src/api/providers/__tests__/requesty.spec.ts
Original file line number Diff line number Diff line change
Expand Up @@ -58,9 +58,9 @@ describe("RequestyHandler", () => {
baseURL: "https://router.requesty.ai/v1",
apiKey: mockOptions.requestyApiKey,
defaultHeaders: {
"HTTP-Referer": "https://github.com/RooVetGit/Roo-Cline",
"X-Title": "Roo Code",
"User-Agent": `RooCode/${Package.version}`,
"HTTP-Referer": "https://github.com/Zoo-Code-Org/Zoo-Code",
"X-Title": "Zoo Code",
"User-Agent": `ZooCode/${Package.version}`,
},
})
})
Expand All @@ -73,9 +73,9 @@ describe("RequestyHandler", () => {
baseURL: "https://custom.requesty.ai/v1",
apiKey: mockOptions.requestyApiKey,
defaultHeaders: {
"HTTP-Referer": "https://github.com/RooVetGit/Roo-Cline",
"X-Title": "Roo Code",
"User-Agent": `RooCode/${Package.version}`,
"HTTP-Referer": "https://github.com/Zoo-Code-Org/Zoo-Code",
"X-Title": "Zoo Code",
"User-Agent": `ZooCode/${Package.version}`,
},
})
})
Expand Down
6 changes: 3 additions & 3 deletions src/api/providers/__tests__/vercel-ai-gateway.spec.ts
Original file line number Diff line number Diff line change
Expand Up @@ -96,9 +96,9 @@ describe("VercelAiGatewayHandler", () => {
baseURL: "https://ai-gateway.vercel.sh/v1",
apiKey: mockOptions.vercelAiGatewayApiKey,
defaultHeaders: expect.objectContaining({
"HTTP-Referer": "https://github.com/RooVetGit/Roo-Cline",
"X-Title": "Roo Code",
"User-Agent": expect.stringContaining("RooCode/"),
"HTTP-Referer": "https://github.com/Zoo-Code-Org/Zoo-Code",
"X-Title": "Zoo Code",
"User-Agent": expect.stringContaining("ZooCode/"),
}),
})
})
Expand Down
2 changes: 1 addition & 1 deletion src/api/providers/bedrock.ts
Original file line number Diff line number Diff line change
Expand Up @@ -252,7 +252,7 @@ export class AwsBedrockHandler extends BaseProvider implements SingleCompletionH
this.costModelConfig = this.getModel()

const clientConfig: BedrockRuntimeClientConfig = {
userAgentAppId: `RooCode#${Package.version}`,
userAgentAppId: `ZooCode#${Package.version}`,
region: this.options.awsRegion,
// Add the endpoint configuration when specified and enabled
...(this.options.awsBedrockEndpoint &&
Expand Down
6 changes: 3 additions & 3 deletions src/api/providers/constants.ts
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
import { Package } from "../../shared/package"

export const DEFAULT_HEADERS = {
"HTTP-Referer": "https://github.com/RooVetGit/Roo-Cline",
"X-Title": "Roo Code",
"User-Agent": `RooCode/${Package.version}`,
"HTTP-Referer": "https://github.com/Zoo-Code-Org/Zoo-Code",
"X-Title": "Zoo Code",
"User-Agent": `ZooCode/${Package.version}`,
}
6 changes: 3 additions & 3 deletions src/api/providers/openai-codex.ts
Original file line number Diff line number Diff line change
Expand Up @@ -360,7 +360,7 @@ export class OpenAiCodexHandler extends BaseProvider implements SingleCompletion
const codexHeaders: Record<string, string> = {
originator: "roo-code",
session_id: taskId || this.sessionId,
"User-Agent": `roo-code/${Package.version} (${os.platform()} ${os.release()}; ${os.arch()}) node/${process.version.slice(1)}`,
"User-Agent": `zoo-code/${Package.version} (${os.platform()} ${os.release()}; ${os.arch()}) node/${process.version.slice(1)}`,
...(accountId ? { "ChatGPT-Account-Id": accountId } : {}),
}

Expand Down Expand Up @@ -505,7 +505,7 @@ export class OpenAiCodexHandler extends BaseProvider implements SingleCompletion
Authorization: `Bearer ${accessToken}`,
originator: "roo-code",
session_id: taskId || this.sessionId,
"User-Agent": `roo-code/${Package.version} (${os.platform()} ${os.release()}; ${os.arch()}) node/${process.version.slice(1)}`,
"User-Agent": `zoo-code/${Package.version} (${os.platform()} ${os.release()}; ${os.arch()}) node/${process.version.slice(1)}`,
}

// Add ChatGPT-Account-Id if available (required for organization subscriptions)
Expand Down Expand Up @@ -1201,7 +1201,7 @@ export class OpenAiCodexHandler extends BaseProvider implements SingleCompletion
Authorization: `Bearer ${accessToken}`,
originator: "roo-code",
session_id: this.sessionId,
"User-Agent": `roo-code/${Package.version} (${os.platform()} ${os.release()}; ${os.arch()}) node/${process.version.slice(1)}`,
"User-Agent": `zoo-code/${Package.version} (${os.platform()} ${os.release()}; ${os.arch()}) node/${process.version.slice(1)}`,
}

// Add ChatGPT-Account-Id if available
Expand Down
6 changes: 3 additions & 3 deletions src/api/providers/openai-native.ts
Original file line number Diff line number Diff line change
Expand Up @@ -95,7 +95,7 @@ export class OpenAiNativeHandler extends BaseProvider implements SingleCompletio
}
const apiKey = this.options.openAiNativeApiKey ?? "not-provided"
// Include originator, session_id, and User-Agent headers for API tracking and debugging
const userAgent = `roo-code/${Package.version} (${os.platform()} ${os.release()}; ${os.arch()}) node/${process.version.slice(1)}`
const userAgent = `zoo-code/${Package.version} (${os.platform()} ${os.release()}; ${os.arch()}) node/${process.version.slice(1)}`
this.client = new OpenAI({
baseURL: this.options.openAiNativeBaseUrl || undefined,
apiKey,
Expand Down Expand Up @@ -415,7 +415,7 @@ export class OpenAiNativeHandler extends BaseProvider implements SingleCompletio

// Build per-request headers using taskId when available, falling back to sessionId
const taskId = metadata?.taskId
const userAgent = `roo-code/${Package.version} (${os.platform()} ${os.release()}; ${os.arch()}) node/${process.version.slice(1)}`
const userAgent = `zoo-code/${Package.version} (${os.platform()} ${os.release()}; ${os.arch()}) node/${process.version.slice(1)}`
const requestHeaders: Record<string, string> = {
originator: "roo-code",
session_id: taskId || this.sessionId,
Expand Down Expand Up @@ -563,7 +563,7 @@ export class OpenAiNativeHandler extends BaseProvider implements SingleCompletio

// Build per-request headers using taskId when available, falling back to sessionId
const taskId = metadata?.taskId
const userAgent = `roo-code/${Package.version} (${os.platform()} ${os.release()}; ${os.arch()}) node/${process.version.slice(1)}`
const userAgent = `zoo-code/${Package.version} (${os.platform()} ${os.release()}; ${os.arch()}) node/${process.version.slice(1)}`

try {
const response = await fetch(url, {
Expand Down
8 changes: 4 additions & 4 deletions src/api/providers/utils/image-generation.ts
Original file line number Diff line number Diff line change
Expand Up @@ -70,8 +70,8 @@ export async function generateImageWithProvider(options: ImageGenerationOptions)
headers: {
Authorization: `Bearer ${authToken}`,
"Content-Type": "application/json",
"HTTP-Referer": "https://github.com/RooVetGit/Roo-Code",
"X-Title": "Roo Code",
"HTTP-Referer": "https://github.com/Zoo-Code-Org/Zoo-Code",
"X-Title": "Zoo Code",
},
body: JSON.stringify({
model,
Expand Down Expand Up @@ -216,8 +216,8 @@ export async function generateImageWithImagesApi(options: ImagesApiOptions): Pro
headers: {
Authorization: `Bearer ${authToken}`,
"Content-Type": "application/json",
"HTTP-Referer": "https://github.com/RooVetGit/Roo-Code",
"X-Title": "Roo Code",
"HTTP-Referer": "https://github.com/Zoo-Code-Org/Zoo-Code",
"X-Title": "Zoo Code",
},
body: JSON.stringify(requestBody),
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -90,8 +90,8 @@ describe("OpenRouterEmbedder", () => {
baseURL: "https://openrouter.ai/api/v1",
apiKey: mockApiKey,
defaultHeaders: {
"HTTP-Referer": "https://github.com/RooCodeInc/Roo-Code",
"X-Title": "Roo Code",
"HTTP-Referer": "https://github.com/Zoo-Code-Org/Zoo-Code",
"X-Title": "Zoo Code",
},
})
})
Expand Down
2 changes: 1 addition & 1 deletion src/services/code-index/embedders/bedrock.ts
Original file line number Diff line number Diff line change
Expand Up @@ -41,7 +41,7 @@ export class BedrockEmbedder implements IEmbedder {
const credentials = this.profile ? fromIni({ profile: this.profile }) : fromNodeProviderChain()

this.bedrockClient = new BedrockRuntimeClient({
userAgentAppId: `RooCode#${Package.version}`,
userAgentAppId: `ZooCode#${Package.version}`,
region: this.region,
credentials,
})
Expand Down
4 changes: 2 additions & 2 deletions src/services/code-index/embedders/openrouter.ts
Original file line number Diff line number Diff line change
Expand Up @@ -76,8 +76,8 @@ export class OpenRouterEmbedder implements IEmbedder {
baseURL: this.baseUrl,
apiKey: apiKey,
defaultHeaders: {
"HTTP-Referer": "https://github.com/RooCodeInc/Roo-Code",
"X-Title": "Roo Code",
"HTTP-Referer": "https://github.com/Zoo-Code-Org/Zoo-Code",
"X-Title": "Zoo Code",
},
})
} catch (error) {
Expand Down
Loading
Loading