Agent Skills
› dilolabs/nosia
dilolabs/nosia
GitHub指导Rails开发中构建REST API的最佳实践,采用同控制器多格式策略。涵盖respond_to块、Jbuilder模板、Token认证及分页等,用于生成API端点或处理JSON响应。
Install All Skills
npx skills add dilolabs/nosia --all -g -y
Skills in Collection (45)
指导Rails开发中构建REST API的最佳实践,采用同控制器多格式策略。涵盖respond_to块、Jbuilder模板、Token认证及分页等,用于生成API端点或处理JSON响应。
添加新的API端点
需要返回JSON响应
实现Token身份验证
用户提及API、JSON、REST或Jbuilder
npx skills add dilolabs/nosia --skill api-patterns -g -y
实现基于 Rails 8.2 的自定义无 Devise 认证系统,以 Passkey (WebAuthn) 为主、Magic Link 为辅,涵盖身份模型、会话管理及路由配置。
设置自定义登录流程
实现 Passkey 或 Magic Link 认证
构建 Session 管理机制
npx skills add dilolabs/nosia --skill auth-setup -g -y
提供Rails应用性能优化方案,涵盖HTTP缓存、俄罗斯套娃缓存、分片缓存及Solid Cache配置。指导如何实施ETag、碎片缓存及集合缓存以加速响应并精确失效。
优化Web应用性能
实现HTTP ETag缓存
配置俄罗斯套娃缓存机制
设置Solid Cache后端
npx skills add dilolabs/nosia --skill caching-patterns -g -y
用于提取和重构Rails模型与控制器的Concerns,实现水平行为共享。当需要DRY代码、组织横向关注点或处理mixin时触发。适用于重复关联、状态模式或作用域的重构场景。
提取跨模型的共享代码
重构控制器以消除重复逻辑
用户提及concerns, mixins或modules
npx skills add dilolabs/nosia --skill concern-patterns -g -y
指导Rails应用遵循37signals风格,将RESTful动作映射为CRUD。通过创建新资源而非自定义动作来处理状态变更,提供控制器生成、路由设计及代码示例。
添加新功能或创建控制器
设计RESTful路由
处理非标准CRUD的状态变更
npx skills add dilolabs/nosia --skill crud-patterns -g -y
实现基于通用Event模型和Eventable Concern的事件追踪、活动流及Webhook系统,支持审计日志、通知与实时推送。
需要实现事件追踪或审计日志
构建活动流或Webhook系统
npx skills add dilolabs/nosia --skill event-tracking -g -y
提供基于 Solid Queue 的浅层后台作业模式,通过 _later/_now 约定实现模型方法的异步/同步调用。用于处理背景任务、队列操作及定时任务,确保业务逻辑保留在模型中。
添加后台处理或异步操作
用户提及 jobs, queues, workers 或 background processing
npx skills add dilolabs/nosia --skill job-patterns -g -y
提供基于 Action Mailer 的最小化邮件发送规范,涵盖事务性邮件、模板创建及多租户支持。指导生成邮件类、配置异步投递及开发预览,适用于通知系统构建与交易邮件处理。
需要创建新的邮件发送器类
实现用户通知或提醒功能
生成批量或摘要邮件
询问关于邮件模板或 Action Mailer 的使用
npx skills add dilolabs/nosia --skill mailer-patterns -g -y
指导创建遵循特定规范的 Rails 数据库迁移文件,包括使用 UUID 主键、强制 account_id 实现多租户隔离以及避免外键约束,适用于建表、加列及数据迁移等场景。
需要创建新的数据库表或修改表结构
编写涉及多租户数据隔离的迁移脚本
执行数据迁移或重构数据库 schema
npx skills add dilolabs/nosia --skill migration-patterns -g -y
指导在 Rails 中构建富领域模型,遵循胖模型理念,将业务逻辑置于模型而非服务对象。涵盖模型结构、关联、验证及方法定义的最佳实践。
创建新的 ActiveRecord 模型
为模型添加业务逻辑或关联
重构服务对象以迁移逻辑至模型
npx skills add dilolabs/nosia --skill model-patterns -g -y
实现基于URL的多租户架构,涵盖账户隔离、成员管理及数据作用域。通过Current属性上下文和UUID防止枚举攻击,提供账户模型与权限控制的最佳实践代码。
设置多租户架构
账户隔离配置
成员管理实现
用户提及多租户或租户分离
npx skills add dilolabs/nosia --skill multi-tenant-setup -g -y
指导在Rails中将布尔状态字段重构为独立的状态记录模型,以追踪变更历史、操作人和时间。适用于需要丰富状态管理的业务场景。
将布尔标志替换为状态记录
需要追踪状态变更时间和操作人
用户提到状态记录或闭包模式
npx skills add dilolabs/nosia --skill state-records -g -y
指导构建专注、可复用的 Stimulus 控制器,用于渐进式增强。涵盖 DOM 操作、表单增强及 UI 交互,强调配置优于硬编码,禁止处理业务逻辑或状态管理,适用于 Rails 前端交互开发。
需要添加客户端 JavaScript 行为
构建 UI 交互组件如下拉框或模态框
对服务器渲染的 HTML 进行渐进式增强
npx skills add dilolabs/nosia --skill stimulus-patterns -g -y
基于 Minitest 和 Fixtures 的 Rails 测试专家,遵循 37signals 规范编写模型、集成及系统测试,强调行为验证与性能优化。
需要为 Rails 项目编写单元测试或集成测试
要求使用 Minitest 框架而非 RSpec
需要使用 YAML fixtures 提供测试数据
npx skills add dilolabs/nosia --skill testing-patterns -g -y
指导使用 Turbo Streams、Frames 和 morphing 构建 Rails 实时响应式 UI,实现无 JS 框架的局部更新与广播。
需要实现实时 UI 更新
进行部分页面渲染
处理表单提交后的异步反馈
配置 WebSocket 消息广播
npx skills add dilolabs/nosia --skill turbo-patterns -g -y
指导Rails开发中REST API的构建模式,采用同一控制器服务HTML和JSON。核心使用respond_to块处理格式分发,Jbuilder生成JSON响应,并涵盖Token认证、分页及多租户数据隔离等最佳实践。
添加API端点
需要JSON响应格式
实现Token身份验证
涉及RESTful路由设计
npx skills add dilolabs/nosia --skill api-patterns -g -y
指导在Rails中从零构建轻量级无Devise认证系统,以Passkey(WebAuthn)为主、Magic Link为辅,涵盖身份模型、会话管理及路由配置。
需要自定义用户认证流程
实现无密码登录或Passkey集成
避免使用Devise等重型认证库
npx skills add dilolabs/nosia --skill auth-setup -g -y
提供Rails应用性能优化方案,涵盖HTTP缓存、俄罗斯套娃缓存及Solid Cache配置。适用于需实现ETag、片段缓存或提升响应速度的场景。
优化应用性能
添加缓存层
提及ETags或fresh_when
实现俄罗斯套娃缓存
npx skills add dilolabs/nosia --skill caching-patterns -g -y
用于在Rails应用中提取和重构Model/Controller的Concerns,实现水平行为共享与代码DRY化。适用于多模型复用关联、状态或作用域等场景,帮助组织模块化逻辑。
提取跨模型重复代码
重构控制器公共逻辑
使用Concerns/Mixins/Modules
npx skills add dilolabs/nosia --skill concern-patterns -g -y
指导Rails应用中将非标准操作映射为RESTful资源,通过创建新控制器处理状态变更或嵌套资源,遵循CRUD模式而非自定义动作。
需要添加新功能并设计路由
创建新的RESTful控制器
处理非标准CRUD的状态变更
npx skills add dilolabs/nosia --skill crud-patterns -g -y
提供基于通用Event模型和Eventable Concern的事件追踪、活动流及Webhook系统实现方案。适用于审计日志、用户行为记录及通知推送,采用数据库持久化与Solid Queue异步处理,支持多租户隔离。
实现事件追踪或审计日志
构建活动流功能
集成Webhook发送机制
记录用户行为活动
npx skills add dilolabs/nosia --skill event-tracking -g -y
提供Rails中基于Solid Queue的轻量级后台任务实现模式。通过_later/_now约定分离同步与异步逻辑,保持Job为薄封装,业务逻辑保留在Model中,便于测试和维护。
添加后台处理任务
实现异步操作
创建定时任务
涉及队列、Worker或后台处理的开发场景
npx skills add dilolabs/nosia --skill job-patterns -g -y
提供基于 Action Mailer 的最小化邮件发送模式,涵盖事务性通知、模板生成及多租户上下文处理。用于快速创建邮件类、实现批量通知聚合及开发预览,遵循纯文本优先和直接调用框架的最佳实践。
需要创建新的邮件发送类
实现用户通知或交易邮件系统
生成每日摘要邮件
提及 mailers, emails, notifications
npx skills add dilolabs/nosia --skill mailer-patterns -g -y
专为Rails数据库迁移设计的技能,指导创建使用UUID主键、包含account_id且无外键约束的多租户表结构。涵盖建表、加列及数据迁移场景,强调简单可逆的Schema设计。
需要创建新的数据库表
执行数据库模式变更或添加列
编写数据迁移脚本
npx skills add dilolabs/nosia --skill migration-patterns -g -y
指导在Rails中构建富领域模型,将业务逻辑置于模型而非服务对象。涵盖模型结构、关联、验证及回调的最佳实践,旨在提升代码内聚性与可维护性。
创建新的ActiveRecord模型
向现有模型添加业务逻辑方法
设计模型间的关联关系
实现数据验证或作用域
npx skills add dilolabs/nosia --skill model-patterns -g -y
实现基于URL的多租户架构,涵盖账户隔离、成员管理及数据权限控制。通过Current属性管理上下文,使用UUID防止枚举攻击,提供账户模型与成员关系的代码模式。
设置多租户架构
账户隔离需求
成员关系管理
提及多租户或租户分离
npx skills add dilolabs/nosia --skill multi-tenant-setup -g -y
提供Rails中状态记录模式的最佳实践,将布尔标志替换为独立模型以追踪变更历史、用户及原因。包含代码模板、命名规范及与旧模式的对比。
用状态记录替代布尔字段
需要追踪状态变更历史或责任人
询问状态管理模式
npx skills add dilolabs/nosia --skill state-records -g -y
指导构建专注、可复用的 Stimulus JS 控制器,用于渐进式增强、DOM操作及UI交互。强调单职责、配置化及生命周期清理,适用于Rails前端行为扩展。
需要添加客户端JavaScript交互逻辑
构建可复用的Stimulus控制器
实现表单增强或UI组件
npx skills add dilolabs/nosia --skill stimulus-patterns -g -y
基于 Minitest 和 YAML fixtures 编写 Rails 测试,遵循 37signals 规范。强调集成测试优先,提供模型与控制器测试结构、断言模式及运行命令,确保测试快速且行为验证准确。
编写 Rails 单元测试或集成测试
创建或管理 Minitest fixtures
添加测试覆盖率
使用 Minitest 进行功能验证
npx skills add dilolabs/nosia --skill testing-patterns -g -y
专注于 Hotwire/Turbo 架构,用于构建无需 JS 框架的响应式 UI。涵盖 Turbo Streams、Frames 及 morphing 模式,支持实时页面更新、局部渲染和 ActionCable 广播。
需要实现实时 UI 更新
进行局部页面渲染
处理表单提交后的异步反馈
通过 WebSocket 广播状态变更
npx skills add dilolabs/nosia --skill turbo-patterns -g -y
指导在Rails中构建REST API,遵循同一控制器支持HTML和JSON的哲学。使用respond_to块和Jbuilder模板处理不同格式响应,涵盖令牌认证、分页及多租户场景。
添加API端点
生成JSON响应
实现令牌认证
用户提及API或Jbuilder
npx skills add dilolabs/nosia --skill api-patterns -g -y
用于在 Rails 中从零实现自定义无 Devise 认证系统。支持以 Passkey (WebAuthn) 为主、Magic Link 为辅的密码登录,包含会话管理和路由配置,保持代码精简。
设置用户登录流程
实现基于 WebAuthn 的 Passkey 认证
配置 Magic Link 密码登录回退方案
管理用户会话状态
npx skills add dilolabs/nosia --skill auth-setup -g -y
提供Rails应用缓存优化指南,涵盖HTTP ETags、Russian Doll、分片及集合缓存策略。用于提升性能、配置Solid Cache或处理缓存键与失效逻辑。
优化页面加载性能
添加或配置缓存层
提及ETags或fresh_when
实现Russian doll caching
npx skills add dilolabs/nosia --skill caching-patterns -g -y
用于在 Rails 项目中提取和重构模型及控制器的 Concerns,实现横向行为共享与代码复用。适用于模块化设计、DRY 原则及公共逻辑抽取场景。
提取跨模型或控制器的重复代码
使用 Concerns/Mixins/Modules 组织共享行为
重构垂直继承结构中的水平关注点
npx skills add dilolabs/nosia --skill concern-patterns -g -y
提供Rails RESTful控制器开发规范,指导将业务动作映射为CRUD资源,涵盖状态变更、嵌套资源及标准增删改查实现模式。
创建RESTful控制器
设计路由结构
通过REST处理状态变更
npx skills add dilolabs/nosia --skill crud-patterns -g -y
提供基于37signals模式的通用事件追踪、活动流和Webhook系统实现方案。包含Event模型设计、Eventable Concern及Solid Queue异步处理,用于审计日志、通知和实时反馈。
实现审计日志或活动流
配置Webhook或事件追踪
用户提及事件、跟踪或活动日志
npx skills add dilolabs/nosia --skill event-tracking -g -y
提供基于Solid Queue的Rails后台作业开发模式,采用浅层Job封装模型方法。通过_later/_now约定实现同步/异步切换,确保业务逻辑在Model中,Job仅作为协调器,提升可测试性与关注点分离。
添加后台处理任务
需要执行异步操作
用户提及jobs、queues、workers或background processing
创建定时任务
npx skills add dilolabs/nosia --skill job-patterns -g -y
提供 Rails Action Mailer 最小化模式,支持事务性邮件、通知聚合及多租户场景。涵盖生成命令、代码模板及开发预览指南,用于快速构建邮件发送与通知系统。
创建邮件发送类
实现用户通知系统
生成摘要邮件
提及 mailers, emails, notifications
npx skills add dilolabs/nosia --skill mailer-patterns -g -y
专为Rails数据库迁移设计的技能,规定使用UUID主键、强制添加account_id实现多租户隔离,并明确禁止外键约束。适用于创建表、修改Schema及数据迁移等场景,旨在保持架构简单灵活。
需要创建新的数据库表或列
执行数据库结构变更或数据迁移
npx skills add dilolabs/nosia --skill migration-patterns -g -y
指导在 Rails 中构建富领域模型,遵循 Fat-Model 哲学。涵盖模型结构、关联、验证、作用域及业务逻辑方法的最佳实践,旨在将业务逻辑封装于模型内而非服务对象中。
创建新的 ActiveRecord 模型
在模型中添加验证、作用域或回调
定义模型间的关联关系
重构代码以将业务逻辑从 Service Object 移入 Model
npx skills add dilolabs/nosia --skill model-patterns -g -y
实现基于URL的多租户架构,包含账户隔离、成员管理及数据作用域。适用于设置多租户、账户隔离或用户提及多租户场景。
设置多租户架构
账户隔离
成员管理
多租户相关
npx skills add dilolabs/nosia --skill multi-tenant-setup -g -y
指导在Rails中将布尔状态字段重构为独立的状态记录模型,以追踪变更历史、操作人和原因。适用于需要丰富状态管理的业务场景,替代简单的开关标志。
将布尔状态字段重构为记录
需要追踪状态变更的历史和责任人
用户提到状态记录或状态模式
npx skills add dilolabs/nosia --skill state-records -g -y
构建专注、可复用的 Stimulus 控制器,用于渐进增强、DOM操作、表单增强及UI交互。强调配置优于硬编码,输出轻量级客户端组件,避免构建SPA或处理业务逻辑。
需要添加JavaScript行为或UI交互
构建可复用的前端客户端组件
对服务器渲染的HTML进行渐进增强
npx skills add dilolabs/nosia --skill stimulus-patterns -g -y
专注于Rails项目Minitest测试编写,强制使用Fixtures而非FactoryBot。提供模型、集成测试结构及断言模式,强调行为验证与性能优化。
编写Minitest测试
添加测试覆盖率
创建Fixtures数据
npx skills add dilolabs/nosia --skill testing-patterns -g -y
指导使用 Hotwire/Turbo 构建实时响应式 UI,涵盖 Turbo Streams、Frames 及 morphing 模式,实现无 JS 框架的局部渲染与实时广播。
需要添加实时 UI 更新功能
进行部分页面渲染
处理表单提交后的异步反馈
配置数据变更的广播推送
npx skills add dilolabs/nosia --skill turbo-patterns -g -y


