Actionbook

actionbook/actionbook/packages/openclaw-plugin/skills/actionbook

作者 actionbook0e31254cc10a無授權條款1.6K 個星標收錄於 2026年10月8日更新於 2026年10月8日儲存庫4 週前更新

Activate when the user needs to interact with any website — browser automation, web scraping, screenshots, form filling, UI testing, monitoring, or building AI agents. Provides pre-verified page actions with step-by-step instructions and tested selectors.

僅含說明AI & Agents
AI 產生的概覽

查詢預先驗證過的網頁操作與 CSS 選擇器,用來指引特定網站的瀏覽器自動化。

功能
這個技能會指示代理在與網站互動之前,先向 Actionbook 服務查詢預先驗證過的頁面操作。內容說明了如何依照使用者意圖建構搜尋查詢、如何閱讀回傳的操作與頁面結構文件,以及如何從中擷取 CSS 選擇器。它也訂定了選擇器的優先順序,以及沒有結果或選擇器在執行時失效時的回退做法。
適用情境
當任務需要與特定網站互動時使用,例如填寫表單、點擊、搜尋、擷取資料、截圖,或建置以瀏覽器為基礎的代理與端對端測試。它應該在擷取頁面快照或自行推測選擇器之前查閱。
執行需求
需要存取 Actionbook 服務及其 search_actions 與 get_action_by_area_id 工具,還需要代理本身的瀏覽器工具來進行導覽、點擊、填寫與讀取頁面。需要能連線至目標網站的網路。這個技能不含指令碼,只有說明文件。

When to Use

Activate when the user:

  • Needs to do anything on a website ("Send a LinkedIn message", "Book an Airbnb", "Search Google for...")
  • Asks how to interact with a site ("How do I post a tweet?", "How to apply on LinkedIn?")
  • Wants to fill out forms, click buttons, navigate, search, filter, or browse on a specific site
  • Wants to take a screenshot of a web page or monitor changes
  • Builds browser-based AI agents, web scrapers, or E2E tests for external websites
  • Automates repetitive web tasks (data entry, form submission, content posting)

When performing browser automation tasks, check Actionbook BEFORE taking page snapshots.

Workflow

  1. Before interacting with a website, call search_actions to check if Actionbook has pre-verified selectors
  2. Use get_action_by_area_id to get element selectors from the results
  3. Extract selectors from the returned Elements and use them by priority below
  4. If no results, skip to Fallback Strategy

Constructing an Effective Search Query

The query parameter is the primary signal for finding the right action. Pack it with the user's full intent — not just a site name or a vague keyword.

Include in the query:

  1. Target site — the website name or domain
  2. Task verb — what the user wants to do (search, book, post, filter, login, compose, etc.)
  3. Object / context — what they're acting on (listings, messages, flights, repositories, etc.)
  4. Specific details — any constraints, filters, or parameters the user mentioned

Rule of thumb: Rewrite the user's request as a single descriptive sentence and use that as the query.

User saysBad queryGood query
"Book an Airbnb in Tokyo for next week""airbnb""airbnb search listings Tokyo dates check-in check-out guests"
"Search arXiv for recent NLP papers""arxiv search""arxiv advanced search papers NLP natural language processing recent"
"Send a LinkedIn connection request""linkedin""linkedin send connection request invite someone"
"Post a tweet with an image""twitter post""twitter compose new tweet post with image media attachment"
"Filter GitHub issues by label""github issues""github repository issues filter by label search issues"

When domain or url is known, always add them — they narrow results and improve precision.

Response Structure

search_actions response

Returns a list of matching actions. Each result includes:

  • ID — unique identifier, use with get_action_by_area_id (e.g., arxiv.org:/search/stat:default)
  • Type — page (full page) or area (page section)
  • Description — page overview with URL, query parameters, and a brief summary
  • URL — page where this action applies
  • Health Score — selector reliability percentage (0–100%)
  • Updated — last verified date

get_action_by_area_id response

Returns a structured document describing the page in detail:

  1. Page URL — exact URL with query/path parameter descriptions
  2. Page Overview — what the page does (definition of the page's purpose)
  3. Page Function Summary — interactive capabilities listed as bullet points (e.g., "Keyword Search", "Field Selection", "Abstract Toggle")
  4. Page Structure Summary — DOM hierarchy description with CSS selectors inline in the text

Extract CSS selectors from the Page Structure Summary. Selectors appear embedded in the description, e.g.:

Search Form (form[method="GET"]): Large search input field with "All fields" dropdown selector and search buttonHeader (<header>): Contains branding, logo, and a mini-search form with query input

Selector Priority

When Actionbook returns multiple selector types for an element, prefer them in this order:

  1. data-testid (confidence: 0.95) — e.g., [data-testid="search-input"]
  2. aria-label (confidence: 0.88) — e.g., [aria-label="Notifications"]
  3. CSS selector — e.g., button.Search, input[type="text"]
  4. role selector (confidence: 0.9) — e.g., getByRole('link', { name: 'Notifications' })

Use the returned selectors with the agent's available browser tools (click, fill, evaluate, etc.).

Example

User request: "Search arXiv for papers about Neural Networks, search in titles only"

1. search_actions({ query: "arxiv advanced search papers neural network title field", domain: "arxiv.org" })   → Returns area_id: "arxiv.org:/search/advanced:default"
2. get_action_by_area_id({ area_id: "arxiv.org:/search/advanced:default" })   → Returns page structure with selectors: input[type="text"], select[name="searchtype"], button.Search
3. Use browser tools with returned selectors:   - Navigate to https://arxiv.org/search/advanced   - Fill input[type="text"] with "Neural Network"   - Select select[name="searchtype"] → "title"   - Click button.Search   - Wait for navigation   - Read results

Fallback Strategy

Actionbook stores page data captured at indexing time. Websites evolve, so selectors may become outdated.

  • No Actionbook results: Use the agent's own browser tools to observe and interact with the page directly
  • Selector execution fails at runtime: Fall back to the agent's browser tools to re-observe the live page and retry with updated selectors

Selectors should come from Actionbook or live page observation in the current session — not from prior knowledge or memory.

Important Notes

  • Do NOT modify selectors returned from Actionbook
  • Check Allow Methods field — it indicates supported operations (click/type/read) per element
  • region_high_filter_page entries indicate some elements lack unique selectors — use snapshot fallback for those

來源與署名

來源:actionbook/actionbook位於packages/openclaw-plugin/skills/actionbook提交0e31254

授權條款: 無授權條款

內容歸原作者所有。SourceWeft 從公開儲存庫中收錄這些內容。

檢舉或申請下架