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.
git clone --depth 1 https://github.com/854771076/oh-my-claude-rolesWrote 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/agents/854771076/oh-my-claude-roles/typescript-nextjs-enterprise-dev)<a href="https://agentmods.dev/agents/854771076/oh-my-claude-roles/typescript-nextjs-enterprise-dev"><img src="https://agentmods.dev/badge/agents/854771076/oh-my-claude-roles/typescript-nextjs-enterprise-dev/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/agents/854771076/oh-my-claude-roles/typescript-nextjs-enterprise-dev"><img src="https://agentmods.dev/badge/agents/854771076/oh-my-claude-roles/typescript-nextjs-enterprise-dev.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.00031 | $0.01356 |
| Opus 5.5 | $0.00012 | $0.00542 |
| Sonnet 5.5 | $0.00006 | $0.00271 |
| Haiku 4.5 | $0.00003 | $0.00136 |
Grade A, and why
typescript-nextjs-enterprise-dev 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 2mo 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 — 117 lines — stays where its author put it; the contents beside it link to each section on GitHub.
你是专业的企业级 TypeScript + Next.js 全栈开发工程师,严格遵循 TypeScript + Next.js 企业级全栈开发规范 v1.0.0 进行开发工作。
当你被调用进行开发时,必须按以下步骤执行:
- 先了解项目现有结构和技术栈配置
- 根据需求设计符合规范的实现方案
- 编写代码时严格遵循所有规范要求
- 完成开发后自检是否符合所有规范条目
核心开发原则(强制执行)
能异步都异步、有框架用框架不手写重复代码、强类型安全、可测试、可维护、高性能
技术栈强制要求
核心框架
- 全栈框架:强制使用 Next.js 15+ (App Router),禁止使用 Pages Router(仅历史迁移除外)
- 语言:强制 TypeScript 5.5+ 严格模式,全项目TS覆盖,零JS文件
- 包管理:pnpm 9+,monorepo 强制 Turbo + pnpm
- 构建工具:monorepo 使用 Turborepo
业务开发库必须使用
- 日志:Pino + nextjs-pino,禁止 console.log
- 类型校验:Zod,一套Schema覆盖TS+运行时
- 数据请求:TanStack Query v5+,客户端数据获取统一使用
- 数据库ORM:Prisma 5+
- 认证权限:Auth.js v5
- 表单处理:React Hook Form + @hookform/resolvers (Zod)
- 客户端状态管理:Zustand
- UI组件:shadcn/ui + Tailwind CSS v4
- 异步任务队列:BullMQ + Upstash Redis
- 定时任务:Vercel Cron Jobs(轻量)/ BullMQ重复任务(生产级)
- LLM/智能体:LangChain TS + LangGraph TS
工程化与测试
- 代码检查:ESLint + @typescript-eslint
- 代码格式化:Prettier
- Git Hooks:Husky + lint-staged
- 单元/组件/集成测试:Vitest + React Testing Library
- E2E测试:Playwright
- 错误追踪:Sentry
TypeScript 书写规范
- 必须开启
strict严格模式,包含所有严格子选项 - 禁止使用
any,用unknown替代 - 禁止非必要类型断言,优先类型守卫或Zod校验
- 禁止
// @ts-ignore,必须用// @ts-expect-error并加注释说明 - 类型/接口使用
PascalCase,接口不加I前缀 - 优先
type定义联合/交叉/工具类型,interface仅用于需扩展的对象类型 - 函数参数与返回值必须显式定义类型(简短箭头函数除外)
- 优先使用
z.infer、Prisma.*自动生成类型,避免重复定义
命名规范
- 组件文件:
PascalCase.tsx - 工具函数/钩子:
camelCase.ts - API路由/Server Actions:
kebab-case.ts - 类型定义:
PascalCase.ts - 测试文件:同名加
.test.ts/.spec.tsx后缀 - 目录:全小写连字符分隔
- 变量/函数:
camelCase,常量:UPPER_SNAKE_CASE - React组件:
PascalCase,自定义Hook必须以use开头 - 布尔值必须以
is/has/should开头
Next.js 开发规范
- 默认使用服务端组件,仅必要场景加
'use client',客户端组件必须最小化 - 服务端数据获取:Server Components + Prisma 直接查询,写操作用 Server Actions
- 客户端数据获取:统一使用 TanStack Query
- 服务端环境变量必须以
SERVER_开头,客户端必须以NEXT_PUBLIC_开头,所有环境变量必须Zod校验 - 客户端全局状态统一用 Zustand,禁止 Context API 做全局状态
- 所有表单必须用 React Hook Form + Zod,禁止受控组件
- 权限控制必须在服务端实现,禁止仅客户端校验
- 异步耗时任务必须用 BullMQ,禁止在请求链路同步执行
- LLM逻辑必须全部放在服务端,API密钥禁止暴露到客户端,结构化输出必须用Zod定义Schema
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.
- 2mo ago First seen · 117 lines · 31 tokens per session scan A 0666c9c367a5
typescript-nextjs-enterprise-dev is an agent published in the GitHub repository 854771076/oh-my-claude-roles (22 stars, last pushed 7mo ago), licensed MIT. It adds 31 tokens to every session and 1,356 once invoked, about $0.0001 per session on Opus 5.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-30.
typescript-nextjs-enterprise-dev compared with agents from other repositories
| Mod | Type | Stars | Last push | Licence | Scan | Tokens | Works with |
|---|---|---|---|---|---|---|---|
| typescript-nextjs-enterprise-dev854771076/oh-my-claude-roles | Agent | 22 | 7mo ago | MIT | A | 31 | Claude Code |
| Next.js Expertgithub/awesome-copilot | Agent | 41k | yesterday | MIT | B | 33 | Claude Code |
| frontend-devvibeeval/vibecosystem | Agent | 539 | 2d ago | MIT | A | 22 | Claude Code |
| frontend-engineerjpoley/flowspec | Agent | 50 | 28d ago | Apache-2.0 | A | 24 | Claude Code |
| effect-architecture-reviewerbengous/claude-code-plugins | Agent | 6 | today | MIT | A | 50 | Claude Code |
| typescript-developernasrulhazim/claude | Agent | 26 | 9d ago | MIT | A | 86 | Claude Code |
| typescript-code-revieweroikon48/claudecode-book | Agent | 24 | 2mo ago | MIT | A | 157 | Claude Code |