Community编程与开发github.com

jumibot/informe_deliberativa

创建或更新软件工厂(Software Factory)中一项审议任务(调研、审议、设计)的报告——包含固定结构:摘要、分析、已决定事项、按区块划分的待决定事项、建议分离项和生成的任务——并以带选项的卡片形式呈现问题、突出推荐、标识状态(开放、已决定、已分离),且随负责人的每次回复实时更新。每次迭代都会升级版本、将旧版备份到 `_respaldo/` 目录并重新生成 HTML。当审议任务需要编写或更新其报告、需要在报告中记录回复、决定或分离操作,或者需要将旧报告转换为本格式时使用。使用 `crear_documentos` 的生成器和公共资源。

informe_deliberativa 是什么?

该技能为软件工厂中的审议任务(调研、审议、设计)生成或更新结构化报告。报告包含摘要、分析、已决定事项、待决定事项(按区块划分)、建议分离项和生成的任务。每个待决定问题以卡片形式呈现,包含选项、推荐选项和状态(开放、已决定、已分离),并随负责人的每次回复实时更新。每次迭代都会升级版本号、备份旧版本到 `_respaldo/` 目录并重新生成 HTML。该技能适用于编写新报告、更新现有报告、记录回复/决定/分离,以及将旧报告转换为此格式。它依赖于 `crear_documentos` 的生成器和公共资源。

兼容平台~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/jumibot/SoftwareFactory/tree/main/plugins/sf/skills/informe_deliberativa

Installed? Explore more 编程与开发 skills: steipete/bluebubbles, steipete/eightctl, steipete/blucli · View all 6 →

在你喜欢的 AI 中提问

打开一个已预加载此 Agent Skill 的新对话。

文档

审议报告

一项审议任务(调研、审议或设计;《七种任务类型,三个家族》,223)生成一份报告以及从中产生的任务(《审议任务产生报告和任务》,218)。其困境均存在于报告之中,随负责人的每次回复实时更新,而不在队列或其他文件中。属于其他任务的内容建议分离;关闭时,仍未解决的内容将被转移到其对应的任务中(《在审议任务中,属于其他任务的内容建议分离》,221)。审议任务不进行任何测试,只修改其报告:需要应用的内容由它创建的任务执行。

本技能规定了报告的内容、问题的撰写方式以及每次迭代的流程。生成器、资源、主题和检查功能均继承自 crear_documentos,应与本技能一同阅读。它是审议任务家族智能体(如存在)所使用的技能(《专业智能体,每个任务家族一个》,304);在此之前,由任务的子智能体加载。

读者是负责人,需要做出决定。 报告旨在为其节省工作量:待决定事项首先显示,每个问题用一个字母回答,推荐选项一目了然。良好的沟通是软件工厂的目标之一(决议 231)。

存放位置

  • 在已纳入软件工厂的项目中,存放于 sf/informes/(《软件工厂文档存放在 sf/ 目录下》,203)。
  • 在软件工厂自身中,存放于 docs/referencias/reports/,直到决定将其迁移至 sf/(《任务类型》报告中的问题 13,任务 303)。

文件名使用主题,而非任务编号:Tipos de tarea.md 及其 .html。被替换的版本将移至同一目录下的 _respaldo/ 文件夹。

模板: 软件工厂的 docs/referencias/reports/Tipos de tarea.md 报告(任务 274)。如果团队中有该报告,可将其作为示例阅读,但不得复制其内容。空模板位于 assets/plantilla-informe.md。

结构

各章节始终按以下顺序排列,并使用这些 {#id},以便负责人知道在哪里查看,任务也能引用它们:

  1. 摘要 {#resumen}。用两到三个简短段落说明结论:提议内容、依据、剩余问题数量及位置。如果图表有助于说明整体情况,可放置于此。末尾应包含跳转到待决定事项的链接([查看 N 个问题](#por-decidir){: .salto})。
  2. 分析,以一个或多个独立章节呈现:研究内容、提议及其理由。先说明提议或结论(即使从后续内容推导而来),然后给出支撑它的评估及其局限性。此处放置主题相关的卡片、图表和表格。
  3. 已决定 {#decidido}。一个表格,列出负责人做出的、由本任务确定的决定:编号 | 决定 | 在此确定的内容。每条决定在出现在此之前,需先记录在对应的决定文件中。
  4. 待决定 {#por-decidir}。未解决的问题,位于 ::: preguntas 区块内。如果问题较多,可按重要性或分离后去向划分为多个区块,每个区块为一个独立章节({#por-decidir-<destino>});每个区块以一句话说明其内容,并附带跳转到对应分离项的链接。
  5. 建议分离 {#separar}。建议的分离项:每个分离项对应一张卡片({: #a-<destino>}),说明其带走的内容(问题列表,附带指向每个问题的链接)以及去向(新任务、现有任务步骤或 /sf_split)。如果需要选择分离方式,也作为一个问题列出。
  6. 任务 {#tareas}。产生的任务:任务 | 类型 | 职责。已存在的任务需注明编号。

附录,仅在必要时放在末尾:来源(::: fuentes)、完整数据、拟提交给其他任务修改的文档文本。

如果分析部分未留下任何待决定、分离或创建的内容,则移除相应章节;其余章节顺序不变。

页眉: antetitulo 设置为“项目 · <分析/设计/研究>报告 · <月份 年份>”,lema,subtitulo 设置报告回答的问题,version,estado(“提案 · 任务N”、“已决定 · 任务N”等),portada: oscura,destino: proyecto,herramientas,menu: secciones(负责人可在章节间跳转),tipo(“分析报告”、“设计报告”、“研究报告”),pie 注明任务、报告来源及决策者。

问题

每个问题都是一个 ::: preguntas 卡片,使用 crear_documentos 中的“带选项的问题”资源:

::: preguntas 2 plegables

### 1 · 如何满足“仅其文档”要求 {recomendada=A} {: #p1}

目前没有任何监督机制:任何步骤都可能进入任务。

选项 A
:   任务通过命令声明其文档,如果分支触及其他文件,`cerrar` 会拒绝。

选项 B
:   仅在编排中编写规则。

推荐
:   **A.** 通过命令实现,而非依赖主智能体的记忆。

:::
  • 每个问题一个决定,标题命名问题并附带按重要性排序的编号(1 为最重要)。编号和锚点 {: #pN} 在问题被决定或分离后保持不变:任务步骤通过它们引用问题(“决定……(问题 5)(报告《任务类型》,274)”)。
  • 上下文用一到两句话说明,仅在必要时提供:当前情况或需要决定的原因。
  • 两到三个选项,选项 A,选项 B……,每个选项用一到两句话说明其含义。“保持现状”当且仅当其确实是一个可选方案时,才作为一个选项。
  • 推荐附带一句话的理由,并在标题中添加 recomendada=A 以突出显示。每个未解决的问题均需附带推荐;生成器会在缺少推荐时发出警告。
  • 状态,随每次回复实时更新:
    • estado=abierta(默认):等待回复;
    • estado=decidida elegida=B:附带 Decisión 字段说明所选内容及其细节,以及已记录决定的编号;所选选项标记为选中,其余选项变灰;
    • estado=separada destino=tarea_303:已转移至其他任务(_ 在标记中视为空格)。仍保留在报告中,以便目标任务引用。
  • 依赖于其他问题的问题,需在其上下文中说明,并附带指向依赖问题的链接。

当一个问题被决定或分离后,其卡片将保留在原区块中,状态更新为新的状态,同时决定也会被添加到“已决定”表格中。摘要中会说明仍有多少问题未解决。

每次迭代

负责人的每次回复,或导致报告变更的每次分析进展,均构成一次迭代:

  1. 备份 将要替换的版本:python -I -X utf8 <skills>/crear_documentos/scripts/respaldar.py <informe>.md <motivo>(《在替换文档前,将其备份至 _respaldo/》,217)。

  2. 编写 更改内容:已回复问题的状态、“已决定”表格、分离项和任务,以及摘要。升级版本号(2.5 → 2.6;当报告结构变更时升级首位数字)并更新 estado 字段。

  3. 重新生成 HTML 在同一变更中(《每次 .md 变更都重新生成其 HTML》,220):

    python -I -X utf8 <skills>/informe_deliberativa/scripts/informe_to_html.py <informe>.md
    
  4. 推送至 develop 分支,无需创建新分支,因为这是一个新文档(《新文档每次迭代直接推送到 develop,并在浏览器中提供》,216),使用相应命令(《每次迭代将新文档推送到 develop,并在浏览器中打开》,297)。

  5. 提供在浏览器中打开 HTML 的选项,指向新版本。

检查

沿用 crear_documentos 的检查规则(“检查”),此外:

  • 每个未解决的问题至少有两个选项和一个推荐选项;任何已决定的问题必须包含 elegida,已分离的问题必须包含 destino;
  • 摘要中的计数(未解决问题数、分离项数、任务数)与相应章节内容一致;
  • 指向问题的每个链接(#pN)或分离项链接(#a-…)均有效;
  • “已决定”表格仅包含已记录的决定。

Individual skills in this repo

This repo contains 2 individual skills — each has its own dedicated page.

jumibot/documento_fundacional

Crea o revisa el documento fundacional de un proyecto o de un producto — su presentación formal, más formal que el documento de visión y sin historia conductora — con la necesidad documentada, la tesis de desarrollo, qué es el producto, los escenarios de uso, las evidencias con lo que respaldan y lo que no, qué debe demostrar el piloto y las fuentes. Para el autor y para compartir con colaboradores, socios o financiadores. Úsala cuando pidan un documento fundacional, una presentación o justificación formal del proyecto, un manifiesto, un dossier o un caso de desarrollo, o convertir uno existente (PDF, HTML) a este formato. Genera .md → .html con el generador y los recursos comunes de crear_documentos (portada sobria, secciones plegables, tarjetas, fichas con buscador, referencias) y el tema de la identidad del proyecto; se imprime en A4.

jumibot/flujo_tareas

Ciclo de vida de las tareas de un proyecto bajo la Software Factory (SF) y su cola, .sf/peticiones.json — estados (en cola, en curso, en observación, descartada), pasos, ramas feature/NN-nombre, subagentes, prueba y cierre por squash en develop, descarte, reversión, reapertura, eliminación, fusión y separación, historial por tarea y copias de la cola — con el CLI tools/cola.py. Úsala siempre que haya que tocar la cola — anotar una petición o un bug, poner una tarea en curso o dejarla en cola, crear su rama, añadir o marcar pasos, lanzar o recoger un subagente, dejarla lista para probar, cerrarla, pasarla a observación o devolverla a ella, cerrarla o revertirla en observación, descartarla, reabrirla, eliminarla, fusionar o separar tareas, o recuperar una cola rota.

相关技能