import anyio
from qoder_agent_sdk import (
AssistantMessage,
QoderAgentOptions,
ResultMessage,
TextBlock,
ToolUseBlock,
access_token_from_env,
query,
)
async def main():
options = QoderAgentOptions(
auth=access_token_from_env(),
allowed_tools=["Read", "Write", "Edit", "Glob", "Grep", "Bash"],
permission_mode="acceptEdits", # Auto-approve file edits
)
async for message in query(
prompt=(
"Analyze the codebase, find functions without test coverage, "
"and write unit tests for them."
),
options=options,
):
if isinstance(message, AssistantMessage):
for block in message.content:
if isinstance(block, TextBlock):
print(block.text) # AI text response
elif isinstance(block, ToolUseBlock):
print(f"Tool: {block.name}") # Tool being called
elif isinstance(message, ResultMessage):
print(f"Done: {message.subtype}") # Final result
anyio.run(main)