#619 by GitHub stars

actionbook/actionbook

Let your AI agent get the sources behind logins and paywalls.

History

Review weekly changes to SKILL.md before updating. Dates mark the weeks in which we observed each version; checks apply to the recorded commits.

View weekly changes

packages/openclaw-plugin/skills/actionbook/SKILL.md

Week of Nov 2, 2026 · +0 / −0 lines

Before Network or broad shell → After Network or broad shell

20ed5b510ecb → 20ed5b510ecb

Compare on GitHub

Week of Oct 26, 2026 · Line counts unavailable

Before Not checked yet → After Network or broad shell

First observation → 20ed5b510ecb

No earlier version was observed for comparison.

Compare on GitHub

playground/actionbook-scraper/skills/actionbook-scraper/SKILL.md

Week of Nov 2, 2026 · +0 / −0 lines

Before Network or broad shell → After Network or broad shell

20ed5b510ecb → 20ed5b510ecb

Compare on GitHub

Week of Oct 26, 2026 · Line counts unavailable

Before Not checked yet → After Network or broad shell

First observation → 20ed5b510ecb

No earlier version was observed for comparison.

Compare on GitHub

playground/actionbook-scraper/skills/agent-browser/SKILL.md

Week of Nov 2, 2026 · +0 / −0 lines

Before Network or broad shell → After Network or broad shell

20ed5b510ecb → 20ed5b510ecb

Compare on GitHub

Week of Oct 26, 2026 · Line counts unavailable

Before Not checked yet → After Network or broad shell

First observation → 20ed5b510ecb

No earlier version was observed for comparison.

Compare on GitHub

playground/actionbook-web-test/SKILL.md

Week of Nov 2, 2026 · +0 / −0 lines

Before Network or broad shell → After Network or broad shell

20ed5b510ecb → 20ed5b510ecb

Compare on GitHub

Week of Oct 26, 2026 · Line counts unavailable

Before Not checked yet → After Network or broad shell

First observation → 20ed5b510ecb

No earlier version was observed for comparison.

Compare on GitHub

playground/article-exporter/SKILL.md

Week of Nov 2, 2026 · +0 / −0 lines

Before Network or broad shell → After Network or broad shell

20ed5b510ecb → 20ed5b510ecb

Compare on GitHub

Week of Oct 26, 2026 · Line counts unavailable

Before Not checked yet → After Network or broad shell

First observation → 20ed5b510ecb

No earlier version was observed for comparison.

Compare on GitHub

playground/arxiv-viewer/skills/arxiv-viewer/SKILL.md

Week of Nov 2, 2026 · +0 / −0 lines

Before Network or broad shell → After Network or broad shell

20ed5b510ecb → 20ed5b510ecb

Compare on GitHub

Week of Oct 26, 2026 · Line counts unavailable

Before Not checked yet → After Network or broad shell

First observation → 20ed5b510ecb

No earlier version was observed for comparison.

Compare on GitHub

playground/deep-research/skills/deep-research/SKILL.md

Week of Nov 2, 2026 · +0 / −0 lines

Before Network or broad shell → After Network or broad shell

20ed5b510ecb → 20ed5b510ecb

Compare on GitHub

Week of Oct 26, 2026 · Line counts unavailable

Before Not checked yet → After Network or broad shell

First observation → 20ed5b510ecb

No earlier version was observed for comparison.

Compare on GitHub

playground/json-ui-skill/SKILL.md

Week of Nov 2, 2026 · +0 / −0 lines

Before Network or broad shell → After Network or broad shell

20ed5b510ecb → 20ed5b510ecb

Compare on GitHub

Week of Oct 26, 2026 · Line counts unavailable

Before Not checked yet → After Network or broad shell

First observation → 20ed5b510ecb

No earlier version was observed for comparison.

Compare on GitHub

playground/rust-learner/skills/actionbook/SKILL.md

Week of Nov 2, 2026 · +0 / −0 lines

Before Network or broad shell → After Network or broad shell

20ed5b510ecb → 20ed5b510ecb

Compare on GitHub

Week of Oct 26, 2026 · Line counts unavailable

Before Not checked yet → After Network or broad shell

First observation → 20ed5b510ecb

No earlier version was observed for comparison.

Compare on GitHub

playground/rust-learner/skills/agent-browser/SKILL.md

Week of Nov 2, 2026 · +0 / −0 lines

Before Network or broad shell → After Network or broad shell

20ed5b510ecb → 20ed5b510ecb

Compare on GitHub

Week of Oct 26, 2026 · Line counts unavailable

Before Not checked yet → After Network or broad shell

First observation → 20ed5b510ecb

No earlier version was observed for comparison.

Compare on GitHub

playground/rust-learner/skills/rust-learner/SKILL.md

Week of Nov 2, 2026 · +0 / −0 lines

Before Network or broad shell → After Network or broad shell

20ed5b510ecb → 20ed5b510ecb

Compare on GitHub

Week of Oct 26, 2026 · Line counts unavailable

Before Not checked yet → After Network or broad shell

First observation → 20ed5b510ecb

No earlier version was observed for comparison.

Compare on GitHub

skills/actionbook/SKILL.md

Week of Nov 2, 2026 · +0 / −0 lines

Before Network or broad shell → After Network or broad shell

20ed5b510ecb → 20ed5b510ecb

Compare on GitHub

Week of Oct 26, 2026 · Line counts unavailable

Before Not checked yet → After Network or broad shell

First observation → 20ed5b510ecb

No earlier version was observed for comparison.

Compare on GitHub

skills/active-research/SKILL.md

Week of Nov 2, 2026 · +0 / −0 lines

Before Network or broad shell → After Network or broad shell

20ed5b510ecb → 20ed5b510ecb

Compare on GitHub

Week of Oct 26, 2026 · Line counts unavailable

Before Not checked yet → After Network or broad shell

First observation → 20ed5b510ecb

No earlier version was observed for comparison.

Compare on GitHub

skills/extract/SKILL.md

Week of Nov 2, 2026 · +0 / −0 lines

Before Network or broad shell → After Network or broad shell

20ed5b510ecb → 20ed5b510ecb

Compare on GitHub

Week of Oct 26, 2026 · Line counts unavailable

Before Not checked yet → After Network or broad shell

First observation → 20ed5b510ecb

No earlier version was observed for comparison.

Compare on GitHub

View on GitHubAdd to my skills

Verified commit 20ed5b510ecbeee1cc7bf6861fc1d450eefe21d6

git clone --filter=blob:none --no-checkout https://github.com/actionbook/actionbook.git .hotskills/actionbook-actionbook && git -C .hotskills/actionbook-actionbook checkout --detach 20ed5b510ecbeee1cc7bf6861fc1d450eefe21d6 # Copy each selected skill directory from .hotskills/actionbook-actionbook into .claude/skills/<skill-name>/
1.6kGitHub stars
3stars in 7 days
14skills in this repository
1commit in 30 days

Heat

3.1
  • Star growth, last 7 daysAhead of 51% of tracked repositories
  • Star growth, last 24 hoursAhead of 2% of tracked repositories
  • Rank movement, last 7 daysAhead of 24% of tracked repositories
  • Commits, last 30 daysAhead of 54% of tracked repositories
  • Accounts asking about it through MCP, last 7 daysNot available
  • Hot votes this weekAhead of 0% of tracked repositories

Heat never changes the order by stars, and sponsorship never touches it. How heat works

Stars over time

Jul 30, 2026Nov 6, 20261,627

Individual skills in this repository

How it works

actionbook

When your agent uses it

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.

What it loads into context

Frontmatter

60 tokens

Always available to the agent

SKILL.md

1,388 tokens

When the skill is activated

Reference documents

73,027 tokens

Loaded on request

Token counts are estimates. Scripts run separately; they are not counted as reference context.

The playbook

  1. When to Use
  2. Workflow
  3. Constructing an Effective Search Query
  4. Response Structure
  5. Selector Priority
  6. Example
  7. Fallback Strategy
  8. Important Notes

Files

  • ../../../../.claude-plugin/marketplace.jsonasset346 bytes
  • ../../../../.claude-plugin/plugin.jsonasset294 bytes
  • ../../../../mcp-servers.jsonasset96 bytes
  • SKILL.mdcore6,117 bytes
  • ../../../../playground/actionbook-scraper/.claude-plugin/marketplace.jsonasset345 bytes
  • ../../../../playground/actionbook-scraper/.claude-plugin/plugin.jsonasset221 bytes
  • ../../../../playground/arxiv-viewer/.claude-plugin/marketplace.jsonasset395 bytes
  • ../../../../playground/arxiv-viewer/.claude-plugin/plugin.jsonasset690 bytes
  • ../../../../playground/arxiv-viewer/.mcp.jsonasset96 bytes
  • ../../../../playground/arxiv-viewer/agents/browser-fetcher.mddoc1,906 bytes
  • ../../../../playground/arxiv-viewer/agents/browser-fetcher.mddoc1,906 bytes
  • ../../../../playground/arxiv-viewer/agents/browser-fetcher.mddoc1,906 bytes
  • ../../../../playground/arxiv-viewer/agents/browser-fetcher.mddoc1,906 bytes
  • ../../../../playground/arxiv-viewer/agents/html-reader.mddoc2,787 bytes
  • ../../../../playground/arxiv-viewer/agents/html-reader.mddoc2,787 bytes
  • ../../../../playground/arxiv-viewer/agents/html-reader.mddoc2,787 bytes
  • ../../../../playground/arxiv-viewer/agents/html-reader.mddoc2,787 bytes
  • ../../../../playground/arxiv-viewer/agents/html-reader.mddoc2,787 bytes
  • ../../../../playground/arxiv-viewer/agents/html-reader.mddoc2,787 bytes
  • ../../../../playground/arxiv-viewer/agents/html-reader.mddoc2,787 bytes
  • ../../../../playground/arxiv-viewer/agents/paper-fetcher.mddoc1,118 bytes
  • ../../../../playground/arxiv-viewer/agents/paper-summarizer.mddoc3,575 bytes
  • ../../../../playground/arxiv-viewer/agents/paper-summarizer.mddoc3,575 bytes
  • ../../../../playground/arxiv-viewer/agents/paper-summarizer.mddoc3,575 bytes
  • ../../../../playground/arxiv-viewer/agents/paper-summarizer.mddoc3,575 bytes
  • ../../../../playground/arxiv-viewer/agents/paper-summarizer.mddoc3,575 bytes
  • ../../../../playground/arxiv-viewer/agents/search-executor.mddoc1,856 bytes
  • ../../../../playground/arxiv-viewer/commands/citations.mddoc1,570 bytes
  • ../../../../playground/arxiv-viewer/commands/download.mddoc1,180 bytes
  • ../../../../playground/arxiv-viewer/commands/figures.mddoc1,537 bytes
  • ../../../../playground/arxiv-viewer/commands/latest.mddoc1,435 bytes
  • ../../../../playground/arxiv-viewer/commands/outline.mddoc1,336 bytes
  • ../../../../playground/arxiv-viewer/commands/paper.mddoc1,050 bytes
  • ../../../../playground/arxiv-viewer/commands/read.mddoc1,849 bytes
  • ../../../../playground/arxiv-viewer/commands/report.mddoc2,448 bytes
  • ../../../../playground/arxiv-viewer/commands/search.mddoc1,738 bytes
  • ../../../../playground/arxiv-viewer/commands/trending.mddoc1,093 bytes
  • ../../../../playground/arxiv-viewer/skills/arxiv-viewer/SKILL.mddoc8,534 bytes
  • ../../../../playground/deep-research/.claude-plugin/marketplace.jsonasset375 bytes
  • ../../../../playground/deep-research/.claude-plugin/plugin.jsonasset1,148 bytes
  • ../../../../playground/deep-research/.mcp.jsonasset96 bytes
  • ../../../../playground/deep-research/agents/researcher.mddoc7,647 bytes
  • ../../../../playground/deep-research/agents/researcher.mddoc7,647 bytes
  • ../../../../playground/deep-research/agents/researcher.mddoc7,647 bytes
  • ../../../../playground/deep-research/agents/researcher.mddoc7,647 bytes
  • ../../../../playground/deep-research/agents/researcher.mddoc7,647 bytes
  • ../../../../playground/deep-research/agents/researcher.mddoc7,647 bytes
  • ../../../../playground/deep-research/agents/researcher.mddoc7,647 bytes
  • ../../../../playground/deep-research/agents/researcher.mddoc7,647 bytes
  • ../../../../playground/deep-research/agents/researcher.mddoc7,647 bytes
  • ../../../../playground/deep-research/agents/researcher.mddoc7,647 bytes
  • ../../../../playground/deep-research/agents/researcher.mddoc7,647 bytes
  • ../../../../playground/deep-research/commands/analyze.mddoc2,756 bytes
  • ../../../../playground/deep-research/commands/analyze.mddoc2,756 bytes
  • ../../../../playground/deep-research/commands/analyze.mddoc2,756 bytes
  • ../../../../playground/deep-research/skills/deep-research/SKILL.mddoc29,442 bytes
  • ../../../../playground/rust-learner/.claude-plugin/plugin.jsonasset174 bytes
  • ../../../../skills/actionbook/SKILL.mddoc10,854 bytes
  • ../../../../skills/actionbook/references/authentication.mddoc5,399 bytes
  • ../../../../skills/actionbook/references/command-reference.mddoc28,603 bytes
  • ../../../../skills/active-research/SKILL.mddoc33,599 bytes
  • ../../../../skills/extract/SKILL.mddoc13,597 bytes
Read SKILL.md

## 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
View the complete source on GitHub

Skills included

  • actionbook
  • actionbook-scraper
  • agent-browser
  • actionbook-web-test
  • article-exporter
  • arxiv-viewer
  • deep-research
  • json-ui
  • actionbook
  • agent-browser
  • rust-learner
  • actionbook
  • active-research
  • extract

Repository facts

License
Apache-2.0
Created
Dec 28, 2025
Last pushed
Oct 19, 2026
Forks
120
Open issues
6
Project activity
Active

Rank over the last 12 weeks

Now #619 · best #448 · down 85 in 30 days

  1. #607 on Nov 2
  2. #613 on Nov 3
  3. #615 on Nov 4
  4. #616 on Nov 5
  5. #617 on Nov 6
  6. #619 since Nov 7
42 earlier periods
  1. #438 on Aug 1
  2. #425 on Aug 8
  3. #441 on Aug 10
  4. #448 on Aug 17
  5. #452 on Aug 18
  6. #461 on Aug 25
  7. #461 on Aug 28
  8. #453 on Aug 29
  9. #466 on Sep 2
  10. #460 on Sep 4
  11. #462 on Sep 5
  12. #471 on Sep 6
  13. #490 on Sep 15
  14. #495 on Sep 17
  15. #503 on Sep 18
  16. #493 on Sep 20
  17. #510 on Sep 22
  18. #492 on Sep 24
  19. #487 on Sep 26
  20. #507 on Sep 27
  21. #521 on Sep 29
  22. #507 on Oct 1
  23. #506 on Oct 2
  24. #491 on Oct 4
  25. #499 on Oct 5
  26. #517 on Oct 7
  27. #534 on Oct 8
  28. #523 on Oct 11
  29. #534 on Oct 12
  30. #536 on Oct 13
  31. #540 on Oct 14
  32. #535 on Oct 15
  33. #538 on Oct 16
  34. #533 on Oct 17
  35. #548 on Oct 19
  36. #554 on Oct 20
  37. #592 on Oct 25
  38. #597 on Oct 28
  39. #598 on Oct 29
  40. #603 on Oct 30
  41. #604 on Oct 31
  42. #606 on Nov 1

Before you install

Network or broad shell

Automated signals, not a guarantee

Checked Nov 3, 2026

Not fully analyzed: some files were too long, unreadable or missing. This never lowers the level.

Show 165 notes
  • playground/arxiv-viewer/agents/browser-fetcher.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • playground/arxiv-viewer/agents/browser-fetcher.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • playground/arxiv-viewer/agents/browser-fetcher.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • playground/arxiv-viewer/agents/html-reader.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • playground/arxiv-viewer/agents/html-reader.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • playground/arxiv-viewer/agents/html-reader.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • playground/arxiv-viewer/agents/html-reader.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • playground/arxiv-viewer/agents/html-reader.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • playground/arxiv-viewer/agents/html-reader.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • playground/arxiv-viewer/agents/paper-summarizer.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • playground/arxiv-viewer/agents/paper-summarizer.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • playground/arxiv-viewer/agents/paper-summarizer.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • playground/arxiv-viewer/agents/paper-summarizer.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • playground/deep-research/agents/researcher.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • playground/deep-research/agents/researcher.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • playground/deep-research/agents/researcher.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • playground/deep-research/agents/researcher.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • playground/deep-research/agents/researcher.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • playground/deep-research/agents/researcher.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • playground/deep-research/agents/researcher.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
Show all 559 signals by file

packages/openclaw-plugin/skills/actionbook/SKILL.md

  • Network accessline 98
    3. Use browser tools with returned selectors:    - Navigate to https://arxiv.org/search/advanced
  • Network accessline 99
    - Navigate to https://arxiv.org/search/advanced

playground/actionbook-scraper/.claude-plugin/marketplace.json

  • Network accessline 3
    "owner": {     "name": "Actionbook",     "url": "https://github.com/actionbook"
  • Network accessline 4
    "name": "Actionbook",     "url": "https://github.com/actionbook"   },
  • Network accessline 5
    "url": "https://github.com/actionbook"

playground/actionbook-scraper/skills/actionbook-scraper/SKILL.md

  • Network accessline 61
    agent-browser open "https://example.com"
  • Network accessline 202
    # Execute each command agent-browser open "https://example.com"
  • Network accessline 203
    agent-browser open "https://example.com"
  • Network accessline 289
    1. User: /actionbook-scraper:analyze https://example.com/page
  • Network accessline 299
    User: /actionbook-scraper:generate https://example.com/page
  • Network accessline 309
    agent-browser open "https://example.com/page"
  • Network accessline 332
    agent-browser open "https://example.com/page"
  • Network accessline 352
    User: /actionbook-scraper:generate https://example.com/page --standalone
  • Network accessline 391
    1. User: /actionbook-scraper:request-website https://newsite.com/page
  • Network accessline 392
    2. Launch website-requester agent (uses agent-browser) 3. Agent workflow:    a. agent-browser open "https://actionbook.app/request-website"
  • Network accessline 393
    3. Agent workflow:    a. agent-browser open "https://actionbook.app/request-website"    b. agent-browser snapshot -i (discover form selectors)
  • Network accessline 394
    a. agent-browser open "https://actionbook.app/request-website"
  • Network accessline 395
    b. agent-browser snapshot -i (discover form selectors)    c. agent-browser type <url-field> "https://newsite.com/page"    d. agent-browser type <email-field> (optional)
  • Network accessline 396
    c. agent-browser type <url-field> "https://newsite.com/page"
  • Network accessline 410
    {   "url": "https://example.com/page",
  • Network accessline 411
    "url": "https://example.com/page",
  • Network accessline 536
    # Open a URL agent-browser open "https://actionbook.app/request-website"
  • Network accessline 537
    agent-browser open "https://actionbook.app/request-website"
  • Network accessline 542
    # Type into form field agent-browser type "input[name='url']" "https://example.com"
  • Network accessline 543
    agent-browser type "input[name='url']" "https://example.com"
  • Network accessline 557
    agent-browser open "https://actionbook.app/request-website"
  • Network accessline 575
    /actionbook-scraper:generate https://firstround.com/companies
  • Network accessline 579
    agent-browser open "https://firstround.com/companies"
  • Network accessline 590
    /actionbook-scraper:generate https://firstround.com/companies --standalone
  • Network accessline 603
    /actionbook-scraper:analyze https://example.com/products
  • Network accessline 613
    /actionbook-scraper:request-website https://newsite.com/data

playground/actionbook-scraper/skills/agent-browser/SKILL.md

  • Network accessline 66
    # Open Actionbook request page agent-browser open "https://actionbook.app/request-website"
  • Network accessline 67
    agent-browser open "https://actionbook.app/request-website"
  • Network accessline 73
    # Fill form agent-browser fill @e1 "https://example.com/products"
  • Network accessline 74
    agent-browser fill @e1 "https://example.com/products"

playground/actionbook-web-test/README.md

  • Network accessline 16
    - [Actionbook CLI](https://github.com/actionbook/actionbook) installed and authenticated
  • Network accessline 25
    name: reddit-ui-smoke description: Verify Reddit sidebar toggle and search url: https://www.reddit.com
  • Network accessline 26
    description: Verify Reddit sidebar toggle and search url: https://www.reddit.com tags: [smoke, reddit]
  • Network accessline 27
    url: https://www.reddit.com
  • Network accessline 36
    - name: Open Reddit     action: open     url: "https://www.reddit.com"
  • Network accessline 38
    url: "https://www.reddit.com"
  • Network accessline 85
    "viewport": "1280x720",     "profile": "default",     "target": "https://chatgpt.com"
  • Network accessline 86
    "profile": "default",     "target": "https://chatgpt.com"   },
  • Network accessline 87
    "target": "https://chatgpt.com"
  • Network accessline 95
    "summary": "Verified sending a message and receiving a response.",       "steps": [         { "name": "Open ChatGPT", "status": "passed", "command": "browser open https://chatgpt.com", "duration": 1200 },
  • Network accessline 96
    "steps": [         { "name": "Open ChatGPT", "status": "passed", "command": "browser open https://chatgpt.com", "duration": 1200 },         { "name": "Type message", "status": "passed", "command": "browser fill \"#prompt-textarea\" \"hello\
  • Network accessline 97
    { "name": "Open ChatGPT", "status": "passed", "command": "browser open https://chatgpt.com", "duration": 1200 },

playground/actionbook-web-test/SKILL.md

  • Network accessline 36
    name: example-test description: What this test verifies url: https://example.com
  • Network accessline 37
    description: What this test verifies url: https://example.com tags: [smoke, critical]
  • Network accessline 38
    url: https://example.com
  • Network accessline 59
    - name: Open page     action: open     url: "https://example.com"
  • Network accessline 61
    url: "https://example.com"
  • Dangerous shell operationline 93
    | `eval` | `actionbook browser eval "expression"` | `expression` |
  • Dangerous shell operationline 122
    | `url-contains` | Current URL contains string | `browser eval "location.href"` |
  • Dangerous shell operationline 123
    | `url-equals` | Current URL exactly matches | `browser eval "location.href"` |
  • Dangerous shell operationline 125
    | `element-not-exists` | Element NOT present | `browser eval "!document.querySelector(...)"` |
  • Dangerous shell operationline 128
    | `element-count` | Element count matches condition | `browser eval "querySelectorAll(...).length"` |
  • Dangerous shell operationline 129
    | `attribute-equals` | Element attribute matches | `browser eval "getAttribute(...)"` |
  • Dangerous shell operationline 130
    | `attribute-contains` | Attribute contains substring | `browser eval "getAttribute(...)"` |
  • Dangerous shell operationline 131
    | `page-title-contains` | Page title contains string | `browser eval "document.title"` |
  • Dangerous shell operationline 132
    | `eval-truthy` | JS expression evaluates truthy | `browser eval "<expression>"` |
  • Dangerous shell operationline 242
    **Smart Waits**: Always prefer `wait-fn` over `eval "setTimeout"`:
  • Dangerous shell operationline 246
    actionbook browser eval "new Promise(r => setTimeout(r, 800))"
  • Dangerous shell operationline 339
    actionbook browser eval "document.querySelector('host-element').shadowRoot.querySelector('button.inner').click()"
  • Dangerous shell operationline 342
    actionbook browser eval "document.querySelector('host-element').shadowRoot.querySelector('.label').textContent"
  • Dangerous shell operationline 360
    | `wait-idle` not supported | Use `wait "<selector>"` with timeout, or `wait-fn "<condition>"` for state changes. Only use `eval "new Promise(r => setTimeout(r, N))"` as last resort for pure animation delays. |
  • Network accessline 368
    - name: Navigate to search results   action: open   url: "https://www.reddit.com/search/?q=actionbook"
  • Network accessline 370
    url: "https://www.reddit.com/search/?q=actionbook"
  • Dangerous shell operationline 379
    actionbook browser eval "document.querySelector('iframe#payment').contentDocument.querySelector('button.pay').click()"
  • Dangerous shell operationline 382
    actionbook browser eval "document.querySelector('iframe#payment').contentDocument.querySelector('.total').textContent"
  • Network accessline 557
    "numbered": true,             "items": [               { "title": "Open Google", "badge": "PASS", "description": "`browser open https://google.com` (0.5s)" },
  • Network accessline 558
    "items": [               { "title": "Open Google", "badge": "PASS", "description": "`browser open https://google.com` (0.5s)" },               { "title": "Verify search box", "badge": "PASS", "description": "`browser wait \"input[name='q']\
  • Network accessline 559
    { "title": "Open Google", "badge": "PASS", "description": "`browser open https://google.com` (0.5s)" },
  • Network accessline 593
    "numbered": true,             "items": [               { "title": "Open login page", "badge": "PASS", "description": "`browser open https://app.example.com/login` (0.8s)" },
  • Network accessline 594
    "items": [               { "title": "Open login page", "badge": "PASS", "description": "`browser open https://app.example.com/login` (0.8s)" },               { "title": "Fill username", "badge": "PASS", "description": "`browser fill \"#emai
  • Network accessline 595
    { "title": "Open login page", "badge": "PASS", "description": "`browser open https://app.example.com/login` (0.8s)" },
  • Network accessline 724
    "numbered": true,         "items": [           { "title": "Open login page", "badge": "PASS", "description": "browser open https://app.example.com/login (0.8s)" },
  • Network accessline 725
    "items": [           { "title": "Open login page", "badge": "PASS", "description": "browser open https://app.example.com/login (0.8s)" },           { "title": "Fill username", "badge": "PASS", "description": "browser fill \"#email\" \"test@
  • Network accessline 726
    { "title": "Open login page", "badge": "PASS", "description": "browser open https://app.example.com/login (0.8s)" },
  • Network accessline 784
    # Use a named profile — cookies and storage persist across sessions actionbook --profile myapp browser open "https://app.example.com/login"
  • Network accessline 785
    actionbook --profile myapp browser open "https://app.example.com/login"
  • Network accessline 787
    # After login (manual or automated), the profile saves cookies/storage automatically # Next run with the same profile reuses the session actionbook --profile myapp browser open "https://app.example.com/dashboard"
  • Network accessline 789
    actionbook --profile myapp browser open "https://app.example.com/dashboard"
  • Network accessline 806
    condition: url-not-contains "/dashboard"     action: open     url: "https://app.example.com/login"
  • Network accessline 807
    action: open     url: "https://app.example.com/login"     # ... login steps follow
  • Network accessline 808
    url: "https://app.example.com/login"
  • Access to secretsline 816
    [Credential-related source omitted]
  • Access to secretsline 819
    [Credential-related source omitted]
  • Access to secretsline 822
    [Credential-related source omitted]
  • Access to secretsline 828
    [Credential-related source omitted]
  • Network accessline 841
    # 1. Open the target page actionbook browser open "https://example.com/pricing"
  • Network accessline 842
    actionbook browser open "https://example.com/pricing"
  • Network accessline 868
    # Auto-generated from snapshot of https://example.com/pricing
  • Network accessline 869
    name: pricing-page-smoke description: Verify pricing page loads with key elements and interactions url: https://example.com/pricing
  • Network accessline 870
    description: Verify pricing page loads with key elements and interactions url: https://example.com/pricing tags: [smoke, auto-generated]
  • Network accessline 871
    url: https://example.com/pricing
  • Network accessline 875
    - name: Open pricing page     action: open     url: "https://example.com/pricing"
  • Network accessline 877
    url: "https://example.com/pricing"

playground/actionbook-web-test/package.json

  • Executable scriptline 1
    Executable file

playground/actionbook-web-test/references/assertion-types.md

  • Dangerous shell operationline 123
    **CLI mapping:** `actionbook browser eval "window.location.href"` — runner checks if output contains `value`.
  • Dangerous shell operationline 146
    **CLI mapping:** `actionbook browser eval "window.location.href"` — runner compares output to `value`.
  • Network accessline 150
    - type: url-equals   value: "https://app.example.com/dashboard"
  • Network accessline 151
    value: "https://app.example.com/dashboard"
  • Network accessline 154
    **Edge cases:** - Trailing slashes matter. `https://example.com` does not equal `https://example.com/`.
  • Network accessline 155
    - Trailing slashes matter. `https://example.com` does not equal `https://example.com/`.
  • Dangerous shell operationline 171
    **CLI mapping:** `actionbook browser eval "window.location.href"` — runner tests output against regex.
  • Network accessline 175
    - type: url-matches   pattern: "^https://app\\.example\\.com/users/[0-9]+/profile$"
  • Network accessline 176
    pattern: "^https://app\\.example\\.com/users/[0-9]+/profile$"
  • Network accessline 178
    # Case-insensitive URL match - type: url-matches   pattern: "^https://app\\.example\\.com/dashboard"
  • Network accessline 179
    - type: url-matches   pattern: "^https://app\\.example\\.com/dashboard"   flags: "i"
  • Network accessline 180
    pattern: "^https://app\\.example\\.com/dashboard"
  • Dangerous shell operationline 201
    **CLI mapping:** `actionbook browser eval "document.querySelector('<selector>') !== null"` — runner checks for truthy return.
  • Dangerous shell operationline 224
    **CLI mapping:** `actionbook browser eval "document.querySelector('<selector>') === null"` — runner checks for truthy return.
  • Dangerous shell operationline 247
    **CLI mapping:** `actionbook browser eval "(() => { const el = document.querySelector('<selector>'); if (!el) return false; const r = el.getBoundingClientRect(); return r.width > 0 && r.height > 0 && getComputedStyle(el).display !== 'none' 
  • Dangerous shell operationline 296
    **CLI mapping:** `actionbook browser eval "document.querySelectorAll('<selector>').length"` — runner compares count against `value` using `operator`.
  • Dangerous shell operationline 330
    **CLI mapping:** `actionbook browser eval "document.querySelector('<selector>')?.getAttribute('<attribute>')"` — runner compares output to `value`.
  • Dangerous shell operationline 357
    **CLI mapping:** `actionbook browser eval "document.querySelector('<selector>')?.getAttribute('<attribute>')"` — runner checks if output contains `value`.
  • Dangerous shell operationline 388
    **CLI mapping:** `actionbook browser eval "document.title"` — runner checks if output contains `value`.
  • Dangerous shell operationline 407
    **CLI mapping:** `actionbook browser eval "document.title"` — runner compares output to `value`.
  • Dangerous shell operationline 428
    **CLI mapping:** `actionbook browser eval "<expression>"` — runner checks if return value is truthy.
  • Access to secretsline 436
    [Credential-related source omitted]
  • Dangerous shell operationline 559
    **CLI mapping:** `actionbook browser eval "performance.timing.loadEventEnd - performance.timing.navigationStart"` (varies by metric) — runner checks if measured time is under `value`.

playground/actionbook-web-test/references/report-format.md

  • Network accessline 389
    "numbered": true,             "items": [               { "title": "Open homepage", "badge": "PASS", "description": "`browser open https://example.com` (0.5s)" },
  • Network accessline 390
    "items": [               { "title": "Open homepage", "badge": "PASS", "description": "`browser open https://example.com` (0.5s)" },               { "title": "Verify heading", "badge": "PASS", "description": "assert text-contains \"Welcome\"
  • Network accessline 391
    { "title": "Open homepage", "badge": "PASS", "description": "`browser open https://example.com` (0.5s)" },
  • Network accessline 479
    "numbered": true,             "items": [               { "title": "Open homepage", "badge": "PASS", "description": "`browser open https://app.example.com` (0.5s)" },
  • Network accessline 480
    "items": [               { "title": "Open homepage", "badge": "PASS", "description": "`browser open https://app.example.com` (0.5s)" },               { "title": "Verify hero section", "badge": "PASS", "description": "`browser wait \".hero\"
  • Network accessline 481
    { "title": "Open homepage", "badge": "PASS", "description": "`browser open https://app.example.com` (0.5s)" },
  • Network accessline 515
    "numbered": true,             "items": [               { "title": "Open login page", "badge": "PASS", "description": "`browser open https://app.example.com/login` (0.8s)" },
  • Network accessline 516
    "items": [               { "title": "Open login page", "badge": "PASS", "description": "`browser open https://app.example.com/login` (0.8s)" },               { "title": "Fill username", "badge": "PASS", "description": "`browser fill \"#emai
  • Network accessline 517
    { "title": "Open login page", "badge": "PASS", "description": "`browser open https://app.example.com/login` (0.8s)" },

playground/actionbook-web-test/references/workflow-format.md

  • Network accessline 25
    name: Google search smoke test description: Verify Google search returns results for a known query url: https://www.google.com
  • Network accessline 26
    description: Verify Google search returns results for a known query url: https://www.google.com tags: [smoke]
  • Network accessline 27
    url: https://www.google.com
  • Dangerous shell operationline 97
    | `eval` | `expression` | `actionbook browser eval "<expression>"` | Execute JavaScript |
  • Network accessline 132
    env:   BASE_URL: https://staging.example.com
  • Network accessline 133
    BASE_URL: https://staging.example.com
  • Network accessline 228
    - name: Navigate to dashboard   action: goto   url: https://app.example.com/dashboard
  • Network accessline 229
    action: goto   url: https://app.example.com/dashboard   condition: url-not-contains "/dashboard"
  • Network accessline 230
    url: https://app.example.com/dashboard
  • Network accessline 261
    name: Search results validation description: Verify search returns relevant results for multiple queries url: https://example.com/search
  • Network accessline 262
    description: Verify search returns relevant results for multiple queries url: https://example.com/search tags: [smoke, search]
  • Network accessline 263
    url: https://example.com/search
  • Network accessline 302
    - name: Navigate to {{matrix.path}}     action: goto     url: "https://example.com{{matrix.path}}"
  • Network accessline 304
    url: "https://example.com{{matrix.path}}"
  • Network accessline 365
    name: E-commerce checkout flow description: Verify a user can search for a product, add to cart, and reach checkout url: https://shop.example.com
  • Network accessline 366
    description: Verify a user can search for a product, add to cart, and reach checkout url: https://shop.example.com tags: [e2e, checkout, critical]
  • Network accessline 367
    url: https://shop.example.com

playground/actionbook-web-test/tests/generate-report.mjs

  • Executable scriptline 1
    #!/usr/bin/env node
  • Network accessline 269
    viewport: '1280x720',       profile: 'default',       target: 'https://example.com',
  • Network accessline 270
    profile: 'default',       target: 'https://example.com',     },
  • Network accessline 271
    target: 'https://example.com',
  • Network accessline 279
    summary: 'Verify example.com loads with expected content.',         steps: [           { name: 'Open page', status: 'passed', command: 'browser open https://example.com', duration: 800 },
  • Network accessline 280
    steps: [           { name: 'Open page', status: 'passed', command: 'browser open https://example.com', duration: 800 },           { name: 'Verify heading', status: 'passed', command: null, duration: 200, assertion: true },
  • Network accessline 281
    { name: 'Open page', status: 'passed', command: 'browser open https://example.com', duration: 800 },

playground/actionbook-web-test/tests/reddit-ui-smoke.yaml

  • Network accessline 20
    name: reddit-ui-smoke description: Verify Reddit homepage, navigation, feed, and search at narrow viewport url: https://www.reddit.com
  • Network accessline 21
    description: Verify Reddit homepage, navigation, feed, and search at narrow viewport url: https://www.reddit.com tags: [smoke, reddit, ui]
  • Network accessline 22
    url: https://www.reddit.com
  • Network accessline 35
    - name: Open Reddit homepage     action: open     url: "https://www.reddit.com"
  • Network accessline 37
    url: "https://www.reddit.com"
  • Network accessline 98
    - name: Navigate to search results page     action: open     url: "https://www.reddit.com/search/?q=actionbook"
  • Network accessline 100
    url: "https://www.reddit.com/search/?q=actionbook"
  • Network accessline 130
    - name: Navigate to r/programming     action: open     url: "https://www.reddit.com/r/programming/"
  • Network accessline 132
    url: "https://www.reddit.com/r/programming/"

playground/article-exporter/SKILL.md

  • Broad permissionsline 1
    Bash(curl:*)
  • Network accessline 188
    for url in $IMAGE_URLS; do     ext=$(echo "$url" | grep -oE '\.(jpg|jpeg|png|gif|webp|svg)' || echo ".jpg")     curl -L -s "$url" -o "$ARTICLE_DIR/images/image_${counter}${ext}"
  • Network accessline 190
    curl -L -s "$url" -o "$ARTICLE_DIR/images/image_${counter}${ext}"
  • Network accessline 193
    if [ ! -s "$ARTICLE_DIR/images/image_${counter}${ext}" ]; then         # Try alternative format (Twitter)         curl -L -s "${url}?format=jpg&name=orig" -o "$ARTICLE_DIR/images/image_${counter}.jpg"
  • Network accessline 194
    # Try alternative format (Twitter)         curl -L -s "${url}?format=jpg&name=orig" -o "$ARTICLE_DIR/images/image_${counter}.jpg"     fi
  • Network accessline 195
    curl -L -s "${url}?format=jpg&name=orig" -o "$ARTICLE_DIR/images/image_${counter}.jpg"
  • Network accessline 206
    **Rules:** - Use `curl -L` to follow redirects
  • Network accessline 207
    - Use `curl -L` to follow redirects
  • Dangerous shell operationline 228
    rm /tmp/article.md.bak

playground/article-exporter/TROUBLESHOOTING.md

  • Network accessline 51
    # 2. Test network curl -I https://example.com
  • Network accessline 52
    curl -I https://example.com
  • Dangerous shell operationline 118
    **Cause**: Need sudo for global npm install OR npm prefix not configured
  • Dangerous shell operationline 122
    **Solution A**: Use sudo (quick fix)
  • Dangerous shell operationline 124
    sudo npm install -g @actionbookdev/cli
  • Network accessline 165
    # Original URL fails curl "$url" -o image.jpg  # 0 bytes
  • Network accessline 166
    curl "$url" -o image.jpg  # 0 bytes
  • Network accessline 168
    # Try JPG format parameter curl "${url}?format=jpg&name=orig" -o image.jpg
  • Network accessline 169
    curl "${url}?format=jpg&name=orig" -o image.jpg
  • Network accessline 171
    # Try PNG format curl "${url}?format=png&name=orig" -o image.png
  • Network accessline 172
    curl "${url}?format=png&name=orig" -o image.png
  • Network accessline 174
    # Try with user-agent header curl -A "Mozilla/5.0" "$url" -o image.jpg
  • Network accessline 175
    curl -A "Mozilla/5.0" "$url" -o image.jpg
  • Network accessline 180
    # Test image URL manually curl -I "$IMAGE_URL"
  • Network accessline 181
    curl -I "$IMAGE_URL"
  • Network accessline 184
    # If 403, add headers curl -H "Referer: $ARTICLE_URL" "$IMAGE_URL" -o test.jpg
  • Network accessline 185
    curl -H "Referer: $ARTICLE_URL" "$IMAGE_URL" -o test.jpg
  • Network accessline 192
    # Add delay between downloads for url in $IMAGE_URLS; do     curl "$url" -o "image_${counter}.jpg"
  • Network accessline 193
    for url in $IMAGE_URLS; do     curl "$url" -o "image_${counter}.jpg"     sleep 2  # Wait 2 seconds between requests
  • Network accessline 194
    curl "$url" -o "image_${counter}.jpg"
  • Dangerous shell operationline 303
    rm -rf "$ARTICLE_DIR"
  • Dangerous shell operationline 446
    rm -rf ~/Work/Write/Articles/old-articles/
  • Network accessline 478
    # Test connectivity curl -v https://medium.com
  • Network accessline 479
    curl -v https://medium.com
  • Network accessline 508
    1. **Run dependency check**: `actionbook --version` 2. **Check network**: `curl -I https://example.com`
  • Network accessline 509
    2. **Check network**: `curl -I https://example.com`
  • Network accessline 515
    - **GitHub Issues**: https://github.com/actionbook/actionbook/issues
  • Network accessline 516
    - **Discussions**: https://github.com/actionbook/actionbook/discussions
  • Network accessline 535
    # Network test curl -I <url>
  • Network accessline 536
    curl -I <url>
  • Network accessline 545
    1. ✅ Verify `actionbook` CLI is installed: `actionbook --version` 2. ✅ Check network connectivity: `curl -I https://example.com`
  • Network accessline 546
    2. ✅ Check network connectivity: `curl -I https://example.com`

playground/article-exporter/references/batch-export.md

  • Network accessline 16
    # Create array of URLs urls=(   "https://medium.com/@author/post1"
  • Network accessline 17
    urls=(   "https://medium.com/@author/post1"   "https://dev.to/author/post2"
  • Network accessline 18
    "https://medium.com/@author/post1"
  • Network accessline 19
    "https://dev.to/author/post2"
  • Network accessline 20
    "https://x.com/user/status/123"

playground/article-exporter/references/troubleshooting.md

  • Network accessline 68
    # Try alternative format (Twitter) curl -L -s "${url}?format=jpg&name=orig" -o "image.jpg"
  • Network accessline 69
    curl -L -s "${url}?format=jpg&name=orig" -o "image.jpg"

playground/arxiv-viewer/.claude-plugin/marketplace.json

  • Network accessline 3
    "owner": {     "name": "Actionbook",     "url": "https://github.com/actionbook"
  • Network accessline 4
    "name": "Actionbook",     "url": "https://github.com/actionbook"   },
  • Network accessline 5
    "url": "https://github.com/actionbook"

playground/arxiv-viewer/.claude-plugin/plugin.json

  • Network accessline 5
    "author": {     "name": "Actionbook",     "url": "https://github.com/actionbook/actionbook"
  • Network accessline 6
    "name": "Actionbook",     "url": "https://github.com/actionbook/actionbook"   },
  • Network accessline 7
    "url": "https://github.com/actionbook/actionbook"
  • Network accessline 9
    "repository": {     "type": "git",     "url": "https://github.com/actionbook/actionbook",
  • Network accessline 10
    "type": "git",     "url": "https://github.com/actionbook/actionbook",     "directory": "playground/arxiv-viewer"
  • Network accessline 11
    "url": "https://github.com/actionbook/actionbook",

playground/arxiv-viewer/agents/browser-fetcher.md

  • Network accessline 41
    # Open latest papers page agent-browser open "https://arxiv.org/list/cs.CL/recent"
  • Network accessline 42
    agent-browser open "https://arxiv.org/list/cs.CL/recent"
  • Network accessline 57
    # Open search results agent-browser open "https://arxiv.org/search/?query=transformer&searchtype=all"
  • Network accessline 58
    agent-browser open "https://arxiv.org/search/?query=transformer&searchtype=all"

playground/arxiv-viewer/agents/html-reader.md

  • Network accessline 41
    agent-browser open "https://ar5iv.org/html/2301.07041"
  • Network accessline 49
    agent-browser open "https://ar5iv.org/html/2301.07041"
  • Network accessline 57
    agent-browser open "https://ar5iv.org/html/2301.07041"
  • Network accessline 65
    agent-browser open "https://ar5iv.org/html/2301.07041"

playground/arxiv-viewer/agents/paper-fetcher.md

  • Network accessline 18
    1. Build API URL: `http://export.arxiv.org/api/query?id_list={arxiv_id}` 2. Use `WebFetch` to fetch the API response
  • Network accessline 58
    **Links:** [Abstract](https://arxiv.org/abs/{id}) | [PDF](https://arxiv.org/pdf/{id}.pdf)

playground/arxiv-viewer/agents/paper-summarizer.md

  • Network accessline 21
    1. Build PDF URL: `https://arxiv.org/pdf/{arxiv_id}.pdf` 2. Download PDF using `Bash(curl)`:
  • Network accessline 24
    curl -L -o /tmp/{arxiv_id}.pdf https://arxiv.org/pdf/{arxiv_id}.pdf
  • Network accessline 35
    curl -L -o /tmp/{arxiv_id}.pdf https://arxiv.org/pdf/{arxiv_id}.pdf
  • Network accessline 94
    | Field | Content | |-------|---------| | arXiv ID | [{id}](https://arxiv.org/abs/{id}) |
  • Network accessline 95
    |-------|---------| | arXiv ID | [{id}](https://arxiv.org/abs/{id}) | | Authors | {authors} |
  • Network accessline 96
    | arXiv ID | [{id}](https://arxiv.org/abs/{id}) |
  • Network accessline 159
    - 📄 [arXiv Abstract](https://arxiv.org/abs/{id}) - 📥 [PDF Download](https://arxiv.org/pdf/{id}.pdf)
  • Network accessline 160
    - 📥 [PDF Download](https://arxiv.org/pdf/{id}.pdf)
  • Network accessline 161
    - 🌐 [HTML Version](https://ar5iv.org/html/{id})

playground/arxiv-viewer/agents/search-executor.md

  • Network accessline 21
    - Replace spaces with `+`    - Encode special characters 2. Construct full URL: `http://export.arxiv.org/api/query?search_query={query}&max_results={max}&sortBy={sort}`
  • Network accessline 22
    - Encode special characters 2. Construct full URL: `http://export.arxiv.org/api/query?search_query={query}&max_results={max}&sortBy={sort}` 3. Use `WebFetch` to fetch the API response
  • Network accessline 23
    2. Construct full URL: `http://export.arxiv.org/api/query?search_query={query}&max_results={max}&sortBy={sort}` 3. Use `WebFetch` to fetch the API response 4. Parse XML to extract entries
  • Network accessline 31
    # Simple title search http://export.arxiv.org/api/query?search_query=ti:transformer&max_results=10
  • Network accessline 32
    http://export.arxiv.org/api/query?search_query=ti:transformer&max_results=10
  • Network accessline 34
    # Author search http://export.arxiv.org/api/query?search_query=au:hinton&max_results=10
  • Network accessline 35
    http://export.arxiv.org/api/query?search_query=au:hinton&max_results=10
  • Network accessline 37
    # Combined with category http://export.arxiv.org/api/query?search_query=ti:attention+AND+cat:cs.CL&max_results=10
  • Network accessline 38
    http://export.arxiv.org/api/query?search_query=ti:attention+AND+cat:cs.CL&max_results=10
  • Network accessline 40
    # Sorted by date http://export.arxiv.org/api/query?search_query=cat:cs.LG&sortBy=submittedDate&sortOrder=descending&max_results=20
  • Network accessline 41
    http://export.arxiv.org/api/query?search_query=cat:cs.LG&sortBy=submittedDate&sortOrder=descending&max_results=20

playground/arxiv-viewer/commands/citations.md

  • Network accessline 28
    1. `search_actions("ar5iv bibliography")` → get action ID 2. `get_action_by_id(action_id)` → get citation selectors 3. `agent-browser open https://ar5iv.org/html/{arxiv_id}`
  • Network accessline 29
    2. `get_action_by_id(action_id)` → get citation selectors 3. `agent-browser open https://ar5iv.org/html/{arxiv_id}` 4. `agent-browser get text ".ltx_bibliography"`
  • Network accessline 30
    3. `agent-browser open https://ar5iv.org/html/{arxiv_id}`

playground/arxiv-viewer/commands/download.md

  • Network accessline 13
    - `arxiv_id` (required): arXiv paper ID or URL   - ID formats: `2301.07041`, `2301.07041v2`   - URL formats: `https://arxiv.org/abs/2301.07041`
  • Network accessline 14
    - ID formats: `2301.07041`, `2301.07041v2`   - URL formats: `https://arxiv.org/abs/2301.07041` - `directory` (optional): Target directory (default: current directory)
  • Network accessline 15
    - URL formats: `https://arxiv.org/abs/2301.07041`
  • Network accessline 27
    # Download from URL /arxiv-viewer:download https://arxiv.org/abs/2301.07041 ~/research/papers
  • Network accessline 28
    /arxiv-viewer:download https://arxiv.org/abs/2301.07041 ~/research/papers
  • Network accessline 33
    1. **Parse input** - Extract arXiv ID from URL or use directly 2. **Create directory** - If specified directory doesn't exist, create it 3. **Download PDF** - Use `curl -L` to download from `https://arxiv.org/pdf/{id}.pdf`
  • Network accessline 34
    2. **Create directory** - If specified directory doesn't exist, create it 3. **Download PDF** - Use `curl -L` to download from `https://arxiv.org/pdf/{id}.pdf` 4. **Confirm download** - Report file location and size
  • Network accessline 35
    3. **Download PDF** - Use `curl -L` to download from `https://arxiv.org/pdf/{id}.pdf`
  • Network accessline 48
    - PDFs are named `{arxiv_id}.pdf` (e.g., `2301.07041.pdf`) - Version suffix is preserved (e.g., `2301.07041v2.pdf`) - Use `-L` flag with curl to follow redirects
  • Network accessline 50
    - Use `-L` flag with curl to follow redirects

playground/arxiv-viewer/commands/figures.md

  • Network accessline 28
    1. `search_actions("ar5iv figure")` → get action ID 2. `get_action_by_id(action_id)` → get figure selectors 3. `agent-browser open https://ar5iv.org/html/{arxiv_id}`
  • Network accessline 29
    2. `get_action_by_id(action_id)` → get figure selectors 3. `agent-browser open https://ar5iv.org/html/{arxiv_id}` 4. `agent-browser get text "figure.ltx_figure"`
  • Network accessline 30
    3. `agent-browser open https://ar5iv.org/html/{arxiv_id}`

playground/arxiv-viewer/commands/latest.md

  • Network accessline 28
    1. `search_actions("arxiv list recent")` → get action ID 2. `get_action_by_id(action_id)` → get page selectors 3. `agent-browser open https://arxiv.org/list/{category}/recent`
  • Network accessline 29
    2. `get_action_by_id(action_id)` → get page selectors 3. `agent-browser open https://arxiv.org/list/{category}/recent` 4. `agent-browser get text <paper_list_selector>`
  • Network accessline 30
    3. `agent-browser open https://arxiv.org/list/{category}/recent`

playground/arxiv-viewer/commands/outline.md

  • Network accessline 26
    1. `search_actions("ar5iv outline")` → get action ID 2. `get_action_by_id(action_id)` → get heading selectors 3. `agent-browser open https://ar5iv.org/html/{arxiv_id}`
  • Network accessline 27
    2. `get_action_by_id(action_id)` → get heading selectors 3. `agent-browser open https://ar5iv.org/html/{arxiv_id}` 4. `agent-browser get text "h2.ltx_title, h3.ltx_title"`
  • Network accessline 28
    3. `agent-browser open https://ar5iv.org/html/{arxiv_id}`

playground/arxiv-viewer/commands/paper.md

  • Network accessline 13
    - `arxiv_id_or_url` (required): arXiv paper ID or URL   - ID formats: `2301.07041`, `2301.07041v2`, `cs.AI/0612345`   - URL formats: `https://arxiv.org/abs/2301.07041`, `https://arxiv.org/pdf/2301.07041.pdf`
  • Network accessline 15
    - URL formats: `https://arxiv.org/abs/2301.07041`, `https://arxiv.org/pdf/2301.07041.pdf`
  • Network accessline 20
    /arxiv-viewer:paper 2301.07041 /arxiv-viewer:paper 2301.07041v2 /arxiv-viewer:paper https://arxiv.org/abs/2301.07041
  • Network accessline 21
    /arxiv-viewer:paper 2301.07041v2 /arxiv-viewer:paper https://arxiv.org/abs/2301.07041 /arxiv-viewer:paper https://arxiv.org/pdf/2301.07041.pdf
  • Network accessline 22
    /arxiv-viewer:paper https://arxiv.org/abs/2301.07041
  • Network accessline 23
    /arxiv-viewer:paper https://arxiv.org/pdf/2301.07041.pdf

playground/arxiv-viewer/commands/read.md

  • Network accessline 38
    1. `search_actions("ar5iv section")` → get action ID 2. `get_action_by_id(action_id)` → get section selectors 3. `agent-browser open https://ar5iv.org/html/{arxiv_id}`
  • Network accessline 39
    2. `get_action_by_id(action_id)` → get section selectors 3. `agent-browser open https://ar5iv.org/html/{arxiv_id}` 4. `agent-browser get text <section_selector>`
  • Network accessline 40
    3. `agent-browser open https://ar5iv.org/html/{arxiv_id}`

playground/arxiv-viewer/commands/trending.md

  • Network accessline 26
    1. `search_actions("arxiv homepage")` → get action ID 2. `get_action_by_id(action_id)` → get page selectors 3. `agent-browser open https://arxiv.org/`
  • Network accessline 27
    2. `get_action_by_id(action_id)` → get page selectors 3. `agent-browser open https://arxiv.org/` 4. `agent-browser get text <featured_selector>`
  • Network accessline 28
    3. `agent-browser open https://arxiv.org/`

playground/arxiv-viewer/skills/arxiv-viewer/SKILL.md

  • Network accessline 58
    Base URL: http://export.arxiv.org/api/query
  • Network accessline 58
    Base URL: http://export.arxiv.org/api/query
  • Network accessline 96
    HTML Paper URL: https://ar5iv.org/html/{arxiv_id}
  • Network accessline 96
    HTML Paper URL: https://ar5iv.org/html/{arxiv_id}
  • Network accessline 126
    | Purpose | URL | |---------|-----| | arXiv Abstract | `https://arxiv.org/abs/{id}` |
  • Network accessline 126
    | Purpose | URL | |---------|-----| | arXiv Abstract | `https://arxiv.org/abs/{id}` |
  • Network accessline 127
    |---------|-----| | arXiv Abstract | `https://arxiv.org/abs/{id}` | | arXiv PDF | `https://arxiv.org/pdf/{id}.pdf` |
  • Network accessline 127
    |---------|-----| | arXiv Abstract | `https://arxiv.org/abs/{id}` | | arXiv PDF | `https://arxiv.org/pdf/{id}.pdf` |
  • Network accessline 128
    | arXiv Abstract | `https://arxiv.org/abs/{id}` |
  • Network accessline 128
    | arXiv Abstract | `https://arxiv.org/abs/{id}` |
  • Network accessline 129
    | arXiv PDF | `https://arxiv.org/pdf/{id}.pdf` |
  • Network accessline 129
    | arXiv PDF | `https://arxiv.org/pdf/{id}.pdf` |
  • Network accessline 130
    | arXiv API | `http://export.arxiv.org/api/query?id_list={id}` |
  • Network accessline 130
    | arXiv API | `http://export.arxiv.org/api/query?id_list={id}` |
  • Network accessline 131
    | ar5iv HTML | `https://ar5iv.org/html/{id}` |
  • Network accessline 131
    | ar5iv HTML | `https://ar5iv.org/html/{id}` |
  • Network accessline 132
    | ar5iv Abstract | `https://ar5iv.org/abs/{id}` |
  • Network accessline 132
    | ar5iv Abstract | `https://ar5iv.org/abs/{id}` |
  • Network accessline 265
    - [arXiv Abstract](https://arxiv.org/abs/{id}) - [PDF Download](https://arxiv.org/pdf/{id}.pdf)
  • Network accessline 265
    - [arXiv Abstract](https://arxiv.org/abs/{id}) - [PDF Download](https://arxiv.org/pdf/{id}.pdf)
  • Network accessline 266
    - [PDF Download](https://arxiv.org/pdf/{id}.pdf)
  • Network accessline 266
    - [PDF Download](https://arxiv.org/pdf/{id}.pdf)
  • Network accessline 267
    - [HTML Version](https://ar5iv.org/html/{id})
  • Network accessline 267
    - [HTML Version](https://ar5iv.org/html/{id})

playground/deep-research/.claude-plugin/marketplace.json

  • Network accessline 3
    "owner": {     "name": "Actionbook",     "url": "https://github.com/actionbook"
  • Network accessline 4
    "name": "Actionbook",     "url": "https://github.com/actionbook"   },
  • Network accessline 5
    "url": "https://github.com/actionbook"

playground/deep-research/.claude-plugin/plugin.json

  • Network accessline 5
    "author": {     "name": "Actionbook",     "url": "https://github.com/actionbook/actionbook"
  • Network accessline 6
    "name": "Actionbook",     "url": "https://github.com/actionbook/actionbook"   },
  • Network accessline 7
    "url": "https://github.com/actionbook/actionbook"
  • Network accessline 9
    "repository": {     "type": "git",     "url": "https://github.com/actionbook/actionbook",
  • Network accessline 10
    "type": "git",     "url": "https://github.com/actionbook/actionbook",     "directory": "playground/deep-research"
  • Network accessline 11
    "url": "https://github.com/actionbook/actionbook",

playground/deep-research/agents/researcher.md

  • Network accessline 42
    # Search via Google actionbook browser open "https://www.google.com/search?q=<encoded_query>"
  • Network accessline 43
    actionbook browser open "https://www.google.com/search?q=<encoded_query>"
  • Network accessline 46
    # Or search via Bing actionbook browser open "https://www.bing.com/search?q=<encoded_query>"
  • Network accessline 47
    actionbook browser open "https://www.bing.com/search?q=<encoded_query>"
  • Network accessline 71
    # Open HTML version of paper actionbook browser open "https://ar5iv.org/html/<arxiv_id>"
  • Network accessline 72
    actionbook browser open "https://ar5iv.org/html/<arxiv_id>"

playground/deep-research/skills/deep-research/SKILL.md

  • Network accessline 160
    # Open arXiv Advanced Search actionbook browser open "https://arxiv.org/search/advanced"
  • Network accessline 160
    # Open arXiv Advanced Search actionbook browser open "https://arxiv.org/search/advanced"
  • Network accessline 161
    actionbook browser open "https://arxiv.org/search/advanced"
  • Network accessline 161
    actionbook browser open "https://arxiv.org/search/advanced"
  • Network accessline 187
    actionbook browser open "https://arxiv.org/search/advanced"
  • Network accessline 187
    actionbook browser open "https://arxiv.org/search/advanced"
  • Network accessline 209
    # Search via Google actionbook browser open "https://www.google.com/search?q=<encoded_query>"
  • Network accessline 209
    # Search via Google actionbook browser open "https://www.google.com/search?q=<encoded_query>"
  • Network accessline 210
    actionbook browser open "https://www.google.com/search?q=<encoded_query>"
  • Network accessline 210
    actionbook browser open "https://www.google.com/search?q=<encoded_query>"
  • Network accessline 213
    # Or search via Bing actionbook browser open "https://www.bing.com/search?q=<encoded_query>"
  • Network accessline 213
    # Or search via Bing actionbook browser open "https://www.bing.com/search?q=<encoded_query>"
  • Network accessline 214
    actionbook browser open "https://www.bing.com/search?q=<encoded_query>"
  • Network accessline 214
    actionbook browser open "https://www.bing.com/search?q=<encoded_query>"
  • Network accessline 233
    # 1. Try ar5iv first (best structured selectors from Actionbook) actionbook browser open "https://ar5iv.org/html/<arxiv_id>"
  • Network accessline 233
    # 1. Try ar5iv first (best structured selectors from Actionbook) actionbook browser open "https://ar5iv.org/html/<arxiv_id>"
  • Network accessline 234
    actionbook browser open "https://ar5iv.org/html/<arxiv_id>"
  • Network accessline 234
    actionbook browser open "https://ar5iv.org/html/<arxiv_id>"
  • Network accessline 240
    # 2. If ar5iv content is truncated (<5KB), fall back to arxiv abstract + other sources actionbook browser open "https://arxiv.org/abs/<arxiv_id>"
  • Network accessline 240
    # 2. If ar5iv content is truncated (<5KB), fall back to arxiv abstract + other sources actionbook browser open "https://arxiv.org/abs/<arxiv_id>"
  • Network accessline 241
    actionbook browser open "https://arxiv.org/abs/<arxiv_id>"
  • Network accessline 241
    actionbook browser open "https://arxiv.org/abs/<arxiv_id>"
  • Network accessline 244
    # 3. Supplement with HuggingFace model cards and GitHub READMEs for full details actionbook browser open "https://huggingface.co/papers/<arxiv_id>"
  • Network accessline 244
    # 3. Supplement with HuggingFace model cards and GitHub READMEs for full details actionbook browser open "https://huggingface.co/papers/<arxiv_id>"
  • Network accessline 245
    actionbook browser open "https://huggingface.co/papers/<arxiv_id>"
  • Network accessline 245
    actionbook browser open "https://huggingface.co/papers/<arxiv_id>"
  • Network accessline 254
    actionbook browser open "https://scholar.google.com"
  • Network accessline 254
    actionbook browser open "https://scholar.google.com"
  • Network accessline 502
    actionbook browser open "http://export.arxiv.org/api/query?id_list={arxiv_id}"
  • Network accessline 502
    actionbook browser open "http://export.arxiv.org/api/query?id_list={arxiv_id}"

playground/rust-learner/skills/agent-browser/SKILL.md

  • Network accessline 93
    agent-browser open https://example.com/form

skills/actionbook/SKILL.md

  • Network accessline 12
    [Credential-related source omitted]
  • Network accessline 12
    [Credential-related source omitted]
  • Access to secretsline 12
    [Credential-related source omitted]
  • Access to secretsline 12
    [Credential-related source omitted]
  • Network accessline 13
    prompt: "Actionbook API key"     help: "Create one at https://actionbook.app/dashboard — skill works without it, but requests are rate-limited"     required_for: "unlimited requests (without a key, public rate limits apply)"
  • Network accessline 13
    prompt: "Actionbook API key"     help: "Create one at https://actionbook.app/dashboard — skill works without it, but requests are rate-limited"     required_for: "unlimited requests (without a key, public rate limits apply)"
  • Network accessline 14
    help: "Create one at https://actionbook.app/dashboard — skill works without it, but requests are rate-limited"
  • Network accessline 14
    help: "Create one at https://actionbook.app/dashboard — skill works without it, but requests are rate-limited"
  • Access to secretsline 89
    [Credential-related source omitted]
  • Access to secretsline 89
    [Credential-related source omitted]
  • Network accessline 105
    [Credential-related source omitted]
  • Network accessline 105
    [Credential-related source omitted]
  • Access to secretsline 105
    [Credential-related source omitted]
  • Access to secretsline 105
    [Credential-related source omitted]
  • Network accessline 106
    actionbook browser start -p hyperbrowser --session s1 actionbook browser goto "https://example.com" --session s1 --tab t1 actionbook browser snapshot --session s1 --tab t1
  • Network accessline 106
    actionbook browser start -p hyperbrowser --session s1 actionbook browser goto "https://example.com" --session s1 --tab t1 actionbook browser snapshot --session s1 --tab t1
  • Network accessline 107
    actionbook browser goto "https://example.com" --session s1 --tab t1
  • Network accessline 107
    actionbook browser goto "https://example.com" --session s1 --tab t1
  • Network accessline 118
    actionbook browser start --set-session-id s1 actionbook browser goto "https://airbnb.com" --session s1 --tab t1
  • Network accessline 118
    actionbook browser start --set-session-id s1 actionbook browser goto "https://airbnb.com" --session s1 --tab t1
  • Network accessline 119
    actionbook browser goto "https://airbnb.com" --session s1 --tab t1
  • Network accessline 119
    actionbook browser goto "https://airbnb.com" --session s1 --tab t1
  • Dangerous shell operationline 129
    - **Positional**: `actionbook browser eval "expr" ...`
  • Dangerous shell operationline 129
    - **Positional**: `actionbook browser eval "expr" ...`

skills/actionbook/references/authentication.md

  • Network accessline 8
    # Open login page actionbook browser open "https://app.example.com/login"
  • Network accessline 8
    # Open login page actionbook browser open "https://app.example.com/login"
  • Network accessline 9
    actionbook browser open "https://app.example.com/login"
  • Network accessline 9
    actionbook browser open "https://app.example.com/login"
  • Dangerous shell operationline 24
    actionbook browser eval "window.location.href"
  • Dangerous shell operationline 24
    actionbook browser eval "window.location.href"
  • Access to secretsline 29
    [Credential-related source omitted]
  • Access to secretsline 29
    [Credential-related source omitted]
  • Network accessline 35
    # Login using that profile actionbook -P myapp browser open "https://app.example.com/login"
  • Network accessline 35
    # Login using that profile actionbook -P myapp browser open "https://app.example.com/login"
  • Network accessline 36
    actionbook -P myapp browser open "https://app.example.com/login"
  • Network accessline 36
    actionbook -P myapp browser open "https://app.example.com/login"
  • Network accessline 44
    # Later: reuse the profile — session cookies are preserved actionbook -P myapp browser open "https://app.example.com/dashboard"
  • Network accessline 44
    # Later: reuse the profile — session cookies are preserved actionbook -P myapp browser open "https://app.example.com/dashboard"
  • Network accessline 45
    actionbook -P myapp browser open "https://app.example.com/dashboard"
  • Network accessline 45
    actionbook -P myapp browser open "https://app.example.com/dashboard"
  • Network accessline 59
    # Start OAuth flow actionbook browser open "https://app.example.com/auth/google"
  • Network accessline 59
    # Start OAuth flow actionbook browser open "https://app.example.com/auth/google"
  • Network accessline 60
    actionbook browser open "https://app.example.com/auth/google"
  • Network accessline 60
    actionbook browser open "https://app.example.com/auth/google"
  • Dangerous shell operationline 76
    actionbook browser eval "window.location.href"  # Should be app.example.com
  • Dangerous shell operationline 76
    actionbook browser eval "window.location.href"  # Should be app.example.com
  • Network accessline 84
    # Login with credentials (browser is visible by default) actionbook browser open "https://app.example.com/login"
  • Network accessline 84
    # Login with credentials (browser is visible by default) actionbook browser open "https://app.example.com/login"
  • Network accessline 85
    actionbook browser open "https://app.example.com/login"
  • Network accessline 85
    actionbook browser open "https://app.example.com/login"
  • Network accessline 103
    # Open the target domain first (cookies need a page context) actionbook browser open "https://app.example.com"
  • Network accessline 103
    # Open the target domain first (cookies need a page context) actionbook browser open "https://app.example.com"
  • Network accessline 104
    actionbook browser open "https://app.example.com"
  • Network accessline 104
    actionbook browser open "https://app.example.com"
  • Access to secretsline 108
    [Credential-related source omitted]
  • Access to secretsline 108
    [Credential-related source omitted]
  • Network accessline 110
    # Navigate to protected page actionbook browser goto "https://app.example.com/dashboard"
  • Network accessline 110
    # Navigate to protected page actionbook browser goto "https://app.example.com/dashboard"
  • Network accessline 111
    actionbook browser goto "https://app.example.com/dashboard"
  • Network accessline 111
    actionbook browser goto "https://app.example.com/dashboard"
  • Network accessline 125
    # Try navigating directly with existing profile session actionbook -P "$PROFILE" browser open "https://app.example.com/dashboard"
  • Network accessline 125
    # Try navigating directly with existing profile session actionbook -P "$PROFILE" browser open "https://app.example.com/dashboard"
  • Network accessline 126
    actionbook -P "$PROFILE" browser open "https://app.example.com/dashboard"
  • Network accessline 126
    actionbook -P "$PROFILE" browser open "https://app.example.com/dashboard"
  • Dangerous shell operationline 130
    URL=$(actionbook -P "$PROFILE" browser eval "window.location.href")
  • Dangerous shell operationline 130
    URL=$(actionbook -P "$PROFILE" browser eval "window.location.href")
  • Access to secretsline 147
    [Credential-related source omitted]
  • Access to secretsline 147
    [Credential-related source omitted]
  • Access to secretsline 148
    [Credential-related source omitted]
  • Access to secretsline 148
    [Credential-related source omitted]
  • Access to secretsline 161
    [Credential-related source omitted]
  • Access to secretsline 161
    [Credential-related source omitted]
  • Network accessline 172
    actionbook --headless browser open "https://app.example.com/login"
  • Network accessline 172
    actionbook --headless browser open "https://app.example.com/login"

skills/actionbook/references/command-reference.md

  • Network accessline 43
    actionbook browser start -p hyperbrowser                   # Cloud provider (implies --mode cloud) actionbook browser start -p driver --header "X-Key:val"    # Provider with custom CDP headers actionbook browser start --open-url https://exa
  • Network accessline 43
    actionbook browser start -p hyperbrowser                   # Cloud provider (implies --mode cloud) actionbook browser start -p driver --header "X-Key:val"    # Provider with custom CDP headers actionbook browser start --open-url https://exa
  • Network accessline 44
    actionbook browser start -p driver --header "X-Key:val"    # Provider with custom CDP headers actionbook browser start --open-url https://example.com    # Open URL on start actionbook browser start --profile myprofile               # Use na
  • Network accessline 44
    actionbook browser start -p driver --header "X-Key:val"    # Provider with custom CDP headers actionbook browser start --open-url https://example.com    # Open URL on start actionbook browser start --profile myprofile               # Use na
  • Network accessline 45
    actionbook browser start --open-url https://example.com    # Open URL on start
  • Network accessline 45
    actionbook browser start --open-url https://example.com    # Open URL on start
  • Access to secretsline 66
    [Credential-related source omitted]
  • Access to secretsline 66
    [Credential-related source omitted]
  • Network accessline 71
    actionbook browser list-tabs --session s1                  # List tabs in a session actionbook browser new-tab https://example.com --session s1  # Open a new tab
  • Network accessline 71
    actionbook browser list-tabs --session s1                  # List tabs in a session actionbook browser new-tab https://example.com --session s1  # Open a new tab
  • Network accessline 72
    actionbook browser new-tab https://example.com --session s1  # Open a new tab
  • Network accessline 72
    actionbook browser new-tab https://example.com --session s1  # Open a new tab
  • Network accessline 73
    actionbook browser new-tab https://example.com --session s1 --new-window  # In new window
  • Network accessline 73
    actionbook browser new-tab https://example.com --session s1 --new-window  # In new window
  • Network accessline 90
    `--wait-until` controls when `goto` returns: `domcontentloaded` (default), `load` (all resources), or `none` (immediate). A scheme (`https://`) is added automatically if omitted.
  • Network accessline 90
    `--wait-until` controls when `goto` returns: `domcontentloaded` (default), `load` (all resources), or `none` (immediate). A scheme (`https://`) is added automatically if omitted.
  • Dangerous shell operationline 142
    actionbook browser eval "document.title" --session s1 --tab t1
  • Dangerous shell operationline 142
    actionbook browser eval "document.title" --session s1 --tab t1
  • Network accessline 142
    actionbook browser eval "document.title" --session s1 --tab t1 actionbook browser eval "document.querySelectorAll('a').length" --session s1 --tab t1 actionbook browser eval "await fetch('/api/data').then(r => r.json())" --no-isolate --sessi
  • Network accessline 142
    actionbook browser eval "document.title" --session s1 --tab t1 actionbook browser eval "document.querySelectorAll('a').length" --session s1 --tab t1 actionbook browser eval "await fetch('/api/data').then(r => r.json())" --no-isolate --sessi
  • Dangerous shell operationline 143
    actionbook browser eval "document.querySelectorAll('a').length" --session s1 --tab t1
  • Dangerous shell operationline 143
    actionbook browser eval "document.querySelectorAll('a').length" --session s1 --tab t1
  • Network accessline 143
    actionbook browser eval "document.querySelectorAll('a').length" --session s1 --tab t1 actionbook browser eval "await fetch('/api/data').then(r => r.json())" --no-isolate --session s1 --tab t1 actionbook browser eval --file script.js --sessi
  • Network accessline 143
    actionbook browser eval "document.querySelectorAll('a').length" --session s1 --tab t1 actionbook browser eval "await fetch('/api/data').then(r => r.json())" --no-isolate --session s1 --tab t1 actionbook browser eval --file script.js --sessi
  • Dangerous shell operationline 144
    actionbook browser eval "await fetch('/api/data').then(r => r.json())" --no-isolate --session s1 --tab t1
  • Dangerous shell operationline 144
    actionbook browser eval "await fetch('/api/data').then(r => r.json())" --no-isolate --session s1 --tab t1
  • Network accessline 144
    actionbook browser eval "await fetch('/api/data').then(r => r.json())" --no-isolate --session s1 --tab t1
  • Network accessline 144
    actionbook browser eval "await fetch('/api/data').then(r => r.json())" --no-isolate --session s1 --tab t1
  • Dangerous shell operationline 150
    - **Positional argument** (default): `actionbook browser eval "expr" ...`
  • Dangerous shell operationline 150
    - **Positional argument** (default): `actionbook browser eval "expr" ...`
  • Network accessline 232
    - generic   - link "Home" [ref=e8] url=https://example.com/
  • Network accessline 232
    - generic   - link "Home" [ref=e8] url=https://example.com/
  • Network accessline 233
    - link "Home" [ref=e8] url=https://example.com/
  • Network accessline 233
    - link "Home" [ref=e8] url=https://example.com/
  • Network accessline 236
    - image "clear" [ref=e10] clickable [cursor:pointer]   - generic     - link "Help" [ref=e11] url=https://example.com/help
  • Network accessline 236
    - image "clear" [ref=e10] clickable [cursor:pointer]   - generic     - link "Help" [ref=e11] url=https://example.com/help
  • Network accessline 237
    - generic     - link "Help" [ref=e11] url=https://example.com/help       - image "Help"
  • Network accessline 237
    - generic     - link "Help" [ref=e11] url=https://example.com/help       - image "Help"
  • Network accessline 238
    - link "Help" [ref=e11] url=https://example.com/help
  • Network accessline 238
    - link "Help" [ref=e11] url=https://example.com/help
  • Access to secretsline 348
    [Credential-related source omitted]
  • Access to secretsline 348
    [Credential-related source omitted]
  • Access to secretsline 349
    [Credential-related source omitted]
  • Access to secretsline 349
    [Credential-related source omitted]
  • Access to secretsline 350
    [Credential-related source omitted]
  • Access to secretsline 350
    [Credential-related source omitted]
  • Access to secretsline 351
    [Credential-related source omitted]
  • Access to secretsline 351
    [Credential-related source omitted]
  • Access to secretsline 352
    [Credential-related source omitted]
  • Access to secretsline 352
    [Credential-related source omitted]
  • Access to secretsline 353
    [Credential-related source omitted]
  • Access to secretsline 353
    [Credential-related source omitted]
  • Access to secretsline 354
    [Credential-related source omitted]
  • Access to secretsline 354
    [Credential-related source omitted]
  • Access to secretsline 355
    [Credential-related source omitted]
  • Access to secretsline 355
    [Credential-related source omitted]
  • Access to secretsline 364
    [Credential-related source omitted]
  • Access to secretsline 364
    [Credential-related source omitted]
  • Access to secretsline 366
    [Credential-related source omitted]
  • Access to secretsline 366
    [Credential-related source omitted]
  • Network accessline 380
    # Open multiple tabs actionbook browser batch-new-tab --urls https://a.com https://b.com --session s1
  • Network accessline 380
    # Open multiple tabs actionbook browser batch-new-tab --urls https://a.com https://b.com --session s1
  • Network accessline 381
    actionbook browser batch-new-tab --urls https://a.com https://b.com --session s1
  • Network accessline 381
    actionbook browser batch-new-tab --urls https://a.com https://b.com --session s1
  • Network accessline 382
    actionbook browser batch-new-tab --urls https://a.com https://b.com --tabs inbox settings --session s1
  • Network accessline 382
    actionbook browser batch-new-tab --urls https://a.com https://b.com --tabs inbox settings --session s1
  • Network accessline 397
    The recommended install method is the [Chrome Web Store](https://chromewebstore.google.com/detail/actionbook/bebchpafpemheedhcdabookaifcijmfo) (current version: 0.4.0). `actionbook extension install` is a local fallback — after running it, 
  • Network accessline 397
    The recommended install method is the [Chrome Web Store](https://chromewebstore.google.com/detail/actionbook/bebchpafpemheedhcdabookaifcijmfo) (current version: 0.4.0). `actionbook extension install` is a local fallback — after running it, 
  • Network accessline 437
    actionbook browser start --set-session-id s1 actionbook browser goto "https://example.com/form" --session s1 --tab t1
  • Network accessline 437
    actionbook browser start --set-session-id s1 actionbook browser goto "https://example.com/form" --session s1 --tab t1
  • Network accessline 438
    actionbook browser goto "https://example.com/form" --session s1 --tab t1
  • Network accessline 438
    actionbook browser goto "https://example.com/form" --session s1 --tab t1
  • Network accessline 451
    actionbook browser start --set-session-id s1 actionbook browser goto "https://example.com" --session s1 --tab t1
  • Network accessline 451
    actionbook browser start --set-session-id s1 actionbook browser goto "https://example.com" --session s1 --tab t1
  • Network accessline 452
    actionbook browser goto "https://example.com" --session s1 --tab t1
  • Network accessline 452
    actionbook browser goto "https://example.com" --session s1 --tab t1
  • Network accessline 466
    actionbook browser start --set-session-id s1 actionbook browser goto "https://example.com/data" --session s1 --tab t1
  • Network accessline 466
    actionbook browser start --set-session-id s1 actionbook browser goto "https://example.com/data" --session s1 --tab t1
  • Network accessline 467
    actionbook browser goto "https://example.com/data" --session s1 --tab t1
  • Network accessline 467
    actionbook browser goto "https://example.com/data" --session s1 --tab t1
  • Dangerous shell operationline 470
    actionbook browser eval "JSON.stringify([...document.querySelectorAll('.item')].map(e => e.textContent))" --session s1 --tab t1
  • Dangerous shell operationline 470
    actionbook browser eval "JSON.stringify([...document.querySelectorAll('.item')].map(e => e.textContent))" --session s1 --tab t1

skills/active-research/SKILL.md

  • Network accessline 102
    # PREFERRED: One-shot fetch (I1) — handles open+wait+extract+close automatically
  • Network accessline 102
    # PREFERRED: One-shot fetch (I1) — handles open+wait+extract+close automatically
  • Network accessline 126
    **Option A: One-shot fetch (PREFERRED for read-only page extraction):**
  • Network accessline 126
    **Option A: One-shot fetch (PREFERRED for read-only page extraction):**
  • Network accessline 218
    # Simple keyword search actionbook --block-images --auto-dismiss-dialogs --no-animations browser open "https://arxiv.org/search/?query=large+language+model+agent&searchtype=all"
  • Network accessline 218
    # Simple keyword search actionbook --block-images --auto-dismiss-dialogs --no-animations browser open "https://arxiv.org/search/?query=large+language+model+agent&searchtype=all"
  • Network accessline 219
    actionbook --block-images --auto-dismiss-dialogs --no-animations browser open "https://arxiv.org/search/?query=large+language+model+agent&searchtype=all"
  • Network accessline 219
    actionbook --block-images --auto-dismiss-dialogs --no-animations browser open "https://arxiv.org/search/?query=large+language+model+agent&searchtype=all"
  • Network accessline 224
    # searchtype: all, title, author, abstract # start: result offset (0, 50, 100, ...) actionbook browser open "https://arxiv.org/search/?query=Rust+machine+learning&searchtype=all&start=0"
  • Network accessline 224
    # searchtype: all, title, author, abstract # start: result offset (0, 50, 100, ...) actionbook browser open "https://arxiv.org/search/?query=Rust+machine+learning&searchtype=all&start=0"
  • Network accessline 225
    # start: result offset (0, 50, 100, ...) actionbook browser open "https://arxiv.org/search/?query=Rust+machine+learning&searchtype=all&start=0" actionbook browser wait-idle
  • Network accessline 225
    # start: result offset (0, 50, 100, ...) actionbook browser open "https://arxiv.org/search/?query=Rust+machine+learning&searchtype=all&start=0" actionbook browser wait-idle
  • Network accessline 226
    actionbook browser open "https://arxiv.org/search/?query=Rust+machine+learning&searchtype=all&start=0"
  • Network accessline 226
    actionbook browser open "https://arxiv.org/search/?query=Rust+machine+learning&searchtype=all&start=0"
  • Network accessline 240
    # Open arXiv with research flags actionbook --block-images --auto-dismiss-dialogs --no-animations browser open "https://arxiv.org/search/advanced"
  • Network accessline 240
    # Open arXiv with research flags actionbook --block-images --auto-dismiss-dialogs --no-animations browser open "https://arxiv.org/search/advanced"
  • Network accessline 241
    actionbook --block-images --auto-dismiss-dialogs --no-animations browser open "https://arxiv.org/search/advanced"
  • Network accessline 241
    actionbook --block-images --auto-dismiss-dialogs --no-animations browser open "https://arxiv.org/search/advanced"
  • Network accessline 285
    # Search via Google (with wait-idle for SPA results) actionbook browser open "https://www.google.com/search?q=<encoded_query>"
  • Network accessline 285
    # Search via Google (with wait-idle for SPA results) actionbook browser open "https://www.google.com/search?q=<encoded_query>"
  • Network accessline 286
    actionbook browser open "https://www.google.com/search?q=<encoded_query>"
  • Network accessline 286
    actionbook browser open "https://www.google.com/search?q=<encoded_query>"
  • Network accessline 290
    # Or search via Bing actionbook browser open "https://www.bing.com/search?q=<encoded_query>"
  • Network accessline 290
    # Or search via Bing actionbook browser open "https://www.bing.com/search?q=<encoded_query>"
  • Network accessline 291
    actionbook browser open "https://www.bing.com/search?q=<encoded_query>"
  • Network accessline 291
    actionbook browser open "https://www.bing.com/search?q=<encoded_query>"
  • Network accessline 369
    # 1. arXiv abstract (most reliable) — use fetch actionbook --block-images browser fetch "https://arxiv.org/abs/<arxiv_id>" --format text --json
  • Network accessline 369
    # 1. arXiv abstract (most reliable) — use fetch actionbook --block-images browser fetch "https://arxiv.org/abs/<arxiv_id>" --format text --json
  • Network accessline 370
    actionbook --block-images browser fetch "https://arxiv.org/abs/<arxiv_id>" --format text --json
  • Network accessline 370
    actionbook --block-images browser fetch "https://arxiv.org/abs/<arxiv_id>" --format text --json
  • Network accessline 372
    # 2. HuggingFace papers page actionbook --block-images browser fetch "https://huggingface.co/papers/<arxiv_id>" --format text --json
  • Network accessline 372
    # 2. HuggingFace papers page actionbook --block-images browser fetch "https://huggingface.co/papers/<arxiv_id>" --format text --json
  • Network accessline 373
    actionbook --block-images browser fetch "https://huggingface.co/papers/<arxiv_id>" --format text --json
  • Network accessline 373
    actionbook --block-images browser fetch "https://huggingface.co/papers/<arxiv_id>" --format text --json
  • Network accessline 375
    # 3. ar5iv HTML (structured, but fails on new papers) — use --lite for static HTML actionbook browser fetch "https://ar5iv.org/html/<arxiv_id>" --format text --lite --json
  • Network accessline 375
    # 3. ar5iv HTML (structured, but fails on new papers) — use --lite for static HTML actionbook browser fetch "https://ar5iv.org/html/<arxiv_id>" --format text --lite --json
  • Network accessline 376
    actionbook browser fetch "https://ar5iv.org/html/<arxiv_id>" --format text --lite --json
  • Network accessline 376
    actionbook browser fetch "https://ar5iv.org/html/<arxiv_id>" --format text --lite --json
  • Network accessline 403
    actionbook browser open "https://scholar.google.com"
  • Network accessline 403
    actionbook browser open "https://scholar.google.com"
  • Network accessline 763
    actionbook browser open "https://ar5iv.org/html/<arxiv_id>"
  • Network accessline 763
    actionbook browser open "https://ar5iv.org/html/<arxiv_id>"

skills/extract/SKILL.md

  • Dangerous shell operationline 249
    actionbook browser eval "document.querySelectorAll('<item-selector>').length"   # before
  • Dangerous shell operationline 249
    actionbook browser eval "document.querySelectorAll('<item-selector>').length"   # before
  • Dangerous shell operationline 251
    actionbook browser eval "const c=document.querySelector('<scroll-container-selector>') || document.scrollingElement; c.scrollBy(0, c.clientHeight || window.innerHeight);"
  • Dangerous shell operationline 251
    actionbook browser eval "const c=document.querySelector('<scroll-container-selector>') || document.scrollingElement; c.scrollBy(0, c.clientHeight || window.innerHeight);"
  • Dangerous shell operationline 252
    actionbook browser eval "document.querySelectorAll('<item-selector>').length"   # after
  • Dangerous shell operationline 252
    actionbook browser eval "document.querySelectorAll('<item-selector>').length"   # after

How the signals fit together

Facts from a static read of the files at the pinned commit. They describe what the code does, not why.

Some files could not be read; the facts below still hold.

Signal confidence: 1 fact

Works with

Agent compatibility, from the files in this repository
AgentStatusEvidenceInstall to
Claude CodeNativeManifest .claude-plugin/marketplace.json.claude/skills/<skill-name>/
CodexCompatibleStandard SKILL.md packages/openclaw-plugin/skills/actionbook/SKILL.md.agents/skills/<skill-name>/
CursorCompatibleStandard SKILL.md packages/openclaw-plugin/skills/actionbook/SKILL.md.cursor/skills/<skill-name>/
Gemini CLICompatibleStandard SKILL.md packages/openclaw-plugin/skills/actionbook/SKILL.md.gemini/skills/<skill-name>/
GitHub CopilotCompatibleStandard SKILL.md packages/openclaw-plugin/skills/actionbook/SKILL.md.github/skills/<skill-name>/
OpenCodeCompatibleStandard SKILL.md packages/openclaw-plugin/skills/actionbook/SKILL.md.opencode/skills/<skill-name>/
  • Native The repository ships a manifest, folder or frontmatter field for this agent.
  • Compatible A standard SKILL.md that this agent can read.
  • Unknown No evidence either way.

Derived automatically from paths, manifests and frontmatter. Not tested on each agent.

Explore alternatives and comparisons

Add this badge to your README

It updates every night and links to this page.

actionbook/actionbook: #619 on hotskills, 1.6k stars

[![actionbook/actionbook on hotskills](https://hotskills.dev/badge/actionbook-actionbook.svg)](https://hotskills.dev/skill/actionbook-actionbook/)