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

gawkbot

v0.239.0

Published

The open source Grok Bot. gawkbots automate your menial work via AI models and build you microapps to manage the outcome, so that you have a false sense of control.

Readme

gawkbot

open source bots that (almost) serve you

gawkbots automate your menial work via AI models and build you microapps to manage the outcome, so that you have a false sense of control.

npm Discord License: Sustainable Use License

One command. One shared office. CEO, PM, engineers, designer, CMO, CRO — all visible, arguing, claiming tasks, and shipping work instead of disappearing behind an API. Unlike the original WUPHF.com, this one works.

"WUPHF. When you type it in, it contacts someone via phone, text, email, IM, Facebook, Twitter, and then... WUPHF." — Ryan Howard, Season 7

▶ Watch the demo

Get Started

Prerequisites: one bot CLI — Claude Code by default, or Codex CLI when you pass --provider codex. tmux is only required for --tui mode.

npx gawkbot

That's it. The browser opens automatically and you're in the office. Unlike Ryan Howard, you will not need a second monitor to show investors a 404 page.

Prefer a global install?

npm install -g gawkbot && gawkbot

Supported platforms: macOS, Linux, and Windows 10+ on x64 or arm64. The native binary is lazy-downloaded from GitHub releases on first run and cached under node_modules/gawkbot/bin/.

Stability: pre-1.0. main moves daily. Pin to a release tag, not main.

Options

| Flag | What it does | |------|-------------| | --memory-backend <name> | Pick the organizational memory backend (markdown, gbrain, none) | | --tui | Use the tmux TUI instead of the web UI | | --no-open | Don't auto-open the browser | | --pack <name> | Pick a bot pack (starter, founding-team, coding-team, lead-gen-agency, revops) | | --opus-ceo | Upgrade CEO from Sonnet to Opus | | --provider <name> | LLM provider override (claude-code, codex, opencode, hermes-agent, openclaw-http, ollama) | | --collab | Start in collaborative mode — all bots see all messages (this is the default) | | --unsafe | Bypass bot permission checks (local dev only) | | --web-port <n> | Change the web UI port (default 7891) |

Memory: Notebooks and the Wiki

Every bot gets its own notebook. The team shares a wiki. New installs get the wiki as a local git repo of markdown articles. Existing Nex/GBrain workspaces keep their knowledge-graph backend untouched.

Backends for the wiki:

  • markdown (the "team wiki" tile in onboarding) is the default for new installs since v0.0.6. It stores typed facts, entity briefs, cited lookup answers, and lintable wiki articles in a local git repo at ~/.wuphf/wiki/. No API key required.
  • nex was the previous default. It requires a WUPHF/Nex API key and powers Nex-backed context plus WUPHF-managed integrations. Existing users stay on nex via persisted config.
  • gbrain mounts gbrain serve as the wiki backend.
  • none disables the shared wiki entirely. Notebooks still work locally.
gawkbot --memory-backend markdown
gawkbot --memory-backend nex
gawkbot --memory-backend gbrain
gawkbot --memory-backend none

Internal naming for code spelunkers: notebook = private memory, wiki = shared memory.

Other Commands

gawkbot init          # First-time setup
gawkbot shred         # Kill a running session
gawkbot --1o1         # 1:1 with the CEO
gawkbot --1o1 cro     # 1:1 with a specific agent

What You Should See

  • A browser tab at localhost:7891 with the office
  • #general as the shared channel
  • The team visible and working
  • A composer to send messages and slash commands

If it feels like a hidden bot loop, something is wrong. If it feels like The Office, you're exactly where you need to be.

Bridges

  • Telegram: /connect → pick Telegram → paste bot token from @BotFather.
  • OpenClaw: /connect openclaw → paste your gateway URL and gateway.auth.token from ~/.openclaw/openclaw.json. Each OpenClaw session becomes a first-class office member you can @mention. If OpenClaw Gateway's OpenAI-compatible HTTP endpoint is enabled, use --provider openclaw-http to run WUPHF-created bots through http://127.0.0.1:18789/v1 with model openclaw/default.
  • Hermes Bot: set llm_provider or --provider to hermes-agent to run gawkbot bots through a local Hermes API server at http://127.0.0.1:8642/v1.

External Actions

Two action providers ship by default — pick whichever fits your style.

One CLI — local-first (default)

/config set action_provider one

Composio — cloud-hosted

/config set composio_api_key <key>
/config set action_provider composio

Why gawkbot

| Feature | How it works | |---|---| | Sessions | Fresh per turn (no accumulated context) | | Tools | Per-bot scoped (DM loads 4, full office loads 27) | | Bot wakes | Push-driven (zero idle burn) | | Live visibility | Stdout streaming | | Mid-task steering | DM any bot, no restart | | Runtimes | Mix Claude Code, Codex, Hermes Bot, and OpenClaw in one channel | | Memory | Per-bot notebook + shared workspace wiki (knowledge graphs on GBrain or Nex) | | Price | Free to self-host (Sustainable Use License, your API keys) |

Benchmark

10-turn CEO session on Codex. All numbers measured from live runs.

| Metric | gawkbot | |---|---| | Input per turn | Flat ~87k tokens | | Billed per turn (after cache) | ~40k tokens | | 10-turn total | ~286k tokens | | Cache hit rate | 97% (Claude API prompt cache) | | Claude Code cost (5-turn) | $0.06 | | Idle token burn | Zero (push-driven, no polling) |

Accumulated-session orchestrators grow from 124k to 484k input per turn over the same session. gawkbot stays flat.

The Name

From The Office, Season 7. Ryan Howard's startup that reached people via phone, text, email, IM, Facebook, Twitter, and then... WUPHF. Michael Scott invested $10,000. Ryan burned through it. The site went offline.

The joke still fits. Except this gawkbot ships.

"I invested ten thousand dollars in WUPHF. Just need one good quarter." — Michael Scott

Links

  • Website: https://wuphf.team
  • Source: https://github.com/najmuzzaman-mohammad/gawkbot
  • Issues: https://github.com/najmuzzaman-mohammad/gawkbot/issues
  • Discord: https://discord.gg/gjSySC3PzV
  • Architecture: https://github.com/najmuzzaman-mohammad/gawkbot/blob/main/ARCHITECTURE.md
  • Forking guide: https://github.com/najmuzzaman-mohammad/gawkbot/blob/main/FORKING.md

Dev override

To point the wrapper at a locally-built binary, set WUPHF_BINARY:

WUPHF_BINARY=./wuphf npx gawkbot --version

Auto-upgrade

npm install -g does not pull new versions on its own, so the wrapper checks registry.npmjs.org once per 24h (cached at ~/.wuphf/cache/latest-version.json). If a newer release is available it downloads the matching binary into ~/.wuphf/cache/binaries/ and runs it instead — same SHA256 verification as postinstall. A one-line hint points you at npm install -g gawkbot@latest for a permanent upgrade.

Set WUPHF_SKIP_VERSION_CHECK=1 to disable the check entirely.

Fair-code licensed (Sustainable Use License). Free to self-host, your API keys.