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

@zynopssolutions/zynops-cli

v0.1.9

Published

Claude Code opened to any LLM — OpenAI, Gemini, DeepSeek, Ollama, and 200+ models

Readme

u# ZynOps-CLI

ZynOps-CLI is an open-source coding-agent CLI for cloud and local model providers.

Use OpenAI-compatible APIs, Gemini, GitHub Models, Codex, Ollama, Atomic Chat, and other supported backends while keeping one terminal-first workflow: prompts, tools, agents, MCP, slash commands, and streaming output.

PR Checks Release Discussions Security Policy License

Quick Start | Setup Guides | Providers | Source Build | VS Code Extension | Community

Why ZynOps

  • Use one CLI across cloud APIs and local model backends
  • Save provider profiles inside the app with /provider
  • Run with OpenAI-compatible services, Gemini, GitHub Models, Codex, Ollama, Atomic Chat, and other supported providers
  • Keep coding-agent workflows in one place: bash, file tools, grep, glob, agents, tasks, MCP, and web tools
  • Use the bundled VS Code extension for launch integration and theme support

⚡ Quick Start

Install

npm install -g @zynopssolutions/zynops-cli

If the install later reports ripgrep not found, install ripgrep system-wide and confirm rg --version works in the same terminal before starting ZynOps.

Launch

zynops

Inside ZynOps:

🚀 Provider Setup

OpenAI

export CLAUDE_CODE_USE_OPENAI=1
export OPENAI_API_KEY=sk-your-key-here
export OPENAI_MODEL=gpt-4o

zynops
$env:CLAUDE_CODE_USE_OPENAI="1"
$env:OPENAI_API_KEY="sk-your-key-here"
$env:OPENAI_MODEL="gpt-4o"

zynops

Local Ollama

export CLAUDE_CODE_USE_OPENAI=1
export OPENAI_BASE_URL=http://localhost:11434/v1
export OPENAI_MODEL=qwen2.5-coder:7b

zynops
$env:CLAUDE_CODE_USE_OPENAI="1"
$env:OPENAI_BASE_URL="http://localhost:11434/v1"
$env:OPENAI_MODEL="qwen2.5-coder:7b"

zynops

📡 Supported Providers

| Provider | Setup | Notes | |---|---|---| | OpenAI-compatible | /provider or env vars | OpenAI, OpenRouter, DeepSeek, Groq, Mistral, LM Studio, and any /v1-compatible server | | Gemini | /provider or env vars | API key, access token, or local ADC workflow | | GitHub Models | /onboard-github | Interactive onboarding with saved credentials | | Codex | /provider | Uses existing Codex credentials when available | | Ollama | /provider or env vars | Local inference — no API key required | | Atomic Chat | Advanced setup | Local Apple Silicon backend | | Bedrock / Vertex / Foundry | Env vars | Additional integrations for supported environments |

Provider note: Tool quality and behavior varies across providers. Models with strong function-calling support produce the best results. Smaller local models may struggle with long multi-step tool flows.


🧠 Agent Routing

Route different agents to different models — useful for cost optimization or splitting work by model strength.

Add the following to ~/.claude/settings.json:

{
  "agentModels": {
    "deepseek-chat": {
      "base_url": "https://api.deepseek.com/v1",
      "api_key": "sk-your-key"
    },
    "gpt-4o": {
      "base_url": "https://api.openai.com/v1",
      "api_key": "sk-your-key"
    }
  },
  "agentRouting": {
    "Explore": "deepseek-chat",
    "Plan": "gpt-4o",
    "general-purpose": "gpt-4o",
    "frontend-dev": "deepseek-chat",
    "default": "gpt-4o"
  }
}

When no routing match is found, the global provider is used as the fallback.

⚠️ Security note: api_key values in settings.json are stored in plaintext. Keep this file private and never commit it to version control.


🌐 Web Search and Fetch

WebSearch works on all non-Anthropic models via DuckDuckGo by default — no configuration required. For Anthropic-native backends and Codex, ZynOps preserves the provider's native web search behavior.

Note: The DuckDuckGo fallback scrapes search results and may be rate-limited or blocked. For a more reliable option, configure Firecrawl.

WebFetch is supported but may fail on JavaScript-rendered pages or sites that block plain HTTP requests. Firecrawl resolves this.

Optional: Firecrawl Integration

export FIRECRAWL_API_KEY=your-key-here

With Firecrawl enabled:

  • WebSearch can use Firecrawl's search API (DuckDuckGo remains the default free path)
  • WebFetch uses Firecrawl's scrape endpoint — handles JS-rendered pages correctly

Free tier at firecrawl.dev includes 500 credits. The key is optional.


🏗️ Source Build & Local Development

bun install
bun run build
node dist/cli.mjs

Useful Commands

| Command | Purpose | |---|---| | bun run dev | Development mode | | bun run smoke | Smoke tests | | bun run doctor:runtime | Runtime diagnostics | | bun run verify:privacy | Privacy verification | | bun test ... | Focused test runs for touched areas |

Repository Structure

zynops/
├── src/                          # Core CLI and runtime
├── scripts/                      # Build, verification, and maintenance scripts
├── docs/                         # Setup, contributor, and project documentation
├── python/                       # Standalone Python helpers and tests
├── vscode-extension/zynops-vscode/  # VS Code extension
├── .github/                      # Repo automation, templates, and CI
└── bin/                          # CLI launcher entrypoints

🧩 VS Code Extension

The repo includes a VS Code extension in vscode-extension/zynops-vscode that provides:

  • Launch integration — start ZynOps directly from VS Code
  • Provider-aware control center — manage providers without leaving the editor
  • Theme support — visual integration with your editor theme

📚 Setup Guides

Beginner-friendly:

Advanced:


🔒 Security

If you discover a security issue, please review SECURITY.md before disclosing.


💬 Community


🤝 Contributing

Contributions are welcome. For larger changes, open an issue first so scope is clear before implementation begins.

Before submitting, validate your changes with:

bun run build
bun run smoke
bun test ...   # focused runs for areas you touched

⚖️ Disclaimer

ZynOps is an independent community project. It is not affiliated with, endorsed by, or sponsored by Anthropic.

ZynOps originated from the Claude Code codebase and has since been substantially modified to support multiple providers and open use. "Claude" and "Claude Code" are trademarks of Anthropic PBC. See LICENSE for details.


📄 License

Released under the MIT License.


Made with ☕ by the ZynOps community