import { qodercliAuth, query, type SDKUserMessage } from '@qoder-ai/qoder-agent-sdk';
async function* messages(): AsyncGenerator<SDKUserMessage> {
yield {
type: 'user',
message: { role: 'user', content: [{ type: 'text', text: 'Analyze this codebase for security issues' }] },
parent_tool_use_id: null,
};
// 中间可以等待任意外部条件再产出下一条
await new Promise((resolve) => setTimeout(resolve, 2000));
yield {
type: 'user',
message: { role: 'user', content: [{ type: 'text', text: 'Now write a short report' }] },
parent_tool_use_id: null,
};
}
for await (const msg of query({
prompt: messages(),
options: {
auth: qodercliAuth(),
allowedTools: ['Read', 'Grep'],
},
})) {
if (msg.type === 'result' && msg.subtype === 'success') {
console.log(msg.result);
}
}