mirror of
https://github.com/getcompanion-ai/co-mono.git
synced 2026-04-18 02:03:05 +00:00
Make message transformer async, expose i18n.
This commit is contained in:
parent
f7878c3c71
commit
a8159f504f
3 changed files with 5 additions and 5 deletions
|
|
@ -54,7 +54,7 @@ export interface AgentOptions {
|
||||||
debugListener?: (entry: DebugLogEntry) => void;
|
debugListener?: (entry: DebugLogEntry) => void;
|
||||||
transport: AgentTransport;
|
transport: AgentTransport;
|
||||||
// Transform app messages to LLM-compatible messages before sending to transport
|
// Transform app messages to LLM-compatible messages before sending to transport
|
||||||
messageTransformer?: (messages: AppMessage[]) => Message[];
|
messageTransformer?: (messages: AppMessage[]) => Message[] | Promise<Message[]>;
|
||||||
}
|
}
|
||||||
|
|
||||||
export class Agent {
|
export class Agent {
|
||||||
|
|
@ -73,7 +73,7 @@ export class Agent {
|
||||||
private abortController?: AbortController;
|
private abortController?: AbortController;
|
||||||
private transport: AgentTransport;
|
private transport: AgentTransport;
|
||||||
private debugListener?: (entry: DebugLogEntry) => void;
|
private debugListener?: (entry: DebugLogEntry) => void;
|
||||||
private messageTransformer: (messages: AppMessage[]) => Message[];
|
private messageTransformer: (messages: AppMessage[]) => Message[] | Promise<Message[]>;
|
||||||
|
|
||||||
constructor(opts: AgentOptions) {
|
constructor(opts: AgentOptions) {
|
||||||
this._state = { ...this._state, ...opts.initialState };
|
this._state = { ...this._state, ...opts.initialState };
|
||||||
|
|
@ -170,7 +170,7 @@ export class Agent {
|
||||||
let turnStart = 0;
|
let turnStart = 0;
|
||||||
|
|
||||||
// Transform app messages to LLM-compatible messages
|
// Transform app messages to LLM-compatible messages
|
||||||
const llmMessages = this.messageTransformer(this._state.messages);
|
const llmMessages = await this.messageTransformer(this._state.messages);
|
||||||
|
|
||||||
for await (const ev of this.transport.run(
|
for await (const ev of this.transport.run(
|
||||||
llmMessages,
|
llmMessages,
|
||||||
|
|
|
||||||
|
|
@ -78,4 +78,4 @@ export type { Attachment } from "./utils/attachment-utils.js";
|
||||||
export { loadAttachment } from "./utils/attachment-utils.js";
|
export { loadAttachment } from "./utils/attachment-utils.js";
|
||||||
export { clearAuthToken, getAuthToken } from "./utils/auth-token.js";
|
export { clearAuthToken, getAuthToken } from "./utils/auth-token.js";
|
||||||
export { formatCost, formatModelCost, formatTokenCount, formatUsage } from "./utils/format.js";
|
export { formatCost, formatModelCost, formatTokenCount, formatUsage } from "./utils/format.js";
|
||||||
export { i18n, setLanguage } from "./utils/i18n.js";
|
export { i18n, setLanguage, translations } from "./utils/i18n.js";
|
||||||
|
|
|
||||||
|
|
@ -138,7 +138,7 @@ declare module "@mariozechner/mini-lit" {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
const translations = {
|
export const translations = {
|
||||||
en: {
|
en: {
|
||||||
...defaultEnglish,
|
...defaultEnglish,
|
||||||
Free: "Free",
|
Free: "Free",
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue