Agent Protocol
FerrisGrid speaks compact Markdown at the process boundary.
Observation
An agent calls:
bash
ferrisgrid observeFerrisGrid returns screenshot paths, screen IDs, dimensions, coordinate mode, and metadata paths. The agent inspects the screenshot and chooses one next action.
Action
The agent sends one constrained action block:
yaml
status: action
action: click
screen_id: screen-1
x: 500
y: 500
button: left
wait_after_ms: 500FerrisGrid validates and executes at most one action, then captures the post-action screen state.
Done and fail
Agents can also report terminal states:
yaml
status: done
reason: task completeyaml
status: fail
reason: target control is not visibleThese states are part of the same bounded protocol: the agent decides, FerrisGrid records and reports.