From xonovex-skill-hono-opinionated
Use when editing Hono APIs that follow the opinionated style — inline OpenAPI handlers, explicit router selection (LinearRouter / RegExpRouter), sync handlers where possible, bodyLimit middleware. An overlay on hono-guide: covers only the opinionated decisions, not generic Hono usage. Triggers on `.ts` files with `OpenAPIHono`, inline route schemas, and prompts about router perf, payload limits, or sync-vs-async handlers, even when the user doesn't say 'opinionated'.
How this skill is triggered — by the user, by Claude, or both
Slash command
/xonovex-skill-hono-opinionated:hono-opinionated-guideThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
An overlay on **hono-guide**. Apply **hono-guide** for all generic Hono work — application structure, validation/type safety, middleware patterns and combination, error handling, cookies, security, WebSockets, context storage, platform runtimes. This skill adds only the opinionated decisions on top.
An overlay on hono-guide. Apply hono-guide for all generic Hono work — application structure, validation/type safety, middleware patterns and combination, error handling, cookies, security, WebSockets, context storage, platform runtimes. This skill adds only the opinionated decisions on top.
Foundation - Everything generic lives in hono-guide; this skill layers OpenAPI-first conventions on top
Async controllers - Remove unnecessary async from synchronous handlers, see references/controllers.md
OpenAPI type inference - Use inline handlers for type safety, explicit status codes, OpenAPIHono hierarchy, see references/openapi-inline-handlers.md, references/openapi-explicit-status-codes.md, references/openapi-router-hierarchy.md
OpenAPI documentation - Use app.doc() for automatic spec generation, see references/openapi-spec-generation.md
Router selection - LinearRouter for serverless, RegExpRouter for high-throughput, see references/router-selection.md
Request limits - Use bodyLimit middleware to prevent DoS, see references/body-limit.md
import {OpenAPIHono} from "@hono/zod-openapi";
import {bodyLimit} from "hono/body-limit";
import {secureHeaders} from "hono/secure-headers";
export function createApp() {
const app = new OpenAPIHono();
app.use("*", secureHeaders());
app.use("*", bodyLimit({maxSize: 100 * 1024}));
app.route("/api/v1", v1Router);
app.doc("/openapi.json", {
openapi: "3.1.0",
info: {title: "API", version: "1.0.0"},
});
return app;
}
c.json(body, 201)) are required by the OpenAPI generator — implicit 200 produces wrong specs.route() runs the parent middleware firstGuides collaborative design exploration before implementation: explores context, asks clarifying questions, proposes approaches, and writes a design doc for user approval.
Creates structured, bite-sized implementation plans from specs or requirements before writing code. Useful for breaking down multi-step tasks into testable steps with file structure and task boundaries.
Resolves in-progress git merge or rebase conflicts by analyzing history, understanding intent, and preserving both changes where possible. Runs automated checks after resolution.
npx claudepluginhub xonovex/platform --plugin xonovex-skill-hono-opinionated