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

nyxo-code

v1.0.11

Published

Nyxo Code — AI Agent CLI powered by NyxoAI

Readme

Nyxo Code

AI coding agent CLI — powered by NyxoAI or any custom worker API.


Features

  • 🤖 Dual API support — NyxoAI (native) or your own worker endpoint (?question=)
  • 🧠 Recall memory — AI auto-saves tokens, API keys, and preferences to recall.txt
  • 🛠️ Skills injection — Create skills.txt to define custom AI behaviors per project
  • 🔧 MCP tool support — File read/write, shell commands, web tools
  • 💬 Interactive REPL + one-shot run mode

Install

bash install.sh

Quick Start

nyxo          # Start interactive session (prompts for setup on first run)
nyxo config   # Switch API backend at any time
nyxo run "refactor src/index.ts to use async/await"

API Backends

NyxoAI (default)

Uses the official NyxoAI API with an API key + model key.

nyxo config
# → Choose "NyxoAI"
# → Enter your API Key
# → Enter your Model Key (e.g. mistralai/Mistral-7B-Instruct-v0.2)

Custom Worker API

Use your own worker endpoint where the API key is already baked in server-side. Questions are sent as a GET request: GET <your-url>?question=<full prompt>.

nyxo config
# → Choose "Custom Worker"
# → Enter your worker URL (e.g. https://my-worker.example.com/ai)

The full prompt — including recall memory, skills, conversation history, and your message — is sent as the question parameter. Your worker handles authentication.

You can also pass the worker URL inline:

nyxo run -w https://my-worker.example.com/ai "explain this codebase"
nyxo chat -w https://my-worker.example.com/ai

Recall Memory (recall.txt)

Nyxo Code remembers things across sessions using ~/.nyxo/recall.txt.

How it works:

  • Tell the AI something once → it stores it → never asks again
  • The AI uses the syntax [[RECALL:key=value]] in its response to save data silently
  • Recall is injected into every prompt automatically

Example:

You: My GitHub token is ghp_abc123
AI:  Got it, I'll remember that.     ← silently writes [[RECALL:github_token=ghp_abc123]]

# Next session — no need to tell it again
You: Push this to GitHub
AI:  (uses github_token from recall automatically)

CLI commands:

nyxo recall          # View all saved recall entries
nyxo recall --clear  # Clear all recall memory
# Or in REPL:
/recall              # View recall
/recall clear        # Clear recall

Manual editing — open ~/.nyxo/recall.txt in any editor. Format: key=value, one per line.


Skills (skills.txt)

Define custom behaviors the AI follows on every message.

Create the file:

# Project-specific (takes priority):
nano ./skills.txt

# Global fallback:
nano ~/.nyxo/skills.txt

Example skills.txt:

Always reply in a concise, direct style.
When writing code, always include error handling.
Prefer TypeScript over JavaScript for new files.
My project uses pnpm, not npm or yarn.
Always run tests after making changes.

The AI reads this on every message. No restart needed — it's loaded fresh each turn.

View loaded skills in REPL: /skills


REPL Commands

| Command | Description | |---------|-------------| | /help | Show all commands | | /recall | View recall memory | | /recall clear | Clear recall memory | | /skills | Show loaded skills.txt | | /api | Show current API backend | | /model <key> | Switch model (NyxoAI mode) | | /history | Show session history | | /actions | Show this session's action log | | /mcp | Show connected MCP servers | | /clear | Clear terminal | | /exit | Exit and save session |


Config Files

| File | Location | Managed by | |------|----------|------------| | config.json | ~/.nyxo/config.json | Nyxo Code (API key, model, worker URL) | | recall.txt | ~/.nyxo/recall.txt | AI auto-writes, user can edit | | skills.txt | ./skills.txt or ~/.nyxo/skills.txt | User creates manually | | history.json | ~/.nyxo/history.json | Nyxo Code (session history) |


Environment Variables

NYXO_API_KEY=...        # NyxoAI API key
NYXO_MODEL=...          # Model key
NYXO_WORKER_URL=...     # Custom worker URL (overrides config)