import { Agent, openai } from "@radaros/core";
const agent = new Agent({
name: "monitored-agent",
model: openai("gpt-4o"),
loopHooks: {
beforeLLMCall: async (messages, roundtrip) => {
console.log(`Roundtrip ${roundtrip}: ${messages.length} messages`);
},
afterToolExec: async (toolName, result) => {
console.log(`Tool ${toolName} returned ${result.length} chars`);
},
onRoundtripComplete: async (roundtrip, tokens) => {
if (tokens.totalTokens > 50000) {
return { stop: true }; // graceful early exit
}
},
},
});