Login Machine
login-machine.vercel.app- Category
- AI Agents
- Rank
- No. 3010Tools index
Previous survey · No. 2919 ·
- Pricing
- Open Source
- Type
- TOOL
- Use case
- Workflow Automation
- Interfaces
- Web
- Builder
- richardhruby
- GitHub
- 292 stars
- Date
About
An automated browser login tool that uses AI vision to navigate websites and handle authentication flows. It takes screenshots, analyzes them with LLMs, and performs actions while keeping credentials secure by flowing them directly to the browser without exposing them to AI.
What it does
A Next.js web app that signs into a website on your behalf by looking at each page and deciding what kind of step it is. A hosted cloud browser opens the target URL; Claude receives a picture of the page plus a trimmed copy of its form markup, and sorts it into one of six step types, such as a password form, an account picker, a magic link wait, a popup, a spinner, or success. You type answers into a chat panel, and the app types them into the remote page itself, then looks again.
Why it's ranked here
The idea is sharper than most browser agents: one loop replaces a pile of per-site login scripts, and the README says it did exactly that inside Anon. The code backs the design claims. Every element address the model proposes is checked against the live page, including inside frames, before anything is clicked, and failures are fed back for up to three retries. Passwords go from the user to the page without ever being placed in a model prompt. It is MIT licensed and small enough to read in one sitting.
What's good
The markup trimming is careful: it drops scripts, styles, images and hidden elements, keeps only a short list of attributes useful for finding fields, and walks into shadow DOM and slots so embedded enterprise sign-in widgets still show up. Frame-aware fill and click helpers try the main page first, then every child frame. The model output is forced through a strict schema, and the instruction text tells it how to spot one-time-code fields and which locator styles to prefer. User actions stream progress back to the browser as server-sent events, so the form can show submitting and submitted states live.
Tradeoffs
It is a demo app, not a library: the package is marked private, there is no CLI or importable API, and no test script. It hard-requires paid BrowserBase and Anthropic accounts, with the model version pinned in code. After three failed validations it makes a fourth call and returns the result unchecked. The chat endpoint has no authentication, reflects any request origin in its CORS header, and accepts any non-empty string as the start URL. The instructions tell the model to skip Google, Apple and Microsoft sign-in buttons, so social login is out of scope. Cross-origin frames cannot be read.
How to use it well
Treat it as a reference design for your own agent's sign-in step rather than a dependency. Read the six step types and the validate-then-retry loop, then port them into whatever runs your automation. If you deploy the app as is, put it behind your own authentication and restrict origins first, and note that product analytics record the target domain whenever the analytics key is set. It fits flows built on email, password, one-time codes, account pickers and magic links; it does not cover federated social sign-in or unattended runs, since a person answers every prompt.
Technical notes+
src/lib/ai-login/agent.ts runs analyzeLoginPage with MAX_ANALYSIS_RETRIES = 3, appending failures inside <error-history> tags, then falls back to an unvalidated call without that history. validateLocator checks page.locator(...).first().count() in the main frame and every child frame. src/lib/ai-login/browser.ts connects over CDP per request (stateless for serverless), sets a 15000 ms default timeout and a 1280x800 viewport, truncates extracted HTML to 100_000 chars, sends an 80-quality JPEG, and embeds the BrowserBase API key in the wss query string. src/lib/ai-login/types.ts uses one flat Zod object rather than a discriminated union, with a comment saying structured output is more reliable that way. src/app/api/chat/route.ts handles start/submit/close; src/hooks/use-login-session.ts caps loading retries at 12 and calls posthog.capture with target_domain.
Observed
- License
- MIT (LICENSE file)
- Language
- TypeScript, Next.js app
- Packaging
- package.json marked private; scripts are dev, build, start, lint only
- Interfaces
- Web UI plus one POST endpoint with start, submit and close actions
- Required services
- Anthropic API key and BrowserBase API key plus project ID (.env.example)
- Optional telemetry
- PostHog key and host in .env.example; hook captures target domain
- Tests
- No test script or test framework in package.json
- Validation retries
- Up to 3 locator-validation attempts, then an unvalidated fallback call (src/lib/ai-login/agent.ts)
- HTML cap
- Extracted page markup truncated to 100,000 characters (src/lib/ai-login/browser.ts)
- Excluded flows
- Prompt excludes Google, Apple and Microsoft social login buttons (src/lib/ai-login/prompts.ts)
- Endpoint access
- No authentication check; CORS header echoes request origin (src/app/api/chat/route.ts)
Read from README.md, package.json, LICENSE, .env.example, src/lib/ai-login/agent.ts, src/lib/ai-login/browser.ts, src/lib/ai-login/prompts.ts, src/lib/ai-login/types.ts, src/app/api/chat/route.ts, src/hooks/use-login-session.ts.
What it can do
Take screenshots of web pages
Web page URL or browser session → Screenshot images
Analyze web page screenshots with AI
Screenshot images → Structured analysis of page elements and login flows
Automate browser login flows
Website credentials and target login page → Completed authentication/logged-in session
Navigate websites using AI vision
Target website and navigation goals → Executed browser actions and page interactions
Handle authentication flows automatically
Login credentials and authentication pages → Successful authentication without manual intervention
Execute browser interactions from AI analysis
LLM-generated action instructions → Performed clicks, form fills, and navigation actions
Tags
Tech Stack
Comments (0)
No comments yet
Editorially curated, with community endorsements as a secondary signal. Corrections welcome.