Skip to main content

Repotoire vs ESLint

ESLint is the industry-standard linter for JavaScript and TypeScript. Repotoire is a local agent-processor runtime for explicit development workflows. They solve different problems and can coexist in a serious engineering workflow.

Feature Comparison

FeatureRepotoireESLint
Execution modelagent-processor runtime for development workPer-file rule-based linting
Runtime state.machine state, events, evidence, and trapsNo persistent workflow state
Work contractMachine programs with explicit opcodesRules configured in eslint.config.js
Cross-worker coordinationScoreboard hazards and write claimsNo worker coordination model
VerificationEvidence packets and gate verdictsRule pass/fail results
Provider adaptersCodex, Claude, MCP, local runnersEditor and build integrations
WritebackExplicit COMMIT gateDeterministic --fix for rules
Precise trapsStops stale or unsafe writebackNot a workflow runtime
Code style / formattingNo (not a formatter)Yes (with stylistic plugins)
CI/CD integrationExplicit CLI reports and team-approved gatesUniversal (any CI, formatters, SARIF via plugin)
PricingCommercial private betaFree and open source

Different Tools, Different Jobs

ESLint operates per-file.It parses each JavaScript or TypeScript file individually, applies rules to the AST, and reports violations. It's excellent at catching code style issues, potential bugs, unused variables, and enforcing team conventions. With its plugin ecosystem, you can add React hooks rules, accessibility checks, import ordering, and thousands of other checks.

Repotoire operates as a local Machine. It records explicit program state, worker packets, evidence, write claims, verification gates, and precise traps. These are workflow semantics that per-file linting does not try to provide.

What ESLint Catches That Repotoire Doesn't

  • Code style and formatting (semicolons, indentation, naming conventions)
  • Framework-specific rules (React hooks order, Vue template syntax, accessibility)
  • Import ordering and organization
  • Deterministic auto-fix for hundreds of rules
  • Highly customizable per-rule configuration

What Repotoire Catches That ESLint Can't

  • Circular dependencies detected via Tarjan's strongly connected components
  • God classes identified through fan-in/fan-out graph metrics
  • Architectural bottlenecks via PageRank and betweenness centrality
  • Hidden coupling from git co-change temporal analysis
  • Community misplacement via Louvain clustering
  • Single points of failure (articulation points in the call graph)
  • Cross-language analysis (same tool for Python, Rust, Go, Java, and more)

Using Both Together

Repotoire and ESLint are complementary tools. A recommended setup for JavaScript/TypeScript projects:

ESLint (on every save)

Code style, per-file bugs, React hooks rules, import ordering, accessibility. Runs in your editor with instant feedback.

Repotoire (runtime gate)

Machine state, evidence packets, verification gates, worker hazards, and explicit writeback. Runs when agent work needs an inspectable contract.

# Example CI pipeline
- name: Lint (ESLint)
  run: npx eslint .

- name: Architecture check (Repotoire)
  run: repotoire machine report . --format json

Setup

Repotoire

# Install
Provided during private beta onboarding

# Inspect local Machine state
repotoire machine report .

Beta onboarding maps the runtime to your repo, policy gates, and adapter trust model.

ESLint

# Install
npm init @eslint/config@latest

# Lint
npx eslint .

Requires a config file. Highly configurable with plugins, presets, and overrides.

Verdict

This isn't an either/or choice. ESLint is the best tool for JavaScript/TypeScript per-file linting — it has an unmatched plugin ecosystem and deep framework integration. Repotoire is the runtime for making agent-driven repo changes explicit and inspectable.

Use ESLint to keep individual files clean. Use Repotoire when work needs machine state, evidence, gates, traps, and explicit writeback.

Give agent work a runtime

Keep ESLint for linting and use Repotoire when repo-changing work needs machine programs, source-pipeline evidence, precise traps, and MCP adapters.

repotoire machine report .