T3 T3rnel Browser Add to Chrome

Features

Eight feature areas, 84 tools. Everything below is in the shipped build.

CSS inspection

Hover any element and get its real, clean, copyable CSS โ€” with the units the author actually wrote.

  • Walks the real cascade through document.styleSheets rather than dumping getComputedStyle, which flattens %, em, rem and vh to pixels and breaks responsiveness the moment you paste it.
  • Strips declarations overridden later in the cascade, drops browser defaults, collapses longhand to shorthand where safe, and deduplicates.
  • Collects matching :hover, :focus, :active, ::before, ::after and ::placeholder rules, plus @media blocks and referenced @keyframes.
  • Copies as plain CSS, Tailwind, styled-components, Emotion, CSS Modules, SCSS, or JSX inline styles.
  • Reports a partial result honestly. A cross-origin stylesheet throws on cssRules; the output names the sheets it could not read instead of returning a rule count that looks complete and is not.

Tools browser_css_scan browser_css_copy browser_css_edit browser_css_extract browser_css_unused

Full-page screenshots

One click, the whole page, stitched โ€” and it handles the real web rather than the ideal one.

  • Snapshots the scroll position first and restores it at the end, including when the capture fails part-way.
  • Injects a capture stylesheet that disables animations and transitions, so frames are stable rather than smeared.
  • Detects fixed and sticky elements by computed position and hides all but their first-viewport occurrence, so a sticky header appears once instead of every 800 pixels.
  • Pre-scrolls the full height to trigger lazy loading and IntersectionObserver content, then returns to the top.
  • Dismisses cookie banners and overlay modals heuristically, with an undo so nothing you wanted captured disappears silently.
  • Captures at devicePixelRatio through a token-bucket limiter that stays inside Chrome's captureVisibleTab rate limit, then stitches on an OffscreenCanvas.
  • Annotate, crop, and export as PNG, JPG, WebP or paginated PDF.

Tools browser_fullpage_capture browser_screenshot_annotate browser_screenshot_crop browser_screenshot_export browser_screenshot_history

Markdown viewer

Read .md files as documents, including the ones your agent just wrote.

  • GitHub Flavored Markdown: tables, task lists, footnotes, strikethrough, autolinks.
  • Mermaid diagrams and LaTeX math rendered inline.
  • Sticky auto-generated table of contents with scroll-spy; light, dark and sepia themes.
  • Side-by-side diff between two Markdown documents.
  • Renders straight from the clipboard, which is the fastest way to read assistant output.
  • Sanitises strictly. Markdown is untrusted input, and a viewer with a scripting hole inside an extension is a serious problem โ€” scripts, event-handler attributes and javascript: URLs are removed, and a payload corpus in the test suite proves it.

Tools browser_md_view browser_md_diff

Page audit and link checking

Accessibility, spelling and links โ€” reported honestly, including what could not be checked.

  • Flags missing alt text, heading-hierarchy skips, unlabelled form controls and ARIA misuse.
  • Link checking distinguishes three outcomes rather than two: reachable, verifiably broken, and answered-but-unreadable.
  • That third state is not a hedge. A cross-origin response is opaque to the browser โ€” status reads as 0 whatever the server returned. Calling opaque "fine" marks every dead external link healthy; calling it "broken" marks every healthy one dead. Neither is a link check.

Tools browser_audit browser_check_links browser_check_spelling

Record, replay and code export

Click through a flow once. Get a maintainable test that runs in your CI without this extension.

  • Generates ranked candidate selectors per element: data-testid beats id beats ARIA role plus accessible name beats a CSS path.
  • Scores each candidate for fragility โ€” depth, index-dependence, hash-like class names โ€” and warns inline when the best available option is brittle. That warning is the difference between a suite that survives a refactor and one that does not.
  • Exports to Playwright, Puppeteer, Cypress and Selenium.
  • Generated code waits on conditions. It never sleeps for a guessed number of milliseconds, and a test asserts that no waitForTimeout appears in the output.

Tools browser_record_start browser_record_stop browser_record_list browser_record_events browser_record_replay browser_codegen_start browser_codegen_stop browser_codegen_export browser_codegen_status

Agent safety

The part that justifies the price: a valve between a language model and your logged-in browser.

  • An approval gate that refuses. High-risk tools return APPROVAL_REQUIRED naming the exact action requested. Nothing runs until you approve, and an approval covers one action โ€” not every future one.
  • Credential redaction that stays useful. Password and token-like values never reach the model, but the field's length does, so an agent can confirm a fill landed without seeing the value. Redaction that hides everything makes verification impossible, and an agent that cannot verify retries and double-submits.
  • Prompt-injection flagging with coverage. Page text is scanned for instruction-override patterns and reported as suspected, along with how many characters were examined. A clean verdict over zero characters reads exactly like a passing scan, so the two are never conflated.
  • Delta snapshots. After the first snapshot, only the structural difference is sent. This is where the token bill actually goes.
  • Time travel. Every step keeps a compressed DOM snapshot, console and network deltas, and the exact tool arguments. When a run goes wrong at step 42, scrub to 41.

Tools browser_firewall_check browser_firewall_set_policy browser_firewall_get_policy browser_dom_compress browser_dom_delta browser_timetravel_snapshot browser_timetravel_list browser_timetravel_inspect browser_timetravel_export

Encrypted identity vault

Per-site credentials, encrypted on your device, never written in the clear.

  • AES-256-GCM with a key derived from your master passphrase.
  • A wrong passphrase fails the authentication tag and is refused, rather than returning plausible garbage.
  • Every vault operation is high risk and gated: a write can overwrite a live credential and a delete destroys the only copy, so neither is treated as safer than a read.

Tools browser_vault_save browser_vault_load browser_vault_list browser_vault_delete