An Android code editor with AI built in. Fork of the original by Rohit Kushvaha, maintained by algospider.
Xed is a code editor for Android that runs a full terminal (Termux-based), has LSP support for a bunch of languages, and integrates multiple AI agents so you can edit code through chat. It's kind of like having Cursor or Windsurf on your phone, except it's open source and doesn't phone home.
The built-in "vibe coding" agent runs on-device — reads your project, makes edits, runs commands, manages git. All through a multi-agent pipeline that keeps track of context, loops, and tool calls.
- AI agents — built-in native agent + support for Gemini CLI, OpenCode, Codex CLI, Antigravity. Pick your poison.
- Terminal — proper Termux terminal with proot/Ubuntu support, session management, extra keys
- Code intelligence — LSP for Python, TS/JS, HTML, CSS, JSON, XML, Markdown, Bash. Diagnostics, completions, go-to-def, hover docs
- Editor — SoraX engine with syntax highlighting, minimap, multi-cursor, code folding, bracket matching
- Search — index-based code search via Room DB, find/replace in files, command palette
- Customizable — Material 3 theming, custom fonts for editor/terminal/UI, keybinds, icon packs, plugins
- No tracking — zero telemetry, no Firebase, no analytics. Your code doesn't leave your device unless you want it to
- Grab the latest APK (Android 8.0+)
- Open the AI sheet from the toolbar
- Drop in an API key for whatever agent you want to use
- That's it — start typing what you want done
Nightly debug builds are on GitHub Actions if you're feeling adventurous.
Releases are triggered manually from GitHub Actions (Android Release CI workflow):
- Go to Actions → Android Release CI → Run workflow
- Enter the version name (or leave blank to use
version.properties) - Optionally enter changelog notes, or let it pull from
CHANGELOG.md - The workflow builds the signed APK, creates a GitHub release, and auto-bumps
versionCode
For local version bumps, use ./scripts/bump-version.sh:
./scripts/bump-version.sh patch # 3.2.9 → 3.2.10
./scripts/bump-version.sh minor # 3.2.9 → 3.3.0
./scripts/bump-version.sh major # 3.2.9 → 4.0.0
./scripts/bump-version.sh manual 3.5.0 # set specific version
Add release notes to CHANGELOG.md under the new version header before running the release.
The native vibe-coding agent uses a pipeline architecture:
- GenerationHandler manages multi-step LLM interactions — calls the model, handles tool call loops, compaction, doom-loop detection
- Transformer chain — input/output transformers that handle placeholders, prompt injection, think tags, base64 images, lorebook documents
- Tool system — 30+ tools the agent can call (read/write files, search, run commands, git, LSP queries, web fetch, etc.)
- Security hooks — blocks dangerous patterns (eval, pickle, SQL injection) before writes
- Context memory — keeps track of project structure, recent edits, tool history across the session
Under the hood it's talking to OpenAI-compatible APIs, Google AI, Claude, or whatever provider you configure. The MCP bridge lets external agents hook into the same editor tools.
Because nothing on Android had all of these things together. Existing editors either had no AI, no terminal, no LSP, or were abandonware. This one is actively maintained and actually works on a phone screen.
- Discord — where most of the chat happens
- Telegram — announcements
- GitHub Issues — bugs, feature requests, rants
This is a fork of Rohit Kushvaha's original work, maintained by algospider (Mohan Sharma). The vibe-coding agent uses RikkaHub under the hood.
Thanks to everyone who's submitted PRs, filed bug reports, or just used the thing.
GPL v3. See LICENSE.
Copyright (C) 2025 Rohit Kushvaha — Fork maintained by algospider (Mohan Sharma)


