Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx skills add RadOrigin-LLC/RAD-Claude-Skills --skill fastify-typescriptgit clone --depth 1 https://github.com/RadOrigin-LLC/RAD-Claude-SkillsWrote 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/radorigin-llc/rad-claude-skills/fastify-typescript)<a href="https://agentmods.dev/skills/radorigin-llc/rad-claude-skills/fastify-typescript"><img src="https://agentmods.dev/badge/skills/radorigin-llc/rad-claude-skills/fastify-typescript/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/radorigin-llc/rad-claude-skills/fastify-typescript"><img src="https://agentmods.dev/badge/skills/radorigin-llc/rad-claude-skills/fastify-typescript.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.00089 | $0.02087 |
| Opus 5 | $0.00044 | $0.01043 |
| Sonnet 5 | $0.00018 | $0.00417 |
| Haiku 4.5 | $0.00009 | $0.00209 |
Grade A, and why
fastify-typescript 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 9d 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 — 189 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Fastify TypeScript Patterns
Type Providers (Preferred Approach)
NEVER duplicate TypeScript interfaces AND JSON schemas for the same data shape. Use a Type Provider to infer types directly from schemas, eliminating the second source of truth entirely.
Type Providers statically infer TypeScript types from inline JSON Schemas at compile time. This means runtime validation is guaranteed to match compile-time types -- a non-negotiable contract that eliminates an entire class of bugs where validation and types drift apart.
When a route defines a schema, the Type Provider analyzes that schema and automatically types request.body, request.query, and request.params inside the handler. If you change a schema field, incorrect handler code is immediately flagged at compile time. You get safety without ceremony.
Available Providers
Choose one of these two providers for your project:
@fastify/type-provider-typebox-- Uses TypeBox schemas. This is the recommended provider and offers the best developer experience. TypeBox schemas are composable, reusable TypeScript objects that produce both JSON Schema and static types from a single definition.@fastify/type-provider-json-schema-to-ts-- Uses raw JSON Schema objects withas constassertions. Choose this when you already have existing JSON Schema definitions or prefer writing schemas in plain JSON Schema format.
Usage Pattern with TypeBox
Apply the Type Provider to your Fastify instance using withTypeProvider<T>(), then define route schemas using TypeBox's Type builder. The handler parameters are fully typed automatically:
import Fastify from 'fastify'
import { TypeBoxTypeProvider } from '@fastify/type-provider-typebox'
import { Type } from '@sinclair/typebox'
const app = Fastify().withTypeProvider<TypeBoxTypeProvider>()
app.post('/user', {
schema: {
body: Type.Object({
name: Type.String(),
age: Type.Number()
}),
response: {
200: Type.Object({
id: Type.String(),
name: Type.String(),
age: Type.Number()
})
}
}
}, (request, reply) => {
// request.body is fully typed: { name: string; age: number }
const { name, age } = request.body
return reply.send({ id: 'generated-id', name, age })
})
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.
- 9d ago First seen · 189 lines · 89 tokens per session scan A d12a68d07e6d
fastify-typescript is a skill published in the GitHub repository RadOrigin-LLC/RAD-Claude-Skills (5 stars, last pushed 23d ago), licensed Apache-2.0. It adds 89 tokens to every session and 2,087 once invoked, about $0.0004 per session on Opus 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-08-31.
Other skills, from other repositories
nestjs-expert
Creates and configures NestJS modules, controllers, services, DTOs, guards, and interceptors for enterprise-grade TypeScript backend applications. Use when building NestJS REST APIs or GraphQL services, implementing dependency injection, scaffolding modular architecture, adding JWT/Passport authentication, integrating…
pinme-email
Use this skill when a PinMe project (Worker TypeScript) needs to integrate email sending (sendemail). Guides AI to generate correct Worker TS code.
node-modern
Use this skill when writing, reviewing, or refactoring Node.js >= 22 TypeScript code in WrongStack. Triggers: ESM imports, fetch usage, AbortSignal, node: protocol, Web Streams, or any async patterns.
nodejs-backend
Node.js backend patterns: layered architecture, TypeScript, validation, error handling, security, observability, logging, metrics, deployment. Use when building REST APIs, REST endpoints, middleware, Express/Fastify/Hono/NestJS/Koa servers, tRPC procedures, Bun servers, or server-side TypeScript.
draper-decorators
This skill should be used when the user asks to "create a decorator", "write a decorator", "move logic into decorator", "clean logic out of the view", "isn't it decorator logic", "test a decorator", or mentions Draper, keeping views clean, or representation logic in decorators. Should also be used when editing…
api-framework-nestjs
NestJS backend framework - modules, controllers, services, DI, guards, pipes, interceptors, exception filters, middleware, DTOs with class-validator.