# pm7Code > pm7Code is an ACE — an Agentic Coding Environment. A macOS workspace where your projects live, your coding agent works, and your apps get built and shipped. You bring your own agent (Anthropic's Claude Code or Claude CLI, OpenAI's Codex, Pi, Cursor, or xAI's Grok); pm7Code is the workspace around them. ## What pm7Code is - **Category:** ACE (Agentic Coding Environment) — the workspace you live in while a coding agent does the typing. - **Platform:** macOS desktop app, built on Electron + React 19 + TypeScript + Zustand, with node-pty for PTY process management and xterm.js for terminal rendering. - **Agents supported as interchangeable runtimes (6 native):** Claude Code (Anthropic, via the Claude Agent SDK), Claude CLI (Anthropic's Claude Code CLI over an interactive terminal), OpenAI Codex, Pi (multi-provider, defaults to Google Gemini), Cursor (via ACP — Agent Client Protocol), and Grok (xAI, via ACP). An optional Orchestrator mode lets one agent delegate sub-tasks to the others. New agents can be added without changing the workspace around them. - **Agent independence:** pm7Code injects its own protocol (interactive questions, Git Service, neighbor-agent review) into each agent through that agent's own system-prompt channel — appended system prompt for Claude Code, an appended-system-prompt flag for Claude CLI, developer instructions for Codex. It does not depend on a global CLAUDE.md or AGENTS.md to make its own features work, though it still respects your personal global config. - **Author:** PM7 (https://pm7.dev). Currently private / closed-source. ## Positioning - pm7Code is **not an IDE**, not a code editor, not a model wrapper, and not a hosted service. - It runs locally on macOS and spawns the agent CLIs you already have installed. - It is **agent-agnostic by design**: no lock-in to one model or provider. - The underlying promise is **efficiency** — fewer context switches between terminal, editor, browser, and agent UI, so the developer ships faster. ## Core concepts (terminology used inside pm7Code) - **TView** — Terminal View. The xterm.js terminal pane. - **CView** — Claude View / agent transcript. Readable history of every agent run: prompts, tool calls, results, summaries, status — searchable and replayable per session. - **CC** — Command Center. The input panel below the terminal where you compose prompts, store reusable "shelves" (numbered 1–9 for quick recall), and access per-project history. - **BView** — Browser View. Optional webview panel right of CView, with its own tab system (build 2.0.468+). - **Session** — One conversation / run of an agent inside a project. Has its own transcript, prompts, and history. Sessions can be started fresh ("Start new session here") or continued. - **Project** — Top-level unit of work. A workspace folder on disk. Sessions live inside projects. ## What pm7Code is for - Developers who use one or more coding agents and want **one workspace** to drive them from instead of jumping between native provider apps. - Running the **full dev cycle in one place**: open projects → talk to your agent → run builds → ship deploys — without context-switching. - **Bring-your-own-agent** workflows where you want to compare or combine Claude Code, Claude CLI, Codex, Pi, Cursor, and Grok on the same project, including handing a live session over from one agent to another. ## What pm7Code is not for - Not for users looking for autocomplete or in-editor inline AI suggestions (use Copilot or a coding-aware editor for that). - Not for users on Windows or Linux (currently macOS-only). - Not for users who want the agent abstracted away — pm7Code surfaces the agent's transcript and tool calls deliberately, so the developer stays in the loop. ## Key features - **Bring your own agent** — Claude Code, Claude CLI, OpenAI Codex, Pi, Cursor, and Grok as interchangeable runtimes; switch, combine, or hand a live session over without leaving the workspace. - **Agent independence** — pm7Code carries its own protocol into each agent via that agent's native system-prompt channel; it never depends on a global config file to behave consistently. - **Layered prompts** — System, Group, Project, and Session prompts inherit with a clear order; lower layers override higher ones, and CView shows exactly what reached the agent. - **Interactive questions** — agents ask structured, numbered multiple-choice questions inline (with optional free-text); you answer in the workspace and the agent continues. - **Neighbor-agent review** — an optional per-session second opinion where the active agent consults a designated buddy agent before asking a question. - **Git Service** — agents hand off commit and push as a strict background job with a visible status card, while the session keeps working. - **Projects at the center** — work is organized by project, not by which agent thread ran last. - **Build & deploy in place** — run builds and deploys from the same workspace where you prompt the agent. - **Command Center** — prompts, shelves (numbered snippets), per-project history. - **CView transcript** — full readable history of every agent run. - **Browser View (BView)** — optional in-app browser panel with its own tabs, right of the transcript. - **Live Summary** — independent summary slots (each with its own provider and model) that distill a long run as it happens. - **Remote sessions** — route a session through a remote websocket motor so the agent runs on another machine while the workspace stays local. - **CLI & API** — drive the same motor without the GUI: the `pm7code` one-shot command (prompt in, final answer out, like `claude -p`) for scripts/cron/CI, or the motor's WebSocket API directly for full session control, a live event stream, and reconnect/replay. Loopback is auth-free; remote needs a paired device key (one-time 6-digit pairing code, revocable per device). Docs at https://code.pm7.dev/docs/api. - **Portable memory** — pm7Code keeps its own agent-independent memory of facts, preferences, and conventions; agents only propose writes, pm7Code is the authority; scoped globally or per project and recalled automatically via a session-start primer plus per-turn context. - **Agent-independent skills** — pm7Code keeps one canonical skill store (using the open Agent Skills `SKILL.md` standard) and automatically shares each skill into every detected agent (Claude Code, Codex, Pi) just before it starts and at app launch. Write a skill once, every agent uses it — no per-agent copies, no drift. Managed in Settings → Skills (create, edit, delete, resync, with per-agent synced badges); sharing never overwrites existing skill folders, edits are lossless, and it never blocks an agent from launching. - **One workspace, zero context-switching** — terminal, agent transcript, project state, builds, deploys all visible at once. - **Local-only** — no telemetry to PM7, no cloud sync; the agent's own CLI handles its own backend. ## Key URLs - Website: https://code.pm7.dev - Documentation: https://code.pm7.dev/docs - API & CLI reference: https://code.pm7.dev/docs/api - Author / publisher: https://pm7.dev - Version metadata (machine-readable): https://code.pm7.dev/version.json ## Naming and tone - The product name is **pm7Code** (lowercase `pm7`, no separator, capital `C`). - The category abbreviation is **ACE**, which expands to **Agentic Coding Environment**. - "Workspace" is the preferred word in body copy; "Environment" is reserved for the ACE expansion. ## Optional - pm7Code references three open-source projects as internal sources of truth: OpenAI's Codex CLI, Anthropic's Claude Code CLI, and the t3code web-based agent GUI. Integration behavior (status detection, session management, hooks, PTY input handling) follows those upstreams. - Build versions are tracked in `/version.json` and shown inside the app for support purposes. - The website (this site) is a Next.js 16 + React 19 + Tailwind 4 project, deployed on Vercel.