codegen
Skill261 starsChanged 9 days agoApache-2.0View on GitHub
Run and manage the Orval code generation pipeline for API hooks, TypeScript models, and MSW mocks. Use when editing an OpenAPI spec, running task generate, adding or modifying MSW scenarios, troubleshooting generated code, or when generated hooks are missing or out of date.
4 other projects use a version of this.
Adopted by
Most recently taken up by
- vercel-labs/json-rendertheir own version, first seen Oct 29, 2026
- rsicarelli/fakttheir own version, first seen Oct 9, 2026
- s3s-project/s3stheir own version, first seen Oct 8, 2026
- AterDev/Perigon.CLItheir own version, first seen Sep 3, 2026
Other versions4 projects use a version of this.
Word for word · 0
None found.
Edited · 0
None found.
Wrote their own version · 4
- vercel-labs/json-render★ 19ksame name
- s3s-project/s3s★ 315same name
- rsicarelli/fakt★ 67same name
- AterDev/Perigon.CLI★ 54same name
How matches are found. Word for word: the exact same text. Edited: shares passages with this file (“99% same” means 99% of its five-word phrases also appear here; 10% or more counts). Their own version: similar meaning, or, weakest, the same name. We can’t tell which project had it first. Projects are counted among the 200 most-starred candidates, and mentions are links to the repository we found, up to 50 per site, so both counts are a floor.
In this repository133 other files it gives its agents.
- AGENTS.mdAGENTS.md
- ai-tooling/AGENTS.mdAGENTS.md
- deploy/helm/cassandra/AGENTS.mdAGENTS.md
- deploy/helm/cert-manager/AGENTS.mdAGENTS.md
- deploy/helm/cloud-functions/AGENTS.mdAGENTS.md
- deploy/helm/cloud-tasks/AGENTS.mdAGENTS.md
- deploy/helm/encrypted-secret-store/AGENTS.mdAGENTS.md
- deploy/helm/icms/AGENTS.mdAGENTS.md
- deploy/helm/llm-request-router/AGENTS.mdAGENTS.md
- deploy/helm/nats/AGENTS.mdAGENTS.md
- deploy/helm/notary/AGENTS.mdAGENTS.md
- deploy/helm/nvcf-pki/AGENTS.mdAGENTS.md
- deploy/helm/openbao/AGENTS.mdAGENTS.md
- deploy/helm/vanity-gateway/AGENTS.mdAGENTS.md
- deploy/releases/AGENTS.mdAGENTS.md
- deploy/stacks/AGENTS.mdAGENTS.md
- deploy/stacks/observability/AGENTS.mdAGENTS.md
- deploy/stacks/stargate-dev/AGENTS.mdAGENTS.md
- deploy/stacks/stargate-dev/benchmark/AGENTS.mdAGENTS.md
- docs/AGENTS.mdAGENTS.md
- docs/overview/samples/scripts/AGENTS.mdAGENTS.md
- examples/AGENTS.mdAGENTS.md
- infra/cassandra/AGENTS.mdAGENTS.md
- infra/openbao/AGENTS.mdAGENTS.md
- infra/openbao/plugins/vault-plugin-secrets-jwt/AGENTS.mdAGENTS.md
- infra/openbao/tests/AGENTS.mdAGENTS.md
- migrations/cassandra/AGENTS.mdAGENTS.md
- migrations/openbao/AGENTS.mdAGENTS.md
- src/compute-plane-services/byoo-otel-collector/AGENTS.mdAGENTS.md
- src/compute-plane-services/ess-agent/AGENTS.mdAGENTS.md
- src/compute-plane-services/image-credential-helper/AGENTS.mdAGENTS.md
- src/compute-plane-services/nvca/AGENTS.mdAGENTS.md
- src/compute-plane-services/nvsnap/docs/AGENTS.mdAGENTS.md
- src/compute-plane-services/nvstor/AGENTS.mdAGENTS.md
- src/compute-plane-services/request-trace-uploader/AGENTS.mdAGENTS.md
- src/control-plane-services/admin-token-issuer-proxy/AGENTS.mdAGENTS.md
- src/control-plane-services/api-keys/AGENTS.mdAGENTS.md
- src/control-plane-services/cloud-functions/AGENTS.mdAGENTS.md
- src/control-plane-services/cloud-tasks/AGENTS.mdAGENTS.md
- src/control-plane-services/encrypted-secret-store/AGENTS.mdAGENTS.md
- src/control-plane-services/function-autoscaler/AGENTS.mdAGENTS.md
- src/control-plane-services/function-autoscaler/local_env/AGENTS.mdAGENTS.md
- src/control-plane-services/instance-cluster-management/AGENTS.mdAGENTS.md
- src/control-plane-services/nats-auth-callout/AGENTS.mdAGENTS.md
- src/control-plane-services/notary/AGENTS.mdAGENTS.md
- src/invocation-plane-services/grpc-proxy/AGENTS.mdAGENTS.md
- src/invocation-plane-services/http-invocation/AGENTS.mdAGENTS.md
- src/invocation-plane-services/llm-api-gateway/AGENTS.mdAGENTS.md
- src/invocation-plane-services/ratelimiter/AGENTS.mdAGENTS.md
- src/invocation-plane-services/vanity-gateway/AGENTS.mdAGENTS.md
- src/libraries/go/lib/AGENTS.mdAGENTS.md
- src/libraries/go/worker/AGENTS.mdAGENTS.md
- src/libraries/java/nv-boot-parent/AGENTS.mdAGENTS.md
- src/libraries/python/nv-cloud-function-helpers/AGENTS.mdAGENTS.md
- src/libraries/rust/nvcf-info/AGENTS.mdAGENTS.md
- src/libraries/rust/stargate/AGENTS.mdAGENTS.md
- src/uis/nvcf-ui/AGENTS.mdAGENTS.md
- src/uis/nvcf-ui/helm/AGENTS.mdAGENTS.md
- tests/bdd/AGENTS.mdAGENTS.md
- tools/AGENTS.mdAGENTS.md
- The first 60 shown.
The file
We split this skill into the rules it gives an agent
2 rules. 0 are common, 0 are distinctive, and 2 are very specific to this project.
0
Common
Most of the 3 edited versions we read keep these.
0
Distinctive
This author's own choices. Worth a look.
2
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Very specific: line 50
Run task ui:lint:fix so generated output passes linting/formatting
- Very specific: line 51
Run task typecheck to confirm consumers still type-check against the regenerated models
“Common” is measured: kept by at least 6 in 10 of the 3 edited versions of this file we could read. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
Code Generation Pipeline
task generate runs Orval, which reads the three OpenAPI specs in spec/
directly and generates React Query hooks, TypeScript models, and MSW handler
factories into ui/src/generated/. It then adds Apache license headers to the
output. There is no bundling step (no Redocly, no openapi.yaml).
Specs:
spec/control-plane-openapi.yaml— the UI shim/BFF APIspec/nvcf-openapi.yaml— NVCF Cloud Functions (v2) APIspec/sis-openapi.yaml— cluster API
Gotchas
- Edit the specs in
spec/— never edit anything inui/src/generated/(regenerated output). ui/src/generated/is committed and enforced by the Codegen Check CI job: if you change a spec, runtask generateand commit the regenerated output, or CI fails on the diff.- Orval config is in
ui/orval.config.ts(one sharedoutputblock spread across all three specs). Customize generation there, not in the generated files. - Generated hook names follow Orval's convention:
useGetFunctions,useGetFunctionsSuspense,getGetFunctionsQueryOptions. The double "Get" is expected — don't rename them.
What Gets Generated
- React Query hooks —
useGetFunctions,useGetFunctionsSuspense, etc. (suspense variants are generated globally). - Query options factories —
getGetFunctionsQueryOptionsfor use in route loaders. - TypeScript models — plain
interface/typefiles inui/src/generated/model/(no runtime validation). Zod generation is intentionally off; re-add it as a separateclient: "zod"Orval target if runtime validation is ever needed. - MSW handler factories — per-endpoint mock handlers plus per-response mock generators (
getGetFunctionVersionResponseMock, etc.).
Mocks and Scenarios
The default mock baseline is a seeded in-memory store (ui/src/mocks/store/), not the raw generated handlers. The store builds a stable dataset once (keyed by account ncaId) using the generated response-mock generators, so list and detail views stay consistent and their IDs line up.
Scenarios go in ui/src/mocks/scenarios/<feature>/<name>.ts, each exporting { handlers: HttpHandler[] }. They layer on top of the store baseline (first match wins) — activate with VITE_SCENARIO=functions:empty-list (comma-separated for multiple). Focus scenarios on states with a cascading effect on the view (empty list, error, a status that changes available actions) — not minor value variations, which the seeded store already covers.
Validate After Running
- Run
task generate - Run
task ui:lint:fixso generated output passes linting/formatting - Run
task typecheckto confirm consumers still type-check against the regenerated models
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

