跳到主内容
智客 ZICQ

技能库 智客分类:Agent 工作流 typescript-pro

Typescript Pro

实施先进的TypeScript类型系统,创建自定义类型守护,公用类型,和品牌类型,为端到端类型安全配置tRPC. 在构建 TypeScript 应用程序时使用,需要高级的通用,有条件的或被映射的类型,受歧视的结合,单列布设置,或用 tRPC 的全存储类型安全.

12400 安装量

官方网址:skills.sh

技能介绍

先看中文介绍;官方 description 原文单独保留,不改写 SKILL.md。

做什么

实施先进的类型Script类型系统,创建自定义类型守护器,通用类型和品牌类型,并配置tRPC用于端到端类型安全

何时用

构建 TypeScript 应用程序,需要高级通用软件、有条件的或映射的类型、受歧视的结合、单一repo设置,或带有 tRPC 的全存储类型安全

代理如何加载

按 Agent Skills 渐进披露:启动时只加载 name 与 description(约 100 token);任务匹配后才读入整份 SKILL.md 正文;scripts/、references/、assets/ 仅在需要时再读。 本文件正文结构:TypeScript Pro、Core Workflow、Reference Guide、Code Examples、Branded Types、Discriminated Unions & Type Guards。 其中含规范建议的小节:分步指令、输入输出示例。

文件分析

文件分析:除 SKILL.md 外,正文引用了 references/advanced-types.md、references/type-guards.md、references/utility-types.md、references/configuration.md、references/patterns.md,属于带资源的技能包,这些文件按需再读。

官方 description(原文)

Implements advanced TypeScript type systems, creates custom type guards, utility types, and branded types, and configures tRPC for end-to-end type safety. Use when building TypeScript applications requiring advanced generics, conditional or mapped types, discriminated unions, monorepo setup, or full-stack type safety with tRPC.

TypeScript ProCore WorkflowReference GuideCode ExamplesBranded TypesDiscriminated Unions & Type GuardsCustom Utility TypesRecommended tsconfig.jsonConstraintsMUST DOMUST NOT DOOutput Templates

· 许可:MIT

来源分类:skills.sh agent-skill

SKILL.md 与 Agent 调用

官方规范 ↗
name
typescript-pro
description
Implements advanced TypeScript type systems, creates custom type guards, utility types, and branded types, and configures tRPC for end-to-end type safety. Use when building TypeScript applications requiring advanced generics, conditional or mapped types, discriminated unions, monorepo setup, or full-stack type safety with tRPC.
许可
MIT
  1. 发现技能客户端向 Agent 提供名称与描述目录。
  2. 匹配与调用用户指定或任务匹配后,载入 SKILL.md 指令。
  3. 按需加载按步骤读取参考文档、使用脚本与素材。
指令中引用的文件 · 5
  • references/advanced-types.md
  • references/type-guards.md
  • references/utility-types.md
  • references/configuration.md
  • references/patterns.md

以下路径提取自原文;文件是否齐全请以来源仓库中的完整目录为准。

具体调用语法与可用工具以目标 Agent 客户端为准。 查看调用机制说明 ↗

安装这个技能

Skills CLI ↗

先选择目标 Agent 和安装范围,保留技能包的附属文件,安装后检查客户端能否发现该技能。

该技能引用了附属文件,请从来源获取完整目录;仅复制 SKILL.md 可能缺少依赖。

交给 Agent 安装

复制安装指令给支持 Agent Skills 的代理,确认其中的目标目录与客户端匹配。

把 Agent Skill「typescript-pro」安装到我的项目:SKILL.md 原文与官方 description 见 https://zicq.com/zh/skills/skl-94d86f04ba12de9e-Typescript-Pro.html
请存为 .cursor/skills/typescript-pro/SKILL.md 或 .claude/skills/typescript-pro/SKILL.md,frontmatter 的 name 与 description 保持原样,不要改写。
该技能还带 scripts/、references/、assets/ 等文件,请从 https://github.com/jeffallan/claude-skills 取完整目录,不要只建一个 SKILL.md。

GitHub 完整包 ↗

终端安装 · Skills CLI

需要 Node.js 与 npx。先查看仓库技能列表,确认实际名称。

npx skills add 'https://github.com/jeffallan/claude-skills' --list

npx skills add 'https://github.com/jeffallan/claude-skills' --skill 'typescript-pro'

CLI 会交互选择目标 Agent,默认安装到项目;用户级安装使用 -g。先通过查看命令核对仓库内容,再用 npx skills list 检查已安装技能。

阅读排版
--- name: typescript-pro description: Implements advanced TypeScript type systems, creates custom type guards, utility types, and branded types, and configures tRPC for end-to-end type safety. Use when building TypeScript applications requiring advanced generics, conditional or mapped types, discriminated unions, monorepo setup, or full-stack type safety with tRPC. license: MIT metadata: author: https://github.com/Jeffallan company: https://synergetic.solutions version: "1.1.0" domain: language triggers: TypeScript, generics, type safety, conditional types, mapped types, tRPC, tsconfig, type guards, discriminated unions role: specialist scope: implementation output-format: code related-skills: fullstack-guardian, api-designer --- # TypeScript Pro ## Core Workflow 1. **Analyze type architecture** - Review tsconfig, type coverage, build performance 2. **Design type-first APIs** - Create branded types, generics, utility types 3. **Implement with type safety** - Write type guards, discriminated unions, conditional types; run `tsc --noEmit` to catch type errors before proceeding 4. **Optimize build** - Configure project references, incremental compilation, tree shaking; re-run `tsc --noEmit` to confirm zero errors after changes 5. **Test types** - Confirm type coverage with a tool like `type-coverage`; validate that all public APIs have explicit return types; iterate on steps 3–4 until all checks pass ## Reference Guide Load detailed guidance based on context: | Topic | Reference | Load When | |-------|-----------|-----------| | Advanced Types | `references/advanced-types.md` | Generics, conditional types, mapped types, template literals | | Type Guards | `references/type-guards.md` | Type narrowing, discriminated unions, assertion functions | | Utility Types | `references/utility-types.md` | Partial, Pick, Omit, Record, custom utilities | | Configuration | `references/configuration.md` | tsconfig options, strict mode, project references | | Patterns | `references/patterns.md` | Builder pattern, factory pattern, type-safe APIs | ## Code Examples ### Branded Types ```typescript // Branded type for domain modeling type Brand = T & { readonly __brand: B }; type UserId = Brand; type OrderId = Brand; const toUserId = (id: string): UserId => id as UserId; const toOrderId = (id: number): OrderId => id as OrderId; // Usage — prevents accidental id mix-ups at compile time function getOrder(userId: UserId, orderId: OrderId) { /* ... */ } ``` ### Discriminated Unions & Type Guards ```typescript type LoadingState = { status: "loading" }; type SuccessState = { status: "success"; data: string[] }; type ErrorState = { status: "error"; error: Error }; type RequestState = LoadingState | SuccessState | ErrorState; // Type predicate guard function isSuccess(state: RequestState): state is SuccessState { return state.status === "success"; } // Exhaustive switch with discriminated union function renderState(state: RequestState): string { switch (state.status) { case "loading": return "Loading…"; case "success": return state.data.join(", "); case "error": return state.error.message; default: { const _exhaustive: never = state; throw new Error(`Unhandled state: ${_exhaustive}`); } } } ``` ### Custom Utility Types ```typescript // Deep readonly — immutable nested objects type DeepReadonly = { readonly [K in keyof T]: T[K] extends object ? DeepReadonly : T[K]; }; // Require exactly one of a set of keys type RequireExactlyOne = Pick> & { [K in Keys]-?: Required> & Partial, never>> }[Keys]; ``` ### Recommended tsconfig.json ```json { "compilerOptions": { "target": "ES2022", "module": "NodeNext", "moduleResolution": "NodeNext", "strict": true, "noUncheckedIndexedAccess": true, "noImplicitOverride": true, "exactOptionalPropertyTypes": true, "isolatedModules": true, "declaration": true, "declarationMap": true, "incremental": true, "skipLibCheck": false } } ``` ## Constraints ### MUST DO - Enable strict mode with all compiler flags - Use type-first API design - Implement branded types for domain modeling - Use `satisfies` operator for type validation - Create discriminated unions for state machines - Use `Annotated` pattern with type predicates - Generate declaration files for libraries - Optimize for type inference ### MUST NOT DO - Use explicit `any` without justification - Skip type coverage for public APIs - Mix type-only and value imports - Disable strict null checks - Use `as` assertions without necessity - Ignore compiler performance warnings - Skip declaration file generation - Use enums (prefer const objects with `as const`) ## Output Templates When implementing TypeScript features, provide: 1. Type definitions (interfaces, types, generics) 2. Implementation with type guards 3. tsconfig configuration if needed 4. Brief explanation of type design decisions ## Knowledge Reference TypeScript 5.0+, generics, conditional types, mapped types, template literal types, discriminated unions, type guards, branded types, tRPC, project references, incremental compilation, declaration files, const assertions, satisfies operator Maintained by [@jeffallan](https://github.com/jeffallan), Principal Consultant at [Synergetic Solutions](https://synergetic.solutions) [Documentation](https://jeffallan.github.io/claude-skills/skills/language/typescript-pro/)

相关技能

Agent 工作流

Skill Creator

创造有效技能指南。 当用户想创造出新的技能(或更新现有的技能),以专业知识,工作流程,或工具集成来扩展克洛德的能力时,应该使用这种技能.

Agent 工作流

Clawdhub

使用ClawdHub CLI搜索,安装,更新并发布从taladhub.com的代理技能. 需要获取苍蝇上的新技能时使用,将安装的技能同步到最新版本或特定版本,或者发布 npm-instainddhub CLI 的新/更新的技能文件夹.

Agent 工作流

Agent Team Orchestration

管弦乐团多代理团队,任务设定周期,交接协议,审查工作流程. 使用时间: (1)建立2+特派员队伍,具有不同专业,(2)确定任务路线和生命周期(收录框_ spec_建设_审查_完成),(3)在特派员之间制定交接协议,(4)建立审查和质量关口,(5)管理特派员之间的交流和文物共享.

Agent 工作流

Superpowers

Spec-first,TDD,子代理驱动的软件开发工作流程. 当:(1)构建任何新功能或应用——触发脑暴_计划_子代理执行回路,(2)调试出一个bug或测试失败——触发系统性的根起过程,(3)用户说"让我们构建","帮助我计划","我想添加X",或"这个被打破",(4)完成一个功…