Back to the catalog

oh-my-toomuchtalker

A global shoutboard for Claude Code. Post short messages and see random shouts from other developers on your statusline. Comes with a leader

Open source Repository Open in the app JSON README (API)

About

A global shoutboard for Claude Code. Post short messages and see random shouts from other developers on your statusline. Comes with a leaderboard, mute system, and seamless HUD integration that chains with any existing statusline setup.

Details

Kind
Plugins
Topic
No topic detected
Publisher
tristanjung1006
Origin
marketplace
Category
ferramentas
Last push
2026-03-09T07:09:43Z
Repository state
ativo
Language
TypeScript
License
MIT
Added
2026-08-30 01:48:58
Updated
2026-08-30 01:48:58
Origin id
tristanjung1006/oh-my-toomuchtalker/oh-my-toomuchtalker

README

# oh-my-toomuchtalker

[![npm version](https://img.shields.io/npm/v/oh-my-toomuchtalker)](https://www.npmjs.com/package/oh-my-toomuchtalker)
[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)

**A global shoutboard for Claude Code.**
See what other developers are yelling into the void — right in your statusline.

```
[OMC] ralph | ctx:67% | [shout] "새벽 3시 디버깅 중..." — anonymous
```

[Get Started](#quick-start) · [How It Works](#how-it-works) · [Commands](#mcp-tools) · [Contributing](#contributing)

---

## What is this?

A shared message board that lives in your Claude Code statusline. Post a message, and every developer using toomuchtalker will see it. Think of it as a global developer chatroom, but quieter — one shout at a time.

- **Post shouts** from Claude Code with natural language
- **See random shouts** from other developers on your statusline
- **Check the leaderboard** to see who's been talking the most

Works **with or without** [oh-my-claudecode](https://github.com/Yeachan-Heo/oh-my-claudecode). If you have OMC, it chains seamlessly. If you don't, it works standalone.

---

## Quick Start

### Step 1: Install

```bash
npm install -g oh-my-toomuchtalker
```

### Step 2: Setup

```bash
toomuchtalker setup
```

This will:
- Install the HUD wrapper to your Claude Code statusline
- Register the MCP server so Claude can use shout/say/status tools
- Preserve your existing statusline (OMC, custom, or none)

### Step 3: Shout something

Open Claude Code and say:

```
/tmt hello world!
```

That's it. Your shout is now visible to every toomuchtalker user.

---

## How It Works

```
Claude Code
    |
    ├── MCP Server (tools)
    |     ├── say     →  POST /messages   →  Cloudflare Workers  →  D1
    |     ├── shout   →  GET  /messages/random
    |     └── status  →  GET  /stats
    |
    └── Statusline (HUD)
          └── wrapper.mjs
                ├── fetch /messages/random (cached 30s)
                └── chain to previous statusline (OMC, etc.)
```

The project has two parts:

| Component | What it does |
|-----------|-------------|
| **MCP Server** | Exposes `say`, `shout`, `talker_status` tools to Claude Code |
| **HUD Wrapper** | Displays a random shout on the statusline, chaining to any existing statusline |

The backend is a Cloudflare Workers API with a D1 (SQLite) database. Zero cost, globally distributed.

---

## MCP Tools

| Tool | Description | Example |
|------|-------------|---------|
| `say` | Post a message to the shoutboard (max 50 chars) | `/tmt hello from Seoul!` |
| `shout` | Fetch a random message from the board | `/tmt` |
| `talker_status` | Show total messages and top 10 leaderboard | `/tmt status` |

All tools are accessible through the `/tmt` slash command or by asking Claude directly:

> "shout something on toomuchtalker"
> "what's on the shoutboard?"
> "show me the toomuchtalker leaderboard"

---

## CLI Commands

```bash
toomuchtalker setup       # Install HUD + register MCP server
toomuchtalker status      # Check installation state
toomuchtalker uninstall   # Clean removal, restore previous statusline
toomuchtalker nick        # Set or change your display name
toomuchtalker mute        # Mute a user (hide their shouts from your statusline)
toomuchtalker unmute      # Unmute a previously muted user
toomuchtalker muted       # List all muted users
```

### Uninstall

Clean removal with full rollback:

```bash
toomuchtalker uninstall
```

This restores your previous statusline exactly as it was before installation.

---

## Compatibility

| Environment | Status |
|-------------|--------|
| With oh-my-claudecode | Chains after OMC output: `[OMC] ... \| [shout] ...` |
| With other statusline | Chains after existing output |
| No statusline | Shows shout only |
| No internet | Gracefully shows nothing (1.5s timeout) |

The HUD wrapper is designed to **never break your Claude Code session**. All errors are silently swallowed, API calls have a 1.5s timeout, and results are cached for 30 seconds.

---

## Configuration

Environment variables (optional):

| Variable | Default | Description |
|----------|---------|-------------|
| `TOOMUCHTALKER_API_URL` | `https://toomuchtalker-api.toomuchtalker.workers.dev` | API endpoint |
| `TOOMUCHTALKER_AUTHOR` | `anonymous` | Your display name |

Set your author name in `~/.claude/settings.json`:

```json
{
  "env": {
    "TOOMUCHTALKER_AUTHOR": "yourname"
  }
}
```

---

## Project Structure

```
oh-my-toomuchtalker/
├── src/
│   ├── index.ts              # MCP server entry point
│   ├── cli/                  # CLI (setup/uninstall/status)
│   ├── tools/                # MCP tool definitions
│   │   ├── say.ts            # Post a message
│   │   ├── shout.ts          # Get random message
│   │   └── status.ts         # Leaderboard
│   ├── hud/
│   │   ├── wrapper.mjs       # Statusline wrapper (self-contained)
│   │   └── renderer.ts       # Message formatting
│   ├── api/
│   │   ├── client.ts         # HTTP client for Workers API
│   │   └── types.ts          # TypeScript interfaces
│   └── config/
│       └── index.ts          # Config with Zod validation
├── worker/                   # Cloudflare Workers backend
│   ├── src/
│   │   ├── index.ts          # Workers entry point
│   │   └── routes/           # API route handlers
│   ├── schema.sql            # D1 database schema
│   └── wrangler.toml         # Cloudflare config
├── package.json
├── tsconfig.json
└── vitest.config.ts
```

---

## Contributing

```bash
# Clone
git clone https://github.com/tristanjung1006/oh-my-toomuchtalker.git
cd oh-my-toomuchtalker

# Install deps
npm install
cd worker && npm install && cd ..

# Build
npm run build

# Run MCP server locally
npm start

# Deploy backend (requires Cloudflare account)
cd worker && npm run deploy
```

### Tech Stack

| Layer | Tech |
|-------|------|
| Language | TypeScript (ESM) |
| Runtime | Node.js >= 20 |
| Build | tsc (no bundler) |
| Test | Vitest |
| Backend | Cloudflare Workers + D1 |
| Validation | Zod |
| MCP | @modelcontextprotocol/sdk |

---

## Requirements

- **Claude Code** CLI installed
- **Node.js** >= 20
- That's it.

---

## License

MIT

---

*Built for developers who have something to say between deploys.*

More