1async function runAgentLoop(ctx: Context) {
2 while (true) {
3 // 1. 收集上下文与工具
4 const tools = await getAvailableTools(ctx);
5
6 // 2. 调用 Claude API
7 const response = await callClaude(ctx, tools);
8
9 // 3. 处理工具调用或返回结果
10 if (response.type === 'tool_calls') {
11 await executeTools(ctx, response.calls);
12 } else {
13 return response.text;
14 }
15 }
16}