Anahata ASI Desktop

The authoritative cross-platform ASI launcher.

Anahata ASI Desktop provides a standalone environment for running agentic workflows outside of any IDE. Built on the Blaugrana DNA architecture, it offers absolute stability across Linux, Windows, and macOS.

Anahata vs. The 2026 "Big Tech" Desktop Clients

While products like Google's Antigravity AI, OpenAI's GPT Codex, and Anthropic's Claude App offer excellent consumer chatbot experiences and basic terminal automation, they are fundamentally stateless Electron/Tauri wrappers over cloud APIs. Anahata ASI Desktop is a native, stateful JVM Runtime engineered for enterprise predictability and deep system observability.

Capability Dimension Anahata ASI Desktop Google Antigravity AI OpenAI GPT Codex The Claude App
Underlying Architecture Pure Java Swing + JVM Runtime (No JS/Electron bloat) VS Code Fork (Electron/TypeScript) Tauri/Rust wrapper + CLI Electron App + Node.js MCP
Dynamic Extensibility JIT Java Compilation: ASI can write and execute new tools directly on the host JVM. Pre-defined agent roles only. Terminal commands and standard plugins. Requires manual MCP JSON config restarts.
State Passivation Binary Kryo Serialization. Heals the entire runtime state on reboot. Cloud-synced chat history only. "Memory preview" context summarization. Basic session persistence.
Vendor Independence 100% Agnostic (Anthropic, OpenAI, Gemini, Hugging Face, Local). Locked to Gemini 3 ecosystem. Locked to GPT-5.x Codex models. Locked to Claude 3.x models.
Tool Safety (HITL) Stateful PENDING UI. Edit params and kill execution mid-flight. "Auto mode" vs "Blocked" toggle. Sandboxed blind execution. Requires CLI manual approvals.

Resources Toolkit (6 Tools)

loadResources(List<String> uris) Always

Loads multiple files or URLs into the context by their URIs.

unloadResources(List<String> ids) Always

Unloads resources from context without deleting files.

unloadResourcesByUri(List<String> uris) Always

Unloads resources using their URIs.

setProviding(List<String> ids, boolean) Prompt

Toggles resource visibility in prompt without unloading.

createTextFile(FullTextFileCreate) Prompt

Creates a new managed text file and registers it.

updateTextResource(FullTextResourceUpdate) Prompt

Full content replacement for existing text resources.

findAndReplaceInTextResource(...) Prompt

Surgical, multi-region text replacements with checksums.

updateViewport(String id, Settings s) Prompt

Adjusts the visible viewport window of a text resource.

Chrome Toolkit (19 Tools)

connect(droneId, profile, headless, ...) Prompt

Initializes a Selenium session with a Chrome profile.

close(droneId) Prompt

Closes the active browser session.

navigate(droneId, url) Prompt

Directs the browser drone to the specified URL.

getPageSource(droneId) Prompt

Gets the full HTML source of the current page.

getPageText(droneId) Prompt

Gets the visible text content of the current page.

executeScript(droneId, script) Prompt

Executes arbitrary JavaScript in the current session.

getScreenshot(droneId, name) Prompt

Takes a screenshot of the current page and attaches it.

listTabs(droneId) Prompt

Lists all open tabs/windows in the specified drone.

switchToTab(droneId, index) Prompt

Switches the active tab/window by its index.

goBack(droneId) Prompt

Navigates back in the browser history.

goForward(droneId) Prompt

Navigates forward in the browser history.

refresh(droneId) Prompt

Refreshes the current page.

inspectForm(droneId) Prompt

Inspects current page for interactive inputs/buttons.

fillForm(droneId, dataMap) Prompt

Fills web forms using an intelligent element locator.

clickElement(droneId, identifier) Prompt

Performs a stateful click via ID, Name, Link Text, or XPath.

scrollToElement(droneId, identifier) Prompt

Scrolls the specified element into view.

waitForElement(droneId, cssSelector, timeout) Prompt

Waits for an element to be visible on the page.

getStatus(droneId) Prompt

Gets the current status of a specific drone.

killAll() Prompt

Terminates all running browser processes on host.

Firefox Toolkit (19 Tools)

connect(droneId, profile, headless, ...) Prompt

Initializes a Selenium session with a Firefox profile.

close(droneId) Prompt

Closes the active browser session.

navigate(droneId, url) Prompt

Directs the browser drone to the specified URL.

getPageSource(droneId) Prompt

Gets the full HTML source of the current page.

getPageText(droneId) Prompt

Gets the visible text content of the current page.

executeScript(droneId, script) Prompt

Executes arbitrary JavaScript in the current session.

getScreenshot(droneId, name) Prompt

Takes a screenshot of the current page and attaches it.

listTabs(droneId) Prompt

Lists all open tabs/windows in the specified drone.

switchToTab(droneId, index) Prompt

Switches the active tab/window by its index.

goBack(droneId) Prompt

Navigates back in the browser history.

goForward(droneId) Prompt

Navigates forward in the browser history.

refresh(droneId) Prompt

Refreshes the current page.

inspectForm(droneId) Prompt

Inspects current page for interactive inputs/buttons.

fillForm(droneId, dataMap) Prompt

Fills web forms using an intelligent element locator.

clickElement(droneId, identifier) Prompt

Performs a stateful click via ID, Name, Link Text, or XPath.

scrollToElement(droneId, identifier) Prompt

Scrolls the specified element into view.

waitForElement(droneId, cssSelector, timeout) Prompt

Waits for an element to be visible on the page.

getStatus(droneId) Prompt

Gets the current status of a specific drone.

killAll() Prompt

Terminates all running browser processes on host.

Shell Toolkit (1 Tool)

runAndWait(String cmd, Type t, dir) Prompt

Runs a command (BASH/CMD/POWERSHELL/SH) and captures output.

Audio & Radio (6 Tools)

record(int sec, String dev) Prompt

Captures audio from hardware input.

play(String uri, String dev) Prompt

Plays audio files on output hardware.

selectRecordingDevice(String id) Prompt

Selects authoritative input hardware for session.

selectOutputDevice(String id) Prompt

Selects authoritative output hardware for session.

radio.start(String url) Prompt

Initiates high-fidelity internet stream.

radio.stop() Prompt

Gracefully terminates active radio stream.

Speech Toolkit (1 Tool)

speak(String text) Prompt

Synthesizes and speaks text using internal Java TTS.

Screens & Host (7 Tools)

takeScreenshot(int device) Prompt

Captures a full screenshot of a physical display.

screenshotAllGraphicsDevices() Prompt

Bulk captures all visible application windows.

captureRegion(x, y, w, h) Prompt

Captures a specific region of the primary screen.

toggleDeviceSharing(int deviceIdx) Prompt

Starts or stops sharing a physical screen live.

startSharingRegion(x, y, w, h, name) Prompt

Adds a specific rectangular region to the live share.

stopSharingRegion(String regionId) Prompt

Stops sharing a specific region by its ID.

listProcesses() Prompt

Retrieves active system processes.

killProcess(long pid, bool force) Prompt

Terminates a specific process by PID.

Governance (8 Tools)

history.setMessagePruningState(...) Prompt

Bulk sets pruningState (AUTO, PRUNED, PINNED) of messages.

history.setPartPruningState(...) Prompt

Bulk sets pruningState (AUTO, PRUNED, PINNED) of parts.

history.clearGarbageCollectorLogs() Prompt

Deletes the context window garbage collector logs.

history.setInjectInbandMetadata(bool) Always

Toggles in-band vs consolidated metadata tracking.

session.updateSessionNickname(String) Prompt

Updates session title in dashboard.

session.updateSessionSummary(String s) Always

Updates human-readable task dashboard.

session.setToolkitEnabled(bool, names) Prompt

Enables or disables toolkits globally.

session.setContextProviderProviding(...) Prompt

Toggles provider/resource visibility in prompt.

session.killRunningTools(ids) Always

Kills executing tool calls mid-flight.

session.enableHostedTools() Prompt

Switches to server-side mode (Google Search/Code).

asi.createNewAgi(...) Prompt

Creates a brand new AGI session.

asi.listActiveAgis() Prompt

Lists all active AGI sessions.

asi.getAgiDetails(sessionId) Prompt

Returns detailed metadata for an AGI session.

asi.dumpHistory(sessionId) Prompt

Returns a plain text dump of conversation history.

Swing Java (3 Tools)

compileAndExecute(Code, CP, Options) Prompt

Compiles model-generated Java with total EDT awareness.

getDefaultClasspath() Prompt

Gets the default classpath for compiler and classloader.

setDefaultClasspath(String cp) Prompt

Sets the default classpath for all Java code execution.