Skip to main content
Glama

Elevate

Interactive Polyglot Terminal Dashboard (TUI) and MCP Server for safe, selective, and transparent dependency management across monorepos and multi-project repositories.

License: MIT npm version Ko-fi


πŸ“– Documentation

  • πŸ‡¬πŸ‡§ English Documentation β€” Architecture, release channels, safety mechanisms, headless CLI, MCP server, and configuration.

  • πŸ‡©πŸ‡ͺ Deutsche Dokumentation β€” VollstΓ€ndige Anleitung, Architektur, Release Channels, Monorepo-Schutz und Konfiguration.


Related MCP server: upgrade-pilot-mcp

✨ Key Features

  • Polyglot Monorepo Support: Manages frontend workspaces (package.json) and backend services (pom.xml) in a single tool.

  • Targeted Version Selection: Interactive modal to search, filter, and pick any published version ([V]), not just latest.

  • Runtime Ecosystem Switching: Switch instantly between Node.js and Maven modules ([E]).

  • Release Channels: Configurable channels (stable vs. all) with automatic filtering of pre-releases (alpha, beta, rc, snapshot).

  • Monorepo Scope Protection: Prevents private packages (@my-org/*, com.mycompany.*) and local symlinks from being overwritten by public registries.

  • Safety Guardrails & Verification: Automatic post-update verification (npm install, mvn test-compile) with rollback safety and major-version warnings.

  • Agentic & CI/CD Ready: Full headless CLI (--json) and native Model Context Protocol (MCP) server for integration with autonomous AI coding agents.

  • Bilingual Interface: Instant language toggle between English and German ([L]).

  • Modular Architecture: Decoupled domain core and ports/adapters (hexagonal architecture).


πŸ“¦ Supported Package Managers

Ecosystem

Package Manager

Manifest File

Primary Registry

Monorepo Support

Verification Method

Status

Node.js (JS / TS)

npm

package.json

npm Registry

Root & npm Workspaces

npm install

βœ… Supported

Java (JVM)

Maven (mvn)

pom.xml

Maven Central

Root POM & nested sub-modules

mvn test-compile

βœ… Supported

Planned: Support for Python (pip, poetry, uv), pnpm, yarn, and Gradle is on the roadmap.


πŸš€ Installation & Quick Start

1. Instant Run via npx (No Installation Required)

npx @dennisrepa/elevate

For AI Agents (Claude Code, Cursor, Antigravity):
Register Elevate directly in your agent's MCP settings:

{
  "mcpServers": {
    "elevate": {
      "command": "npx",
      "args": ["-y", "@dennisrepa/elevate", "mcp"]
    }
  }
}

2. Standalone Binary (Zero Node.js Dependency)

For environments without a Node.js runtime:

  1. Download elevate.exe (Windows) or elevate-linux from GitHub Releases.

  2. Execute directly:

    .\elevate.exe

3. Global Installation

npm install -g @dennisrepa/elevate
elevate

4. Project Integration

Add as a development dependency:

npm install -D @dennisrepa/elevate

Add an entry to package.json:

{
  "scripts": {
    "elevate": "elevate"
  }
}

Run via:

npm run elevate

5. Local Development

npm install
npm run build
npm link

Run locally:

elevate
# or
node dist/cli.js

⌨️ Keyboard Shortcuts (Interactive TUI)

Key

Action

E

Switch Ecosystem (npm ⇄ Maven)

W

Open Module / Workspace Selector

V

Pick Specific Version (Interactive search & filter modal)

L

Toggle Language (English ⇄ Deutsch)

↑ / ↓ (or k/j)

Navigate package list

Space

Toggle selection of focused package

A

Toggle selection of all visible packages in the active tab

Tab (or 1, 2, 3)

Switch between tabs

U

Execute update for selected packages

R

Re-scan current module

Q

Quit Elevate


πŸ€– Headless CLI & MCP Server

1. Headless CLI (--json)

Run non-interactive commands for scripting and CI/CD pipelines:

# Discover all modules in the repository
elevate modules --json

# Scan dependencies for available updates (exits with code 1 if updates found)
elevate scan --ecosystem=npm --channel=stable --json

# Query complete published version history for a package
elevate versions chalk --json

# Dry-run update simulation without modifying files
elevate update --module=apps/web --packages=chalk@5.6.2 --dry-run --json

# Apply updates with explicit major-version approval
elevate update --module=apps/web --packages=pinia@4.0.3 --allow-major --json

2. Model Context Protocol (MCP) Server

Start Elevate as an MCP server via stdio:

elevate mcp

MCP Configuration (e.g. claude_desktop_config.json):

{
  "mcpServers": {
    "elevate": {
      "command": "npx",
      "args": ["-y", "@dennisrepa/elevate", "mcp"]
    }
  }
}

Available MCP Tools:

  • elevate_discover_modules: Discovers repository modules and workspaces.

  • elevate_scan: Scans dependencies for outdated packages against registries.

  • elevate_get_versions: Fetches published version history from registry.

  • elevate_apply_updates: Applies targeted updates with verification and guardrails.

  • elevate_verify: Runs module-specific build and test verification checks.


βš™οΈ Configuration

Elevate operates with zero configuration by default. Optional settings can be defined in elevate.config.json in the repository root:

{
  "channel": "stable",
  "locale": "en",
  "excludeScopes": ["@my-org", "com.mycompany"],
  "postUpdateScript": "npm test",
  "postUpdateLabel": "Run test suite"
}

Detailed parameter references are available in docs/en.md and docs/de.md.


πŸ“„ License & Sponsorship

Elevate is open-source software licensed under the MIT License.

Related MCP Connectors

Related MCP Servers