Python API Reference
Complete API reference for the Autohand SDK Python. The SDK spawns the Autohand CLI as a subprocess and communicates over JSON-RPC.
Installation
AutohandSDK
Main async API for controlling the Autohand CLI.
Constructor
Common args: cwd, cli_path, debug, timeout, model, provider, api_key, permission_mode, skills, etc.
Lifecycle
Also supports async context manager: async with AutohandSDK(...) as sdk:
Prompting
Control Methods
Information Methods
CLI Runtime Control
The current Python SDK exposes the v1.0.4 control surface on both Agent and AutohandSDK.
- Lifecycle:
reset,create_browser_handoff,attach_browser_handoff,attach_latest_browser_handoff. - Auto-mode:
start_automode,get_automode_status,pause_automode,resume_automode,cancel_automode,get_automode_log. - Approvals and sessions:
acknowledge_permission,respond_to_directory_access,acknowledge_directory_access,decide_changes,get_history,get_session,attach_session. - Integrations:
set_yolo,set_yolo_compat,set_vscode_mcp_tools,respond_to_mcp_invocation,get_learning_recommendations,update_learned_skills,generate_skill,get_tools_registry,set_context_compact.
Read Control the Autohand CLI from every SDK for behavior, safety contracts, aliases, and the cross-language name map.
Events
Events are dictionaries. Common types:
agent_start- Agent started a sessionmessage_update- Streaming assistant text deltatool_start- Tool execution startedtool_end- Tool execution completedpermission_request- Runtime pause for approvalautomode_iteration,automode_complete, andautomode_error- Auto-mode lifecycleerror- Transport, runtime, or execution failure
Common fields have both camelCase and snake_case aliases: sessionId/session_id, toolName/tool_name, etc.
See Hooks and events for the complete normalized event contract.
Types
SDKConfig
Exceptions
TransportNotStartedError- request attempted before start()RequestTimeoutError- no JSON-RPC response before timeoutRPCError- CLI returned a JSON-RPC error response (hascodeanddata)