关于 effect-ts
effect-ts 是用于 Effect 服务、Layer、错误处理、配置和运行时集成开发与评审的技能。它引导 Agent 查阅当前建议和项目参考资料,以指导实现与测试。
主要功能
- 01按 Effect 任务选择参考资料
- 02通过 effect-solutions 查询当前建议
- 03遵循服务与 Layer 设计规则
- 04指导错误处理和运行时集成
- 05明确评审与验证要求
适用场景
- 01实现或重构 Effect 服务
- 02排查 Layer 连接或运行时行为
- 03评审类型化错误与边界映射
- 04规划 Effect 代码测试
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ blogic-cz/ blogic-marketplace --skill effect-ts安装后在 Claude Code 中输入/effect-ts确认已加载。
包含的文件
除 SKILL.md 外,安装时一起下载的参考资料和脚本。
references/agent-tools-patterns.mderror-handling.mdframework-integration.mdservices-and-layers.mdtesting-layers.md详细介绍
Effect 专家
在使用 Effect 服务、层、Schema 错误、配置和运行时集成时,使用此技能。
加载触发条件
在以下情况下加载此技能:
- 用户提到
Effect、Layer、Context.Tag、Schema.TaggedError、Effect.gen或Effect.fn - 你正在实现或审查定义 Effect 服务、层或运行时边界的文件
- 你正在调试 Effect 运行时行为、缺失的 span、层连接或边界错误映射
- 你需要制定 Effect 代码的测试策略(
@effect/vitest、测试层) - 你需要进行 Effect 运行时集成(TRPC/服务端边界)
第一步(始终执行)
在进行大量实现、重构或正式审查之前,获取当前建议:
effect-solutions list
effect-solutions show tsconfig
effect-solutions show basics
effect-solutions show services-and-layers
effect-solutions show data-modeling
effect-solutions show error-handling
effect-solutions show config
effect-solutions show testing
effect-solutions show cli
如果 effect-solutions CLI 不可用,或者任务很简单(例如,不影响 Effect 设计的小幅措辞调整),则跳过 CLI 调用,参考此技能中的相关参考文件。
将建议视为可能随时间变化的指导。不要依赖过时的记忆。
决策树
- 服务设计或重构 ->
references/services-and-layers.md - 类型化错误、Option/Either、恢复处理 ->
references/error-handling.md - TRPC/服务端运行时边界 ->
references/framework-integration.md agent-tools/*中的 CLI 工具 ->references/agent-tools-patterns.md- 测试和模拟 ->
references/testing-layers.md
项目规则(不得违反)
- 优先将服务定义放在一起(在同一文件中使用
Context.Tag+ 静态layer) - 使用
Schema.TaggedError定义领域错误 - 不要通过
_tag访问Option/Either的内部属性;应使用辅助函数(match、isNone、isLeft) - 对 Effect 依赖项,使用 Layers 进行模拟,而不是
vi.mock() - 在入口点保持一个清晰的 provide 边界
输出要求
对于大量实现、审查或调试任务,请返回:
- 检查过哪些
effect-solutions show ...主题 - 使用了哪些参考文件,以及原因
- 遵循现有项目模式的具体变更方案
- 验证计划(类型检查/测试)
参考索引
references/services-and-layers.mdreferences/error-handling.mdreferences/framework-integration.mdreferences/agent-tools-patterns.mdreferences/testing-layers.md
评论
支持 Markdown