codeverse / types /agent.ts
shubhjn's picture
deploy
5a0b87c
export type AgentProvider = "google" | "anthropic" | "openai" | "xai" | "deepseek" | "mistral" | "ollama";
export type AgentMode = "byok" | "env";
export interface AgentModel {
id: string; // e.g., "gemini-3-pro"
name: string;
provider: AgentProvider;
contextWindow: number;
supportsVision: boolean;
supportsTools: boolean;
costInputPerM: number;
costOutputPerM: number;
}
export interface ChatMessage {
id: string;
role: "user" | "assistant" | "system" | "tool";
content: string;
timestamp: string;
toolCalls?: unknown[];
tokenUsage?: {
input: number;
output: number;
};
}
export interface AgentSession {
id: string;
title: string;
modelId: string;
mode: AgentMode;
messages: ChatMessage[];
totalCost: number;
createdAt: string;
updatedAt: string;
}