SuperAPI AI 工具集

blazing-story-story

通用与其它

查看项目

更新于 10-15 22:17

技能介绍

用途:为 Blazor UI 组件编写 Blazing Story 故事文件(.stories.razor)。当用户提出“为组件 X 创建 story”“为 X 添加 stories”等请求时使用。

主要能力:

  1. 定位目标组件及其 .razor 文件,读取所有 [Parameter] 属性、RenderFragment 参数(如 ChildContent)和枚举类型。
  2. 定位 stories 项目目录(通常为 *.Stories 项目或含 Stories/ 子文件夹),确定文件路径与 @using 约定。
  3. 在 Stories/ 文件夹内按现有分类结构生成 ComponentName.stories.razor,文件名必须以 .stories.razor 结尾以启用“显示代码”功能。

使用方式:

  • 使用 @attribute [Stories("Category/ComponentName")] 定义侧边栏导航路径,用 / 分隔,并与 Stories/ 下的文件夹路径保持一致。
  • 在 <Stories TComponent="ComponentName"> 中指定组件类型;Layout 可选,常用 Centered、FullScreen、MarginedFrame,不确定时可省略。
  • 用 <ArgType> 控制参数在 Controls 面板中的显示方式,可用 ControlType.Radio(2–4 个枚举值)、ControlType.Select(5 个以上)、ControlType.Color(颜色)等。
  • 用 <Story Name="..."> 表示一个变体,至少包含一个 Default 故事,再按有意义的参数组合追加。
  • 用 <Arg For="_ => _.ParamName" Value="..." /> 设置初始参数;RenderFragment 参数应在 @code 块中定义并通过 Arg 引用,不要直接硬编码到 Template 中。
  • <Template> 中的组件标签必须加上 @attributes="context.Args" 以接通 Controls 面板;仅对无法通过 @attributes 处理的参数(事件回调、非参数子内容等)直接在标记中传入。
  • 组件类型可为空时,For lambda 使用 =>!.PropertyName。@using 需视项目全局导入情况决定是否添加。

调查策略与限制:实现应主要依据本技能文件、自身 C#/.NET/Blazor 知识、环境中其他相关技能、已配置的 MCP 服务器与工具,以及项目内只读探查(ls、Glob、Grep、Read)。避免检查 NuGet 包缓存、反编译 Blazing Story DLL 或探查已安装包内容;如确需更多实现细节,应查阅 GitHub 上 https://github.com/jsakamoto/BlazingStory 的公开源码。该策略仅在严格必要时方可放宽。

验证:写完文件后简要总结文件路径、添加的故事及其覆盖的参数变体、应用的 ArgType 定制,以及所作假设(如选择的 Layout、省略的可选参数)。

其他信息(如具体版本、收费、平台支持等)暂未提供。