.claude/skills/hapi/SKILL.md
Use when building @hapi/hapi servers, routes, plugins, auth schemes, HTTP APIs, request lifecycle, caching, stale-while-revalidate, server methods, views, startup sequences, or response marshalling.
npx skillsauth add avifenesh/glidemq-hapi hapiInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
const server = Hapi.server({ port: 3000 });
server.route({ method: 'GET', path: '/', handler: () => 'ok' });
await server.start();
ServerRoute<Refs> pattern; see route scaffold| Topic | Reference | | ------------------------ | ------------------------------------------------------------------------------------------------------ | | Request/response objects | request, response | | Response toolkit (h) | toolkit | | Sessions (yar) | sessions | | Caching & CORS | cache-cors, server cache, catbox-memory engine, catbox-fs engine, catbox-redis engine | | Security headers | security | | Payload parsing | payload | | Decorations & methods | decorations, methods | | MIME types (mimos) | mimos | | Realms & plugin scoping | realm | | Response marshalling | marshal pipeline | | File serving (inert) | overview, file handler, directory handler | | Basic authentication | basic auth | | Error handling (Boom) | boom errors | | Error filtering (Bounce) | bounce utility | | WebSockets (nes) | overview, subscriptions, client | | Startup & shutdown | startup lifecycle | | Events | events | | Testing (server.inject) | network | | TypeScript overview | typescript | | TypeScript auth typing | auth-scheme, type-author | | JWT authentication | jwt overview, validate function, token API | | TypeScript plugins | plugin-scaffold | | Views & templates | vision overview, engines, context & layouts |
tools
Use when building joi schemas, validating input data, defining custom types, conditional validation with .when(), cross-field references, custom error messages, or writing joi extensions. Standalone package that integrates with the @hapi ecosystem.
tools
Use when work should span one or more detached tasks but still behave like one job with a single owner context. TaskFlow is the durable flow substrate under authoring layers like Lobster, ACPX, plugins, or plain code. Keep conditional logic in the caller; use TaskFlow for flow identity, child-task linkage, waiting state, revision-checked mutations, and user-facing emergence.
tools
# Lobster Lobster executes multi-step workflows with approval checkpoints. Use it when: - User wants a repeatable automation (triage, monitor, sync) - Actions need human approval before executing (send, post, delete) - Multiple tool calls should run as one deterministic operation ## When to use Lobster | User intent | Use Lobster? | | ------------------------------------------------------ | --------------------------
tools
# Lobster Lobster executes multi-step workflows with approval checkpoints. Use it when: - User wants a repeatable automation (triage, monitor, sync) - Actions need human approval before executing (send, post, delete) - Multiple tool calls should run as one deterministic operation ## When to use Lobster | User intent | Use Lobster? | | ------------------------------------------------------ | --------------------------