Token导航 LogoToken导航TokenDH.com
研究检索操作浏览器github未标认证来源可访问许可证需确认审计异常

agentation-self-drivingAgent 自动驾驶

Agent Skill

agentation-self-driving 用于处理浏览器自动化、网页检查和页面信息提取,适合在 Codex、Claude、Cursor、Gemini CLI 中需要让 Agent 打开页面、读取网页或验证前端流程时使用。可结合来源仓库、安装命令和原始 README 继续核验具体用法。安装前建议确认权限范围、维护状态,以及是否会触发联网、命令执行或文件读写。

总安装

84,078

周安装

3,532

GitHub Stars

3,474

下载量

27,765
CodexClaudeCursorGemini CLI

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

GitHub

来源数

2

许可证

unknown

最后核验

2026-05-01

来源状态

来源可访问

安装方式

通过对话安装

复制提示词发给支持本地命令或 Skills 的 AI 助手,先确认命令和权限,再让它执行。

请帮我安装这个 Agent Skill:agentation-self-driving(Agent 自动驾驶)
来源仓库:https://github.com/benjitaylor/agentation
仓库路径:skills/agentation-self-driving
安装命令:
npx skills add https://github.com/benjitaylor/agentation --skill agentation-self-driving
安装前请先检查当前环境是否支持对应 CLI,并向我确认将要执行的命令、安装目录、联网范围和文件读写权限;确认后再执行。

命令行安装

复制命令到本机终端执行。该命令会通过 npx skills 从第三方来源获取 Skill;本站只展示命令,不托管安装包,也不自动执行。

skills.shnpx skills
npx skills add https://github.com/benjitaylor/agentation --skill agentation-self-driving

简介

自主设计评论模式,通过可见浏览器中的代理工具栏向网页添加注释。

  • 需要在目标页面上安装代理工具栏并且具有可用的代理浏览器技能;以头部模式启动,以便用户实时观看代理扫描、悬停和注释
  • 使用基于坐标的鼠标事件来触发注释对话框(标准元素单击不起作用);包括用于滚动、边界框查找和通过 eval 进行对话框交互的辅助模式
  • 每页生成 5-8 个注释,包含具体的、可操作的评论(最多 2-3 句话),涵盖英雄部分、导航、版式层次结构、间距节奏、CTA 和视觉强调
  • 支持两个会话工作流程,其中注释通过 MCP 自动发送到并行实施修复的监听代理

SKILL.md

Agentation Self-Driving Mode

Autonomously critique a web page by adding design annotations via the Agentation toolbar — in a visible headed browser so the user can watch the agent work in real time, like watching a self-driving car navigate.

Launch — Always Headed

The browser MUST be visible. Never run headless. The user watches you scan, hover, click, and annotate.

Preflight: Verify agent-browser is available before anything else:

command -v agent-browser >/dev/null || { echo "ERROR: agent-browser not found. Install the agent-browser skill first."; exit 1; }

Launch: Try opening directly first. Only close an existing session if the open command fails with a stale session error — this avoids killing a browser someone else is using:

# Try to open. If it fails (stale session), close first then retry.
agent-browser --headed open <url> 2>&1 || { agent-browser close 2>/dev/null; agent-browser --headed open <url>; }

Then verify the Agentation toolbar is present and expand it:

# 1. Check toolbar exists on the page (data-feedback-toolbar is the root marker)
agent-browser eval "document.querySelector('[data-feedback-toolbar]') ? 'toolbar found' : 'NOT FOUND'"
# If "NOT FOUND": Agentation is not installed on this page — stop and tell the user

# 2. Expand ONLY if collapsed (clicking when already expanded collapses it)
agent-browser eval "document.querySelector('[data-feedback-toolbar][class*=expanded]') ? 'already expanded' : (document.querySelector('[class*=toggleContent]')?.click(), 'expanding')"

# 3. Verify: take a snapshot and look for toolbar controls
agent-browser snapshot -i
# If expanded: you'll see "Block page interactions" checkbox, color buttons (Purple, Blue, etc.)
# If collapsed: you'll only see the small toggle button — retry step 2

"Block page interactions" must be checked (default: on).

eval quoting rule: Always use [class*=toggleContent] (no quotes around the attribute value) in eval strings. Do not use double-bang in eval because bash treats it as history expansion. Do not use backslash-escaped inner quotes either, as they break unpredictably across shells.

Critical: How to Create Annotations

Standard element clicks (click @ref) do NOT trigger annotation dialogs. The Agentation overlay intercepts pointer events at the coordinate level. Use coordinate-based mouse events — this also makes the interaction visible in the browser as the cursor moves across the page.

@ref compatibility: Only click, fill, type, hover, focus, check, select, drag support @ref syntax. The commands scrollintoview, get box, and eval do NOT — they expect CSS selectors. Use eval with querySelector for scrolling and position lookup.
# 1. Take interactive snapshot — identify target element and build a CSS selector
agent-browser snapshot -i
# Example: snapshot shows  heading "Point at bugs." [ref=e10]
# Derive a CSS selector: 'h1', or more specific: 'h1:first-of-type'

# 2. Scroll the element into view via eval (NOT scrollintoview @ref — that breaks)
agent-browser eval "document.querySelector('h1').scrollIntoView({block:'center'})"

# 3. Get its bounding box via eval (NOT get box @ref — that also breaks)
agent-browser eval "((r) => r.x+','+r.y+','+r.width+','+r.height)(document.querySelector('h1').getBoundingClientRect())"
# Returns: "383,245,200,40"  (parse these as x,y,width,height)

# 4. Move cursor to element center, then click
#    centerX = x + width/2,  centerY = y + height/2
agent-browser mouse move <centerX> <centerY>
agent-browser mouse down left
agent-browser mouse up left

# 5. Get the annotation dialog refs — read the FULL snapshot output
#    Dialog refs appear at the BOTTOM of the list, don't truncate with head/tail
agent-browser snapshot -i
# Look for: textbox "What should change?" and "Cancel" / "Add" buttons

# 6. Type critique — fill and click DO support @ref
agent-browser fill @<textboxRef> "Your critique here"

# 7. Submit (Add button enables after text is filled)
agent-browser click @<addRef>

If no dialog appears after clicking, the toolbar may have collapsed. Re-expand (only if collapsed) and retry:

agent-browser eval "document.querySelector('[data-feedback-toolbar][class*=expanded]') ? 'ok' : (document.querySelector('[class*=toggleContent]')?.click(), 'expanded')"

Building CSS selectors from snapshots

The snapshot shows element roles, names, and refs. Map them to CSS selectors:

Snapshot lineCSS selector
heading "Point at bugs." [ref=e10]h1 or h1:first-of-type
button "npm install agentation Copy" [ref=e15]button:has(code) or by text content via eval
link "Star on GitHub" [ref=e28]a[href*=github]
paragraph (long text...) [ref=e20]Target by section: section:nth-of-type(2) p

When in doubt, use a broader selector and verify with eval:

agent-browser eval "document.querySelector('h2').textContent"

The Loop

Work top-to-bottom through the page. For each annotation:

  1. Scroll to the target area via eval (scrollIntoView)
  2. Pick a specific element — heading, paragraph, button, section container
  3. Get its bounding box via eval (getBoundingClientRect)
  4. Execute the coordinate-click sequence (mouse movemouse downmouse up)
  5. Read the full snapshot output to find dialog refs at the bottom
  6. Write the critique (fill @ref) and submit (click @ref)
  7. Verify the annotation was added (see below)
  8. Move to the next area

Verifying annotations

After submitting each annotation, confirm the count increased:

agent-browser eval "document.querySelectorAll('[data-annotation-marker]').length"
# Should return the expected count (1 after first, 2 after second, etc.)

If the count didn't increase, the submission failed silently — re-snapshot and check if the dialog is still open.

Aim for 5-8 annotations per page unless told otherwise.

What to Critique

AreaWhat to look for
Hero / above the foldHeadline hierarchy, CTA placement, visual grouping
NavigationLabel styling, category grouping, visual weight
Demo / illustrationsClarity, depth, animation readability
Content sectionsSpacing rhythm, callout treatments, typography hierarchy
Key taglinesWhether resonant lines get enough visual emphasis
CTAs and footerConversion weight, visual separation, final actions

Critique Style

2-3 sentences max per annotation:

  • Specific and actionable: "Stack the install command below the subheading at 16px" not "fix the layout"
  • 1-2 concrete alternatives: Reference CSS values, layout patterns, or design systems
  • Name the principle: Visual hierarchy, Gestalt grouping, whitespace, emphasis, conversion design
  • Reference comparable products: "Like how Stripe/Linear/Vercel handles this"

Bad: "This section needs work" Good: "This bullet list reads like docs, not a showcase. Use a 3-column card grid with icons — similar to Stripe's guidelines pattern. Creates visual rhythm and scannability."

Install

The skill must be symlinked into ~/.claude/skills/ for Claude Code to discover it:

ln -s "$(pwd)/skills/agentation-self-driving" ~/.claude/skills/agentation-self-driving

Restart Claude Code after installing. Verify with /agentation-self-driving — if it loads the skill instructions, the symlink is working.

Troubleshooting

  • "Browser not launched. Call launch first.": Stale session from a previous run — run agent-browser close 2>/dev/null then retry the --headed open command
  • Toolbar not found on page: Agentation isn't installed — run /agentation to set it up first
  • No dialog after clicking: Toolbar collapsed — re-expand with the state-aware eval (check [class*=expanded] first), retry
  • Wrong element targeted: Click Cancel, scroll to intended element, retry with correct coordinates
  • Add button stays disabled: Text wasn't filled — re-snapshot and fill the textbox
  • Page navigated: "Block page interactions" is off — enable via toolbar settings
  • Annotation count didn't increase: Submission failed — dialog may still be open, re-snapshot and check
  • Interrupted mid-run (Ctrl+C): The browser stays open with whatever state it was in. Run agent-browser close to clean up before starting a new session

agent-browser Pitfalls

These will silently break the workflow if you're not aware of them:

PitfallWhat happensFix
scrollintoview @refCrashes: "Unsupported token @ref while parsing css selector"Use eval "document.querySelector('sel').scrollIntoView({block:'center'})"
get box @refSame crash — get box parses refs as CSS selectorsUse eval "((r)=>r.x+','+r.y+','+r.width+','+r.height)(document.querySelector('sel').getBoundingClientRect())"
eval with double-bangBash expands double-bang as history substitution before the command runsUse expr!== null or expr? true: false instead
eval with backslash-escaped quotesEscaped inner quotes break across shellsDrop the quotes: [class*=toggleContent] works for simple values without spaces
`snapshot -i \head -50`Annotation dialog refs (textbox "What should change?", Add, Cancel) appear at the BOTTOM of the snapshotAlways read the full snapshot output — never truncate
click @ref on overlay elementsThe click goes through to the real DOM, bypassing the Agentation overlayUse mouse movemouse down leftmouse up left for coordinate-based clicks that the overlay intercepts
--headed open fails with "Browser not launched"Stale sessions from previous runs block new launchesRun agent-browser close 2>/dev/null then retry the open command

Rule of thumb: @ref works for interaction commands (click, fill, type, hover). For everything else (eval, get, scrollintoview), use CSS selectors via querySelector in an eval.

Two-Session Workflow (Full Self-Driving)

With MCP connected (toolbar shows "MCP Connected"), annotations auto-send to any listening agent. This enables:

  • Session 1 (this skill): Watches the page, adds critique annotations in the visible browser
  • Session 2: Runs agentation_watch_annotations in a loop, receives annotations, edits code to address each one

The user watches Session 1 drive through the page in the browser while Session 2 fixes issues in the codebase — fully autonomous design review and implementation.

适合场景

01

用户想查找某类 Agent Skill 时

02

需要根据任务场景推荐可安装能力包时

03

需要对比不同来源的安装命令和来源信息时

能力概览

能力 1

按任务关键词查找相关 Skills

能力 2

展示可复制的安装命令

能力 3

保留来源站点、仓库和原始说明,方便继续核验

能力 4

展示第三方安全扫描或审计结果

安装后应在对应宿主中按原始 README 的触发条件使用;具体调用方式请以来源页面和 README 为准。

平台分布

Codex

37.44%
按下载量换算10,395

Claude

31.54%
按下载量换算8,757

Cursor

16.52%
按下载量换算4,587

Gemini CLI

8.29%
按下载量换算2,302

安全审计

Gen Agent Trust Hub

通过

Socket

未通过

Snyk

可疑

权限和风险

操作浏览器

该 Skill 可能涉及浏览器控制能力,使用时可能读取或操作网页内容,需要在受控环境中确认权限边界。

安装前确认

本站仅展示第三方公开信息,不托管安装包,不提供自动安装或运行环境。安装前应自行审查源码、依赖和命令行为。来源安全扫描存在 warning/failed 结果,不能写成本站确认安全。当前只有一个来源,正式发布前建议补源仓库或其他目录站核验。

来源信息

继续浏览同类 Skills