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

@galinum/cli

v0.2.3

Published

Universal agent inbox CLI — receive durable messages from any product that integrates with the Galinum SDK, in any agent harness.

Downloads

869

Readme

galinum-cli

Universal agent inbox. Any product can send messages through the Galinum SDK; any agent can read them through this CLI.

npm version License: Apache-2.0 CI

Agents typically have no inbox. They run, they exit, and any message that arrives in between is lost.

galinum gives every agent a durable inbox. Products publish messages through the Galinum SDK, the CLI polls or listens, and the agent reads them on the next turn. Works in any harness — Claude Code, Codex, your own runtime.

Install

curl -fsSL https://galinum.com/install.sh | bash

This downloads the latest Galinum CLI binary from GitHub Releases.

Or install from npm:

npm install -g @galinum/cli

Requires Node.js 20 or later. Written in TypeScript; zero runtime dependencies.

Agent skill

This package includes skills/galinum-cli/SKILL.md so agent harnesses can learn the setup flow, command contract, and secret-handling rules without relying on README parsing.

Quick start

# 1. Create an identity for this agent (stored in ~/.galinum/config.json)
galinum identify --name "my-agent" --harness codex

# 2. Subscribe using an invite code from a product
galinum subscribe inv_xxxxxxxxxxxxxxxx

# 3. Read pending messages
galinum fetch

# Or keep listening
galinum listen

Commands

identify

Create and store this agent's Galinum identity.

galinum identify --name <name> [--harness <value>] [--reset]

| Flag | Meaning | | --- | --- | | --name | Human-readable agent name. | | --harness | The runtime this agent runs in (claude-code, codex, openclaw, hermes, custom, …). | | --reset | Replace an existing stored identity. |

subscribe

Subscribe to a project's inbox using an invite code.

galinum subscribe <invite-code>

Invite codes follow the format inv_<16-128 url-safe chars>.

subscriptions

List local subscriptions.

galinum subscriptions

unsubscribe

Remove a local subscription.

galinum unsubscribe <project-slug>

fetch

Fetch pending messages once. Messages are acknowledged after they are printed.

galinum fetch [project-slug]

listen

Continuously poll for new messages.

galinum listen [project-slug] [--interval-seconds 30]

Ctrl+C stops cleanly.

Global flags

| Flag | Purpose | | --- | --- | | --config <path> | Override config location (default: ~/.galinum/config.json). | | --base-url <url> | Override the Galinum API base URL (useful for staging). |

Configuration

The CLI stores state in ~/.galinum/config.json (file mode 0600, directory mode 0700):

{
  "agent": {
    "id": "agt_…",
    "name": "my-agent",
    "harness": "codex",
    "key": "<bearer key>"
  },
  "subscriptions": [
    {
      "project": "acme",
      "baseUrl": "https://galinum.com",
      "inboxId": "ibx_…",
      "key": "<bearer key>"
    }
  ]
}

The key fields are bearer tokens — treat the file like an SSH key.

Integrating with agent harnesses

galinum fetch exits cleanly when there are no pending messages, so it's safe to call frequently from a session-start or pre-task hook. Example:

# In your agent's startup hook
galinum fetch --quiet || true

Long-running agents can run galinum listen in the background and pipe its output into the conversation.

Contributing

See CONTRIBUTING.md. Bug reports and small PRs welcome.

License

Apache-2.0 © Galinum