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

cursor-instant-noodle

v0.0.7

Published

Cursor on an instant-noodle budget 🍜 β€” use Antigravity, Codex, z.ai, MiniMax, Opencode, LMStudio & more for free or cheap

Readme

🍜 Cursor Instant Noodle

Cursor on an instant-noodle budget.

A single OpenAI-compatible endpoint that plugs into Cursor and gives it access to dozens of models from many different providers β€” including ones Cursor doesn't ship, free models, and your own local server. Antigravity Gemini 3, Opencode Zen, z.ai GLM, MiniMax, Codex reasoning variants, Qwen on your RTX 3090 β€” all from the same Cursor dropdown.

Cursor on an instant-noodle budget

What you see in Cursor

After cursor-noodle start, the Models panel in Cursor fills up with custom models from every provider you've configured. Every model ID starts with n- (for noodle) so it never collides with Cursor's built-in names.

Cursor models populated by noodle

In the screenshot above (one account on each provider), the dropdown includes:

  • GPT-5.5 with 5 reasoning variants β€” n-gpt-5.5-none, n-gpt-5.5-light, n-gpt-5.5-medium, n-gpt-5.5-high, n-gpt-5.5-xhigh. Cursor only ships the default; you can pick the exact reasoning depth for the task.
  • Gemini 3 Pro & 3.5 Flash β€” n-gemini-3.1-pro-high, n-gemini-3.5-flash-medium, etc., routed through your free Antigravity Google account.
  • Claude Sonnet 4.6 / Opus 4.6 β€” n-claude-sonnet-4-6, n-claude-opus-4-6-thinking via Opencode Zen (one API key, not a separate Anthropic sub).
  • GLM-5.2 / GLM-4.6 β€” n-glm-5.2, n-glm-4.6 via z.ai's flat-rate coding plan, or via Opencode Go with no Chinese card needed.
  • MiniMax-M3 β€” n-minimax-m3 for fast cheap drafts.
  • Free models β€” n-zen-big-pickle, n-zen-deepseek-v4-flash-free, n-zen-mimo-v2.5-free (no payment method, no rate-limit dance).
  • Local models β€” n-llamacpp:qwen3.6-27b against your own server, no API key, no quota.

You can mix and match. A session can use Gemini 3 Pro for planning, Claude Opus for the hard refactor, GLM-5.2 for bulk edits, and your local 70B for the privacy-sensitive bits β€” without ever leaving Cursor.

Architecture

Cursor ──► https://<random>.trycloudflare.com/v1
              β”‚
              β–Ό cloudflared tunnel (HTTPS)
          http://localhost:6767/v1 ──►  Antigravity  (Google OAuth, free)
                                         Codex      (ChatGPT OAuth, sticky failover)
                                         z.ai       (API key, sticky failover)
                                         MiniMax    (API key, sticky failover)
                                         Opencode   (Zen + Go, one API key)
                                         LMStudio / llama.cpp / Unsloth  (local)

The proxy is a thin Express server that:

  • Receives an OpenAI Chat Completions request from Cursor
  • Inspects the model field, looks at the n- prefix to pick a provider
  • Translates to the provider's native format (only Antigravity and Codex need translation; the rest are passthroughs)
  • Stitches the response back into OpenAI Chat Completions (or SSE) for Cursor

The full advertised model list lives in lib/models.cjs and is served at /v1/models, so Cursor's dropdown populates automatically.

Install

Option A β€” npm:

npm install -g cursor-instant-noodle
cursor-noodle start

Option B β€” curl (standalone binary, no Node.js required):

curl -fsSL https://raw.githubusercontent.com/EmreOzdemiroglu/cursor-instant-noodle/main/install.sh | bash

On first run, cursor-noodle opens the setup wizard to configure your API keys, then cursor-noodle start runs the proxy + public tunnel. The cloudflared binary is auto-downloaded on first start so the tunnel works out of the box.

For building from source / contributing, see docs/development.md.

Connect Cursor

  1. Cmd + Shift + J β†’ Models β†’ OpenAI API
  2. Enable Override OpenAI Base URL
  3. Paste the URL from cursor-noodle status (looks like https://...trycloudflare.com/v1)
  4. API key: the instant-noodle-xxxxxxxx key printed by cursor-noodle start (also retrievable with cursor-noodle key)
  5. Restart Cursor
  6. Click + Add Custom Model for each one you want. See the model ID cheat sheet for the full list.

Highlights

  • Free models that actually work β€” Gemini 3 Flash, GPT-OSS, GLM-4.6, MiniMax-M3, Zen free tier, all through one Cursor dropdown
  • GPT-5.5 with 5 reasoning variants β€” none / light / medium / high / xhigh instead of Cursor's single default
  • Auto-routing β€” model ID prefix decides the backend (n-glm-* β†’ z.ai, n-minimax-* β†’ MiniMax, n-gemini-* β†’ Antigravity, etc.)
  • Drop-in OpenAI-compatible β€” no Cursor plugin, just paste a base URL
  • Multi-account everywhere β€” sticky failover across every provider so quota and rate limits don't break your flow
  • Hot-reload β€” edit ~/.cursor-noodle/.env and the proxy picks it up without a restart
  • 🍜 One CLI β€” cursor-noodle start runs everything (proxy + public tunnel) in the background

API key

The proxy auto-generates an instant-noodle-xxxxxxxx API key on first run and stores it in ~/.cursor-noodle/.env. The proxy rejects requests without a valid Authorization: Bearer <key> header (Cursor's model discovery endpoint is exempt so the dropdown can populate).

cursor-noodle key         # print the current key
cursor-noodle reset-key   # generate a new one (invalidates the old)

Regenerate the key if it ever leaks. The proxy hot-reloads new keys on .env change, so you don’t need to restart manually.

Multi-account

Every multi-account provider (Opencode, z.ai, MiniMax, Codex, Antigravity) uses sticky failover: account 1 is used until it returns an auth/quota/rate failure, then account 2 is tried silently. The caller only sees an error after every account has been tried. This preserves backend cache affinity and matches the documented behavior in docs/providers.md.

Commands

cursor-noodle              # first run: setup wizard; later: starts the proxy
cursor-noodle cheapmf      # free-tier fast path (Opencode key β†’ DeepSeek/MiMo/North free)
cursor-noodle start        # start proxy + tunnel in the background
cursor-noodle status       # running state + public tunnel URL
cursor-noodle models       # list all available models
cursor-noodle setup        # re-open the setup wizard
cursor-noodle restart      # reload after manual .env changes
cursor-noodle uninstall    # stop, remove global binary, optionally wipe ~/.cursor-noodle/
cursor-noodle --help       # see every command

Uninstall: cursor-noodle uninstall will ask whether to wipe ~/.cursor-noodle/ (API keys, OAuth tokens, logs) β€” keep it if you plan to reinstall later. Or run npm uninstall -g cursor-instant-noodle directly, or use the included uninstall.sh.

How it works

  1. The proxy starts an Express server on port 6767 (configurable via PORT)
  2. Spawns a Cloudflare quick tunnel to expose it on a public HTTPS URL β€” Cursor requires a public base URL, localhost does not work
  3. Each /v1/chat/completions request is dispatched to a provider based on the model ID prefix
  4. Antigravity and Codex providers translate OpenAI Chat Completions β†’ their native format
  5. Everything else (z.ai, MiniMax, Opencode, local) is a thin OpenAI passthrough
  6. The full model list is advertised at /v1/models so Cursor's dropdown fills up
  7. The proxy hot-reloads when ~/.cursor-noodle/.env changes (config edits don't interrupt your session)

See docs/development.md for the architecture in detail.

Documentation

Compatibility

  • macOS, Linux, Windows (via WSL2 recommended)
  • Node.js 18+
  • Cursor 0.40+

Contributing

PRs welcome! See docs/development.md for adding a new provider.

License

MIT