Structurizr alternative

Your Structurizr model, kept current by your AI

Import a workspace.json or DSL file and keep working on the same C4 model in a visual editor. Your AI keeps it in step with the code, and your team reviews every change in a branch.

Free for individuals · Keystone never receives your source code

workspace.dsl
workspace "Big Bank plc" {
  model {
    customer = person "Customer"
    bank = softwareSystem "Internet Banking" {
      api = container "API Application" "" "Java"
      db  = container "Database" "" "Oracle" "Database"
    }
    customer -> bank.api "Views balances"
  }
}
In Keystone
  • Customerperson
  • Internet Bankingsystem
  • API Applicationcontainer
  • Databasedatabase, from its tag

4 elements, 1 relationship · views and styles are not imported

What comes over

The model moves, not just the pictures

The importer reads the model itself: elements, nesting, relationships and groups. Keystone then shows it by C4 levels and lays it out for you.

person · softwareSystem

People and systems

Persons become people, software systems become systems; external ones stay external.

container · component

Containers and components

Nested inside their systems and containers, with descriptions and technology.

Database · Queue · Web Browser

Kinds from tags

A container tagged Database, Queue, Cache or Web Browser becomes a database, queue, cache or app.

a -> b "Uses" "HTTPS"

Relationships

With their labels and technology; asynchronous ones stay asynchronous.

group "Security" { }

Groups

Groups of components become modules; other groups become tags you can filter by.

tags "Existing System"

Tags

Your own tags become project tags.

Not imported: views, styles, deployment nodes and files pulled in with !include. The import dialog lists what it skipped, so nothing disappears silently.

How to move

Three steps, a few minutes

Nothing is uploaded from your repository: you bring the workspace file, Keystone builds the project.

  1. 01

    Export the workspace

    In Structurizr, save the workspace as JSON, or take your workspace.dsl.

  2. 02

    Import it

    In Keystone: Projects → Import from file → Structurizr workspace. The layout is built for you.

  3. 03

    Keep it current

    Connect your AI. After merges it checks the model against the code and sends a proposal your team reviews.

Comparison

Structurizr and Keystone

Both speak C4. The difference is who keeps the model current and how changes are reviewed.

StructurizrKeystone
Where the model comes fromYou write it as code (DSL) or with a client library.Your AI builds it from your code; you edit it in a visual editor.
Keeping it currentYou update the DSL when the system changes.After merges your AI checks the model against the code and proposes the changes.
Reviewing changesThrough your usual Git review of the DSL file.Every change arrives as a branch: three-way merge field by field, live co-editing, comments.
What you modelC4 views, including deployment and dynamic diagrams.C4 levels 1–3, ER diagrams from migrations, scenarios, decisions (ADR) on elements, impact analysis.
AI agentsAn MCP server is available.An MCP server that gives agents the part of the reviewed model a task needs.
LeavingExports to other diagram formats.Exports back to Structurizr DSL, and to Mermaid, Obsidian, JSON, PNG and SVG.

If you want architecture strictly as code in your repository, or rely on deployment views, Structurizr is a strong choice. Keystone fits teams that want the model kept current by their AI and reviewed in branches.

Questions

Moving from Structurizr

Open the documentation

Does a DSL with !include work?

Included files are not followed: the importer reads one file and tells you what it skipped. Join the files into one, or ask your AI to bring the workspace in over MCP.

Are my views and styles kept?

No. Keystone shows the model by C4 levels and lays it out automatically. Elements, relationships and groups come over; view definitions do not.

Can I go back to Structurizr?

Yes. Export any project as Structurizr DSL from the project menu.

What about deployment diagrams?

Deployment nodes are not imported today. The importer counts them, so you know what stayed behind.

What data reaches Keystone?

You don’t upload the repository to Keystone. Your AI reads the code in your own environment and sends Keystone what it learns about the architecture: elements, relationships, descriptions and evidence. Descriptions and evidence may contain pieces of code. The code itself is processed by the AI provider you choose, not by Keystone. Companies can also run Keystone inside their own network.

Can I start for free?

There’s a free plan with limits on keystone-core.pro. Start a model and see how the workflow fits your project.

Start with your own system

Try it with your own workspace

The import takes seconds and never touches your repository. Start free.

Import a workspace

Free plan available · Connect through MCP