---
title: Seamline
description: Catch API breaking changes before they ship and validate environment variables at startup, in CI, and from coding agents.
url: https://pr-1-ee19382a0710.thally.app/
---

# Seamline

Catch API breaking changes before they ship and validate environment variables at startup, in CI, and from coding agents.

## Two products, one toolkit

Seamline ships two independent products. Use one or both.

#### [Specdiff](/specdiff/overview)

    Breaking-change detection for JSON Schema and OpenAPI. Compare two specs and
    get a detailed list of what changed, what broke, and what to fix -- in your
    terminal, in CI, or from a coding agent over MCP.

#### [Envlock](/envlock/overview)

    Typed environment contracts for Node.js. Declare every variable your app
    reads once, then validate, type, document, and diff them everywhere -- at
    startup, in CI, and from coding agents over MCP.

## Why Seamline

**Stop breaking changes from reaching production.** Specdiff compares any two
JSON Schema or OpenAPI documents and reports every breaking, warning, and
informational change with an exact JSON pointer, a rule code, and remediation
advice. Wire it into a pull-request check and reviewers see a compatibility
report before they approve.

**Validate environment variables before your app starts.** Envlock lets you
define a typed contract -- ports, URLs, durations, enums, secrets -- and
validates `process.env` (or a dotenv file) against it at startup. Missing a
required variable or passing a string where a port number is expected fails
immediately with a clear message, not five minutes later in an unrelated stack
trace.

Both tools work in CI and with AI coding agents. Each product exposes an
MCP server so that agent-based workflows can inspect schemas, run checks, and
act on the results without leaving the editor.

## Consistent architecture

Every product in the toolkit follows the same shape:

| Layer | Specdiff | Envlock |
| --- | --- | --- |
| Core library | `@specdiff/core` | `@envlock/core` |
| CLI | `@specdiff/cli` | `@envlock/cli` |
| MCP server | `@specdiff/mcp` | `@envlock/mcp` |

The core libraries have **zero runtime dependencies**. The CLIs depend only on
their core library (plus a YAML parser for Specdiff). The MCP packages add the
Model Context Protocol SDK.

## Requirements and status

- **Node.js** >= 22, ESM only
- **TypeScript-first** -- every package ships type declarations
- **License** -- MIT
- **Current version** -- all packages at 0.1.0

> **Note:**
  Head to the [quickstart](/quickstart) to run your first Specdiff comparison
  and your first Envlock validation in under five minutes, or jump straight to
  the [Specdiff overview](/specdiff/overview) or [Envlock overview](/envlock/overview)
  for the full picture.