Your software architecture is eroding.
Now you'll know where.

erode analyzes code changes against your architecture model using AI β€” catching undeclared dependencies and violations before they ship.

View on GitHub →
erode analyze --pr 42
—— Analysis Results: #1 ——
  Add admin user management
  Component: Web Frontend (frontend)

Summary:
  Frontend bypasses API Gateway with direct User Service call.

Violations (1):
  [HIGH] Direct dependency on User Service bypasses API Gateway
    packages/frontend/src/index.ts
    Suggestion: Route through API Gateway β€” extend it to
    expose the admin/users endpoint instead

Model Updates:
  Remove:
    - frontend -> user_service (undeclared)
  Add:
    + api_gateway -> user_service.admin_users

Why erode?

πŸ€–

AI is writing more code than ever

Agents and LLMs ship features fast β€” often faster than architecture docs can keep up with.

πŸ•ΈοΈ

Dependencies grow silently

New integrations appear in the codebase without anyone updating the architecture model. Over time, the model stops reflecting reality.

πŸ‘οΈ

Manual reviews can't keep up

Reviewers catch bugs, but rarely notice when a service starts calling another. By the time drift is noticed, it's hard to untangle.

🏒

Mature systems have more at stake

The larger the system, the harder it is to untangle an undeclared dependency after it ships.

How It Works

A multi-stage AI pipeline analyzes every code change against your architecture model.

Stage 1 🎯

Resolve

Identifies which architecture component maps to the repository being changed.

Stage 2 πŸ”

Scan

Extracts dependency changes and new integrations from the PR diff.

Stage 3 βš–οΈ

Analyze

Compares changes against the declared architecture model to detect drift.

Stage 4 πŸ”§

Generate

Produces architecture model updates to bring the model back in sync.

Learn more →

Features

πŸ€–

Multi-Provider AI

Choose between Gemini and Anthropic. Cheaper models for extraction, stronger models for analysis.

⚑

CI Integration

Runs as a GitHub Action with PR commenting and configurable failure thresholds. GitLab and Bitbucket support planned.

πŸ”€

Auto-Fix PRs Coming soon

Optionally generates a change request with LikeC4 DSL updates to fix detected drift.

🚨

Violation Severity

Categorizes findings as high, medium, or low severity β€” each with a concrete suggestion.

πŸ“¦

Monorepo Aware

Resolves the correct architecture component when a single repo maps to multiple components.

πŸ—οΈ

Architecture-as-Code

First-class LikeC4 support today, with more architecture model formats on the roadmap.

Explore the docs →

Get Started

Add erode to your CI pipeline.

GitHub Actions
# .github/workflows/erode.yml
name: Architecture Drift Check
on: [pull_request]

jobs:
  erode:
    runs-on: ubuntu-latest
    steps:
      - uses: erode-app/core@main
        with:
          model-repo: your-org/architecture
          github-token: ${{ secrets.GITHUB_TOKEN }}
          gemini-api-key: ${{ secrets.GEMINI_API_KEY }}
View full setup guide →