Install
openclaw skills install @surfagentapp/surfagent-gmailGmail platform skill for SurfAgent, covering mailbox checks, mailbox triage, latest-thread opening, compose and reply task runners, tab hygiene, sent-message verification, proof rules, and when to use the Gmail adapter over raw browser control.
openclaw skills install @surfagentapp/surfagent-gmailGmail-specific operating skill. Use this with the core
browser-operationsskill.
This skill teaches agents how to work Gmail without guessing at selectors, lying about send success, or burning tokens on giant browser reads.
Use this order:
Prefer Gmail-native verbs over rediscovering Gmail from scratch every run.
Gmail is not a normal static form page.
It has:
Important: Gmail enforces Trusted Types in places, so direct innerHTML approaches are unreliable for rich content workflows.
Default loop:
Known-good pattern:
to, subject, and bodyMessage sentFor Gmail, success requires all three layers:
compose proof
send proof
Message sentrender proof
Do not claim success from only:
If the task cares about formatting, proof must come from rendered output, not only compose state.
That means:
Prefer the Gmail adapter for:
Current Gmail adapter verbs:
gmail_health_checkgmail_opengmail_get_stategmail_open_labelgmail_extract_visible_threadsgmail_open_visible_thread_rowgmail_get_open_messagegmail_open_composegmail_open_replygmail_get_composer_stategmail_fill_compose_draftgmail_send_composegmail_open_sentDeterministic Gmail task runners:
gmail_compose_and_send_taskgmail_reply_and_send_taskgmail_check_mailbox_taskgmail_open_latest_thread_taskgmail_triage_mailbox_taskUse targeted evaluate or browser control when:
Even then:
Watch for:
Current adapter rule: Gmail task runners should enforce tab hygiene and collapse duplicate Gmail tabs down to one working tab when they take control of the surface.
Mailbox triage is heuristic and proof-oriented. It is for ranking visible threads and guiding the next action, not for pretending to be a full Gmail classification engine.
When blocked:
Prefer:
Avoid:
Before claiming a Gmail task done, confirm:
Use alongside:
browser-operations for the universal browser rules