debugging-systematic
系统化的调试方法——二分法隔离、假设驱动调试、复现问题以及根因分析。在调试错误、意外行为或测试失败时使用。
把 Skill 的源码、资源快照、README、包体和安装信号放进一个可搜索、可筛选的公开目录。
系统化的调试方法——二分法隔离、假设驱动调试、复现问题以及根因分析。在调试错误、意外行为或测试失败时使用。
事件溯源和CQRS模式。事件存储、投影、快照、命令处理器、查询模型以及最终一致性。涵盖EventStoreDB、Axon框架及自定义实现。使用时机:用户提到“事件溯源”、“CQRS”、“事件存储”、“投影”、“命令处理器”、“读模型”、“写模型”、“EventStoreDB”、“Axon”。不适用于:简单的事件驱动架构-请使用`event-driven`;消息代理-请使用消息技能;领域驱动设计基础…
Spring Boot 3.x的Spring Cache抽象。涵盖了@Cacheable、@CacheEvict、@CachePut、缓存管理器(Caffeine、Redis、EhCache)、TTL配置、缓存键、条件缓存和缓存同步。使用时机:用户提到“spring cache”、“@Cacheable”、“@CacheEvict”、“cache manager”、“Caffeine cache”…
Spring Scheduling和Async适用于Spring Boot 3.x。涵盖了@Scheduled、@Async、cron表达式、ThreadPoolTaskExecutor、任务监控、使用ShedLock进行分布式调度以及错误处理。使用时机:当用户提到“@Scheduled”、“@Async”、“cron expression Spring”、“background jobs Spr…
Spring Boot 3.x中的配置和配置文件管理。涵盖了@Profile、@ConfigurationProperties、属性源、YAML/properties、外部配置、密钥管理和特定环境的bean。使用时机:当用户提到“spring profiles”、“@Profile”、“@ConfigurationProperties”、“环境配置”、“属性源”、“配置文件组”、“条件bean”。…
Spring Security JWT认证适用于Spring Boot 3。涵盖了SecurityFilterChain、JWT过滤器、认证、授权、CORS、速率限制和安全头。使用时机:当用户提到“安全”、“JWT”、“认证”、“授权”,或询问关于“登录”、“令牌”、“CORS”、“角色”、“权限”、“@PreAuthorize”。不用于:Spring Boot基础知识(请使用`spring-bo…
Winston - 一个适用于Node.js的多功能日志库,支持多种传输方式、自定义格式化和日志轮转。支持结构化日志记录、自定义级别以及企业集成。使用场景:当用户提到“winston”、“node.js logging”、“multiple transports”、“log rotation”,或者询问如何将日志输出到多个目的地、如何在Node.js中轮转日志文件、如何设置自定义日志格式时。不适用…
使用DbContext、迁移、LINQ查询、关系和性能优化的Entity Framework Core。涵盖EF Core 8+模式。使用时机:用户提到“Entity Framework”、“EF Core”、“DbContext”、“迁移”、“LINQ”、“EF关系”、“数据库优先”、“代码优先”。不适用于:Prisma - 使用`prisma`,Drizzle - 使用`drizzle`,Sp…
结束一天的工作 - 分析完成的所有工作,创建详细的每日更新日志,提交所有更改,并推送到远程。当用户说“结束一天”、“下班”、“收尾”,或在工作会话结束时使用。
使用FluentValidation、数据注解和模型验证进行ASP.NET Core验证。涵盖自定义验证器和验证管道。使用场景:用户提到“FluentValidation”、“数据注解”、“模型验证”、“.NET验证”、“输入验证”、“验证器”、“验证管道”。不适用于:Spring Validation - 请使用`spring-validation`,Zod/Yup - 请使用前端验证技能。
Spring Boot 3.x 的 Spring 应用程序事件。涵盖 ApplicationEventPublisher、@EventListener、@TransactionalEventListener、自定义事件、异步事件以及事件驱动的架构模式。使用场景:当用户提到“spring events”、“ApplicationEventPublisher”、“@EventListener”、“@T…
Bean Validation (JSR-380)与Spring Boot。涵盖请求验证、自定义验证器、验证组和错误处理。使用场景:当用户提到“spring validation”、“@Valid”、“@NotNull”、“@NotBlank”、“bean validation”、“request validation”、“custom validator”、“validation groups”…
使用ruff、mypy和pyright进行Python静态分析。类型检查和代码审查的最佳实践。使用场景:"类型检查"、"mypy"、"pyright"、"ruff"、"代码审查"、"静态分析"、"类型错误"、"类型提示"、"pylint"、"flake8"、"black"、"isort"、"代码质量" 不要用于:基本的类型提示语法 - 请使用languages/python技能 不要用于:运行时验…
JSDoc - 带有类型注解的JavaScript文档生成器。使用场景:用户提到“JSDoc”、“JavaScript文档”,询问关于“记录JavaScript”、“类型提示”、“jsdoc注释”、“API文档生成”。不适用于:TypeScript - 对于TypeScript/TSDoc,请使用`jsdoc-tsdoc`技能
Pino - 极快且开销极低的Node.js日志记录器,支持JSON原生结构化日志。比Winston快10倍。专为高性能API和生产环境优化。使用场景:用户提到“pino”、“快速日志”、“高性能日志”、“fastify日志”、询问关于“最快的node.js日志记录器”、“JSON结构化日志”、“低开销日志”。不适用场景:Winston日志 - 请改用`winston`,Python日志 - 请改…
ESLint 9 的扁平化配置和 Biome 代码检查工具的配置。涵盖 typescript-eslint、规则分类、从旧版配置迁移以及性能优化。使用时机:用户提到“ESLint 9”、“Biome”、“扁平化配置”、“eslint.config.mjs”,询问关于“typescript-eslint”、“迁移到 ESLint 9”、“代码检查器性能”、“Biome 与 ESLint 对比”。不适…
axe-core - 用于自动化WCAG合规性检查的无障碍测试引擎。使用时机:用户提到“axe”、“自动化无障碍测试”、“a11y测试”,或询问关于“集成无障碍检查”、“CI/CD无障碍”、“Playwright无障碍”、“Jest无障碍”、“Vitest axe”。不应用于:手动无障碍审核 - 应改用`wcag`技能
Spring AOP(面向切面编程)基于Spring Boot 3.x。涵盖@Aspect、切入点表达式、@Around/@Before/@After通知、自定义注解、日志记录、安全、缓存以及事务模式。用于处理横切关注点。使用场景:用户提到“aspect”、“AOP”、“横切”、“日志切面”、“切入点”,或者询问如何拦截方法、对多个方法应用逻辑、@Around通知等。不应用于:安全配置 - 应该使…
Spring Modulith用于Spring Boot 3.x中的模块化架构。涵盖了模块结构、API与内部包的区别、模块间事件、模块测试、文档生成以及可观测性。使用场景:当用户提到“spring modulith”、“模块化单体”、“@ApplicationModule”、“模块边界”、“模块间事件”、“@ApplicationModuleTest”、“模块化架构”。不适用于:简单应用-不必要的…
Spring Session用于通过Redis、JDBC或Hazelcast进行分布式会话管理。涵盖会话配置、安全集成和会话事件。使用场景:用户提到“spring session”、“distributed session”、“session Redis”、“session JDBC”、“session cluster”、“session management”、“@SessionScope”。不…
应用程序韧性模式。断路器、带退避的重试、舱壁隔离、超时、回退和健康检查。Polly(.NET)、resilience4j(Java)、cockatiel(Node.js)。使用场景:当用户提到“断路器”、“重试”、“退避”、“舱壁”、“韧性”、“容错”、“Polly”、“resilience4j”、“回退”。不适用于:错误处理基础 - 使用语言技能;监控 - 使用`opentelemetry`
前端和后端之间的标准化错误响应处理。涵盖错误结构、状态码以及一致的错误处理方式。使用时机:当用户询问“错误处理”、“API 错误”、“错误响应格式”、“状态码”、“错误消息”、“验证错误”时。不适用于:日志记录-请使用日志记录技能,异常处理-请使用特定语言的技能
JaCoCo Java代码覆盖率工具 使用时机:用户提到“JaCoCo”、“Java覆盖率”、“代码覆盖率”,询问“覆盖率阈值”、“jacoco-maven-plugin”、“覆盖率报告”、“行覆盖率”、“分支覆盖率” 不要用于:JavaScript/TypeScript覆盖率 - 使用Vitest技能,SonarQube分析 - 使用`sonarqube`技能,测试执行 - 使用测试技能
适用于所有语言的通用代码质量原则。涵盖干净代码、SOLID原则、复杂度指标和质量标准。使用场景:当用户提到“干净代码”、“SOLID”、“代码异味”、“重构”、“复杂性”,或者询问关于“圈复杂度”、“认知复杂度”、“代码审查”、“可维护性”。不适用场景:特定语言的代码检查 - 使用ESLint/Biome技能,安全性 - 使用OWASP技能,测试 - 使用测试相关技能。