npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

nomoreide

v0.1.57

Published

An AI-native terminal workbench for services, Git review, logs, and MCP workflows.

Readme

NoMoreIDE

The AI-native terminal workbench for the post-IDE development loop.

npm version npm downloads GitHub stars License: PolyForm NC Node.js ≥20 MCP Ready

Give your coding agents and yourself a shared local control surface for services, ports, logs, Git review, GitHub workflows, database work, and MCP workflows — no IDE required.

MCP Setup · CLI Reference · MCP Tools · Architecture


What Is NoMoreIDE?

NoMoreIDE is a lightweight process manager, Git reviewer, GitHub workflow surface, database workbench, log aggregator, and MCP server — all in one npx command. It gives AI coding agents (Claude Code, Codex CLI, Gemini CLI, and others) a safe, structured window into your running dev environment through the Model Context Protocol (MCP), while also providing a terminal UI and a local React web dashboard for humans.

┌──────────────────────────────────────────────────────┐
│                    Your Project                       │
│                                                      │
│   Claude Code / Codex CLI / Gemini CLI               │
│           │                                          │
│     MCP (stdio)                                      │
│           │                                          │
│   ┌───────▼────────┐    ┌──────────────────────┐    │
│   │  NoMoreIDE MCP │◄──►│  Process Manager      │    │
│   │  Server        │    │  Log Store            │    │
│   └───────┬────────┘    │  Git Manager          │    │
│           │             │  Config Store         │    │
│     HTTP API            └──────────────────────┘    │
│           │                                          │
│   ┌───────▼──────────────────────────┐              │
│   │  Web UI  (localhost:4317)        │              │
│   │  Terminal UI (nomoreide tui)     │              │
│   └──────────────────────────────────┘              │
└──────────────────────────────────────────────────────┘

Connect Your AI Agent

NoMoreIDE runs as a local stdio MCP server. Pick your agent CLI and paste the one-liner — that's it.

Claude Code

claude mcp add --transport stdio nomoreide -- npx -y nomoreide

Want to share the config with your whole team? Use project scope to commit a .mcp.json:

claude mcp add --transport stdio --scope project nomoreide -- npx -y nomoreide

Then confirm inside Claude Code:

/mcp
{
  "mcpServers": {
    "nomoreide": {
      "command": "npx",
      "args": ["-y", "nomoreide"]
    }
  }
}

Codex CLI

codex mcp add nomoreide -- npx -y nomoreide
[mcp_servers.nomoreide]
command = "npx"
args    = ["-y", "nomoreide"]

Then confirm inside Codex:

/mcp

Gemini CLI

Open your Gemini CLI settings file (~/.gemini/settings.json or the path shown by gemini config) and add:

{
  "mcpServers": {
    "nomoreide": {
      "command": "npx",
      "args": ["-y", "nomoreide"]
    }
  }
}

Restart Gemini CLI, then verify:

/mcp

Local Checkout (any agent)

If you prefer to point agents at a locally built binary instead of the published npm package:

{
  "mcpServers": {
    "nomoreide": {
      "command": "node",
      "args": ["/absolute/path/to/nomoreide/dist/index.js"]
    }
  }
}

Architecture

graph TD
    subgraph Agent["AI Agent (Claude / Codex / Gemini)"]
        A[Coding Agent CLI]
    end

    subgraph NoMoreIDE
        MCP[MCP Server<br/>stdio transport]
        PM[Process Manager]
        GM[Git Manager]
        LS[Log Store]
        CS[Config Store<br/>nomoreide.config.json]
        WS[Web Server<br/>:4317]
        TUI[Terminal UI]
    end

    subgraph Services["Your Dev Services"]
        S1[backend :3001]
        S2[frontend :5173]
        S3[db :5432]
    end

    A -- MCP stdio --> MCP
    MCP --> PM
    MCP --> GM
    MCP --> LS
    MCP --> CS
    PM --> S1
    PM --> S2
    PM --> S3
    LS --> PM
    WS --> PM
    WS --> GM
    WS --> LS
    TUI --> PM
    TUI --> LS

Feature Overview

| Feature | CLI | TUI | Web UI | MCP | |---|:---:|:---:|:---:|:---:| | Start / stop / restart services | ✓ | ✓ | ✓ | ✓ | | Bundle orchestration | ✓ | | ✓ | ✓ | | Port conflict detection | | | ✓ | ✓ | | Real-time log streaming | ✓ | ✓ | ✓ | ✓ | | Git status & diff | ✓ | | ✓ | ✓ | | Stage / unstage / commit | ✓ | | ✓ | ✓ | | Branch management | ✓ | | ✓ | ✓ | | GitHub PRs / issues / Actions | | | ✓ | ✓ | | Reusable git/GitHub workflows | | | ✓ | | | Database browse and SQL query | | | ✓ | ✓ | | Human-approved SQL writes | | | ✓ | | | Agent tools, hooks, plugins, usage | | | ✓ | | | Safe Git (no force-push, no reset) | ✓ | ✓ | ✓ | ✓ |


Running the Interfaces

MCP Server (default)

nomoreide
# or from source:
npm run dev

Terminal UI

nomoreide tui

Web Dashboard

nomoreide web
# custom port:
nomoreide web --port=4320

The web dashboard is available at http://127.0.0.1:4317 by default.


CLI

Services

# Register a local service
nomoreide add service backend \
  --command "npm run dev" \
  --cwd /absolute/path/to/backend \
  --port 3001

# Register a Docker Compose service
nomoreide add service api \
  --kind docker-compose \
  --cwd /absolute/path/to/infra \
  --compose-file docker-compose.yml \
  --compose-service api \
  --port 3001

# Register a remote SSH service (uses your local SSH config and agent)
nomoreide add service staging-api \
  --kind ssh \
  --host devbox \
  --cwd /srv/app \
  --command "npm run dev" \
  --port 3001

# Register a bundle (ordered group of services)
nomoreide add bundle full-stack db backend frontend

# List everything
nomoreide list

# Lifecycle
nomoreide start backend
nomoreide stop backend
nomoreide restart backend
nomoreide start full-stack
nomoreide stop full-stack

# Logs (in-memory, current process)
nomoreide logs backend

Git

NoMoreIDE exposes read-safe Git operations only — no hard reset, no clean, no force push, no branch deletion.

# Status & diff
nomoreide git status --cwd /path/to/repo
nomoreide git diff   --cwd /path/to/repo

# Staging & committing
nomoreide git stage   --cwd /path/to/repo src/index.ts README.md
nomoreide git unstage --cwd /path/to/repo src/index.ts
nomoreide git commit  --cwd /path/to/repo --message "feat: add dashboard"

# History
nomoreide git log --cwd /path/to/repo

# Branches
nomoreide git branch        --cwd /path/to/repo
nomoreide git fetch         --cwd /path/to/repo
nomoreide git switch        --cwd /path/to/repo feature/my-work
nomoreide git create-branch --cwd /path/to/repo feature/new-work

# Register repos for the web UI
nomoreide git add-repo    app --path /path/to/repo
nomoreide git select-repo app

MCP Tools

All tools are prefixed with nomoreide_ and are available to any connected MCP client.

Service Tools

| Tool | Description | |---|---| | nomoreide_list_services | List all registered services and bundles | | nomoreide_register_service | Register a new service | | nomoreide_start_service | Start a registered service | | nomoreide_stop_service | Stop a running service | | nomoreide_restart_service | Restart a running service | | nomoreide_read_logs | Read recent in-memory logs for a service | | nomoreide_register_bundle | Register a bundle of services | | nomoreide_start_bundle | Start all services in a bundle | | nomoreide_stop_bundle | Stop all services in a bundle | | nomoreide_status | Overall server status | | nomoreide_service_context | Build a copy-paste agent context packet for a service | | nomoreide_service_health | Computed health summaries (one service or all) | | nomoreide_timeline | Recent debug timeline events (optionally per service) | | nomoreide_open_ui | Open the local web UI | | nomoreide_close_ui | Close the local web UI |

Git Tools

| Tool | Description | |---|---| | nomoreide_git_status | Show working tree status | | nomoreide_git_diff | Show unstaged diff | | nomoreide_git_staged_diff | Show staged diff | | nomoreide_git_log | Show recent commits | | nomoreide_git_branches | List branches | | nomoreide_git_fetch | Fetch from remote | | nomoreide_git_switch_branch | Switch to a branch | | nomoreide_git_create_branch | Create a new branch | | nomoreide_git_stage | Stage specific files | | nomoreide_git_unstage | Unstage specific files | | nomoreide_git_commit | Commit staged changes | | nomoreide_git_register_repository | Register a repo path | | nomoreide_git_select_repository | Select the active repo |

Database Tools

| Tool | Description | |---|---| | nomoreide_list_databases | List registered database connections with masked URLs | | nomoreide_db_tables | List tables and views for a connection | | nomoreide_db_sample | Sample rows and schema metadata | | nomoreide_db_query | Run read-only SQL queries; writes are rejected and staged for the Web UI SQL console |

GitHub Tools

| Tool | Description | |---|---| | nomoreide_github_set_token | Store a GitHub token for API access | | nomoreide_github_list_prs / nomoreide_github_get_pr | Inspect pull requests | | nomoreide_github_get_pr_diff | Fetch a pull request diff | | nomoreide_github_create_pr / nomoreide_github_merge_pr | Create or merge pull requests with explicit user intent | | nomoreide_github_list_issues / nomoreide_github_get_issue | Inspect issues | | nomoreide_github_list_issue_comments / nomoreide_github_add_issue_comment | Read or add issue and PR comments | | nomoreide_github_create_issue | Create an issue | | nomoreide_github_get_commit_ci | Inspect commit check status | | nomoreide_github_list_workflow_runs | List recent GitHub Actions workflow runs |


Example Configurations

Service Definition (via MCP)

{
  "name": "backend",
  "command": "npm run dev",
  "cwd": "/absolute/path/to/project/backend",
  "port": 3001,
  "env": {
    "NODE_ENV": "development"
  },
  "description": "REST API server"
}

Bundle Definition (via MCP)

{
  "name": "full-stack",
  "services": ["db", "backend", "frontend"]
}

Start the whole stack in one call:

{ "name": "full-stack" }

Safety Model

NoMoreIDE is designed to be safe for AI agents to call without guard rails:

  • Does not scan or enumerate the whole filesystem
  • Does not kill processes it did not start
  • Reports port conflicts instead of terminating the occupying process
  • Git tools omit all destructive operations (no reset --hard, clean, push --force, or branch -D)
  • Database MCP tools are read-only; writes are staged for the human-only SQL console
  • Database writes require explicit unlock, preview, and commit
  • GitHub create/comment/merge tools require a configured token and explicit user intent
  • Config is scoped to ~/.config/nomoreide/config.json
  • Logs are written only to .nomoreide/logs/

Development

npm test        # run the full test suite (vitest)
npm run build   # compile TypeScript → dist/
npm run dev     # run from source (tsx)

Contributing

Issues and pull requests are welcome at github.com/Rorogogogo/nomoreide.
If this tool saved you from opening VS Code today, consider leaving a ⭐.


AGPL-3.0 + Commercial · Built by Rorogogogo

License

This project is dual-licensed:

  • 🆓 AGPL-3.0 — free for personal use, open-source forks, and projects themselves open-sourced under a compatible license. See LICENSE.
  • 💼 Commercial license — required for closed-source products, proprietary internal tools, or paid / hosted services where AGPL-3.0's copyleft and network-use obligations don't fit. See COMMERCIAL.md.

Do I need a commercial license?

| Use case | License | |---|---| | Personal use / running locally | AGPL-3.0 (free) | | Forking and publishing under AGPL-3.0 | AGPL-3.0 (free) | | Bundling into a closed-source product | Commercial | | Hosting a modified version as a SaaS without publishing source | Commercial | | Internal company tool not open-sourced | Commercial |

For a commercial license, contact Robert Wang at [email protected] — see COMMERCIAL.md for what to include in your request.