[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"project-80246":3},{"id":4,"name":5,"fullName":6,"owner":7,"repo":5,"description":8,"homepage":9,"htmlUrl":9,"language":10,"languages":9,"totalLinesOfCode":9,"stars":11,"forks":12,"watchers":11,"openIssues":13,"contributorsCount":13,"subscribersCount":13,"size":13,"stars1d":13,"stars7d":13,"stars30d":13,"stars90d":13,"forks30d":13,"starsTrendScore":13,"compositeScore":14,"rankGlobal":9,"rankLanguage":9,"license":15,"archived":16,"fork":16,"defaultBranch":17,"hasWiki":18,"hasPages":16,"topics":19,"createdAt":9,"pushedAt":9,"updatedAt":20,"readmeContent":21,"aiSummary":22,"trendingCount":13,"starSnapshotCount":13,"syncStatus":23,"lastSyncTime":24,"discoverSource":25},80246,"realbrowser","darkamenosa\u002Frealbrowser","darkamenosa","Fast real-browser automation skill and CLI for Codex",null,"JavaScript",52,11,0,3.24,"MIT License",false,"main",true,[],"2026-06-12 02:04:00","# Realbrowser\n\nRealbrowser is an agent skill and small local CLI for fast target-first browser\nautomation against Chrome\u002FChromium. It is built for the cases where the useful\nstate is in the browser the developer is already using: signed-in profiles,\ncookies, local storage, active tabs, console logs, network traffic, downloads,\nand local app state.\n\nThe current CLI is grouped and target-first:\n\n```bash\nrealbrowser [global flags] \u003Cgroup> \u003Ccommand> [args] [flags]\n```\n\nAcquire or create one tab target first, then pass `-t \u003Clabel>` or `--handle` to\nreads, actions, screenshots, console, network, state, dialogs, performance,\ndownloads, and exports.\n\n## What It Provides\n\n- An agent skill named `realbrowser` (works with Claude Code, Codex, and other\n  agent platforms).\n- A zero-dependency Node CLI at `skills\u002Frealbrowser\u002Fscripts\u002Frealbrowser.mjs`.\n- Portable wrappers:\n  - `skills\u002Frealbrowser\u002Fscripts\u002Frealbrowser` for macOS\u002FLinux shells.\n  - `skills\u002Frealbrowser\u002Fscripts\u002Frealbrowser.ps1` for PowerShell.\n  - `skills\u002Frealbrowser\u002Fscripts\u002Frealbrowser.cmd` for Windows `cmd.exe`.\n- Signed-in profile attach through Chrome\u002FChromium DevTools endpoints.\n- Anonymous managed sessions for clean browser state.\n- Stable labeled tab targets, scoped per owner\u002Fsession.\n- Target leases for mutating commands so parallel sessions do not\n  accidentally navigate, close, or click each other's tabs.\n- Compact page reads, structured item extraction, screenshots, console logs,\n  network request\u002Fresponse capture, uploads, guarded submits, downloads, and PDF\n  export.\n\n## Requirements\n\n- Node.js 22 or newer.\n- Chrome or a Chromium-family browser.\n- A local machine where Chrome DevTools access is acceptable for the requested\n  profile\u002Fsession.\n\n## Installation\n\n### Claude Code\n\nAdd the marketplace, then install the plugin:\n\n```\n\u002Fplugin marketplace add darkamenosa\u002Frealbrowser\n\u002Fplugin install realbrowser@realbrowser\n```\n\nTo update later:\n\n```\n\u002Fplugin marketplace update realbrowser\n\u002Fplugin update realbrowser@realbrowser\n```\n\nLocal development install:\n\n```\n\u002Fplugin marketplace add \u002Fpath\u002Fto\u002Frealbrowser\n\u002Fplugin install realbrowser@realbrowser\n```\n\nThe skill auto-activates when tasks involve browser interaction, screenshots,\nconsole logs, network debugging, or form automation.\n\n### Codex\n\nPlace the repo under `$HOME\u002F.codex\u002Fskills\u002Frealbrowser` and use the\n`agents\u002Fopenai.yaml` configuration.\n\n### Standalone CLI\n\n```bash\nnode skills\u002Frealbrowser\u002Fscripts\u002Frealbrowser.mjs help\n```\n\nRun the built-in checks:\n\n```bash\nskills\u002Frealbrowser\u002Fscripts\u002Frealbrowser self-test\n```\n\n## Common Flows\n\nParallel sessions:\n\n```bash\nexport REALBROWSER_OWNER=my-project\nrealbrowser session use profile:chrome:Default\nrealbrowser tab ensure http:\u002F\u002Flocalhost:3000 --profile chrome:Default --label app --background\nrealbrowser read observe -t app\n```\n\n`REALBROWSER_OWNER` or `--owner \u003Cid>` scopes labels and default context. Without\nan explicit owner, Realbrowser uses the current agent\u002Fterminal session when one is\navailable, falling back to the project path. Mutating commands claim a target\nlease; if another owner already owns that tab, rerun with `--take-lease` only when\nyou intentionally want to take it over. `tab ensure` creates a fresh tab instead\nof reusing another owner's URL match.\n\nAnonymous page:\n\n```bash\nrealbrowser tab ensure https:\u002F\u002Fexample.com --anonymous --session check --label page --background\nrealbrowser read observe -t page --anonymous --session check\n```\n\nVisible Chrome Incognito window:\n\n```bash\nrealbrowser tab ensure https:\u002F\u002Fexample.com --anonymous --session private --label page --front --incognito\nrealbrowser read observe -t page --anonymous --session private\n```\n\nSigned-in profile:\n\n```bash\nrealbrowser profile list --active\nrealbrowser tab list \"localhost\" --profile chrome:Default\nrealbrowser tab ensure http:\u002F\u002Flocalhost:3000 --profile chrome:Default --label app --background\nrealbrowser read observe -t app --profile chrome:Default\n```\n\nConsole and network evidence:\n\n```bash\nrealbrowser console list -t app --errors --limit 50\nrealbrowser console capture -t app --reload --duration 3000 --out tmp\u002Fconsole.json\nrealbrowser network capture -t app --reload --duration 5000 --out tmp\u002Fnetwork.json\nrealbrowser network body -t app req_12 --response --out tmp\u002Freq_12-response.json --full\n```\n\nActions and uploads:\n\n```bash\nrealbrowser action state -t app --root active --compact --screenshot --annotate-refs\nrealbrowser action fill -t app e1 \"caption text\"\nrealbrowser action upload -t app --root active --input-ref e2 ~\u002FDownloads\u002Fmedia.png\nrealbrowser action submit -t app --root active --text \"Submit\"\n```\n\nScreenshots and exports:\n\n```bash\nrealbrowser screenshot capture -t app tmp\u002Fapp.png\nrealbrowser screenshot full -t app tmp\u002Fapp-full.png\nrealbrowser screenshot device -t page --anonymous --session responsive --devices desktop:1440x900,tablet:768x1024,mobile:390x844 tmp\u002Fpage\nrealbrowser export pdf -t app tmp\u002Fpage.pdf --print-background\n```\n\n## Operating Model\n\nUse the smallest command that answers the question:\n\n- `profile list --active` to discover usable signed-in profile endpoints.\n- `tab list`, `tab select`, `tab ensure`, and `tab new` to acquire a target.\n- `read observe`, `read size`, `read query`, `read items`, `read item`, and\n  `read snapshot` for compact page state and structured content.\n- `action state` before mutating the page, then act on current refs.\n- `console` and `network` for debugging evidence.\n- `screenshot` and `export pdf` for visual artifacts.\n\nDo not start from broad HTML or whole-page dumps. Use `--out` for large reads,\nnetwork bodies, HAR files, screenshots, and traces so they can be inspected with\nlocal tools instead of sent through model context.\n\n## Profile Safety\n\nWith `--profile`, existing browser tabs may be diagnostic only when CDP is\nbrowser-scoped and the tab was not created by Realbrowser through that profile.\nIf a named-profile open needs a proven target, create a new tab through the\nprofile with `tab ensure \u003Curl> --profile \u003Cprofile> --label \u003Clabel>`.\n\n`--anonymous` creates isolated temporary browser state. It is not network\nanonymity and is not the same as Chrome's visible Incognito UI. Add\n`--incognito` or `--private` only when a visible private window is explicitly\nneeded.\n\nRealbrowser should keep signed-in profile work in the background when possible.\nUse `--front` only for explicit visual handoff. `tab ensure --background`\nperforms verified browserContextId discovery when possible.\n`--best-effort-background` is only for stopped-profile launch risk and must not\nOS-launch an already-running browser-scoped profile.\n\nChrome approval prompts are controlled by Chrome, not the skill. Realbrowser\nreduces repeated prompts by reusing the same direct `DevToolsActivePort`\nWebSocket and daemon per browser endpoint. After a browser\u002Fcomputer restart, a\nsigned-in real Chrome profile can still require Chrome's approval once; managed\nanonymous sessions avoid signed-in-profile approval but do not contain the user's\nlogged-in state.\n\n## Plugin Structure\n\n```\nrealbrowser\u002F\n├── .claude-plugin\u002F\n│   └── plugin.json              # Claude Code plugin manifest\n├── skills\u002F\n│   └── realbrowser\u002F\n│       ├── SKILL.md             # Skill instructions\n│       ├── scripts\u002F             # CLI and wrappers\n│       │   ├── realbrowser      # macOS\u002FLinux shell wrapper\n│       │   ├── realbrowser.cmd  # Windows cmd wrapper\n│       │   ├── realbrowser.ps1  # PowerShell wrapper\n│       │   └── realbrowser.mjs  # Node CLI implementation\n│       └── references\u002F          # Detailed documentation\n│           ├── commands.md\n│           ├── workflows.md\n│           └── design-notes.md\n├── agents\u002F\n│   └── openai.yaml              # Codex agent configuration\n├── README.md\n├── CHANGELOG.md\n└── LICENSE\n```\n\n## Development Notes\n\nRealbrowser is intentionally thin and portable:\n\n- Keep workflow guidance in `skills\u002Frealbrowser\u002FSKILL.md`.\n- Keep command details in `skills\u002Frealbrowser\u002Freferences\u002Fcommands.md` and\n  `skills\u002Frealbrowser\u002Freferences\u002Fworkflows.md`.\n- Keep the implementation in `skills\u002Frealbrowser\u002Fscripts\u002Frealbrowser.mjs` unless\n  a boundary becomes stable enough to justify another file.\n- Add or update `self-test` coverage for parser, help, state, and CLI behavior\n  regressions.\n\nUseful checks:\n\n```bash\nskills\u002Frealbrowser\u002Fscripts\u002Frealbrowser --version\nskills\u002Frealbrowser\u002Fscripts\u002Frealbrowser help\nskills\u002Frealbrowser\u002Fscripts\u002Frealbrowser self-test\n```\n","Realbrowser 是一个用于快速浏览器自动化操作的工具和命令行界面，特别针对 Chrome\u002FChromium 浏览器设计。它允许开发者利用已登录的浏览器配置文件、cookies、本地存储等现有状态进行自动化测试或开发任务。该项目提供了一个名为 `realbrowser` 的代理技能，支持 Codex 等平台，并包含一个无需依赖的 Node.js 命令行工具及跨平台脚本。此外，它还支持稳定的标签页目标管理、会话隔离、页面读取与截图、控制台日志捕获等功能。适用于需要在保持用户会话状态的前提下执行自动化测试、网页抓取或者网络调试等场景。",2,"2026-06-11 03:59:49","CREATED_QUERY"]