关于 faasjs-plugins-runtime
faasjs-plugins-runtime 是用于开发和测试 FaasJS 插件及运行时工具的技能,涵盖生命周期钩子、注入字段、日志、配置和 Node 环境初始化。
主要功能
- 01插件生命周期与钩子
- 02注入字段类型定义
- 03日志选择与处理
- 04配置和环境变量加载
- 05可安全重试的挂载初始化
- 06插件生命周期测试
适用场景
- 01通过插件加入身份验证或租户上下文
- 02实现可安全重试的挂载钩子
- 03配置日志并避免泄露机密
- 04测试插件生命周期行为
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ faasjs/ faasjs --skill faasjs-plugins-runtime安装后在 Claude Code 中输入/faasjs-plugins-runtime确认已加载。
包含的文件
除 SKILL.md 外,安装时一起下载的参考资料和脚本。
references/guidelines/logger.mdnode-utils.mdplugins.md详细介绍
FaasJS 插件和运行时
默认工作流
- 使用插件处理跨领域业务上下文,例如身份验证、租户、请求元数据和权限范围。
- 实现插件生命周期钩子时,明确归属,确保挂载初始化可安全重试,并在需要时恰好调用一次
next()。 - 通过
DefineApiInject模块扩充提供注入字段的类型。 - 框架提供日志记录器时,优先使用注入的日志记录器;独立代码则创建带标签的日志记录器。
- 将
@faasjs/node-utils用于仅限 Node.js 的启动和工具链代码路径。
加载以下参考资料
- 插件接口、生命周期钩子、注入字段、由配置驱动的加载和测试:
references/guidelines/plugins.md。 - 日志记录器的选择、级别、格式、计时和机密信息处理:
references/guidelines/logger.md。 loadConfig、.env加载、模块钩子、架构辅助工具和路径包含限制:references/guidelines/node-utils.md。
注意事项
- 修改
InvokeData以添加注入字段,并通过模块扩充记录类型接口。 - 确保
onMount可安全重试:并发调用共享同一次尝试,失败后后续调用可以重试。 - 不要记录机密信息或完整的敏感负载。
- 将模块钩子注册放在进程启动阶段。
验证
- 当行为依赖生命周期执行时,使用真实的
Func实例测试插件。 - 当
onMount管理资源时,覆盖共享挂载成功、共享挂载失败和后续重试的情况。 - 使用
vp test <pattern>运行针对性测试。 - 修改插件或运行时文件后,在交接前运行
vp check --fix。
评论
支持 Markdown