Jenderal/code
Desktop AI coding agent v0.1 · MIT · macOS · Windows · Linux

An agent that codes in your repo. It asks before it acts.

JenderalCode reads, edits, runs tests and fixes, with whichever model you choose, while every write, command and push goes through a permission engine you control. Every change is checkpointed, so a bad idea is one click from undone.

Free and open source. Bring your own API key, or run local models with Ollama or LM Studio.

Models
9+ providers, local too
Permission modes
3 Safe · Balanced · Full
Platforms
3 macOS · Win · Linux
License
MIT open source
01 · Datasheet

Everything an agent needs. Nothing it shouldn't do.

A real workspace around the model: files, git, terminal, language servers and your own tools, wired through one permission engine and one undo button.

F.01permissions

You set how much it may do

Safe asks before every write and command. Balanced lets edits through and asks for commands. Full access never asks, yet still blocks destructive commands and writes outside the project.

F.02checkpoints

Every change can be undone

Files are snapshotted before the agent writes or deletes them. Restore a session's edits in one click, git or no git.

F.03models

Any model, including local

OpenAI, Anthropic, Google, DeepSeek, Mistral, xAI, Groq, Ollama and LM Studio. Switch per conversation, with live context and cost meters.

F.04mcp

MCP servers as tools

Plug in Playwright, Laravel Boost or any MCP server over stdio or HTTP. A project's .mcp.json runs only after you trust that exact file.

F.05agent clis

Your agent CLIs, side by side

Claude Code, Codex, OpenCode and Antigravity in tabs next to the chat, kept running per project and resumed after a restart, with their subscription limits a click away.

F.06diagnostics

It sees its own mistakes

After each edit, language servers (TypeScript, PHP, Python, Rust, Go) report errors straight back to the agent, so broken code gets fixed in the same turn.

F.07composer

Talk to it while it works

Queue the next request or steer the running turn. Mention files with @, paste screenshots for vision models, and keep the agent's todo list in view.

F.08skills

Skills and sub-agents

Reuse SKILL.md playbooks from your projects and ~/.claude, run them as /commands, and hand research to read-only sub-agents with their own context.

F.09updates

Signed updates, in place

The app checks for a new release when it starts and installs it with one click. Every update is signed and verified before it touches your machine.

02 · Signal path

Every tool call takes the same five checkpoints.

  1. → 01

    Classify

    The call becomes a concrete action: read, write, delete, run, fetch.

  2. → 02

    Resolve

    Paths are canonicalized; anything escaping the project, even via symlink, is caught.

  3. → 03

    Check

    The policy engine allows, denies, or asks you, with the diff or command in front of you.

  4. → 04

    Snapshot

    Before a write or delete, the file is checkpointed so it can be restored.

  5. → 05

    Execute

    With timeouts, output caps and process-group kill. Results go back to the model.

03 · Containment

Built for code you don't fully trust.

Repositories contain instructions, configs and scripts written by strangers. JenderalCode treats them that way.

  • keys

    API keys stay in your OS keychain or a 0600 file, never in the database, and are stripped from the environment of commands the agent runs.

  • commands

    Shell commands are parsed, not pattern-matched: pipes, subshells and bash -c are followed. Catastrophic commands are refused in every mode; git push asks unless you chose Full access.

  • files

    Reading .env, private keys or credentials asks first (outside Full access). Edits are refused on files the agent hasn't read, or that changed since.

  • projects

    Project instructions are marked untrusted in the prompt. A repository's MCP servers never start until you trust that exact config.

  • webview

    A strict content policy: model output can't load remote resources, run scripts or navigate the app away.

04 · Install

Download JenderalCode

Latest release: v0.1 · all releases

macOS 11+Apple Silicon · Intel

macOS

Download .dmg

Drag the app to Applications, then run this once in Terminal (the app isn't notarized by Apple yet):

$ xattr -cr /Applications/JenderalCode.app

No Terminal? Open the app once, then System Settings → Privacy & Security → Open Anyway.

Windows 10/11x64

Windows

Download .exe

Run the installer. SmartScreen may warn because the installer isn't code-signed yet: choose More info → Run anyway.

Linuxx86_64

Linux

Download .AppImage

The AppImage updates itself; make it executable with chmod +x. The .deb and .rpm packages are updated by reinstalling.

05 · FAQ
Is it free?+

Yes. The app is MIT-licensed. You pay your model provider directly with your own API key, or nothing at all with local models.

Does my code leave my machine?+

Only what the agent sends to the model provider you pick, as context for its work. With Ollama or LM Studio, nothing leaves your machine. There is no JenderalCode server.

Can I keep using Claude Code or Codex?+

Yes. Open them in tabs next to the built-in agent. They run in your login shell with their own accounts, and JenderalCode shows their usage limits.

Why does my OS warn on first launch?+

The builds aren't notarized by Apple or code-signed for Windows yet. The app's own updates are signed and verified, and the source is on GitHub.