Ankita Desktop AI Workspace
A local-first AI workspace that talks, runs real tools and schedules work on your own machine — as a desktop app, floating companion or terminal CLI.
- Source repo
- akyourowngames/A.N.K.I.T.A
- Stars
- ★ 11
- Last updated
- today
- License
- MIT
- Primary language
- JavaScript
- FA score
- 54/100 · Major gaps
At a glance
- How it runs
- Works with
- Portable with changesChatGPT · OpenAI API
- Cost
- Free software; you pay for model usage
- Setup effort
- Medium · a few setup steps
- You'll need
- Typical use
- A Windows developer who wants an assistant that can actually edit the repo, run the test command and show the diff before applying it.
- Not a fit if
- Teams needing officially supported macOS/Linux desktop builds (this release is verified on Windows)
- Developers who just want in-IDE coding and no desktop workbench or scheduled jobs
- Source review
- 54/100 · Major gaps
What does this agent do, and when should you use it?
Ankita is a personal AI workspace with three surfaces sharing one agent runtime: an Electron desktop workbench (desktop/electron, desktop/renderer), a floating "island" companion that stays available when the main window is hidden, and a terminal CLI invoked as ankita. It executes concrete work rather than only answering: reading, editing and patching files, running shell commands and background jobs, browsing pages through an isolated Playwright browser or a connected Chrome, making Git and HTTP requests, and pulling readable text from web pages. Tool activity, results and approval requests stay inside the conversation so you can inspect a command or diff before it runs. Providers include ChatGPT Browser, GitHub Copilot, Groq, Kilo and any OpenAI-compatible endpoint. Projects hold a working folder, tasks and searchable context notes; personal memory keeps preferences and facts under bounded recall. A schedule tool turns chat-described tasks into recurring jobs with isolated browser profiles and proof of results, and Channels routes Telegram messages to a chosen teammate so desktop and phone share one thread. The project is MIT-licensed with Windows x64 as the verified release target.
Tool families cover files and code (read, write, edit, patch, glob, search), commands and processes (run, inspect ports, background jobs with status, output, stdin and Stop), Git and HTTP, web and browser (search, readable extraction, browser actions, tabs, screenshots), projects and memory, automation (scheduled prompts, page watches), images (generation, Unsplash and Pixabay search), and connected apps through MCP servers and Composio integrations. Deferred families load on demand, and approval tiers run from auto-allow through ask-once, always-ask and deny. The desktop adds Work review with Git diffs, recent artifacts and command runs, plus an "Edited N files" card emitted after a turn ends. CLI commands such as /skills, /project, /browser, /sessions, /routines and /usage all come from one shared command registry, and flags like --model, --api-base, --no-tools, --plain and --json configure single runs.
- A Windows developer who wants an assistant that can actually edit the repo, run the test command and show the diff before applying it.
- Someone with a recurring web chore — checking a page daily, filling a form — who wants it turned into a scheduled job that reports back with proof.
- A user who wants to push tasks from their phone via Telegram and have the same desktop teammate answer, including approving a tool call in chat.
- People who already pay for ChatGPT or GitHub Copilot and want that existing access to drive local files, commands and browser control.
- Scripters who need one-shot prompts, pipelines or a background daemon (ankita -p, ankita --daemon) rather than a GUI.
How do you install or deploy this agent?
On Windows, download from the latest release:
setup-x64.exe # installer, supports in-app updates
portable-x64.exe # standalone copy, update by downloading a newer exeRunning from source — clone and install dependencies first:
npm ci
npm run desktop:devOr build the production renderer:
npm run desktop:build
npm run desktop:startCLI install and first configuration:
npm link
ankitaCopy the environment template (PowerShell and POSIX shells differ):
cp .env.example .envCopy-Item .env.example .envHow do you use this agent?
After opening Ankita, pick a provider under Settings → Providers (fresh installs start on Kilo's keyless free models) and create a teammate. With GitHub Copilot selected, complete the device sign-in flow the app shows; for a custom provider, enter its API base URL and credentials. Then state the task in chat and review each approval card before letting a command or file edit proceed. The first working CLI invocation:
ankita -p "Summarize this repository"Other common entry points:
ankita --continue
ankita --list-models
ankita --voice
ankita --daemonTo wire up Telegram, open Settings → Channels and add the bot token, allowed chat IDs and the teammate that should answer; only one active poller per bot token. Webpage capture needs a separate step in Chrome/Edge: enable Developer mode on the extensions page, choose Load unpacked and select the helper folder, then paste the pairing code copied from Ankita.
What are this agent's strengths and limitations?
- Desktop workbench, floating companion and CLI all drive the same runtime and tools, so context carries across surfaces instead of resetting.
- Approval is built into the flow: commands, file diffs, background jobs and browser actions are surfaced for confirmation with expandable evidence afterward.
- Provider choice is real, spanning ChatGPT Browser, GitHub Copilot, Groq, Kilo and arbitrary OpenAI-compatible endpoints via base URL and key.
- Scheduled jobs run on isolated browser profiles and report back into the owning teammate's thread, and scheduling survives window close via the tray.
- Separation of personal memory, project records and chat history, plus default secret scrubbing and a device-encrypted vault for saved sign-ins.
- Desktop is verified only on Windows x64; macOS/Linux packaging targets are declared but unverified, and releases ship Windows builds.
- Source runs are pinned to Node 20.19+, 22.12+ or 23+, with 22.12+ required for desktop development and packaging.
- Voice features need ffmpeg/ffplay installed separately, and the optional stealth scraping tier needs Python and Scrapling.
- Several features need individual setup — browser connections, the unpacked capture extension and the Telegram channel each have their own pairing steps.
- Secret scrubbing only catches recognized key/token shapes and labeled values; unlabeled or split secrets can slip through, and live model requests still receive pasted content.
How does this agent compare with similar options?
Key facts side by side with the most closely related agents.
| Agent | Source review | Form / cost | Stars | Updated | Language | Full support on |
|---|---|---|---|---|---|---|
| Ankita Desktop AI Workspace This agent | 54 · Major gaps | Desktop appFree + model costs | ★ 11 | today | JavaScript | ChatGPT · OpenAI API |
| Skales | 36 · Major gaps | Desktop appFreemium | ★ 2.2k | 8d ago | — | ChatGPT · OpenAI API · Claude API |
| Abu Desktop Assistant | 61 · Some gaps | Desktop appFree + model costs | ★ 404 | today | TypeScript | OpenAI API · Claude API |
| Waku | 47 · Major gaps | CLIFree + model costs | ★ 2.1k | 15d ago | Python | OpenAI API · Claude API |
How does FollowAgents rate this agent?
Why each dimension lost points
README and plan docs show workspace-bounded file tools, private-host/redirect guards on web tools, tiered MCP/Composio approvals (auto-allow/ask-once/always-ask/deny) and approval for commands and edits, so least_privilege and user_confirmation score 2; deducted because skill plugin.json permissions are explicitly 'advisory author metadata, not a runtime sandbox or an access grant'. Data flow: secret scrubbing is on by default, credentials live in a device-encrypted vault and the model sees references not plaintext, but README admits live model requests can still receive pasted content and arbitrary unlabeled or split secrets may go undetected, so data_flow_transparency and sensitive_data_handling are 2 not 3. Dependency security shows only pinned versions and npm ci in the release workflow, with no audit/SBOM/vulnerability-scan evidence, so 1. external_effects covers browser automation, Telegram channels, scheduled jobs and Computer Use with approvals and Stop/takeover, but the plan doc admits an ownerless task still falls back to the most recently updated teammate and runs, so 1. rollback is limited to project-level Undo and /project undo with no general rollback for commands, browser actions or external publishing, so 1. source_attribution has MIT copyright, third-party NOTICES and skill contributor/PR credit, so 2.
self_consistency is supported by CHANGELOG, findings docs and plan docs cross-referencing fixes (2.5.2 startup, computer-direct-config crash), and the plan doc honestly records that the scripted-login worker failed and that path was not re-verified, so 2. dependency_availability declares Node ranges and optional ffmpeg/Python but gives no lockfile content or offline-availability evidence, and a findings doc records a local install older than the lockfile causing ERR_MODULE_NOT_FOUND, so 1. failure_messages describe provider error categories, partial-work receipts, fresh observations and protocol correction, so 2.
audience_and_scenarios covers desktop, floating island, CLI, Telegram and scheduled jobs, so 2. capability_boundaries are explicit via the tool-family table, skill permission notes, browser/Computer Use boundaries and 'MFA requires foreground input', so 2. trigger_precision relies on skill auto-tools/description matching and a command registry with no quantified false-trigger evidence, so 1. environment_fit is Windows x64 only for verified releases, with macOS/Linux declared but unverified, so 1.
information_architecture has a clear directory tree and documentation index, so 2. install_notes cover Windows install, source run, Node versions, .env copy and browser-helper loading, so 2. naming_stability is weakened by A.N.K.I.T.A vs package ankita, CLI ankita/ankita-chat and config dir ~/.copilot-chat-cli, so 1. examples_and_faq include a full skill handbook example, CLI command table and shortcut table, so 2. known_limitations are detailed in README and the plan doc's 'Remaining limits', so 2. license is a complete MIT text, so 2. versioning_changelog has CHANGELOG, semver and a release workflow, so 2. maintenance_responsibility is weak: publisher unverified, author field just 'Ankita', no governance or security contact, so 1.
output_usability has streaming Markdown, tool cards, diff review, background jobs and structured receipts, so 2. marginal_value adds desktop companion, scheduling, browser and memory beyond a generic coding agent, so 2. cost_benefit lacks token/cost quantification (the plan doc mentions browser request cost research without conclusive data) and carries heavy dependencies (Electron, Playwright, Chromium), so 1.
claim_traceability is supported by findings docs with reproduction commands, error stacks and test counts, and plan docs with concrete log paths and commands, so 2. cross_source_corroboration is partial: claims like 832 tests and packaged verification appear only in the plan doc's self-report, not independently corroborated by README or CHANGELOG, and the plan doc admits some paths were not re-verified, so 1. fact_inference_separation is shown by docs distinguishing local test systems from public sites and scripted fixtures from real models, so 2.
- Publisher identity is unverified and the author field is only 'Ankita' with no security contact or governance; verify provenance before installing.
- Skill plugin.json permissions are advisory author metadata, not a runtime sandbox; installing third-party skills does not grant isolation.
- Secret scrubbing covers labeled/known shapes only; live model requests can still receive pasted sensitive content and split secrets may be missed.
- The plan doc admits an ownerless scheduled task falls back to the most recently updated teammate and still runs; confirm this before enabling scheduling.
- Only Windows x64 is release-verified; macOS/Linux targets are declared but unverified, and Computer Use/browser automation carry real external side effects.
- Heavy dependencies (Electron, Playwright, Chromium) with no audit or SBOM evidence; a findings doc records a local install older than the lockfile causing missing modules.