by kaanozhan
Platform for agentic - vibecoders who use claude code and codex cli
# Add to your Claude Code skills
git clone https://github.com/kaanozhan/FrameThe platform for agentic development.
Frame started as a lightweight terminal-first IDE. It's evolving into a full platform for developing and managing larger projects with AI agents — bringing structure, context, and organization to the way you work with Claude Code, Codex CLI, and Gemini CLI.
https://github.com/user-attachments/assets/6fe108d1-70c8-441e-a913-b34583c803b0
As projects grow with AI agents, things fall apart fast:
These problems are manageable on small projects. On larger ones, they become blockers.
Frame solves all of this.
Frame brings a consistent structure to every project you work on. When you initialize Frame in a project, it creates:
| File | Purpose |
|------|---------|
| AGENTS.md | Project rules and instructions — AI reads this automatically |
| STRUCTURE.json | Module map with intentIndex for fast file lookup |
| PROJECT_NOTES.md | Architectural decisions and context that persist across sessions |
| | Task tracking with status, context, and acceptance criteria |
No comments yet. Be the first to share your thoughts!
tasks.jsonEvery project gets its own isolated session — its own context, its own task list, its own notes. Switching projects in Frame means switching to a completely fresh, project-specific AI context. No bleed-over, no confusion.
This standard works with any AI tool. Claude Code and Gemini CLI read these files natively. For Codex CLI, Frame injects them automatically via a wrapper script — no manual setup needed.
The result: any developer (or AI agent) who opens a Frame project immediately knows where everything is and what's been decided. Onboarding a new AI session to a large project takes seconds, not minutes.
One of the hardest problems in agentic development is knowing when to capture context. Session boundaries are fuzzy — you might stay in the same session for hours. Task completion is ambiguous — agents don't always signal clearly when something is done. Trying to detect "important moments" mid-session is unreliable.
Frame's approach: use git commits as the single reliable boundary.
When you commit, something real happened. It's intentional, it's deterministic, and it's a natural checkpoint you're already making. Frame builds its entire context system around this moment:
When the next session starts, these files are read automatically. The agent picks up exactly where things left off — not from a vague session transcript, but from structured, up-to-date context written at the one moment you can be certain something real was completed.
The practical implication: commit often. Small, intentional commits aren't just good git hygiene — in Frame, they're how context stays accurate and agents stay oriented.
Instead of scanning the entire codebase, Frame's intentIndex maps concepts to files:
node scripts/find-module.js github # → githubManager.js + githubPanel.js
node scripts/find-module.js terminal # → all terminal-related files
node scripts/find-module.js --list # → all features and their files
This means AI agents spend zero time searching — they go directly to the right file.
Switch between AI tools without leaving Frame:
CLAUDE.md natively (symlink to AGENTS.md).frame/bin/codex injects AGENTS.md as initial promptGEMINI.md natively| Component | Technology | |-----------|-----------| | Desktop Framework | Electron | | Terminal Emulator | xterm.js | | PTY | node-pty | | Bundler | esbuild | | UI | HTML/CSS/JS |
git clone https://github.com/kaanozhan/Frame.git
cd Frame
npm install
npm run dev
Pre-built binaries available on the releases page for macOS, Windows, and Linux.
| Shortcut | Action |
|----------|--------|
| Ctrl+K | Start AI session |
| Ctrl+Shift+T | New terminal |
| Ctrl+Shift+W | Close terminal |
| Ctrl+Tab | Next terminal |
| Ctrl+Shift+G | Toggle grid view |
| Ctrl+1-9 | Switch to terminal by number |
| Ctrl+Shift+H | Toggle history panel |
┌─────────────────────────────────────────────────┐
│ Main Process (Node.js) │
│ │
│ PTY Manager · File System · Tasks · GitHub │
│ AI Tool Manager · Git · Plugins · Overview │
│ │
│ 115+ IPC Channels │
└──────────────────────┬──────────────────────────┘
│
┌──────────────────────┴──────────────────────────┐
│ Renderer (Browser) │
│ │
│ Multi-Terminal Grid · Sidebar · Task Panel │
│ GitHub Panel · Structure Map · AI Selector │
└─────────────────────────────────────────────────┘
git checkout -b feature/your-featuregit commit -m 'Add your feature'git push origin feature/your-featureMIT — see LICENSE
Built with Frame, using Claude Code. frame.cool