Endoplexity README

The project's README from github.com/Endokelp/Endoplexity. As one markdown file: README.md.

Endoplexity

Endoplexity

Agentic browser control, driven by the AI subscription you already pay for.

A Chrome side panel that reads and acts on the page you're actually looking at: click, type, fill forms, move between tabs, all through your existing claude or cursor-agent CLI instead of a metered API key.

Licence Node Tests API key

Endoplexity opening three pricing pages in separate tabs and comparing their free tiers in one table

Real time, no cuts beyond a trim and a speed-up · full-quality video


What you just watched

One instruction: "Open the pricing pages for Vercel, Netlify and Cloudflare Pages in three tabs, then compare their free tiers in one table."

It opened three tabs, read each pricing page, followed a plan link that actually lived on a different page, noticed when a link took it somewhere unexpected and recovered from it, then came back with a comparison table, the sources it used, and a takeaway naming the trade-off between Cloudflare's unlimited static bandwidth and Netlify's credit cap.

That banner reading "Endoplexity started debugging this browser" is Chrome's own, and it stays up the whole time. This is your real browser, your real session, on the pages you already had open. Not a headless copy that has to log back in to everything.

Why this exists

Most open-source "browser agent" projects need an API key and bill you per click. But if you already pay for Claude or Cursor, a tool-calling agent loop is sitting on your machine right now, fully paid for, doing nothing.

The brain didn't need building. What was missing was hands (a browser it can actually touch) and a face (a panel that shows its work). That's the whole project: a tool server and a UI. The agent loop is the CLI you already have installed.

How it works

The extension never talks to a model directly. The CLI never talks to Chrome. Neither one holds the other's credentials.

┌──────────────────────┐   WebSocket    ┌──────────────┐    MCP/HTTP   ┌──────────────────┐
│  Chrome side panel   │  origin-pinned │ local bridge │  token-gated  │  claude -p       │
│  (MV3)               │◄──────────────►│  127.0.0.1   │◄─────────────►│  cursor-agent -p │
│  owns chrome.debugger│                │  :8787       │               │  (the agent loop)│
└──────────────────────┘                └──────────────┘               └──────────────────┘

The panel owns the CDP connection itself rather than handing it to the service worker, which sidesteps MV3's idle teardown. The bridge exposes 14 browser tools over MCP, and it's where the safety policy actually lives. Never in a prompt, so nothing the model says can widen its own permissions.

Tools: snapshot navigate click type key upload read_file select scroll hover back forward tabs use_tab

Two decisions do most of the work here:

read_file reads an attached document as text (PDF, DOCX, XLSX, PPTX, CSV, JSON, Markdown, or any text file), so the agent can answer questions about an attachment instead of only pushing it into a form field. You attach one by dropping it on the composer — see Files.

Getting started

This takes about five minutes. No API key, no billing page, no dashboard to configure. Just Node, Chrome, and a CLI you probably already have logged in.

1. Check what you need first

2. Clone it and install

git clone https://github.com/Endokelp/Endoplexity.git
cd Endoplexity
npm install

3. Start the bridge

npm run setup

This writes a small launcher into your Windows Startup folder, so the bridge comes up automatically every time you log in. No console window stays open, no token to copy anywhere. If you'd rather run it by hand instead (or you're not on Windows), npm start runs it in the foreground so you can watch its log directly. If something ever seems stuck, .endo-bridge.log at the repo root is the first place to look.

4. Load the extension into Chrome

  1. Open chrome://extensions
  2. Turn on Developer mode (top right)
  3. Click Load unpacked
  4. Select the extension/ folder from this repo

You'll see the Endoplexity icon appear in your toolbar.

5. (Optional) Log in to Cursor too

Only needed if you want to run tasks through Cursor's models as well as Claude's:

npm run cursor-login

This is a one-time login into a bridge-owned Cursor profile, kept separate from your normal cursor-agent login so the two never collide.

6. Files

Drag a file onto the composer, paste one, or use the paperclip. It shows up as a chip, and from then on the agent can read it (read_file) or put it into a form field (upload). Any file type — anything it can't turn into text, it says so rather than guessing.

The bridge keeps its own copy and hands the model a key (resume), never a path. Attachments survive restarts, and the × on a chip deletes the copy.

If you'd rather point at a file where it already lives, .endo-files.json still works and behaves identically:

cp .endo-files.example.json .endo-files.json
{
  "resume": "C:\\Users\\you\\Documents\\resume.pdf"
}

Both files are gitignored, and so is the attachment directory — everything stays on your machine.

7. Run your first task

Click the Endoplexity icon to open the side panel, type what you want, and hit Run. A couple of things worth knowing right away:

Try something low-stakes first, like summarizing whatever page you're on before you point it at a form. For a deeper look at what each part of the panel shows and how the approval gate behaves, see docs/handrun.md.

The safety model

This drives a browser that's logged into your real accounts, so the boundaries here are worth stating plainly, including where they stop.

Found a hole? See SECURITY.md and please report it privately.

What it costs

A complete job application, filled agent-driven on a real Greenhouse form:

Cost $0.0959
Tokens 112,064
Turns 10
Wall clock 42s

That dollar figure is what the CLI reports as equivalent API spend. On a subscription, it's already covered by what you're paying monthly, which is the entire point of this project.

The same task measured flat against a 5-tool baseline, even while carrying about 18k tokens more of tool schema, so going from 5 tools to 13 cost nothing per run in practice. Page returns were later cut 3.8x by sending a full page once and then only the lines that changed afterward: 119,856 → 31,626 tokens on a ten-turn Hacker News task.

Status

Early. v0.0.1, and honest about it. The tool layer, approval gate, session continuity, and panel are all built and tested: 156 unit tests, plus an in-panel self-test that drives the real CDP layer against a cross-origin fixture (run await endo.selftest() in the panel's own console).

Known gaps, stated rather than hidden:

Development

npm test     # 156 tests, node:test, no framework, no build step
npm start    # run the bridge in the foreground to watch its log

There's no bundler and no framework here. The extension is plain HTML and JS, and the bridge is TypeScript run directly by Node 24.

docs/handrun.md is the manual verification checklist.

Licence

Apache-2.0. See NOTICE for trademark attribution.

Independent project. Not affiliated with, endorsed by, or sponsored by Perplexity AI, Anthropic, or Anysphere.

Endoplexity (Endokelp/Endoplexity)

Searching Database…

这是什么?Endoplexity 是一个 Chrome 侧边栏扩展,让你现有的 Claude 或 Cursor 订阅通过你已登录的 claude 或 cursor-agent CLI 来驱动真实浏览器——点击、输入、填表、切换标签页——而不需要单独的按量计费 API 密钥。
这是浏览器扩展、应用,还是别的东西?它由两部分协同工作:一个 Chrome 侧边栏扩展,负责读取你正在看的页面并对其执行操作;一个本地 Node 桥接/工具服务器,通过 MCP 与你的 claude 或 cursor-agent CLI 通信。没有云服务,也没有独立后端。
怎么让它跑起来?克隆仓库并运行安装脚本启动桥接器(它会在 Windows 登录时自动启动),然后打开 chrome://extensions,启用开发者模式,再用“加载已解压的扩展程序”指向仓库里的 extension/ 文件夹。
使用它需要 Anthropic API 密钥吗?不需要——它复用你已登录真实订阅的 claude 或 cursor-agent CLI(Claude Pro 就够了)。你只需要装好 Node 24+ 和 Chrome 114+。
目前已知的不足有哪些?项目还处于 v0.0.1,且以 Windows 优先——macOS 和 Linux 可以用 npm start 运行桥接器,但还没有自启动。它也无法驱动 chrome:// 页面和网上应用店;真实的 ATS 组合框需要“先点开再选择”的变通方法,而不能用 select 工具;长时间的导航会话可能残留来自失效 iframe 会话的杂讯。
它在 macOS 或 Linux 上表现一样吗,还是其实是 Windows 专用工具?桥接器本身是可移植的,用 npm start 在哪儿都能跑,但便捷的一键自启动安装器目前只针对 Windows 的启动文件夹。
我的浏览记录或文件会被发送到我的电脑之外吗?不会——桥接器只绑定 127.0.0.1(回环地址),从不绑定公共网络接口,附件/会话文件已被 gitignore 并保留在本地;设计上没有任何东西会离开你的电脑。
审批关卡如何决定拦截什么?它会将所点元素的可见标签与一小组英文单词(如“submit”“pay”“delete”“confirm”)进行匹配,然后才放行不可逆操作。这只是标签启发式,并非真正理解页面,所以纯图标按钮或措辞不常见(如“Finish”)的按钮可能漏过去——观察模式正是为这种情况准备的。
实际运行一个任务要花多少钱?一个由智能体驱动的求职申请样例,折算 API 花费为 0.0959 美元,用时 42 秒,横跨 11.2 万 token 和 10 轮对话——但这些已经包含在 Claude 或 Cursor 订阅里,无需额外付费。
它能读取并填写附件文件吗?可以,把文件拖到输入框上,智能体就能通过 readfile 工具将其作为文本读取(PDF、DOCX、XLSX、PPTX、CSV、JSON、Markdown 等),或通过 upload 把它填入表单字段;附件保存在本地,重启后仍在。
为什么做这个,而不是又一个浏览器智能体项目?大多数开源浏览器智能体都需要单独的按量计费 API 密钥,并按点击计费。Endoplexity 则复用你在 Claude 或 Cursor 中已经付费的工具调用智能体循环,只补上缺失的部分:基于 CDP 的真实浏览器控制,以及一个观察它工作的面板。
Creator
Endokelp
Size
4.8 MB
Stars
180
Updated
CommitAug 15
Age
2mo
Commits · 90 Days