Getting it into your agent
This one installs as part of its plugin. Adding the marketplace and installing the plugin brings it with everything else the plugin ships.
/plugin marketplace add aiocean/claude-plugins/plugin install aio-watermill-kitWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/aiocean/claude-plugins/aio-watermill-kit)<a href="https://agentmods.dev/skills/aiocean/claude-plugins/aio-watermill-kit"><img src="https://agentmods.dev/badge/skills/aiocean/claude-plugins/aio-watermill-kit/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/skills/aiocean/claude-plugins/aio-watermill-kit"><img src="https://agentmods.dev/badge/skills/aiocean/claude-plugins/aio-watermill-kit.svg" alt="Reviewed on agentmods" width="80" height="20"></a>What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00071 | $0.03486 |
| Opus 5.5 | $0.00028 | $0.01394 |
| Sonnet 5.5 | $0.00014 | $0.00697 |
| Haiku 4.5 | $0.00007 | $0.00349 |
Grade A, and why
aio-watermill-kit scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 1mo ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 429 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Watermill — Event-Driven Go Applications
Watermill is a Go library for building event-driven applications. It provides a clean abstraction over message brokers with a three-tier API: low-level Publisher/Subscriber interfaces, a mid-level Router with middleware support, and a high-level CQRS component.
The library's core philosophy: at-least-once delivery with idempotent handlers. Every handler you write should safely handle receiving the same message twice.
Architecture Overview
┌─────────────────────────────────────────────────┐
│ CQRS (High-level) │
│ CommandBus, EventBus, Processors, Marshalers │
├─────────────────────────────────────────────────┤
│ Router (Mid-level) │
│ Handlers, Middleware chains, Lifecycle mgmt │
├─────────────────────────────────────────────────┤
│ Publisher / Subscriber (Low-level) │
│ Kafka, AMQP, Redis, NATS, SQL, GoChannel... │
└─────────────────────────────────────────────────┘
Choose the right tier:
- Publisher/Subscriber — when you need raw control or simple publish/consume
- Router — when you need middleware, multiple handlers, or message transformation (most common)
- CQRS — when you want typed commands/events with automatic marshaling
Core Types
Message
The fundamental data unit. Immutable after publishing.
msg := message.NewMessage(watermill.NewUUID(), payload)
msg.Metadata.Set("correlation_id", corrID)
// Lifecycle: created → published → acked/nacked
// Router handles Ack/Nack automatically — don't call them manually in handlers
Fields:
UUID(string) — unique ID for tracing/dedup, usewatermill.NewUUID()orwatermill.NewULID()Payload([]byte) — message body, any format (JSON, Protobuf, etc.)Metadata(message.Metadata) — key-value headers, correlation IDs, partition keysContext— standardcontext.Contextfor cancellation and deadlines
Publisher & Subscriber
What ships with it
4 files beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 1mo ago First seen · 429 lines · 71 tokens per session scan A 657db07d3567
aio-watermill-kit is a skill published in the GitHub repository aiocean/claude-plugins (4 stars, last pushed 28d ago), licensed MIT. It adds 71 tokens to every session and 3,486 once invoked, about $0.0003 per session on Opus 5.5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-09-03.
Other skills, from other repositories
go-backend-microservices
Go backend development best practices for microservices with clean architecture, observability, and production-ready patterns.
agent-go-expert
Specialist subagent: Go concurrency, error handling, stdlib patterns, Chi/Echo web frameworks specialist. Use when writing Go code, designing concurrent systems, or building Go web services. Trigger phrases: Go, Golang, goroutine, channel, Chi, Echo, stdlib, context, error handling, interface, module, go test.
api-development
Guidelines for building clean, scalable APIs with Go standard library and NestJS TypeScript, covering security, validation, and modular architecture.
go-api-development
Go API development guidelines using the standard library (1.22+) with best practices for RESTful API design, error handling, and security.
go
Expert in Go/Golang development with focus on APIs, microservices, and clean architecture.
skill-go-gin-api
Padrões DARE para APIs REST em Go + Gin (ou stdlib net/http) + sqlc + PostgreSQL. Handlers, services, repositories, middleware, validação com go-playground/validator, JWT, rate limit, swag (OpenAPI), testes com testify e httptest.