overview

terminator is the playwright-style sdk for automating windows gui apps. ai-native gui automation for windows, macos, linux. fast, reliable, agent-ready.

automate desktop apps like a browser with 80ms ui scans and 10000x speedup via compiled workflows. because it uses os-level accessibility apis, it is 100x faster and more reliable for ai computer use than vision-based approaches like openai operator or anthropic computer use.

note: built for windows, works on macos (partial support), linux support coming soon.

🧠 what is terminator?

terminator is designed for ai agents, not humans. it provides:

  • πŸͺŸ native support for windows, partial macos compatibility
  • 🧠 built specifically for ai agents
  • ⚑ uses os-level accessibility (not vision) for speed
  • 🧩 typescript, python, and rust support
  • πŸ“ˆ 80ms ui scans with massive performance advantages

benchmarks

the benchmark test illustrates how fast terminator can query the ui. it finds all edit elements in about 80 ms, showcasing a big speed advantage over vision-based tools.

this form-filling app can read & fill 1000 input forms as soon as you see them in <1s end-to-end using gemini.

features

AI-Native

built for windows with playwright-style api and MCP for python, typescript, and rust.

Fast & Reliable

uses accessibility apis for 100x faster automation vs vision-based tools.

Element Discovery

find ui elements by role, name, value, description, automationid, or text content.

Full Interaction

click, type, scroll, press keys, get text, check state - everything you need.

demos

check out terminator in action:

technical details & debugging

key dependencies

  • windows: uiautomation-rs
  • macos: native macos accessibility api (exploring cidre as an alternative)

debugging tools

windows:

  • accessibility insights for windows
  • flauinspect: a recommended alternative for inspecting ui automation properties on windows.
    • install: choco install flauinspect or download from flaui/flauinspect releases.
    • usage: launch flauinspect.exe, hover or click on elements to see properties like automationid, name, and controltype. this is great for debugging selectors.

next steps

ready to start? head over to the getting started guide, then dive into the sdk references:

explore further

contributing

contributions are welcome! please feel free to submit issues and pull requests. many parts are experimental, and help is appreciated. join our discord to discuss.

businesses

if you want desktop automation at scale for your business, let’s talk