sn-da-excel-workflow
Excel 数据分析多步编排器。覆盖:(1) 读取多 Sheet Excel 文件并统计行数,(2) 大文件检测(≥10k 行自动 Parquet 优化),(3) 数据清洗(缺失值、文本标准化、无效字符),(4) 条件筛选与分类提取,(5) 跨 Sheet 统计聚合,(6) 导出 Excel/CSV…
当前 PPT 任务已由 sn-ppt-entry 建好 DECK_DIR(task_pack.json 与 info_pack.json 已写入)后,必须由本 skill 将 query、全部用户材料与已完成 Research 编排为唯一可编辑的 outline.md 时使用。本 skill 是 entry → 出口(standard / dazzle / creative)之间的强制中间环节:不允许执行 Agent 跳过本 skill 直接依据 task_pack / info_pack 即兴编写大纲,不允许出口 skill
$ npx -y skills add OpenSenseNova/SenseNova-Skills --skill sn-ppt-story --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
/sn-ppt-storyContext preview
The summary Claude sees to decide when to auto-load this skill.
当前 PPT 任务已由 sn-ppt-entry 建好 DECK_DIR(task_pack.json 与 info_pack.json 已写入)后,必须由本 skill 将 query、全部用户材料与已完成 Research 编排为唯一可编辑的 outline.md 时使用。本 skill 是 entry → 出口(standard / dazzle / creative)之间的强制中间环节:不允许执行 Agent 跳过本 skill 直接依据 task_pack / info_pack 即兴编写大纲,不允许出口 skill
name: sn-ppt-story description: 当前 PPT 任务已由 sn-ppt-entry 建好 DECK_DIR(task_pack.json 与 info_pack.json 已写入)后,必须由本 skill 将 query、全部用户材料与已完成 Research 编排为唯一可编辑的 outline.md 时使用。本 skill 是 entry → 出口(standard / dazzle / creative)之间的强制中间环节:不允许执行 Agent 跳过本 skill 直接依据 task_pack / info_pack 即兴编写大纲,不允许出口 skill 代写或改写大纲;前置产物缺失时停止并返回 sn-ppt-entry 补齐,不得自行补做研究。 metadata: project: SenseNova-Skills tier: 1 category: scene user_visible: false triggers: - "sn-ppt-story" - "生成大纲" - "修改大纲" - "storyline" - "outline.md"
把 query、全部用户材料和已经完成的研究综合成一份清楚、完整、可直接修改的 `outline.md`。Story 统一管理内容理解和页面叙事,不生成页面,不自行开展外部研究。
只接受 Entry 传入的绝对 `DECK_DIR`。开始前读取:
用户材料是事实来源,query 是任务目标,Research 是外部证据补充。三者冲突时明确区分 “用户要求”“材料事实”“外部证据”和“推断”,不得用顺畅文案掩盖冲突。
`task_pack.state.research.required == true` 时,Story 开始前必须已有 `info_pack.research_report` 指向的可读报告。缺失时停止并返回 Entry 完成 `task_pack.state.research.executor` 指定的证据路径;不得先写 outline 再补研究。Standard 默认读取 Entry 写入的定向搜索摘要,Deep 默认读取 `sn-deep-research` 的完整报告,Story 不把 Standard 自动升级为 Deep。
`state.artifacts.outline`,把 `task_pack.params.page_count` 同步为当前连续页数,状态更新为 `story_ready`。
Research 和材料解析的完成状态。
阅读与任务相关的全部内容,而不是只看标题、摘要或开头。材料较长时可以分段读取, 但最终综合必须覆盖:
`document_digest` 是索引和辅助,不替代原文。决定性数字、专有名词、时间、单位和引用 必须回到原材料或 Research 主报告核对。
在排页前明确:
1. 谁在什么场景下向谁表达; 2. 演示希望受众理解、相信或决定什么; 3. 全套唯一的核心观点; 4. 采用什么论证路径,为什么按这个顺序; 5. 最后一页应留下什么结论或行动方向。
不要把材料目录机械改成页面目录。内容应形成连续推进,例如“建立背景 -> 暴露关键矛盾 -> 给出判断框架 -> 用证据验证 -> 落到方案或行动”,具体结构由任务决定。
每页只承担一个主要任务,并明确:
页面表达只描述用户能理解的意图,例如“用统一维度对比三种方案”或“用趋势图说明拐点”。 不要写像素、坐标、HTML 节点、组件 ID、内部页型代码或出口实现细节。
这不是模型评测,也不产生测试文件。写入前在当前上下文中连续复读三次:
1. **证据审查**:决定性结论是否有材料或 Research 支持,事实/推断/待确认是否清楚。 2. **逻辑审查**:是否存在结论先于依据、页面重复、因果跳跃、前后矛盾或最后没有落点。 3. **演示审查**:每页是否只有一个主要任务,页数是否合理,标题和结论是否让用户一眼 看懂,整体思路是否能独立概括全套。
发现问题直接改 `outline.md` 草稿,不生成审查报告。
只用普通 Markdown 和少量标题层级:
# 演示标题 ## 整体思路 说明受众、场景、目标、核心观点、叙事路径及最终落点。 ## 第 1 页:页面标题 ### 这一页要说明什么 一句完整、明确、可验证的结论。 ### 内容与依据 - 需要呈现的事实、数据、论点或案例。 - 来源用自然语言说明,例如“来自 planning_plan.md 的 Presentation Skill 部分”。 - 只能推断或仍缺证据时明确写“推断”或“待补充”。 ### 前后关系 说明本页如何承接上一页并推动下一页;封面可说明它如何设定问题。 ### 页面表达 说明信息关系、视觉重点和建议表达方式。 ## 第 2 页:页面标题 ...
硬约束:
1. 读取全部输入和 Research。 2. 确定整体 Story。 3. 完成逐页编排。 4. 做三轮自审。 5. 写入唯一 `outline.md` 并更新 `task_pack.json`。 6. 返回路径、页数和一行叙事摘要。
磁盘上的 `outline.md` 是唯一基线:
所有出口必须在开始和恢复时重新读取当前 `outline.md`。它决定:
出口可以补逐字文案、视觉系统、素材、版式、动画和实现细节,但不能重新研究、另写内容 大纲、恢复用户删除的内容或改变核心结论。出口发现事实不足时应停止相关页面,返回 Entry/Story 说明缺口。
Deep 使用 `sn-deep-research`。
The SenseNova model family plugs directly into agent runtimes such as OpenClaw and hermes-agent, with the skills in this repository extending the models with concrete, end-to-end office capabilities.
Repo: OpenSenseNova/SenseNova-Skills
Excel 数据分析多步编排器。覆盖:(1) 读取多 Sheet Excel 文件并统计行数,(2) 大文件检测(≥10k 行自动 Parquet 优化),(3) 数据清洗(缺失值、文本标准化、无效字符),(4) 条件筛选与分类提取,(5) 跨 Sheet 统计聚合,(6) 导出 Excel/CSV…
当Excel文件总行数超过1万行时,通过转换为Parquet格式提升读取性能,提取目标指标并计算最大值,最后将结果输出为Excel并对特定行进行高亮标注。
根据Excel总行数自动切换Parquet加速读取,计算特定维度的时间序列平均值,并使用openpyxl输出带有条件格式(如低于均值标绿)和自定义样式的分析报告。
根据数据规模动态选择处理策略,对多表数据进行合并、统计筛选,并利用 openpyxl 实现关键指标的自动化样式高亮与格式化导出。