Agent Skillsai-shifu/ai-shifu › interaction-user-input-defaults

interaction-user-input-defaults

GitHub

规范交互输入状态的持久化与传递,将解析逻辑下沉至markdown-flow-ui以统一默认值渲染,避免业务代码重复实现。

src/cook-web/skills/interaction-user-input-defaults/SKILL.md ai-shifu/ai-shifu

Trigger Scenarios

需要同步交互式Markdown状态 需统一处理按钮或输入框默认值

Install

npx skills add ai-shifu/ai-shifu --skill interaction-user-input-defaults -g -y
More Options

Non-standard path

npx skills add https://github.com/ai-shifu/ai-shifu/tree/main/src/cook-web/skills/interaction-user-input-defaults -g -y

Use without installing

npx skills use ai-shifu/ai-shifu@interaction-user-input-defaults

指定 Agent (Claude Code)

npx skills add ai-shifu/ai-shifu --skill interaction-user-input-defaults -a claude-code -g -y

安装 repo 全部 skill

npx skills add ai-shifu/ai-shifu --all -g -y

预览 repo 内 skill

npx skills add ai-shifu/ai-shifu --list

SKILL.md

Frontmatter
{
    "name": "interaction-user-input-defaults",
    "description": "当 ai-shifu 与 markdown-flow-ui 之间需要同步交互式 markdown 状态时使用本技能。将原始 `user_input` 持久化在应用状态中,把 `userInput` 传给 `ContentRender` 或 `MarkdownFlow`,并让 markdown-flow-ui 负责推导按钮、输入框和已选项默认值,避免在业务代码重复解析。"
}

交互输入默认值(user_input

核心规则

在应用层模型中以原始 user_input 保存交互状态,并向下传递给 markdown-flow-ui。 不要在业务代码中重复实现 user_input -> defaultButtonText/defaultInputText/defaultSelectedValues 的解析逻辑。 “是否重新生成”的判定必须基于最后一个真实业务 element(如 content/interaction),不能直接使用列表尾项;需要排除 LIKE_STATUSASKloading 等辅助项。

工作流

  1. 当交互状态来自 OnSendContentParams 时,只做一次转换,得到稳定的 user_input 字符串。
  2. 将该 user_input 保存到聊天项或预览项。
  3. 通过带 userInputContentRenderMarkdownFlow 渲染交互内容。
  4. 将仅业务相关的解析独立处理,例如课程反馈的评分/评语提取。
  5. 如果相同交互序列化逻辑在多个文件出现,把它抽到共享工具函数。

备注

  • 优先提供共享序列化器,统一处理 selectedValuesinputTextbuttonText
  • 让 markdown-flow-ui 负责按钮默认值、自由文本默认值、多选默认值的还原。
  • 对课程反馈这类结构化负载,持久化的 user_input 要可序列化,以便 UI 默认值稳定恢复。

Version History

  • e65aa77 Current 2026-08-20 15:14

Same Skill Collection

src/api/skills/shifu-authoring-flow/SKILL.md
src/api/skills/user-auth-flows/SKILL.md
src/cook-web/skills/app-error-boundary-display/SKILL.md
src/cook-web/skills/async-confirm-dialog-loading/SKILL.md
src/cook-web/skills/chat-actionbar-ask-placement/SKILL.md
src/cook-web/skills/chat-element-streaming/SKILL.md
src/cook-web/skills/chat-layout-width-detection/SKILL.md
src/cook-web/skills/deep-link-lessonid-routing/SKILL.md
src/cook-web/skills/fullscreen-dialog-portal/SKILL.md
src/cook-web/skills/listen-mode-audio-streaming/SKILL.md
src/cook-web/skills/listen-mode-slide-mobile-integration/SKILL.md
src/cook-web/skills/markdownflow-controlled-sync/SKILL.md
src/cook-web/skills/module-augmentation-guardrails/SKILL.md
src/cook-web/skills/next-build-node-runtime/SKILL.md
src/cook-web/skills/shared-loading-dots/SKILL.md
src/cook-web/skills/hook-contract-refactor-safety/SKILL.md

Metadata

Files
0
Version
e65aa77
Hash
5f58ca5e
Indexed
2026-08-20 15:14

- 위키
Copyright © 2011-2026 iteam. Current version is 2.155.2. UTC+08:00, 2026-08-25 09:24
浙ICP备14020137号-1 $방문자$