Sworm - the buggiest ADE
  • TypeScript 35.4%
  • Svelte 31.2%
  • Rust 28.3%
  • Nix 3.6%
  • CSS 0.8%
  • Other 0.7%
Find a file
2026-05-04 01:55:26 -04:00
.claude docs: cleanup .claude 2026-05-03 01:35:34 -04:00
.githooks chore: add pre-commit formatting hooks and new skills 2026-04-12 18:08:10 -04:00
.sworm feat(app): open folders from file manager launches 2026-04-22 22:34:42 -04:00
.vscode init: repo initial structure and configuration 2026-04-10 15:30:23 -04:00
src feat(git): add branch management controls 2026-05-04 01:55:26 -04:00
src-tauri feat(git): add branch management controls 2026-05-04 01:55:26 -04:00
static feat(tasks): add project task runner support 2026-04-22 20:35:57 -04:00
.agents init: repo initial structure and configuration 2026-04-10 15:30:23 -04:00
.codex refactor(builtins): move language tooling into builtin catalog 2026-04-21 15:00:07 -04:00
.gitattributes feat(providers): add Fresh and Terminal session types, bundle Nerd Fonts 2026-04-11 21:18:52 -04:00
.gitignore feat: initial ADE implementation 2026-04-10 19:39:23 -04:00
.mcp.json init: repo initial structure and configuration 2026-04-10 15:30:23 -04:00
.prettierignore init: repo initial structure and configuration 2026-04-10 15:30:23 -04:00
.prettierrc init: repo initial structure and configuration 2026-04-10 15:30:23 -04:00
AGENTS.md init: repo initial structure and configuration 2026-04-10 15:30:23 -04:00
bun.lock refactor(diff): replace custom diff view with pooled Monaco DiffEditor 2026-04-20 04:14:15 -04:00
bun.nix refactor(diff): replace custom diff view with pooled Monaco DiffEditor 2026-04-20 04:14:15 -04:00
CLAUDE.md feat(app): single-instance lock with dev/prod isolation 2026-04-16 23:58:18 -04:00
COMMITS.md feat: file explorer, markdown editor, and non-repo support 2026-04-15 03:01:29 -04:00
flake.lock feat(ui): add menubar, pane tab system, and new providers 2026-04-12 02:05:27 -04:00
flake.nix fix: terminal Shift+Tab and deleted-file diff regressions 2026-04-26 16:31:23 -04:00
package.json refactor(diff): replace custom diff view with pooled Monaco DiffEditor 2026-04-20 04:14:15 -04:00
README.md docs: new agent skills and a WIP readme 2026-04-23 14:37:32 -04:00
svelte.config.js chore: formatting pass 2026-04-12 18:01:28 -04:00
TODO.md feat(tasks): add project task runner support 2026-04-22 20:35:57 -04:00
tsconfig.json feat: initial ADE implementation 2026-04-10 19:39:23 -04:00
vite.config.ts feat(editor): integrate Monaco as primary file editor 2026-04-15 20:56:34 -04:00

Sworm 🐛

The Agent IDE for Linux.

Sworm is a code-first, agent-native development environment. It doesn't try to replace your agent CLIs (Claude Code, Codex, etc.) with a chat box; instead, it wraps a real IDE around them.

Sworm is a light environment for your swarm of agents and thier buggy code. Built for developers who want to leverage AI agents without losing the power of a proper file tree, editor, and Git integration.

Status: Early development. Linux/Wayland first. Expect breaking changes as the workflow evolves, and it's moving fast.


Why Sworm?

Most "ADEs" want to hide your code. They push you into chat panes and frame everything around "let the AI do it." I like AI in my workflow, but I also like reading code, owning my diffs, and using the tools my editor gives me.

Sworm takes a different approach: The CLI is the primary agentic interface.

Agent CLIs like Claude Code and Codex already have excellent tool ecosystems (MCP, skills, memory). Sworm gives these agents a first-class home with:

  1. Context-Aware Terminals: Multi-session PTYs that automatically track agent activity and link it to the IDE state.
  2. Review-First Workflow: Agents touch a lot of code. Sworm is built to help you review, diff, and commit those changes with confidence.
  3. Nix-Native Reproducibility: Your dev environment shouldn't be a mystery. Sworm uses Nix Flakes to ensure every terminal and task runs in the exact environment your project requires.

Highlights

Agent-Native Integration

  • Thread Tracking: Deep integration with tools like Codex to link terminal sessions with agent conversation history.
  • Activity Mapping: Scans your filesystem to discover where agents have been active, providing a "heatmap" of agent-driven development, helping you locate your AI projects.
  • Multi-Session PTY: Run claude, codex, opencode, or standard shells in a project-scoped, persistent terminal.

Nix-Powered Environments

  • Flake Integration: Point Sworm at a flake.nix and its devShell becomes the environment for every shell, session, and task.
  • Zero Configuration: No direnv or manual activation required. If it's in the flake, it's in your PATH.

Serious Git Tooling

  • Commit Graph: A VSCode-style visual representation of your repository's history.
  • Advanced Stashing: Per-file stashing and a dedicated stash management UI.
  • Diff Viewer: High-performance, Monaco-based side-by-side diffs for reviewing agent-generated changes.

High-Performance Editor

  • Monaco + Shiki: The reliability of Monaco with the accuracy of TextMate-based syntax highlighting.
  • Extension System: LSP support via a manifest system (built-in support for Rust, Nix, TS/JS, and more).
  • Bundled Tools: Includes Fresh as an alternate in-terminal editor for quick edits.

Tech Stack

Sworm is built for performance and a native feel on modern Linux:

  • Tauri v2 + Rust: Privileged operations (PTY, Git, FS) handled by a fast, safe backend.
  • Svelte 5: A modern, reactive frontend that stays out of the way.
  • Monaco Editor: The editor you know and the industry standard for web-based code editing.
  • SQLite: Reliable local state management.
  • Nix: The foundation for reproducible development environments.

Getting Started

nix run github:tophc7/Sworm

From Source

git clone https://github.com/tophc7/Sworm
cd Sworm
nix develop (or install all depencies)
bun install
bun run app:dev

Credits

  • Emdash — An agent-centric IDE The initial inspiration for sworm.
  • Fresh — Bundled as an alternate in-terminal editor.

License

AGPLv3-or-later.