| name | api |
| description | oRPC API routes with 5-file pattern. Only for projects using oRPC. |
| triggers | orpc, \.contract\.ts, \.router\.ts, \.impl\.ts, createProcedure |
MCPSearch({ query: "select:mcp__plugin_devtools_octocode__githubSearchCode" })
MCPSearch({ query: "select:mcp__plugin_devtools_octocode__githubGetFileContent" })
// Search oRPC patterns
mcp__octocode__githubSearchCode({
keywordsToSearch: ["oc.route", "oc.input", "oc.output"],
owner: "unnoq",
repo: "orpc",
path: "packages/contract/src",
mainResearchGoal: "Understand oRPC contract definition",
researchGoal: "Find route contract patterns",
reasoning: "Need current API for oRPC contracts",
});
routes/token/
├── token.transfer.contract.ts # API shape (OpenAPI)
├── token.transfer.schema.ts # Zod input/output
├── token.transfer.router.ts # Connects contract → impl
├── token.transfer.impl.ts # Business logic
└── token.transfer.spec.ts # Tests
| File | Template | Purpose |
|---|---|---|
{domain}.{action}.contract.ts |
templates/contract.ts.md |
API shape (OpenAPI) |
{domain}.{action}.schema.ts |
templates/schema.ts.md |
Zod input/output validation |
{domain}.{action}.router.ts |
templates/router.ts.md |
Connects contract → impl |
{domain}.{action}.impl.ts |
templates/impl.ts.md |
Business logic handler |
{domain}.{action}.spec.ts |
templates/spec.ts.md |
Tests |
Read the templates for scaffolding new routes. Each template includes placeholders and documentation.
Required:
- Every route uses 5-file pattern
- Choose correct router layer
- Register route in domain's
routes.ts - Every route has
.spec.tswith tests - Import directly from source files, not index barrels
- Gate dev-only utilities with
NODE_ENVchecks - Prefer simplest implementation
- Delete unused code completely
Naming: Files=<domain>.<action>.<type>.ts, Handlers=<domain><Action>Handler
- All 5 files created (contract, schema, router, impl, spec)
- Correct router layer chosen
- Route registered in
routes.ts - Schema uses
.meta({ description }) - Spec has success and error test cases