Skip to content

Latest commit

 

History

386 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

factorai

IDE is dead. Long live the ADE

Agentic Development Environment for the AI era

status: alpha platform: macOS and Linux CI licence: MIT

Warning

factorai is alpha. It is used daily by its author and by very few other people. Releases go out several times a day and publish themselves; things move, break and get renamed without ceremony. It drives real agent sessions against real repositories, so point it at work your version control can recover. What's next and what just landed.

You stopped writing most of the code. Your editor never noticed. It still opens files one at a time, still assumes the cursor is the thing that matters, still treats the terminal running your agent as a rectangle at the bottom of the screen.

factorai is built the other way round. The unit of work is a session, not a file — agents are long-lived processes you launch, watch, resume and kill, and reading code is something you do to check on the work.


Run agents, not chats

Every session is a real PTY with xterm.js in front of it — the actual claude CLI, not a reimplementation of it. Launch a new one, resume an old one, stop and restart it. Terminals survive navigation: leave a session, go read a file, come back, it is still running.

The dot beside each session says what it is doing — working, waiting for you, or stopped — read from Claude's own terminal title rather than guessed at, so "is it blocked on a permission prompt?" is answerable from the sidebar. Open sessions become tabs, and the tabs come back when you relaunch.

factorai running a live session, with the sidebar showing session status

Put an agent on a schedule

A routine is a saved prompt with a cron behind it, kept per project: a nightly triage, a dependency sweep, a lint gate on the hour. When one comes due, factorai starts a session with that prompt as its first message — without opening a tab, so a project's scheduled work does not take the window away from what you are doing. Its dot is blue while it runs in the background, and opening it makes it an ordinary session with an ordinary tab.

Routines run while factorai is open, and a run missed while it was closed is caught up at launch.

A project's Routines tab: three routines with their schedules, next runs and enable switches

Arrange the sidebar the way you think

Projects sit where you drag them, in groups you name — Pro, Perso, side projects. Drop one on a group to file it, on the edge to leave it beside, or hold it over another project to group the two. Alt+arrows and Move to group do the same from the keyboard, and Name or Recent sort when you would rather have a rule than an arrangement.

Find the conversation you half-remember

factorai reads ~/.claude/projects/ directly — projects, sessions, titles, turn counts, timestamps. Nothing is imported, copied or migrated; your transcripts stay exactly where the CLI put them, and that directory is treated as read-only.

On top of it sits SQLite FTS5 across every message in every session, so "which conversation was that?" takes a second rather than an afternoon of grep through JSONL.

Full-text search across every message in every session

Inspect what it did to your repo

A Changes panel with the usual git grouping — staged, unstaged, conflicts — line counts per file, and a diff on click. It polls, so it keeps up with an agent mid-edit.

A Graph tab for the history around what just happened: lanes, refs, and who wrote each commit. And a file tree with git decorations — changed files coloured, dirty folders dotted, ignored ones dimmed — in front of a Monaco viewer with syntax highlighting and rendered markdown.

A side-by-side diff of a changed file, index against the working tree

The Graph tab, showing refs, tags and a commit's changed files


Nothing leaves your machine. No telemetry, no analytics, no crash reporting. No account, no server, no sync — factorai reads local files and runs local processes, and it never handles your credentials: it drives the claude CLI you have already logged into.

No orphan agents, ever. Closing the window with live sessions always confirms, then kills every child (SIGTERM → SIGKILL). An unattended claude process is real money.

Install

Grab the .dmg (macOS), the .AppImage (Linux) or factorai-setup.exe (Windows) from Releases. They update themselves — factorai checks on launch and every six hours, stages the new version in the background, and shows Restart in the header when it is ready. Nothing restarts on its own, because a restart kills running sessions.

You also need the Claude Code CLI, already authenticated (claude login).

On Windows, factorai runs inside WSL 2. It is the Linux build in your own distribution, shown as a normal window by WSLg — not a native port. That is on purpose: your repositories, your toolchain and your claude login live in the distribution, and reaching them from Windows goes over a network filesystem that is slow and where file watching does not work at all. factorai-setup.exe checks the machine, installs into your default distribution and puts factorai in the Start menu. It never installs WSL for you — if something is missing it tells you the command to run.

Needs Windows 10 21H2 (build 19044) or Windows 11, x86_64, with WSL 2. ARM64 Windows is not supported. Keep your projects inside the distribution, under ~ — a folder on /mnt/c works, but the session list will not update on its own there and git is slow, and factorai marks such a project with a warning.

Three things that look like the app is broken, and aren't

macOS builds have no Apple Developer certificate behind them, so Gatekeeper refuses the app on first launch with "damaged and can't be opened". Right-click the app → OpenOpen, or clear the quarantine attribute yourself:

xattr -dr com.apple.quarantine /Applications/factorai.app

macOS asks for App Management the first time an update installs, with "factorai was prevented from modifying apps on your Mac". Installing an update means replacing factorai.app, and macOS gates that. Allow it in System Settings → Privacy & Security → App Management and it stays allowed. If it keeps asking on every release, or folder permissions keep coming back, you are on a build at or before v0.32.0 — those grants were tied to the exact build, and every release voided them.

Linux bundles need glibc 2.39 or newer — Ubuntu 24.04+, Debian 13+, Fedora 40+. They are built on Ubuntu 24.04, and a glibc-linked binary does not run on an older release than the one that built it. On Ubuntu 22.04 you will see GLIBC_2.38 not found; build from source there instead.

There is no .deb, on purpose: Tauri's updater can replace an AppImage in place but never a .deb, since apt owns those files — and a package that silently never self-updates is worse than none.

Windows warns that it protected your PC when you run factorai-setup.exe, because the installer is unsigned. Click More infoRun anyway. It is unsigned for a concrete reason rather than an oversight: there is no free Authenticode certificate authority — since June 2023 CAs must keep code-signing keys on dedicated hardware — and self-signing changes nothing a user sees on Windows. An application to SignPath Foundation, which is free for open-source projects, is in flight. The Linux binary the installer places is signed the way every other release is, and the app verifies its own updates.

Reveal in file manager does nothing on Windows. There is no file manager on WSL's session bus for the app to ask. External links work.

Building from source, and everything else a contributor needs, is in CONTRIBUTING.md.


macOS, Linux, and Windows through WSL 2.

About

Agentic Development Environment (ADE) for the AI era

Resources

Contributing

Stars

5 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages