Skip to content

Feature status

Mend is under active development. This page describes the current repository, not a promise about a published release. Run mend version and mend doctor, and check your installed versions before following a guide.

Area Current behavior
Project store Clone network Git URLs into a bare repository owned by Mend; local paths and file:// sources are rejected
Worktrees Durable named checkouts; sessions join by name, several live at once
Agents Launch Codex, Claude Code, opencode, pi, and arbitrary commands; the server owns one model list every client picks from (mend models); a Claude Code, Codex or pi agent run by hand inside a session’s shell or editor terminal is observed as its own process, within about half a minute and ended five minutes after its last write (not opencode)
Session processes Run terminal (agent-pty) and conversation (agent-protocol, Claude Code and Codex) agents, shells, and Services in one session workspace
Captured session store The default store: workspaces work on their own disk and capture their work to an S3-compatible bucket (Garage in the Docker install), with Postgres holding the pointers; nothing from the host is bind-mounted into a workspace
Reattachment Detach and replay terminal output from the CLI, web, VS Code, and mobile clients
Workspace images Managed Arch, Ubuntu, Fedora, and Nix families plus custom OCI bases
Project environment Plaintext configuration, encrypted write-only secrets, .env import; projects inherit their organization’s defaults, which inherit the instance’s
Cluster bindings Declared per project; resolved into workspace environment at each cluster launch
Identity Per-user Claude, Codex, and GitHub connected accounts; pi and opencode run on the Codex (ChatGPT) login; mend connect claude makes a Claude login of Mend’s own, and --use-my-login shares the machine’s instead
Dotfiles Repository-backed setup and home-file snapshots per user
Secret files Per-user files such as ~/.aws/credentials or a kubeconfig, encrypted at rest, written into every session the person owns before the agent starts, never captured (mend secrets)
Git author Per-user name and email for the agent’s commits (mend git-author), defaulting to the registered name and email
Skills Per-user and per-project skill libraries, uploaded with mend skills push and delivered to sessions at launch; Claude Code plugins the settings enable are installed before Claude starts
Agent memory Claude Code and Codex memory kept per person per project and carried into each session the person starts; mend memory import brings a checkout’s memory from this machine; CLI only
pi profile mend connect pi sends a person’s pi extensions, settings and mcp.json; every pi session they start receives it
Extra inputs Organization references mounted read-only at /workspace/ref/<name>, and organization folders a project selects at /workspace/home/<name>; captured workspaces receive both as copies; mend repo add puts a worktree of another project of the store at /workspace/repos/<name> in a running session, saved with the main repository and not yet reviewable on its own
Services Explicit supervision, raw TCP/UDP host forwards, authenticated client tunnels; attached terminals and the dashboard tunnel a remote session’s --http/--https Services automatically
Hot sessions Standby executors keyed by launch-input fingerprints, bound to a fresh worktree at claim
Automatic install Per-project switch, on by default; the command is detected from the lockfile unless a custom one is set; Mend runs it when a workspace has no tree for its platform and to fill the shared cache standbys read
Git access A Mend key per user, added to the user’s Git account or as a deploy key; SSH-agent bridge; workspace transport shim
Organizations and tenancy One organization per instance (MEND_TENANCY=single); owners and members; single-use invitations, with registration closed after the first account; private and shared projects; shared control of a session; an audit log; an operator role for the instance
Exposure MEND_EXPOSURE (loopback, private by default, public); the public exposure gate report (mend operator exposure), with public refused while an observable item is open; single-use upgrade tickets for sockets and the terminal embed
Budgets Limits on request bodies, request rates, live sessions, launches, bundles and open connections per client, account and organization; a budget refuses new work and never stops running work
Remote access Browser access, device pairing, bearer revocation; advertised and pairing URLs come only from the server’s configured origins
Change review Worktree-versus-base diffs, checkpoints and slices between them, comments sent back to the session, descriptions, tours, and suggestions from Mend reading the change
Landing mend land and the web push a change to origin and open or update its GitHub pull request; automatic landing after a completed turn; a pull request the agent opens is recorded when its turn ends, and pull requests opened outside Mend are adopted; never merges, never force-pushes
Slack An organization’s own Slack app over Socket Mode; explicit Slack links; @mend starts or follows up a session; thread text and screenshots reach the session; sessions report to their Slack thread
Kubernetes Helm chart 0.3.0: an API tier and a stateless web tier, the capture store in an S3-compatible bucket, an opt-in Ingress to the web tier with TLS, a network session channel, optional npm and Docker mirrors, and cluster workspaces via the Sealant chart; per-person workspaces are unavailable there (sessions in a worktree share one home), and the cloud metadata block does not apply
Self-hosted server mend server setup (guided on a terminal) runs the Mend application, Postgres, Garage, an npm mirror and a Docker Hub mirror on local Docker, with an optional Caddy edge (--edge); status, logs, start, stop, restart, explicit upgrade --version with a private pre-migration database dump (the newest two kept), and mend uninstall
Diagnostics mend doctor checklist; mend doctor --bundle writes one redacted archive for a bug report
Per-person workspaces On by default (MEND_HARNESS_LAYOUT=shared opts out): each person runs as their own Linux user, on their own logins, with passwordless sudo for everyone, so it is not isolation between people; see Per-person workspaces
Scripts mend run prints the command’s output and exits with its code; mend logs, mend wait, and mend service run --wait; --json on mend run, mend projects and mend service list
Cloud metadata block Workspaces on Docker cannot reach 169.254.169.254 or fd00:ec2::254; see Known issues
VS Code extension Mend by Sealant (sealant-sh.mend) on the Visual Studio Marketplace and Open VSX: browser sign-in, the session view and terminal, review, and Remote-SSH into workspaces; the version follows the Mend minor it needs
t3code gateway Opt-in (mend server setup --t3-gateway): t3code’s clients pair with Mend and drive its projects and sessions as threads; see t3code
Desktop app Source in apps/desktop; build it from source. It is not part of the 0.36 release and has no published build

Some implemented paths still need release-level acceptance tests. The operational guides state known boundaries where that matters.

Area Status
Context items and packs Planned; no public library or selection workflow
Immutable context snapshots Schema exists, but session provisioning does not attach one
Editable handoffs Planned
Multi tenancy MEND_TENANCY=multi refuses to start until every item of the multi mode gate passes; mend operator gate lists them
Public exposure MEND_EXPOSURE=public starts only when every item the server can observe is closed. The gate’s last items (Sealant, its registry and the database answering nothing from the Internet; the edge’s certificate; an independent security reassessment of the release) are the operator’s to verify
TLS edge A Caddy overlay (deploy/docker/compose.edge.yaml) that mend server setup --edge <host> installs and every upgrade keeps, or that a Compose project you run yourself applies by hand; it obtained a certificate for alpha.mend.run on 2026-10-10
Published native mobile app Source exists; no supported distribution path
Scoped device permissions Planned; current paired tokens have normal authenticated access
Automatic listener exposure Not planned; Services remain explicit
Backup and restore mend server upgrade saves a private pg_dumpall dump before activating a target; restore is a manual operator procedure, and volume backups are yours to take
Rollback Downgrades are refused; once a target’s migrations may have run there is no automatic rollback or database restore
macOS and installed VS Code Partly checked by hand: a MacBook with OrbStack ran setup, sessions, Remote-SSH and uninstall on a release candidate, and VS Code Remote-SSH was driven end to end on Linux and through an edge; Docker Desktop is not checked. See Mac mini and VS Code
Automatic merge decisions Explicitly outside the product model; Mend never merges

A plan milestone is not release status. A platform feature marked implemented at its source is not available to Mend until a released SDK is installed and Mend adopts it.