mcpField
F
faasjs-plugins-runtime

faasjs-plugins-runtime

github.com/faasjs开发120188 次安装10 周前更新
代码仓库

关于 faasjs-plugins-runtime

faasjs-plugins-runtime 是用于开发和测试 FaasJS 插件及运行时工具的技能,涵盖生命周期钩子、注入字段、日志、配置和 Node 环境初始化。

主要功能

  1. 01插件生命周期与钩子
  2. 02注入字段类型定义
  3. 03日志选择与处理
  4. 04配置和环境变量加载
  5. 05可安全重试的挂载初始化
  6. 06插件生命周期测试

适用场景

  1. 01通过插件加入身份验证或租户上下文
  2. 02实现可安全重试的挂载钩子
  3. 03配置日志并避免泄露机密
  4. 04测试插件生命周期行为

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/faasjs/faasjs --skill faasjs-plugins-runtime

安装后在 Claude Code 中输入/faasjs-plugins-runtime确认已加载。

包含的文件

除 SKILL.md 外,安装时一起下载的参考资料和脚本。

references/guidelines/
logger.md
node-utils.md
plugins.md

详细介绍

FaasJS 插件和运行时

默认工作流

  1. 使用插件处理跨领域业务上下文,例如身份验证、租户、请求元数据和权限范围。
  2. 实现插件生命周期钩子时,明确归属,确保挂载初始化可安全重试,并在需要时恰好调用一次 next()。
  3. 通过 DefineApiInject 模块扩充提供注入字段的类型。
  4. 框架提供日志记录器时,优先使用注入的日志记录器;独立代码则创建带标签的日志记录器。
  5. 将 @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