Skip to content

ali-master/skills

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Skills

UseStrict Skills

Documentation, distilled into agent-loadable skills.

skills.sh License: MIT

A curated catalog of SKILL.md packages for Claude, Codex, Copilot, and any agent that understands the skills.sh format.


✨ Install

npx skills add ali-master/skills      # npm
pnpm dlx skills add ali-master/skills # pnpm
bunx skills add ali-master/skills     # bun

Want only one skill instead of the whole catalog? Pass --skill <slug>:

npx skills add ali-master/skills --skill orpc-getting-started

See docs/install.md for single-skill installs, nested skills, batch installs, and update/remove workflows.

Your agent discovers each skill on demand and only loads the matching SKILL.md when the task requires it.

🚀 Start here

Want to… Open
Build a typed RPC API orpc-getting-started
Ship an OpenAPI-first service orpc-openapi-getting-started
Send typed notifications better-notify
Migrate from tRPC orpc-migrate-from-trpc

📚 Catalog

119 skills available. Run bun run scripts/generate-skills-table.ts to regenerate.

Skill Name Description
better-notify better-notify Context and API guidance for Better Notify — end-to-end typed notification infrastructure for Node.js
better-notify/best-practices better-notify/best-practices Quick reference for Better Notify configuration, patterns, and common gotchas
better-notify/setup better-notify/setup Interactive setup wizard for adding Better Notify to a TypeScript/JavaScript project
orpc-ai-sdk oRPC AI SDK Integration Seamlessly use AI SDK inside your oRPC projects without any extra overhead.
orpc-astro oRPC Astro Adapter Use oRPC inside an Astro project.
orpc-base64url oRPC Base64Url Helpers Functions to encode and decode base64url strings (URL-safe variant of base64).
orpc-batch-requests oRPC Batch Requests Plugin A plugin for oRPC to batch requests and responses to reduce overhead.
orpc-better-auth oRPC Better Auth Integration Use Better Auth inside your oRPC projects without any extra overhead.
orpc-body-limit oRPC Body Limit Plugin A plugin for oRPC to limit the request body size.
orpc-bracket-notation oRPC Bracket Notation Represent structured data in limited formats such as URL queries and form data.
orpc-browser-adapter oRPC Browser Adapter Type-safe communication between browser scripts using Message Port Adapter.
orpc-building-custom-plugins oRPC Building Custom Plugins Create powerful custom plugins to extend oRPC handlers and links with interceptors.
orpc-client-error-handling oRPC Client Error Handling Handle errors in a type-safe way in oRPC clients.
orpc-client-event-iterator oRPC Client Event Iterator Use event iterators in oRPC clients.
orpc-client-retry oRPC Client Retry Plugin A plugin for oRPC that enables retrying client calls when errors occur.
orpc-client-side oRPC Client-Side Clients Call your oRPC procedures remotely as if they were local functions.
orpc-comparison oRPC Comparison How oRPC differs from tRPC, ts-rest, and Hono.
orpc-compression oRPC Compression Plugin A plugin for oRPC that compresses response bodies to reduce bandwidth usage.
orpc-context oRPC Context Type-safe dependency injection pattern in oRPC.
orpc-cookie oRPC Cookie Helpers Functions for managing HTTP cookies in web applications.
orpc-cors oRPC CORS Plugin CORS Plugin for oRPC.
orpc-customizing-error-response oRPC Customizing Error Response Customize the error response format in oRPC OpenAPI.
orpc-dedupe-middleware oRPC Dedupe Middleware Enhance oRPC middleware performance by avoiding redundant executions.
orpc-dedupe-requests oRPC Dedupe Requests Plugin Prevents duplicate requests by deduplicating similar ones to reduce server load.
orpc-define-contract oRPC Define Contract Define a contract for contract-first development in oRPC.
orpc-disabling-output-validation oRPC Disabling Output Validation Disable output validation for improved performance while keeping OpenAPI spec generation.
orpc-durable-iterator oRPC Durable Iterator Integration Extends Event Iterator with durable event streams, automatic reconnections, and event recovery.
orpc-dynamic-link oRPC DynamicLink Dynamically switch between multiple oRPC's links.
orpc-ecosystem oRPC Ecosystem Community resources, starter kits, tools, and libraries for oRPC.
orpc-electron oRPC Electron Adapter Use oRPC inside an Electron project via Message Port Adapter.
orpc-elysia oRPC Elysia Adapter Use oRPC inside an Elysia project.
orpc-encryption oRPC Encryption Helpers Functions to encrypt and decrypt sensitive data using AES-GCM.
orpc-error-handling oRPC Error Handling Manage errors in oRPC using both traditional and type-safe strategies.
orpc-event-iterator oRPC Event Iterator (SSE) Streaming responses, real-time updates, and server-sent events using oRPC.
orpc-expand-openapi-types oRPC Expanding OpenAPI Link Types Extend OpenAPILink to support additional data types beyond JSON's native capabilities.
orpc-express oRPC Express.js Adapter Use oRPC inside an Express.js project.
orpc-extend-body-parser oRPC Extend Body Parser Extend the body parser for larger payloads or additional data types.
orpc-fastify oRPC Fastify Adapter Use oRPC inside a Fastify project.
orpc-file-upload-download oRPC File Upload/Download Upload and download files using oRPC with standard File and Blob objects.
orpc-form-data oRPC Form Data Helpers Utilities for parsing form data and handling validation errors with bracket notation support.
orpc-getting-started oRPC Getting Started Quick guide to oRPC — define procedures, handle errors, integrate with popular frameworks.
orpc-h3 oRPC H3 Adapter Use oRPC inside an H3 project.
orpc-hey-api oRPC Hey API Integration Generate oRPC contracts from OpenAPI with Hey API or adapt a Hey API client.
orpc-hibernation oRPC Hibernation Plugin Plugin to fully leverage Hibernation APIs in oRPC server (Cloudflare Websocket Hibernation, etc).
orpc-hono oRPC Hono Adapter Use oRPC inside a Hono project.
orpc-http oRPC HTTP Adapter How to use oRPC over HTTP with various server and client adapters.
orpc-implement-contract oRPC Implement Contract Implement a contract for contract-first development in oRPC.
orpc-input-output-structure oRPC Input/Output Structure Control how input and output data is structured in oRPC.
orpc-max-length-problem oRPC Exceeds Maximum Length Problem How to address the Exceeds the Maximum Length Problem in oRPC.
orpc-message-port oRPC Message Port Using oRPC with Message Ports for internal communication between processes.
orpc-metadata oRPC Metadata Enhance your procedures with metadata.
orpc-middleware oRPC Middleware Middleware enables reusable and extensible procedures in oRPC.
orpc-migrate-from-trpc oRPC Migrate from tRPC A comprehensive guide to migrate your tRPC application to oRPC.
orpc-mini-beyond-basics Mini oRPC Beyond the Basics Advanced features you can implement in Mini oRPC.
orpc-mini-client-side-client Mini oRPC Client-side Client How to implement client-side RPC calls in Mini oRPC.
orpc-mini-overview Mini oRPC Overview A simplified version of oRPC designed for learning purposes.
orpc-mini-procedure-builder Mini oRPC Procedure Builder Mini oRPC's procedure builder for defining type-safe procedures.
orpc-mini-server-side-client Mini oRPC Server-side Client How to turn a procedure into a callable function in Mini oRPC.
orpc-monorepo-setup oRPC Monorepo Setup The most efficient way to set up a monorepo with oRPC.
orpc-nestjs-implement-contract oRPC NestJS Implement Contract Implement oRPC contracts in your NestJS projects with @orpc/nest.
orpc-nextjs oRPC Next.js Adapter Use oRPC inside a Next.js project (App Router and Pages Router).
orpc-no-throw-literal oRPC No Throw Literal Always throw Error instances instead of literal values.
orpc-nuxt oRPC Nuxt.js Adapter Use oRPC inside a Nuxt.js project.
orpc-openai-streaming oRPC OpenAI Streaming Example Combine oRPC with the OpenAI Streaming API to build a chatbot.
orpc-openapi-error-handling oRPC OpenAPI Error Handling Handle errors in your OpenAPI-compliant oRPC APIs.
orpc-openapi-getting-started oRPC OpenAPI Getting Started Quick guide to OpenAPI in oRPC.
orpc-openapi-handler oRPC OpenAPI Handler Comprehensive Guide to the OpenAPIHandler in oRPC.
orpc-openapi-json-serializer oRPC OpenAPI JSON Serializer Extend or override the standard OpenAPI JSON serializer.
orpc-openapi-link oRPC OpenAPILink Use OpenAPILink in oRPC clients to communicate with OpenAPI-compliant APIs.
orpc-openapi-reference oRPC OpenAPI Reference Plugin Plugin that serves API reference documentation (Scalar/Swagger) and the OpenAPI specification.
orpc-openapi-routing oRPC OpenAPI Routing Configure procedure routing with HTTP methods, paths, and response statuses.
orpc-openapi-specification oRPC OpenAPI Specification Generate OpenAPI specifications for oRPC with ease.
orpc-openapi-to-contract oRPC OpenAPI to Contract Generate an oRPC contract from an existing OpenAPI specification with Hey API.
orpc-opentelemetry oRPC OpenTelemetry Integration Integrate oRPC with OpenTelemetry for distributed tracing.
orpc-optimize-ssr oRPC Optimize SSR Optimize SSR for fullstack frameworks by avoiding unnecessary HTTP self-calls.
orpc-pinia-colada oRPC Pinia Colada Integration Seamlessly integrate oRPC with Pinia Colada for Vue.
orpc-pino oRPC Pino Integration Integrate oRPC with Pino for structured logging and request tracking.
orpc-playgrounds oRPC Playgrounds Interactive development environments for exploring and testing oRPC functionality.
orpc-procedure oRPC Procedure Understanding procedures in oRPC — standard functions with validation, middleware, and DI.
orpc-publish-to-npm oRPC Publish Client to NPM How to publish your oRPC client to NPM as an SDK.
orpc-publisher oRPC Publisher Listen and publish events with resuming support in oRPC.
orpc-ratelimit oRPC Rate Limit Rate limiting for oRPC with multiple storage backend support.
orpc-react-native oRPC React Native Adapter Use oRPC inside a React Native project.
orpc-react-swr oRPC React SWR Integration Integrate oRPC with React SWR for efficient data fetching and caching.
orpc-redirect-response oRPC Redirect Response Standard HTTP redirect response in oRPC OpenAPI.
orpc-remix oRPC Remix Adapter Use oRPC inside a Remix project.
orpc-request-headers oRPC Request Headers Plugin Access request headers in oRPC.
orpc-request-validation oRPC Request Validation Plugin A plugin that blocks invalid requests before they reach your server.
orpc-response-headers oRPC Response Headers Plugin Set response headers in oRPC.
orpc-response-validation oRPC Response Validation Plugin Validate server responses against the contract schema.
orpc-rethrow-handler oRPC Rethrow Handler Plugin Catch and rethrow specific errors during request handling.
orpc-retry-after oRPC Retry After Plugin Automatically retries requests based on server Retry-After headers.
orpc-router oRPC Router Understanding routers in oRPC — nestable objects composed of procedures.
orpc-router-to-contract oRPC Router to Contract Convert a router into a contract, export it safely, and prevent internal exposure.
orpc-rpc-handler oRPC RPC Handler Comprehensive Guide to the RPCHandler in oRPC.
orpc-rpc-json-serializer oRPC RPC JSON Serializer Extend or override the standard RPC JSON serializer.
orpc-rpc-link oRPC RPCLink Use RPCLink in oRPC clients to communicate with RPCHandler.
orpc-rpc-protocol oRPC RPC Protocol Learn about the RPC protocol used by RPCHandler.
orpc-scalar oRPC Scalar (Swagger) Create a beautiful API client for your oRPC with Scalar.
orpc-sentry oRPC Sentry Integration Integrate oRPC with Sentry for error tracking and performance monitoring.
orpc-server-action oRPC Server Action Integrate oRPC procedures with React Server Actions.
orpc-server-side oRPC Server-Side Clients Call your oRPC procedures in the same environment as your server like native functions.
orpc-signing oRPC Signing Helpers Cryptographically sign and verify data using HMAC-SHA256.
orpc-simple-csrf-protection oRPC Simple CSRF Protection Plugin Add basic CSRF protection to your oRPC application.
orpc-smart-coercion oRPC Smart Coercion Plugin Automatically converts input values to match schema types without manual coercion logic.
orpc-solid-start oRPC Solid Start Adapter Use oRPC inside a Solid Start project.
orpc-strict-get-method oRPC Strict GET Method Plugin Only procedures explicitly accepting GET can be called via HTTP GET (CSRF protection).
orpc-superjson oRPC SuperJson Replace the default oRPC RPC serializer with SuperJson.
orpc-svelte-kit oRPC Svelte Kit Adapter Use oRPC inside a Svelte Kit project.
orpc-tanstack-query oRPC TanStack Query Integration Seamlessly integrate oRPC with TanStack Query (React, Vue, Solid, Svelte, Angular).
orpc-tanstack-query-basic oRPC TanStack Query Basic Basic guide to integrating oRPC with TanStack Query (legacy).
orpc-tanstack-start oRPC TanStack Start Adapter Use oRPC inside a TanStack Start project with server routes, isomorphic links, and SSR optimization.
orpc-testing-mocking oRPC Testing & Mocking Test oRPC procedures using server-side clients, and mock implementations for frontend testing.
orpc-trpc oRPC tRPC Integration Use oRPC features (OpenAPI specs, OpenAPIHandler) inside existing tRPC applications via @orpc/trpc.
orpc-validation-errors oRPC Validation Errors Customize built-in input/output validation errors using client interceptors or middleware, with type-safe error mapping.
orpc-web-workers oRPC Web Workers Adapter Type-safe oRPC communication between the main thread and Web Workers via the Message Port adapter.
orpc-websocket oRPC WebSocket Adapter Use oRPC over WebSocket for low-latency, bidirectional RPC across browser, Node, Bun, Deno, Cloudflare, and CrossWS.
orpc-worker-threads oRPC Worker Threads Adapter Type-safe oRPC communication between Node.js worker threads via the Message Port adapter.
orpc-zod-smart-coercion oRPC Zod Smart Coercion Refined alternative to z.coerce — automatically coerces inputs to the expected type without modifying the schema.

The table above is generated. Run bun run scripts/generate-skills-table.ts to refresh after adding or editing a skill.

🛠 Authoring

Each skill is a folder under skills/ containing a SKILL.md with YAML frontmatter:

---
name: My Skill
description: One-line summary the agent uses to decide when to load this skill.
license: MIT
metadata:
  author: Ali Torki
  homepage: https://github.com/ali-master
  version: "1.0.0"
---

# My Skill

Practical, focused guidance the agent can act on.

Frontmatter fields

Field Required Purpose
name Display label shown to the agent. Must be ≤ 64 characters.
description One-line summary the agent uses to decide whether to load the skill.
license SPDX license identifier for the skill (defaults to MIT to match the repo).
metadata.author Skill author (defaults to Ali Torki for skills in this repo).
metadata.homepage Author homepage (defaults to https://github.com/ali-master).
metadata.version Skill version as a quoted SemVer string (defaults to "1.0.0").

Sidecar metadata.json

Every skill folder also ships a metadata.json next to its SKILL.md:

{
  "version": "1.0.0",
  "organization": "Ali Torki",
  "date": "May 2026",
  "abstract": "Short paragraph describing what the skill covers and when an agent should reach for it.",
  "references": [
    "https://upstream-docs.example.com/relevant-section"
  ]
}

abstract is derived from description plus the first body paragraph; references is the deduped set of external URLs cited in the SKILL.md. Regenerate with bun run skills:json after editing a skill.

Nested skills

Skills can ship sub-skills. Drop additional SKILL.md files inside the parent folder — both the generator and the metadata script recurse into them:

skills/
├── better-notify/
│   ├── SKILL.md                    # parent: index + overview
│   ├── setup/SKILL.md              # sub-skill: setup wizard
│   └── best-practices/SKILL.md     # sub-skill: best practices

The catalog renders nested slugs as parent/child so they sort next to their parent.

Helper scripts

bun run skills:metadata   # backfill the author/homepage metadata block on every SKILL.md (idempotent)
bun run skills:json       # add license + metadata.version to frontmatter and regenerate every metadata.json
bun run skills:table      # regenerate the catalog table in README.md

Keep skills tight — agents pull them into the context window, so brevity wins. See docs/authoring.md for the full checklist.

🤝 Contributing

  1. Fork & branch.
  2. Add a new directory under skills/ with a SKILL.md (top-level or nested under an existing skill).
  3. Run bun run skills:metadata to apply the standard author/homepage metadata block.
  4. Run bun run skills:json to add license + metadata.version and generate the sidecar metadata.json.
  5. Run bun run skills:table so the catalog stays in sync.
  6. Open a PR.

The skill name in frontmatter must be ≤ 64 characters.


⬆ Back to Top

Made with ❤️ by Ali Torki

About

AI Skills to enhance working with internal projects related to the oRPC, ... frameworks

Resources

License

Stars

Watchers

Forks

Contributors