OpenTide is out · open source

Make your agent ship production-ready apps.

Fewer bugs. Fewer review rounds. Fewer tokens.

OpenTide is the agent-native web framework, open source and available now. Connect the coding agent you already use, and it builds inside your live, running app. Nothing counts as done until the server has run the tests that prove it, and every change arrives with its plan and evidence. Tide, the IDE reinvented for AI, is built on top of it and coming soon. TypeScript today, Python support coming next.

$curl -fsSL https://github.com/opentideai/opentide/releases/latest/download/install.sh | sh
OpenTide logo
The framework

OpenTide

The agent-native web framework.

During development, your app runs as a long-lived process inside the OpenTide kernel. Agents don't read and rewrite files. They inspect and change the running app through MCP tools that encode the kernel's rules, so every change follows the same discipline, whichever model makes it.

01Gated access

Your code lives as a semantic graph, exposed to agents through MCP tools. Agents query exactly the nodes they need, and the OpenTide kernel decides what a valid change looks like, not the prompt.

02The running app is the source

No code files to generate or keep in sync during development. The live process is the canonical artifact, persisted with state snapshots. When you ship, one command exports a plain Node app you can deploy anywhere Node runs.

03Checked on every define

Agents build with over 100 MCP tools like define_handler, register_route, define_schema and define_test. Every define is compiled and quality-checked (esbuild, lint) before it’s accepted. Each entity carries a revision number, and expectedRevision turns a stale write into an error instead of an overwrite.

04Done means proven

Work happens in changesets: a plan with steps, acceptance criteria and a verification plan. complete_changeset refuses until every criterion has evidence, and the evidence must cite attestations the server minted when it ran run_tests, check_export_types or verify_formal_specs. Edit the code afterwards and they go stale.

05History you can roll back

Every edit is recorded in a changelog with its rationale, searchable with search_changes and get_change. undo_change and undo_turn step back one change or a whole agent turn. Abandoning a changeset rewinds code, schema and files while app data stays, and take_snapshot / restore_snapshot cover the whole app.

06Token-efficient

Agents work on precise app entities instead of reading whole codebases, so the context window goes to the task. Tools return structured answers, like a route’s handler, a table’s columns or a function’s callers, instead of raw file dumps.

07Bring your own agent

OpenTide runs as an MCP server. Point Claude Code, Codex, Cursor, Windsurf or any MCP client at your project. Any number can connect, one writes at a time: start_task forks the project for a parallel agent, and merge_task replays the fork under main’s tests and refuses on conflicts.

08Live changes, no restarts

Agent edits land in the running kernel, get recompiled and re-served immediately. You iterate on the running app, not a source tree.

09Headless and model-neutral

opentide serve, mcp, scaffold, build and export from the terminal. The core runs without an LLM key and without a login.

Changeset lifecycle

Every change earns its commit

Agents work in changesets. A changeset can’t complete until every acceptance criterion is backed by evidence the server recorded itself, and the finished work lands in files you commit.

// agent → opentide, over MCP create_changeset({ title: "Todos API", plan: { steps, acceptanceCriteria, verificationPlan } }) define_handler({ name: "createTodo", source, module: "todos" }) run_tests({ pattern: "test_todo*" }) record_verification_run({ changeset_id, evidence: [{ attestationId }], claimResults }) complete_changeset({ changeset_id }) // server ✓ completed stateFlushed: true written to .opentide/state/, ready to commit

6 · Complete. Once the gate passes, the changeset completes and the work is flushed to .opentide/state/, plain files you commit. stateFlushed: true confirms it.

Built withTypeScriptHonoPGlitePostgresMCP
Exports toNode appLicenseApache-2.0Runs onmacOSLinuxWindows (WSL)

Try OpenTide

Install it, scaffold an app, and point your agent at it. The installer brings its own runtime; you only need curl.

$curl -fsSL https://github.com/opentideai/opentide/releases/latest/download/install.sh | sh
Tide logo
The IDE · Coming soon

Tide

The IDE reinvented for AI.

Chat with an agent on one side, your running app on the other. Plan with acceptance criteria, build against the live app, and see every change verified before it counts as done. You direct the work. The agent writes the code.

>_Agent-first

Every change comes with its why and its approach, so you can review intent as well as the diff.

>_The live app, in view

Preview the running app next to its request logs, and explore a live call graph of what is actually running.

>_Verification built in

Changesets are checked against their acceptance criteria before they close. Readiness blockers tell you what's missing.

>_Tests and audits

The test suite runs inside the kernel. Audits cover accessibility, code quality, performance, security and SEO.

>_A model for each job

Pick different models for the agent, planning, import and verification, and keep an eye on tokens and cost per session.

>_Docs, search and Git

Generated documentation next to the source, search across everything, then commit and push when you're ready.

Open source · Apache-2.0

The tide is in.

OpenTide is out. Install it, connect the coding agent you already use, and build something real. Tide, the IDE, is coming soon.

$curl -fsSL https://github.com/opentideai/opentide/releases/latest/download/install.sh | sh