AIHawk

io.github.feder-crPublished by GitHub account feder-crv0.69.2Updated Oct 24, 2026

AI browser agent: browses, clicks, types, and reads real web pages from plain-English instructions.

Overview

AI-generated overview

AIHawk is a local AI browser agent that carries out plain-English instructions by browsing, clicking, typing and reading real web pages inside its own virtual-m

What you can do
Browse, click, type and read real web pages from plain-English instructions, using a patched Firefox that keeps separate cookies and logins per identity. Run long tasks on a hardware-accelerated Linux desktop VM with a persistent disk that sleeps when idle. Keep notes and how-tos between tasks, and declare your own MCP servers for it to use. Set allow, ask or deny permissions per tool, with ask requests waiting in an inbox. Queue tasks and recurring automations, and reach it through a web UI, command line, HTTP API, Telegram or opt-in WhatsApp.
When to use it
Use it when a task needs a real computer and human-like judgement over time, such as checking fares daily, downloading invoices after logging in, or reading a page and reporting back. It suits users who want a self-hosted agent with its own VM and browser identities rather than a hosted service.
Requirements
Runs locally on desktop only, started with uvx from the aihawk PyPI package. The README's quickstart asks for Node 24+, Go 1.25+, Git, hardware virtualization (x86-64), QEMU with KVM or the Windows Hypervisor Platform, and an OpenRouter key entered in the web UI.
Before you install
The README states it is built to be undetectable by anti-bot systems, and it acts with your accounts and from your connection, so site terms and robots.txt still apply. It logs in to sites with stored identities and can download files and write to your disk. An OpenRouter key is required and is entered in the web UI; the README says MCP server keys stay out of the config. Tool calls can be allowed, asked or denied, so review permissions before granting allow.

Installation

In SourceWeft

  1. Open AIHawk in the dashboard and add it to a workspace.
  2. Enable the server for the chats that should use its tools.

Desktop only via STDIO. STDIO servers start a local process, so they need the SourceWeft desktop host.

Other MCP clients

Follow the launch instructions in the repository.

README

Open-source, self-hosted alternative to OpenAI Dots, Grok Bot. Built to be undetectable by anti-bot systems.

Quickstart

You need Node 24+, Go 1.25+, Git and hardware virtualization (x86-64), plus an OpenRouter key.

Windows (PowerShell):

powershell
winget install -e --id OpenJS.NodeJS.LTS; winget install -e --id GoLang.Go; winget install -e --id Git.Gitgit clone https://github.com/feder-cr/invisible_dots; cd invisible_dotsnpm ci; npm run build --workspace @invisible-dots/clinode apps/cli/dist/invisible-dots.mjs setup --allnode apps/cli/dist/invisible-dots.mjs server

Linux (Ubuntu 24.04):

bash
curl -fsSL https://deb.nodesource.com/setup_24.x | sudo -E bash - && sudo apt-get install -y nodejs git && sudo snap install go --classicgit clone https://github.com/feder-cr/invisible_dots && cd invisible_dotsnpm ci && npm run build --workspace @invisible-dots/clinode apps/cli/dist/invisible-dots.mjs setup --allnode apps/cli/dist/invisible-dots.mjs server

setup --all installs QEMU and turns on the accelerator (KVM, or the Windows Hypervisor Platform), then builds or downloads the Dot's images; run it again after a restart and it carries on. Then open http://127.0.0.2:3000, paste your OpenRouter key and create your first Dot. Every step and its failure modes: the guide's quickstart.

What to ask a Dot

Anything that needs a computer and a person's judgement, for as long as it takes:

Open a browser identity called research, go to https://example.com and tell me the page's title and its first sentence. Leave the browser open.

Every morning, check one-way fares from Milan to Lisbon for the next two weeks, write them to ~/workspace/fares.csv and tell me the cheapest day.

Log in to the shop with the shopping identity, download this month's invoices to ~/documents, and remember where the invoices page is for next time.

What a Dot has

A computer of its ownA hardware-accelerated VM with a Linux desktop and a persistent disk. It sleeps when idle and wakes for the next message, task or automation.
A browser that is not blockedinvisible_playwright_mcp: Firefox patched in C++, the fingerprint set inside the engine. Each identity keeps its own cookies and logins.
Memory and skillsIt writes its own notes and how-tos in its home folder, as Claude Code does, and reads them on the next task.
Your MCP serversAny MCP server you declare, a program on its computer or a URL, as in Claude Code. Its keys stay out of the config.
Permissions you setEvery tool belongs to a permission: allow, ask or deny. An ask waits in your Inbox, survives a restart and runs the call once.
Tasks and automationsA queue with priorities and start times, and its own recurring jobs, for which its computer is started on time.
Many ways to reach itWeb UI, command line, HTTP API with live events, Telegram, and WhatsApp as an opt-in.
Nothing lost on a crashA restart or a kill -9 keeps every message and task you saw accepted, and a tool call cut short is never run twice.

Documentation

Related projects

The pieces of this one. A Dot's browser is invisible_playwright_mcp, on invisible_playwright and invisible_core; the engine is a fork of nanobot.

License

MIT, see LICENSE. Third-party components and their licenses: THIRD_PARTY_NOTICES.md.

Disclaimer

This project is provided as-is, with no warranties. Use it at your own risk and in compliance with the laws of your jurisdiction. A Dot acts with your accounts and from your connection: respect the terms of the sites it visits and their robots.txt.


[tests] [license: MIT] [status: alpha] [hosts: Linux and Windows]

Built by Federico Elia

Source: README.md at commit a2584f2

Tools

0
SourceWeft has not started this package in its sandbox yet, so its tools are not known.

Version history

7
  1. v0.69.2LatestSep 23, 2026
  2. v0.69.1Sep 22, 2026
  3. v0.68.9Sep 18, 2026
  4. v0.68.8Sep 18, 2026
  5. v0.68.7Sep 18, 2026
  6. v0.68.4Sep 18, 2026
  7. v0.68.3Sep 16, 2026

Score

50% of the applicable checks met

How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.

  • Reached in the last 30 days25 pts

    Keep the endpoint answering the MCP handshake; SourceWeft probes it every 30 days.

  • Auth declared10 pts

    Declare the credential headers in the registry entry, or keep the endpoint answering the probe so its auth can be classified.

  • Tools listed15 pts

    Answer tools/list without a credential, or ship a package that starts in a sandbox without one.

  • DescriptionRequired15 pts
  • Logo10 pts
  • Documentation15 pts
  • License10 pts