feat: claude-web-computer-agent — web search + computer use with BMasterAI telemetry#51
Conversation
…terAI telemetry Adds a bare-metal Claude tool-use agent combining web search (Tavily) and computer use (screenshot/click/type/key/scroll) — no frameworks, just the Anthropic SDK — fully instrumented with BMasterAI logging and monitoring. What it demonstrates: - The raw Anthropic tool_use / tool_result message cycle - Multimodal tool_result (screenshots sent back as image blocks) - BMasterAI telemetry on every LLM call, tool dispatch, and decision point - Structured JSONL telemetry output for downstream analytics Stack: Anthropic SDK, Tavily, xdotool + scrot, BMasterAI Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
|
Claude finished @travis-burmaster's task —— View job Code Review Complete ✅Todo List
Overall AssessmentThis is a well-structured and thoroughly documented example implementation that demonstrates the core tool-use pattern for Claude agents. The code quality is high with comprehensive BMasterAI telemetry integration. ✅ StrengthsCode Quality & Architecture
Security & Best Practices
Performance Considerations
|
Lists the new example at the top of the 2026 section as the foundational tool-use reference. Also removes stale `NEW` badge from deep-research-agent since it's no longer the newest entry. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
|
Claude finished @travis-burmaster's task —— View job Claude Code Review Complete ✅ Todo List
Overall AssessmentThis is a well-structured and thoroughly documented example implementation that demonstrates the core tool-use pattern for Claude agents. The code quality is high with comprehensive BMasterAI telemetry integration. ✅ StrengthsCode Quality & Architecture
Security & Best Practices
Performance Considerations
|
tools.py: - Add -- end-of-options sentinel to xdotool type and key calls to prevent text/key names from being interpreted as CLI flags - Add timeout=10s to all subprocess calls to prevent hangs if the display is unresponsive - Fix Optional[int] / Optional[str] type hints on _run_computer_use agent.py: - Include error_type, message_count, and traceback (limit 5 frames) in the exception handler metadata for better observability Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
|
Claude finished @travis-burmaster's task —— View job Claude Code Review Complete ✅ Todo List
Overall AssessmentThis is a well-structured and thoroughly documented example implementation that demonstrates the core tool-use pattern for Claude agents. The code quality is high with comprehensive BMasterAI telemetry integration. ✅ StrengthsCode Quality & Architecture
Security & Best Practices
Performance Considerations
|
Summary
examples/claude-web-computer-agent/— a bare-metal Claude tool-use agent combining web search (Tavily) and computer use (screenshot/click/type/key/scroll), fully instrumented with BMasterAI logging and monitoringtool_use/tool_resultcycle, making this the foundational reference before the LangGraph exampleslogs/agent.log,logs/agent.jsonl, andlogs/reasoning/Files
tools.pyweb_searchandcomputer_useschemas + dispatchagent.pyWebComputerAgentclass — tool-use loop with full BMasterAI instrumentationmain.pyrequirements.txtbmasterai>=0.2.3,anthropic>=0.40.0,tavily-python.env.exampleANTHROPIC_API_KEY+TAVILY_API_KEYTest plan
pip install -r requirements.txtinstalls cleanlypython main.py "Search for latest Anthropic news"runs without errorspython main.py "Take a screenshot"returns a computer_use resultlogs/agent.jsonlis written with structured telemetry after each runGenerated with Claude (Cowork mode)