{"slug": "show-hn-control-the-browser-directly-from-thegitai-terminal", "title": "Show HN: Control the browser directly from TheGitAI Terminal", "summary": "TheGitAI released a Chrome extension that lets its terminal-based agentic coding tool control the user's existing, already-signed-in Chrome browser, requiring Chrome 116 or later and installed via `npm install -g @thegitai/cli` plus the Chrome Web Store listing. The extension targets tasks with no API path — cloud consoles, admin panels, and sites with no data export — and confines each terminal session to one Chrome tab group, never reads the titles or addresses of other open tabs, pauses downloads until the user accepts, and offers approval and plan modes that restrict the agent to reading pages.", "body_md": "# Browser Control\n\nMost of what a coding agent does needs no browser at all. This is for the part that does - the cloud console, the dashboard, the admin panel, and everything else that has no API to call and no way in from the outside.\n\nTheGitAI is an agentic AI coding tool for your terminal. With the **TheGitAI\nChrome extension** installed, it can also work in the Chrome you already have\nopen, signed in as you already are. There is no second browser, no separate\nsign-in, and no API key standing in for you.\n\n## [What this is not](#what-this-is-not)\n\nIt is not mainly a front-end debugger.\n\nChecking how a page you just built renders is the one browser task that needs nothing special: the page is local, it has no session, and Playwright or a headless script does it perfectly well. If that is the whole job, use one of those.\n\nWhat a headless script cannot do is work in a browser that is already yours. No cookie jar to transplant, no credentials to hand to a tool, no screenshots to paste in so the agent can see what you are looking at. That gap is the reason this extension exists.\n\n## [Install](#install)\n\nTwo halves, and both are required. The extension does nothing on its own.\n\n1. **The terminal app** , if you do not already have it:\n\n```\nnpm install -g @thegitai/cli\n```\n\n2. **The extension** , from the[Chrome Web Store](https://chromewebstore.google.com/detail/thegitai/jipbjphlelfilkhdjkfdficafjhgjfmk) .\n\nThen run `ai` in any project directory and ask about a page. The extension\nconnects on its own - there is no pairing step, no port to configure, and\nnothing to sign into twice.\n\nChrome 116 or later is required.\n\n## [What to ask for](#what-to-ask-for)\n\n- **Work a console owns.** Deploy a model, provision a resource, or change a\nsetting through a cloud provider's portal, when the UI is the interface and\nworking out the API would take longer than the task.\n- **Data out of a site with no export.** No download button, no API, but it is\nright there on the page in front of you.\n- **Admin UIs.** A CMS, a page builder, an internal dashboard - anywhere the\njob is clicking through screens rather than writing files.\n- **A walkthrough on your own screen.** Ask where a setting lives in a panel\nyou do not know, and have it shown to you a step at a time.\n- **The long form** on the internal tool, the one you have already filled in\ntwice today.\n- **What is on a page you are signed in to.** Your own profile on a\nprofessional network, a feed, a job posting - read it and do something useful\nwith what is there.\n- **Front-end work too, when you want it.** How a page renders, what breaks at\nphone width, the console error behind a failure. Real, just not the reason\nthe extension is here.\n\nIts clicks and keystrokes are the same kind the browser gets from you, rather than scripted events - which is why pages that ignore automated input still behave normally.\n\n## [Staying in control](#staying-in-control)\n\n| Boundary | How it works | \n|---|---|\n| Tab group | Each terminal session owns one Chrome tab group. A tab joins when you ask the agent to use it; dragging it out takes it back out of reach immediately. | \n| Your other tabs | Never read. The agent is told how many you have open - never their titles, never their addresses. | \n| Approval | Default mode asks before the agent uses a website. Plan mode lets it read pages without clicking, typing, or navigating. | \n| Downloads | Paused the moment they start. The filename, size, and origin are surfaced, and nothing reaches your disk until you accept. | \n| Chrome profiles | With more than one Chrome profile connected, TheGitAI asks you which one to use the first time it acts in the browser, listing them by the names they have in Chrome, such as \"Work (Profile 3)\", with the one you used last as the default. It stays in that profile for the conversation, including after you resume it, and asks again before switching. | \n| Stop | **Stop** ,**Resume** , and**Disable** live in the toolbar popup. Chrome also shows its own banner for as long as the agent is attached to a tab. | \n| Credentials | It never types your passwords. Logins and CAPTCHAs are handed back to you. | \n\nExiting the CLI leaves your pages open. Another session cannot take tabs owned by a live one.\n\n## [Privacy](#privacy)\n\nThe extension makes no network requests of its own. Everything it reads goes to the TheGitAI tool on your own computer, over a local channel between two programs on the same machine.\n\nNothing it reads is stored by us - not the pages, not the screenshots, not a record of the sites you visit. On your own machine it keeps exactly two things: a random identifier so two Chrome profiles can be told apart, and whether you have switched it off. Uninstalling removes both.\n\nSee [Trust & Privacy](https://thegit.ai/docs/safety/trust-and-privacy) and the full\n[privacy policy](https://thegit.ai/privacy).\n\n## [When it does not connect](#when-it-does-not-connect)\n\nThe popup tells you which half is missing. If it says TheGitAI is not installed\non this computer, the terminal app is not there yet or has never been run -\ninstall it and run `ai` once. The CLI registers the local connection on every\ninteractive launch, so it repairs itself.\n\nWhen a browser request starts without a connection, TheGitAI waits up to 2.5 seconds for discovery before reporting a failure. This includes the first browser request in a session as well as reconnects. A failed check does not mean the extension is missing or disabled, and a later request checks again. Open the TheGitAI icon in Chrome to check its connection status if the browser remains unavailable.\n\nAfter updating the CLI, exit and start a new `ai` process to load the fix.\nExisting processes continue using the code they started with. If a connection\nis replaced while an action is running, TheGitAI reports that its outcome is\nunknown. Check the page before repeating the action; it is not replayed\nautomatically.\n\nSee [Troubleshooting](https://thegit.ai/docs/reference/troubleshooting) if it persists.\n\n`chrome://` is in front will have nothing to act on.", "url": "https://wpnews.pro/news/show-hn-control-the-browser-directly-from-thegitai-terminal", "canonical_source": "https://thegit.ai/docs/core-features/browser-control", "published_at": "2026-10-27 17:52:52+00:00", "updated_at": "2026-10-27 18:11:57.721512+00:00", "lang": "en", "topics": ["ai-agents", "ai-tools", "developer-tools", "ai-products"], "entities": ["TheGitAI", "Chrome", "Chrome Web Store", "Google", "Playwright"], "also_reported_by": [], "alternates": {"html": "https://wpnews.pro/news/show-hn-control-the-browser-directly-from-thegitai-terminal", "markdown": "https://wpnews.pro/news/show-hn-control-the-browser-directly-from-thegitai-terminal.md", "text": "https://wpnews.pro/news/show-hn-control-the-browser-directly-from-thegitai-terminal.txt", "jsonld": "https://wpnews.pro/news/show-hn-control-the-browser-directly-from-thegitai-terminal.jsonld"}}