Your engineering mind,
in Frame!

Project management is coming to Frame.

We’re building a project management layer for Frame. Join the beta waitlist to hear when access opens.

Already using Frame? You can keep using the desktop app while we build what’s next.

Beta waitlist details

By joining, you agree to receive emails about this beta. Organization and role are optional and help us understand who’s interested.

01The problem

Agents write the code now.
Context still disappears.

As projects grow with AI agents, things fall apart fast. Manageable on small projects, blockers on large ones.

→ Frame solves all of this.

02One standard

Every project. Every AI tool.
One structure.

Initialize Frame and your project gets a small, predictable folder of plain files. Any developer or agent that opens it knows where everything is and what's been decided.

.frame/AGENTS.md
1# my-app - Frame Project
2
3## Core Working Principle
4Only do what the user asks.
5
6## Project Navigation
71. .frame/STRUCTURE.json - module map
82. .frame/PROJECT_NOTES.md - decisions
93. .frame/tasks.json - pending tasks

Your root stays yours: an existing CLAUDE.md, AGENTS.md or .cursorrules is never read, moved or replaced, and “Remove Frame” leaves no Frame-authored bytes behind.

03The context anchor

Commit is the moment
context is captured.

Session boundaries are fuzzy and “done” is ambiguous. A commit isn't: it's intentional, deterministic, and a checkpoint you already make. Frame builds its whole context system around it.

Commit often. In Frame, small intentional commits aren't just good hygiene. They're how context stays accurate and agents stay oriented.

~/my-app - zshmain

04Spec-driven development

Four markdown files.
The whole story of a feature.

Plans tell you intent. Code tells you reality. outcome.md tells you the story between them, written while the agent's memory was fresh.

.frame/specs/cursor-pagination/
  spec.md     what we're building  plan.md     how we'll build it  tasks.md    broken-down work  outcome.md  what actually shipped
  • Files over databases. Markdown is canonical: any tool reads it, teammates grep it, git versions it, PRs review it.
  • On, but never forced. One switch turns it off; your specs stay on disk.
  1. spec.md/spec.new

    What we're building

    Describe the feature. The agent drafts a spec you can read, edit and review in a PR.

  2. plan.md/spec.plan

    How we'll build it

    An implementation plan with a declared footprint: the files this spec will touch.

  3. tasks.md/spec.tasks

    Broken-down work

    Discrete tasks, imported into tasks.json and tagged back to the spec they came from.

  4. outcome.md/spec.implement

    What actually shipped

    After each task the agent writes what shipped, what diverged and what to follow up on.

05Multi-AI, by principle

Deep on Claude Code.
Yours in any tool.

Your specs, plans, outcomes and notes live in plain markdown and JSON, so the context your work produces outlives any single tool, including Frame.

Claude Code

first-class

Loads .claude/rules/frame.md natively at session start, a synced copy of .frame/AGENTS.md. No flags, no wrapper.

Codex CLI

A wrapper at .frame/bin/codex injects .frame/AGENTS.md as the initial prompt.

Terminal

  • Up to 9 real PTY terminals: tabs or 2×2, 3×3 grids
  • Project-aware sessions that start in the right directory
  • Resizable grid, full VT100/ANSI support

Project management

  • Task panel with “Send to Claude”
  • Specs panel with the spec → plan → tasks → outcome lifecycle
  • GitHub issues, PRs, branches and worktrees in the sidebar

Context

  • STRUCTURE.json auto-updated on every commit
  • Overview map of your project's modules
  • Prompt history and session notes

06FAQ

Questions, answered.

What is Frame?

Frame is a free, open-source desktop IDE for AI coding agents. Spec-driven development is how it turns everyday work into durable project context: what you intend to build, how you plan to build it, and what actually ships stay together in your repository. It is built on Claude Code and also works with Codex CLI.

How does Frame keep context between Claude Code sessions?

Frame keeps project rules, a module map, decisions and tasks in .frame/, alongside each feature's spec, plan and outcome. The spec workflow adds context as work progresses, preserving the intent behind a change as well as its result. Claude Code loads Frame's project instructions at session start through .claude/rules/frame.md; those instructions guide the agent to the relevant project files and spec history so it can pick up where the previous session left off.

How does spec-driven development build project context?

Each feature follows four markdown files: spec.md captures intent, plan.md records the approach, tasks.md breaks down the work, and outcome.md records what shipped, what changed and what needs follow-up. Slash commands like /spec.plan and /spec.implement guide this workflow. These files become a history future sessions can consult, connecting the code to the reasoning behind it. The same documents that guide today's implementation provide context for tomorrow's changes.

Does Frame lock my project into Frame?

No. Everything is plain markdown and JSON under .frame/, versioned by git and readable by any tool. Frame never modifies an existing CLAUDE.md, AGENTS.md or .cursorrules, and “Remove Frame” leaves no Frame-authored bytes behind.

Which platforms and AI tools does Frame support?

Frame runs on macOS, Windows and Linux. It goes deep on Claude Code and supports Codex CLI. It is licensed under Apache-2.0.

Is there a web version of Frame?

A browser version (Frame Server) is in progress. Frame's transport layer is already abstracted so the same experience can move from Electron IPC to WebSockets.

Free · Open source

Stop re-explaining your project.

Bring your own Claude Code or Codex CLI. Frame keeps the context.

macOS (Apple Silicon) · Windows 2.7.0

Contact

Have a question about Frame? Get in touch.