@openflowjs/cli 0.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/bin/openflow.d.ts +2 -0
- package/dist/bin/openflow.js +8 -0
- package/dist/bin/openflow.js.map +1 -0
- package/dist/commands/config.d.ts +2 -0
- package/dist/commands/config.js +38 -0
- package/dist/commands/config.js.map +1 -0
- package/dist/commands/flow.d.ts +1 -0
- package/dist/commands/flow.js +119 -0
- package/dist/commands/flow.js.map +1 -0
- package/dist/commands/init.d.ts +2 -0
- package/dist/commands/init.js +1082 -0
- package/dist/commands/init.js.map +1 -0
- package/dist/commands/iteration.d.ts +1 -0
- package/dist/commands/iteration.js +131 -0
- package/dist/commands/iteration.js.map +1 -0
- package/dist/commands/mcp.d.ts +1 -0
- package/dist/commands/mcp.js +12 -0
- package/dist/commands/mcp.js.map +1 -0
- package/dist/commands/module.d.ts +1 -0
- package/dist/commands/module.js +137 -0
- package/dist/commands/module.js.map +1 -0
- package/dist/commands/plan.d.ts +1 -0
- package/dist/commands/plan.js +111 -0
- package/dist/commands/plan.js.map +1 -0
- package/dist/commands/plugin.d.ts +1 -0
- package/dist/commands/plugin.js +246 -0
- package/dist/commands/plugin.js.map +1 -0
- package/dist/commands/preflight.d.ts +8 -0
- package/dist/commands/preflight.js +57 -0
- package/dist/commands/preflight.js.map +1 -0
- package/dist/commands/review.d.ts +1 -0
- package/dist/commands/review.js +145 -0
- package/dist/commands/review.js.map +1 -0
- package/dist/commands/state.d.ts +1 -0
- package/dist/commands/state.js +28 -0
- package/dist/commands/state.js.map +1 -0
- package/dist/commands/validate.d.ts +1 -0
- package/dist/commands/validate.js +310 -0
- package/dist/commands/validate.js.map +1 -0
- package/dist/core/artifacts.d.ts +140 -0
- package/dist/core/artifacts.js +809 -0
- package/dist/core/artifacts.js.map +1 -0
- package/dist/core/index.d.ts +12 -0
- package/dist/core/index.js +27 -0
- package/dist/core/index.js.map +1 -0
- package/dist/core-artifacts/marketplace.json +14 -0
- package/dist/core-artifacts/modules.json +20 -0
- package/dist/core-artifacts/openflow/.claude-plugin/plugin.json +8 -0
- package/dist/core-artifacts/openflow/.mcp.json +9 -0
- package/dist/core-artifacts/openflow/agents/openflow-artifact-reviewer.md +308 -0
- package/dist/core-artifacts/openflow/agents/openflow-code-reviewer.md +177 -0
- package/dist/core-artifacts/openflow/agents/openflow-executor-deep.md +119 -0
- package/dist/core-artifacts/openflow/agents/openflow-executor-general.md +104 -0
- package/dist/core-artifacts/openflow/agents/openflow-executor-quick.md +93 -0
- package/dist/core-artifacts/openflow/agents/openflow-explorer.md +69 -0
- package/dist/core-artifacts/openflow/agents/openflow-knowledge-curator.md +89 -0
- package/dist/core-artifacts/openflow/commands/knowledge.md +102 -0
- package/dist/core-artifacts/openflow/hooks/hooks.json +33 -0
- package/dist/core-artifacts/openflow/scripts/openflow-drift-guard.cjs +54 -0
- package/dist/core-artifacts/openflow/scripts/openflow-evidence-reminder.cjs +64 -0
- package/dist/core-artifacts/openflow/scripts/openflow-mcp-review.cjs +27 -0
- package/dist/core-artifacts/openflow/scripts/openflow-write-guard.cjs +27 -0
- package/dist/core-artifacts/openflow/scripts/session-start.cjs +12 -0
- package/dist/core-artifacts/openflow/skills/brainstorm/SKILL.md +131 -0
- package/dist/core-artifacts/openflow/skills/cli-reference/SKILL.md +196 -0
- package/dist/core-artifacts/openflow/skills/finalize/SKILL.md +109 -0
- package/dist/core-artifacts/openflow/skills/finalize/references/summary-template.md +39 -0
- package/dist/core-artifacts/openflow/skills/implement/SKILL.md +296 -0
- package/dist/core-artifacts/openflow/skills/implement/references/working-memory.md +49 -0
- package/dist/core-artifacts/openflow/skills/knowledge-retrieval/SKILL.md +78 -0
- package/dist/core-artifacts/openflow/skills/prd/SKILL.md +173 -0
- package/dist/core-artifacts/openflow/skills/prd/references/level-routing.md +94 -0
- package/dist/core-artifacts/openflow/skills/prd/references/prd-template.md +187 -0
- package/dist/core-artifacts/openflow/skills/prd/references/wireframe-template.html +122 -0
- package/dist/core-artifacts/openflow/skills/spec/SKILL.md +341 -0
- package/dist/core-artifacts/openflow/skills/spec/references/context-template.md +38 -0
- package/dist/core-artifacts/openflow/skills/spec/references/plan-template.md +61 -0
- package/dist/core-artifacts/openflow/skills/spec/references/spec-template.md +187 -0
- package/dist/core-artifacts/openflow/skills/spec/references/tasks-template.md +99 -0
- package/dist/core-artifacts/openflow/skills/workflow-governance/SKILL.md +384 -0
- package/dist/core-artifacts/openflow/skills/workflow-governance/references/knowledge-schema.md +241 -0
- package/dist/core-artifacts/openflow/skills/workflow-governance/references/state-files.md +148 -0
- package/dist/core-artifacts/openflow/skills/workflow-governance/references/workflow.md +119 -0
- package/dist/core-artifacts/templates/.gitkeep +0 -0
- package/dist/index.d.ts +4 -0
- package/dist/index.js +5 -0
- package/dist/index.js.map +1 -0
- package/dist/mcp/review-mcp-server.d.ts +1 -0
- package/dist/mcp/review-mcp-server.js +191 -0
- package/dist/mcp/review-mcp-server.js.map +1 -0
- package/dist/mcp/review-server.d.ts +33 -0
- package/dist/mcp/review-server.js +340 -0
- package/dist/mcp/review-server.js.map +1 -0
- package/dist/mcp/review-ui/assets/arc-DH58vMfF.js +1 -0
- package/dist/mcp/review-ui/assets/architecture-YZFGNWBL-CW8o5JQi.js +1 -0
- package/dist/mcp/review-ui/assets/architectureDiagram-Q4EWVU46-CH35GquJ.js +36 -0
- package/dist/mcp/review-ui/assets/array-BCJ35G43.js +1 -0
- package/dist/mcp/review-ui/assets/blockDiagram-DXYQGD6D-B1JZnKG_.js +132 -0
- package/dist/mcp/review-ui/assets/c4Diagram-AHTNJAMY-DCAtnxWd.js +10 -0
- package/dist/mcp/review-ui/assets/channel-BgHR4NPf.js +1 -0
- package/dist/mcp/review-ui/assets/chunk-2KRD3SAO-BkEfK915.js +1 -0
- package/dist/mcp/review-ui/assets/chunk-4BX2VUAB-Dn9kswJO.js +1 -0
- package/dist/mcp/review-ui/assets/chunk-4TB4RGXK-DbeI3ZO6.js +206 -0
- package/dist/mcp/review-ui/assets/chunk-55IACEB6-CLBoivXU.js +1 -0
- package/dist/mcp/review-ui/assets/chunk-5FUZZQ4R-DU7La6QA.js +62 -0
- package/dist/mcp/review-ui/assets/chunk-5PVQY5BW-Dy3eUu9a.js +2 -0
- package/dist/mcp/review-ui/assets/chunk-67CJDMHE-BKQ4iYAM.js +1 -0
- package/dist/mcp/review-ui/assets/chunk-7N4EOEYR-CUngSlME.js +1 -0
- package/dist/mcp/review-ui/assets/chunk-AA7GKIK3-BClDbXxt.js +1 -0
- package/dist/mcp/review-ui/assets/chunk-BSJP7CBP-BlpmbHL-.js +1 -0
- package/dist/mcp/review-ui/assets/chunk-CIAEETIT-THpBXcoN.js +1 -0
- package/dist/mcp/review-ui/assets/chunk-Dlc7tRH4.js +1 -0
- package/dist/mcp/review-ui/assets/chunk-EDXVE4YY-DNUlHz7M.js +1 -0
- package/dist/mcp/review-ui/assets/chunk-ENJZ2VHE-fwEKj0pQ.js +10 -0
- package/dist/mcp/review-ui/assets/chunk-FMBD7UC4-Cj8B2TLo.js +15 -0
- package/dist/mcp/review-ui/assets/chunk-FOC6F5B3-BtR_JW_A.js +1 -0
- package/dist/mcp/review-ui/assets/chunk-ICPOFSXX-WTr3HDYE.js +122 -0
- package/dist/mcp/review-ui/assets/chunk-K5T4RW27-vtP3ehR7.js +94 -0
- package/dist/mcp/review-ui/assets/chunk-KGLVRYIC-Di2tkB7O.js +1 -0
- package/dist/mcp/review-ui/assets/chunk-LIHQZDEY-DoHl9hYE.js +1 -0
- package/dist/mcp/review-ui/assets/chunk-ORNJ4GCN-Bff-Vc2X.js +1 -0
- package/dist/mcp/review-ui/assets/chunk-OYMX7WX6-Djey8TrX.js +231 -0
- package/dist/mcp/review-ui/assets/chunk-QZHKN3VN-C4w1Z4n9.js +1 -0
- package/dist/mcp/review-ui/assets/chunk-U2HBQHQK-D8HUikvJ.js +70 -0
- package/dist/mcp/review-ui/assets/chunk-X2U36JSP-CuZ-SN2r.js +1 -0
- package/dist/mcp/review-ui/assets/chunk-YZCP3GAM-D0-dHF3G.js +1 -0
- package/dist/mcp/review-ui/assets/chunk-ZZ45TVLE-C1aIZGDA.js +1 -0
- package/dist/mcp/review-ui/assets/classDiagram-6PBFFD2Q-DHrSK7zx.js +1 -0
- package/dist/mcp/review-ui/assets/classDiagram-v2-HSJHXN6E-ftN8ECVk.js +1 -0
- package/dist/mcp/review-ui/assets/clone-C3rjhi9V.js +1 -0
- package/dist/mcp/review-ui/assets/cose-bilkent-S5V4N54A-szpqu_3d.js +1 -0
- package/dist/mcp/review-ui/assets/cytoscape.esm-DZ22BVwz.js +321 -0
- package/dist/mcp/review-ui/assets/dagre-B4oIQbi5.js +1 -0
- package/dist/mcp/review-ui/assets/dagre-KV5264BT-zDsxU5-B.js +4 -0
- package/dist/mcp/review-ui/assets/defaultLocale-CIS5GEjP.js +1 -0
- package/dist/mcp/review-ui/assets/diagram-5BDNPKRD-UgfFjZ4o.js +10 -0
- package/dist/mcp/review-ui/assets/diagram-G4DWMVQ6-Wh9VCn50.js +24 -0
- package/dist/mcp/review-ui/assets/diagram-MMDJMWI5-xVD3G7_9.js +43 -0
- package/dist/mcp/review-ui/assets/diagram-TYMM5635-AUD291P2.js +24 -0
- package/dist/mcp/review-ui/assets/dist-B51l2n-9.js +1 -0
- package/dist/mcp/review-ui/assets/erDiagram-SMLLAGMA-B83D6NXm.js +85 -0
- package/dist/mcp/review-ui/assets/flatten-B80WBwOJ.js +1 -0
- package/dist/mcp/review-ui/assets/flowDiagram-DWJPFMVM-D3lXOeHD.js +162 -0
- package/dist/mcp/review-ui/assets/ganttDiagram-T4ZO3ILL-CFAN903o.js +292 -0
- package/dist/mcp/review-ui/assets/gitGraph-7Q5UKJZL-BfgkNWmC.js +1 -0
- package/dist/mcp/review-ui/assets/gitGraphDiagram-UUTBAWPF-DxqTOi4I.js +106 -0
- package/dist/mcp/review-ui/assets/graphlib-De-foo_H.js +1 -0
- package/dist/mcp/review-ui/assets/identity-CWMh0UL-.js +1 -0
- package/dist/mcp/review-ui/assets/index-Do0fBEfH.css +2 -0
- package/dist/mcp/review-ui/assets/index-uPMLqduV.js +123 -0
- package/dist/mcp/review-ui/assets/info-OMHHGYJF-DE18zZ5Z.js +1 -0
- package/dist/mcp/review-ui/assets/infoDiagram-42DDH7IO-Bnco1OGr.js +2 -0
- package/dist/mcp/review-ui/assets/init-BMBYmmUa.js +1 -0
- package/dist/mcp/review-ui/assets/ishikawaDiagram-UXIWVN3A-B89fugr9.js +70 -0
- package/dist/mcp/review-ui/assets/journeyDiagram-VCZTEJTY-CMx2w_is.js +139 -0
- package/dist/mcp/review-ui/assets/kanban-definition-6JOO6SKY-YvTOD1Vd.js +89 -0
- package/dist/mcp/review-ui/assets/katex-8mXVa4k3.js +257 -0
- package/dist/mcp/review-ui/assets/line-BCdBO-oK.js +1 -0
- package/dist/mcp/review-ui/assets/linear-d7UHSQqm.js +1 -0
- package/dist/mcp/review-ui/assets/mermaid-parser.core-DI1-3xL2.js +4 -0
- package/dist/mcp/review-ui/assets/mindmap-definition-QFDTVHPH-E_mV-_Fs.js +96 -0
- package/dist/mcp/review-ui/assets/ordinal-BDTCIhXR.js +1 -0
- package/dist/mcp/review-ui/assets/packet-4T2RLAQJ-BLPGKWDX.js +1 -0
- package/dist/mcp/review-ui/assets/path-CIRGLb_6.js +1 -0
- package/dist/mcp/review-ui/assets/pie-ZZUOXDRM-DVV6Yua9.js +1 -0
- package/dist/mcp/review-ui/assets/pieDiagram-DEJITSTG-Ct4JvywP.js +30 -0
- package/dist/mcp/review-ui/assets/quadrantDiagram-34T5L4WZ-BSFYvc1U.js +7 -0
- package/dist/mcp/review-ui/assets/radar-PYXPWWZC-BMkQDLKp.js +1 -0
- package/dist/mcp/review-ui/assets/reduce-C80XcylQ.js +1 -0
- package/dist/mcp/review-ui/assets/requirementDiagram-MS252O5E-Bp7uSYEK.js +84 -0
- package/dist/mcp/review-ui/assets/rough.esm-DtEqI08j.js +1 -0
- package/dist/mcp/review-ui/assets/sankeyDiagram-XADWPNL6-CV38ZpSv.js +10 -0
- package/dist/mcp/review-ui/assets/sequenceDiagram-FGHM5R23-BXN9jl1N.js +157 -0
- package/dist/mcp/review-ui/assets/src-Cxc1bu7b.js +1 -0
- package/dist/mcp/review-ui/assets/stateDiagram-FHFEXIEX-DZduDkIw.js +1 -0
- package/dist/mcp/review-ui/assets/stateDiagram-v2-QKLJ7IA2-xAWOcxSi.js +1 -0
- package/dist/mcp/review-ui/assets/timeline-definition-GMOUNBTQ-CLqXzNm8.js +120 -0
- package/dist/mcp/review-ui/assets/treeView-SZITEDCU-tPcANHUc.js +1 -0
- package/dist/mcp/review-ui/assets/treemap-W4RFUUIX-BGbXISSk.js +1 -0
- package/dist/mcp/review-ui/assets/vennDiagram-DHZGUBPP-gCnd0IYN.js +34 -0
- package/dist/mcp/review-ui/assets/wardley-RL74JXVD-CK3EfklM.js +1 -0
- package/dist/mcp/review-ui/assets/wardleyDiagram-NUSXRM2D-Dd7qMlPS.js +20 -0
- package/dist/mcp/review-ui/assets/xychartDiagram-5P7HB3ND-DXHXO8Zm.js +7 -0
- package/dist/mcp/review-ui/index.html +29 -0
- package/dist/mcp/studio/assets/arc-DH58vMfF.js +1 -0
- package/dist/mcp/studio/assets/architecture-YZFGNWBL-8xrwD39F.js +1 -0
- package/dist/mcp/studio/assets/architectureDiagram-Q4EWVU46-VmcLZTJf.js +36 -0
- package/dist/mcp/studio/assets/array-BCJ35G43.js +1 -0
- package/dist/mcp/studio/assets/blockDiagram-DXYQGD6D-D-1mlLYy.js +132 -0
- package/dist/mcp/studio/assets/c4Diagram-AHTNJAMY-DCAtnxWd.js +10 -0
- package/dist/mcp/studio/assets/channel-BgHR4NPf.js +1 -0
- package/dist/mcp/studio/assets/chunk-2KRD3SAO-CMDQx2WD.js +1 -0
- package/dist/mcp/studio/assets/chunk-4BX2VUAB-Dn9kswJO.js +1 -0
- package/dist/mcp/studio/assets/chunk-4TB4RGXK-aFEYGDkJ.js +206 -0
- package/dist/mcp/studio/assets/chunk-55IACEB6-CLBoivXU.js +1 -0
- package/dist/mcp/studio/assets/chunk-5FUZZQ4R-DU7La6QA.js +62 -0
- package/dist/mcp/studio/assets/chunk-5PVQY5BW-Dy3eUu9a.js +2 -0
- package/dist/mcp/studio/assets/chunk-67CJDMHE-DnkyJt7A.js +1 -0
- package/dist/mcp/studio/assets/chunk-7N4EOEYR-cnJ9dWSC.js +1 -0
- package/dist/mcp/studio/assets/chunk-AA7GKIK3-DjCZnyrT.js +1 -0
- package/dist/mcp/studio/assets/chunk-BSJP7CBP-BlpmbHL-.js +1 -0
- package/dist/mcp/studio/assets/chunk-CIAEETIT-CtvXSBsf.js +1 -0
- package/dist/mcp/studio/assets/chunk-Dlc7tRH4.js +1 -0
- package/dist/mcp/studio/assets/chunk-EDXVE4YY-DNUlHz7M.js +1 -0
- package/dist/mcp/studio/assets/chunk-ENJZ2VHE-fwEKj0pQ.js +10 -0
- package/dist/mcp/studio/assets/chunk-FMBD7UC4-Cj8B2TLo.js +15 -0
- package/dist/mcp/studio/assets/chunk-FOC6F5B3-Ca28VADd.js +1 -0
- package/dist/mcp/studio/assets/chunk-ICPOFSXX-WTr3HDYE.js +122 -0
- package/dist/mcp/studio/assets/chunk-K5T4RW27-pqiOLnBn.js +94 -0
- package/dist/mcp/studio/assets/chunk-KGLVRYIC-DZfGlR-G.js +1 -0
- package/dist/mcp/studio/assets/chunk-LIHQZDEY-6Ygb8Kwt.js +1 -0
- package/dist/mcp/studio/assets/chunk-ORNJ4GCN-DSlr7oSO.js +1 -0
- package/dist/mcp/studio/assets/chunk-OYMX7WX6-8z_2lCb3.js +231 -0
- package/dist/mcp/studio/assets/chunk-QZHKN3VN-C4w1Z4n9.js +1 -0
- package/dist/mcp/studio/assets/chunk-U2HBQHQK-D8HUikvJ.js +70 -0
- package/dist/mcp/studio/assets/chunk-X2U36JSP-CuZ-SN2r.js +1 -0
- package/dist/mcp/studio/assets/chunk-YZCP3GAM-D0-dHF3G.js +1 -0
- package/dist/mcp/studio/assets/chunk-ZZ45TVLE-C1aIZGDA.js +1 -0
- package/dist/mcp/studio/assets/classDiagram-6PBFFD2Q-IZXxqxqM.js +1 -0
- package/dist/mcp/studio/assets/classDiagram-v2-HSJHXN6E-BiJKwTXT.js +1 -0
- package/dist/mcp/studio/assets/clone-g4CuF1Hf.js +1 -0
- package/dist/mcp/studio/assets/cose-bilkent-S5V4N54A-szpqu_3d.js +1 -0
- package/dist/mcp/studio/assets/cytoscape.esm-DZ22BVwz.js +321 -0
- package/dist/mcp/studio/assets/dagre-Be9o0OzC.js +1 -0
- package/dist/mcp/studio/assets/dagre-KV5264BT-iB6PnHLr.js +4 -0
- package/dist/mcp/studio/assets/defaultLocale-CIS5GEjP.js +1 -0
- package/dist/mcp/studio/assets/diagram-5BDNPKRD-BLfWbiEB.js +10 -0
- package/dist/mcp/studio/assets/diagram-G4DWMVQ6-CgcnwgVO.js +24 -0
- package/dist/mcp/studio/assets/diagram-MMDJMWI5-CpkXvs2p.js +43 -0
- package/dist/mcp/studio/assets/diagram-TYMM5635-guxqmxjJ.js +24 -0
- package/dist/mcp/studio/assets/dist-B51l2n-9.js +1 -0
- package/dist/mcp/studio/assets/erDiagram-SMLLAGMA-Lwv-cC2Y.js +85 -0
- package/dist/mcp/studio/assets/flatten-Dv3Z_7XJ.js +1 -0
- package/dist/mcp/studio/assets/flowDiagram-DWJPFMVM-BKnaFfFR.js +162 -0
- package/dist/mcp/studio/assets/ganttDiagram-T4ZO3ILL-CFAN903o.js +292 -0
- package/dist/mcp/studio/assets/gitGraph-7Q5UKJZL-BSdEZNVc.js +1 -0
- package/dist/mcp/studio/assets/gitGraphDiagram-UUTBAWPF-D4z4QWni.js +106 -0
- package/dist/mcp/studio/assets/graphlib-C1IZi4Cg.js +1 -0
- package/dist/mcp/studio/assets/identity-CWMh0UL-.js +1 -0
- package/dist/mcp/studio/assets/index-CyBqHDpB.js +109 -0
- package/dist/mcp/studio/assets/index-Dn_Ujmba.css +2 -0
- package/dist/mcp/studio/assets/info-OMHHGYJF-CoTx64p3.js +1 -0
- package/dist/mcp/studio/assets/infoDiagram-42DDH7IO-QEji23sQ.js +2 -0
- package/dist/mcp/studio/assets/init-BMBYmmUa.js +1 -0
- package/dist/mcp/studio/assets/ishikawaDiagram-UXIWVN3A-lMurmqul.js +70 -0
- package/dist/mcp/studio/assets/journeyDiagram-VCZTEJTY-CMx2w_is.js +139 -0
- package/dist/mcp/studio/assets/kanban-definition-6JOO6SKY-DsOybLrS.js +89 -0
- package/dist/mcp/studio/assets/katex-8mXVa4k3.js +257 -0
- package/dist/mcp/studio/assets/line-BCdBO-oK.js +1 -0
- package/dist/mcp/studio/assets/linear-d7UHSQqm.js +1 -0
- package/dist/mcp/studio/assets/mermaid-parser.core-BZtTt4qJ.js +4 -0
- package/dist/mcp/studio/assets/mindmap-definition-QFDTVHPH-B2yfABR9.js +96 -0
- package/dist/mcp/studio/assets/ordinal-BDTCIhXR.js +1 -0
- package/dist/mcp/studio/assets/packet-4T2RLAQJ-Bi4IG7s8.js +1 -0
- package/dist/mcp/studio/assets/path-CIRGLb_6.js +1 -0
- package/dist/mcp/studio/assets/pie-ZZUOXDRM-DsJRjVcu.js +1 -0
- package/dist/mcp/studio/assets/pieDiagram-DEJITSTG-JeKGFs3r.js +30 -0
- package/dist/mcp/studio/assets/quadrantDiagram-34T5L4WZ-BSFYvc1U.js +7 -0
- package/dist/mcp/studio/assets/radar-PYXPWWZC-cUDYP2Ic.js +1 -0
- package/dist/mcp/studio/assets/reduce-x-wchVXY.js +1 -0
- package/dist/mcp/studio/assets/requirementDiagram-MS252O5E-CGeLKQyn.js +84 -0
- package/dist/mcp/studio/assets/rough.esm-DtEqI08j.js +1 -0
- package/dist/mcp/studio/assets/sankeyDiagram-XADWPNL6-CV38ZpSv.js +10 -0
- package/dist/mcp/studio/assets/sequenceDiagram-FGHM5R23-BbHPv3l1.js +157 -0
- package/dist/mcp/studio/assets/src-Cxc1bu7b.js +1 -0
- package/dist/mcp/studio/assets/stateDiagram-FHFEXIEX-BuBuguzn.js +1 -0
- package/dist/mcp/studio/assets/stateDiagram-v2-QKLJ7IA2-PQA-rl9o.js +1 -0
- package/dist/mcp/studio/assets/timeline-definition-GMOUNBTQ-D5xtyNE9.js +120 -0
- package/dist/mcp/studio/assets/treeView-SZITEDCU-DhRx0eaI.js +1 -0
- package/dist/mcp/studio/assets/treemap-W4RFUUIX-Btsj9DUH.js +1 -0
- package/dist/mcp/studio/assets/vennDiagram-DHZGUBPP-W4g15SMY.js +34 -0
- package/dist/mcp/studio/assets/wardley-RL74JXVD-BTpKsgl7.js +1 -0
- package/dist/mcp/studio/assets/wardleyDiagram-NUSXRM2D-f7wgXdwe.js +20 -0
- package/dist/mcp/studio/assets/xychartDiagram-5P7HB3ND-BWx9swPf.js +7 -0
- package/dist/mcp/studio/index.html +29 -0
- package/dist/review-mcp-server.d.ts +1 -0
- package/dist/review-mcp-server.js +178 -0
- package/dist/review-mcp-server.js.map +1 -0
- package/dist/review-server.d.ts +17 -0
- package/dist/review-server.js +223 -0
- package/dist/review-server.js.map +1 -0
- package/dist/review-ui/assets/arc-DH58vMfF.js +1 -0
- package/dist/review-ui/assets/architecture-YZFGNWBL-ChakYgFO.js +1 -0
- package/dist/review-ui/assets/architectureDiagram-Q4EWVU46-CcJOZCOb.js +36 -0
- package/dist/review-ui/assets/array-BCJ35G43.js +1 -0
- package/dist/review-ui/assets/blockDiagram-DXYQGD6D-H7mMv5Tv.js +132 -0
- package/dist/review-ui/assets/c4Diagram-AHTNJAMY-DCAtnxWd.js +10 -0
- package/dist/review-ui/assets/channel-BgHR4NPf.js +1 -0
- package/dist/review-ui/assets/chunk-2KRD3SAO-BfA3IkPQ.js +1 -0
- package/dist/review-ui/assets/chunk-4BX2VUAB-Dn9kswJO.js +1 -0
- package/dist/review-ui/assets/chunk-4TB4RGXK-CvTeZi33.js +206 -0
- package/dist/review-ui/assets/chunk-55IACEB6-CLBoivXU.js +1 -0
- package/dist/review-ui/assets/chunk-5FUZZQ4R-DU7La6QA.js +62 -0
- package/dist/review-ui/assets/chunk-5PVQY5BW-Dy3eUu9a.js +2 -0
- package/dist/review-ui/assets/chunk-67CJDMHE-BQ1xNHFx.js +1 -0
- package/dist/review-ui/assets/chunk-7N4EOEYR-B1ORNLQP.js +1 -0
- package/dist/review-ui/assets/chunk-AA7GKIK3-D3pS3mnx.js +1 -0
- package/dist/review-ui/assets/chunk-BSJP7CBP-BlpmbHL-.js +1 -0
- package/dist/review-ui/assets/chunk-CIAEETIT-BDZkAY47.js +1 -0
- package/dist/review-ui/assets/chunk-Dlc7tRH4.js +1 -0
- package/dist/review-ui/assets/chunk-EDXVE4YY-DNUlHz7M.js +1 -0
- package/dist/review-ui/assets/chunk-ENJZ2VHE-fwEKj0pQ.js +10 -0
- package/dist/review-ui/assets/chunk-FMBD7UC4-Cj8B2TLo.js +15 -0
- package/dist/review-ui/assets/chunk-FOC6F5B3-DGtCX5Ra.js +1 -0
- package/dist/review-ui/assets/chunk-ICPOFSXX-WTr3HDYE.js +122 -0
- package/dist/review-ui/assets/chunk-K5T4RW27-CWpdECLF.js +94 -0
- package/dist/review-ui/assets/chunk-KGLVRYIC-oI2XKaPz.js +1 -0
- package/dist/review-ui/assets/chunk-LIHQZDEY-Dzp3G35O.js +1 -0
- package/dist/review-ui/assets/chunk-ORNJ4GCN-DsHuVbPU.js +1 -0
- package/dist/review-ui/assets/chunk-OYMX7WX6-fgjoXAXJ.js +231 -0
- package/dist/review-ui/assets/chunk-QZHKN3VN-C4w1Z4n9.js +1 -0
- package/dist/review-ui/assets/chunk-U2HBQHQK-D8HUikvJ.js +70 -0
- package/dist/review-ui/assets/chunk-X2U36JSP-CuZ-SN2r.js +1 -0
- package/dist/review-ui/assets/chunk-YZCP3GAM-D0-dHF3G.js +1 -0
- package/dist/review-ui/assets/chunk-ZZ45TVLE-C1aIZGDA.js +1 -0
- package/dist/review-ui/assets/classDiagram-6PBFFD2Q-D_3LhkJc.js +1 -0
- package/dist/review-ui/assets/classDiagram-v2-HSJHXN6E-DQRUREh5.js +1 -0
- package/dist/review-ui/assets/clone-BZMtGzbS.js +1 -0
- package/dist/review-ui/assets/cose-bilkent-S5V4N54A-szpqu_3d.js +1 -0
- package/dist/review-ui/assets/cytoscape.esm-DZ22BVwz.js +321 -0
- package/dist/review-ui/assets/dagre-BfNtd34y.js +1 -0
- package/dist/review-ui/assets/dagre-KV5264BT-D6PbxORW.js +4 -0
- package/dist/review-ui/assets/defaultLocale-CIS5GEjP.js +1 -0
- package/dist/review-ui/assets/diagram-5BDNPKRD-BNAXBDig.js +10 -0
- package/dist/review-ui/assets/diagram-G4DWMVQ6-CIGS_5yQ.js +24 -0
- package/dist/review-ui/assets/diagram-MMDJMWI5-DJmcU2xZ.js +43 -0
- package/dist/review-ui/assets/diagram-TYMM5635-DW8XzrAz.js +24 -0
- package/dist/review-ui/assets/dist-B51l2n-9.js +1 -0
- package/dist/review-ui/assets/erDiagram-SMLLAGMA-BfUNH8zz.js +85 -0
- package/dist/review-ui/assets/flatten-BHh95bpO.js +1 -0
- package/dist/review-ui/assets/flowDiagram-DWJPFMVM-qgnlSvEC.js +162 -0
- package/dist/review-ui/assets/ganttDiagram-T4ZO3ILL-CFAN903o.js +292 -0
- package/dist/review-ui/assets/gitGraph-7Q5UKJZL-Dn47XunR.js +1 -0
- package/dist/review-ui/assets/gitGraphDiagram-UUTBAWPF-BcG6fDsE.js +106 -0
- package/dist/review-ui/assets/graphlib-Cie4kcbC.js +1 -0
- package/dist/review-ui/assets/identity-CWMh0UL-.js +1 -0
- package/dist/review-ui/assets/index-ByplNhhd.css +2 -0
- package/dist/review-ui/assets/index-S7nbpFp2.js +123 -0
- package/dist/review-ui/assets/info-OMHHGYJF-hAukP1xW.js +1 -0
- package/dist/review-ui/assets/infoDiagram-42DDH7IO-FblTAfC3.js +2 -0
- package/dist/review-ui/assets/init-BMBYmmUa.js +1 -0
- package/dist/review-ui/assets/ishikawaDiagram-UXIWVN3A-BA7dJd-J.js +70 -0
- package/dist/review-ui/assets/journeyDiagram-VCZTEJTY-CMx2w_is.js +139 -0
- package/dist/review-ui/assets/kanban-definition-6JOO6SKY-CFiOZCrT.js +89 -0
- package/dist/review-ui/assets/katex-8mXVa4k3.js +257 -0
- package/dist/review-ui/assets/line-BCdBO-oK.js +1 -0
- package/dist/review-ui/assets/linear-d7UHSQqm.js +1 -0
- package/dist/review-ui/assets/mermaid-parser.core-BHMXLuNx.js +4 -0
- package/dist/review-ui/assets/mindmap-definition-QFDTVHPH-CWO7vDqu.js +96 -0
- package/dist/review-ui/assets/ordinal-BDTCIhXR.js +1 -0
- package/dist/review-ui/assets/packet-4T2RLAQJ-Btz3ryW7.js +1 -0
- package/dist/review-ui/assets/path-CIRGLb_6.js +1 -0
- package/dist/review-ui/assets/pie-ZZUOXDRM-CreBtuDj.js +1 -0
- package/dist/review-ui/assets/pieDiagram-DEJITSTG-X2mFk5I3.js +30 -0
- package/dist/review-ui/assets/quadrantDiagram-34T5L4WZ-BSFYvc1U.js +7 -0
- package/dist/review-ui/assets/radar-PYXPWWZC-BcAPYMpV.js +1 -0
- package/dist/review-ui/assets/reduce-14YNCNxn.js +1 -0
- package/dist/review-ui/assets/requirementDiagram-MS252O5E-CDv1lxdq.js +84 -0
- package/dist/review-ui/assets/rough.esm-DtEqI08j.js +1 -0
- package/dist/review-ui/assets/sankeyDiagram-XADWPNL6-CV38ZpSv.js +10 -0
- package/dist/review-ui/assets/sequenceDiagram-FGHM5R23-DCuV_bhx.js +157 -0
- package/dist/review-ui/assets/src-Cxc1bu7b.js +1 -0
- package/dist/review-ui/assets/stateDiagram-FHFEXIEX-BfE_bGUQ.js +1 -0
- package/dist/review-ui/assets/stateDiagram-v2-QKLJ7IA2-u1yKXWoz.js +1 -0
- package/dist/review-ui/assets/timeline-definition-GMOUNBTQ-Ci0uFxaT.js +120 -0
- package/dist/review-ui/assets/treeView-SZITEDCU-BXg6-7zY.js +1 -0
- package/dist/review-ui/assets/treemap-W4RFUUIX-BToYbgol.js +1 -0
- package/dist/review-ui/assets/vennDiagram-DHZGUBPP-DvOuThac.js +34 -0
- package/dist/review-ui/assets/wardley-RL74JXVD-BAYzkcK-.js +1 -0
- package/dist/review-ui/assets/wardleyDiagram-NUSXRM2D-YxTu6WZw.js +20 -0
- package/dist/review-ui/assets/xychartDiagram-5P7HB3ND-V9j-Dl7t.js +7 -0
- package/dist/review-ui/index.html +29 -0
- package/dist/run-openflow-cli.d.ts +1 -0
- package/dist/run-openflow-cli.js +41 -0
- package/dist/run-openflow-cli.js.map +1 -0
- package/dist/shared/args.d.ts +3 -0
- package/dist/shared/args.js +27 -0
- package/dist/shared/args.js.map +1 -0
- package/dist/shared/browser.d.ts +4 -0
- package/dist/shared/browser.js +17 -0
- package/dist/shared/browser.js.map +1 -0
- package/dist/shared/fs.d.ts +15 -0
- package/dist/shared/fs.js +48 -0
- package/dist/shared/fs.js.map +1 -0
- package/dist/shared/i18n.d.ts +5 -0
- package/dist/shared/i18n.js +65 -0
- package/dist/shared/i18n.js.map +1 -0
- package/dist/shared/locales/en-US.json +88 -0
- package/dist/shared/locales/zh-CN.json +88 -0
- package/dist/shared/plugin-registry.d.ts +36 -0
- package/dist/shared/plugin-registry.js +51 -0
- package/dist/shared/plugin-registry.js.map +1 -0
- package/dist/shared/project-state.d.ts +17 -0
- package/dist/shared/project-state.js +75 -0
- package/dist/shared/project-state.js.map +1 -0
- package/dist/shared/terminal.d.ts +10 -0
- package/dist/shared/terminal.js +110 -0
- package/dist/shared/terminal.js.map +1 -0
- package/package.json +28 -0
- package/templates/archive/.gitkeep +1 -0
- package/templates/config.json +11 -0
- package/templates/current.json +3 -0
- package/templates/iterations/.gitkeep +1 -0
package/dist/core-artifacts/openflow/skills/workflow-governance/references/knowledge-schema.md
ADDED
|
@@ -0,0 +1,241 @@
|
|
|
1
|
+
# Knowledge File Schema
|
|
2
|
+
|
|
3
|
+
Complete schema definitions for `.openflow/knowledge/` files. Read this reference when creating, validating, or curating knowledge entries during `/openflow-finalize`.
|
|
4
|
+
|
|
5
|
+
## Knowledge Types and ID Prefixes
|
|
6
|
+
|
|
7
|
+
| Type | Prefix | Directory |
|
|
8
|
+
|------|--------|-----------|
|
|
9
|
+
| Decision | `D-NNN` | `knowledge/decisions/` |
|
|
10
|
+
| Guideline | `G-NNN` | `knowledge/guidelines/` |
|
|
11
|
+
| Pitfall | `P-NNN` | `knowledge/pitfalls/` |
|
|
12
|
+
| Process | `PR-NNN` | `knowledge/processes/` |
|
|
13
|
+
|
|
14
|
+
Use zero-padded sequential numbers: `001-`, `002-`, `003-`. Check existing files before creating to avoid collisions.
|
|
15
|
+
|
|
16
|
+
> Note: The `problems/` directory is a legacy alias for `pitfalls/`. New entries should use `pitfalls/`. Existing `problems/` entries remain valid and use the same `P-NNN` prefix and `type: pitfall` schema.
|
|
17
|
+
|
|
18
|
+
## Decision Files (`decisions/NNN-<slug>.md`)
|
|
19
|
+
|
|
20
|
+
```yaml
|
|
21
|
+
---
|
|
22
|
+
id: D-NNN
|
|
23
|
+
type: decision
|
|
24
|
+
date: YYYY-MM-DD
|
|
25
|
+
scope: [file, package, concept]
|
|
26
|
+
tags: [category, category]
|
|
27
|
+
evidence:
|
|
28
|
+
- iteration: <iteration-id>
|
|
29
|
+
outcome: success | partial | failure
|
|
30
|
+
summary: <one line>
|
|
31
|
+
status: active | superseded | deprecated
|
|
32
|
+
superseded_by: null | D-NNN
|
|
33
|
+
applies_to: [file, package, concept]
|
|
34
|
+
---
|
|
35
|
+
|
|
36
|
+
## Decision
|
|
37
|
+
|
|
38
|
+
<One sentence stating the decision.>
|
|
39
|
+
|
|
40
|
+
## Rationale
|
|
41
|
+
|
|
42
|
+
<Why this decision was made.>
|
|
43
|
+
|
|
44
|
+
## Pattern
|
|
45
|
+
|
|
46
|
+
<Reusable pattern this decision exemplifies.>
|
|
47
|
+
|
|
48
|
+
## Source
|
|
49
|
+
|
|
50
|
+
- Iteration: <iteration-id>
|
|
51
|
+
```
|
|
52
|
+
|
|
53
|
+
## Pitfall Files (`pitfalls/NNN-<slug>.md`)
|
|
54
|
+
|
|
55
|
+
Pitfalls cover both known traps to avoid (preventive) and problems that were encountered and resolved (reactive).
|
|
56
|
+
|
|
57
|
+
```yaml
|
|
58
|
+
---
|
|
59
|
+
id: P-NNN
|
|
60
|
+
type: pitfall
|
|
61
|
+
date: YYYY-MM-DD
|
|
62
|
+
scope: [file, package, concept]
|
|
63
|
+
tags: [category, category]
|
|
64
|
+
evidence:
|
|
65
|
+
- iteration: <iteration-id>
|
|
66
|
+
outcome: success | partial | failure
|
|
67
|
+
summary: <one line>
|
|
68
|
+
symptoms:
|
|
69
|
+
- <observable symptom string>
|
|
70
|
+
---
|
|
71
|
+
|
|
72
|
+
## Pitfall
|
|
73
|
+
|
|
74
|
+
<One sentence describing the known problem.>
|
|
75
|
+
|
|
76
|
+
## Symptoms
|
|
77
|
+
|
|
78
|
+
<Observable signs that this pitfall has occurred or is occurring.>
|
|
79
|
+
|
|
80
|
+
## Root Cause
|
|
81
|
+
|
|
82
|
+
<What typically causes this issue.>
|
|
83
|
+
|
|
84
|
+
## Prevention
|
|
85
|
+
|
|
86
|
+
<How to avoid this pitfall in the future.>
|
|
87
|
+
|
|
88
|
+
## Fix
|
|
89
|
+
|
|
90
|
+
<How to resolve it when encountered.>
|
|
91
|
+
|
|
92
|
+
## Source
|
|
93
|
+
|
|
94
|
+
- Iteration: <iteration-id>
|
|
95
|
+
```
|
|
96
|
+
|
|
97
|
+
## Guideline Files (`guidelines/NNN-<slug>.md`)
|
|
98
|
+
|
|
99
|
+
```yaml
|
|
100
|
+
---
|
|
101
|
+
id: G-NNN
|
|
102
|
+
type: guideline
|
|
103
|
+
date: YYYY-MM-DD
|
|
104
|
+
scope: [file, package, concept]
|
|
105
|
+
tags: [category, category]
|
|
106
|
+
evidence:
|
|
107
|
+
- iteration: <iteration-id>
|
|
108
|
+
outcome: success | partial | failure
|
|
109
|
+
summary: <one line>
|
|
110
|
+
---
|
|
111
|
+
|
|
112
|
+
## Guideline
|
|
113
|
+
|
|
114
|
+
<One sentence describing the recommended practice.>
|
|
115
|
+
|
|
116
|
+
## When to Apply
|
|
117
|
+
|
|
118
|
+
<Conditions under which this guideline is relevant.>
|
|
119
|
+
|
|
120
|
+
## Pattern
|
|
121
|
+
|
|
122
|
+
<The recommended approach.>
|
|
123
|
+
|
|
124
|
+
## Source
|
|
125
|
+
|
|
126
|
+
- Iteration: <iteration-id>
|
|
127
|
+
```
|
|
128
|
+
|
|
129
|
+
## Process Files (`processes/NNN-<slug>.md`)
|
|
130
|
+
|
|
131
|
+
```yaml
|
|
132
|
+
---
|
|
133
|
+
id: PR-NNN
|
|
134
|
+
type: process
|
|
135
|
+
date: YYYY-MM-DD
|
|
136
|
+
scope: [file, package, concept]
|
|
137
|
+
tags: [category, category]
|
|
138
|
+
evidence:
|
|
139
|
+
- iteration: <iteration-id>
|
|
140
|
+
outcome: success | partial | failure
|
|
141
|
+
summary: <one line>
|
|
142
|
+
---
|
|
143
|
+
|
|
144
|
+
## Process
|
|
145
|
+
|
|
146
|
+
<One sentence describing the process.>
|
|
147
|
+
|
|
148
|
+
## When to Follow
|
|
149
|
+
|
|
150
|
+
<Conditions under which this process should be applied.>
|
|
151
|
+
|
|
152
|
+
## Steps
|
|
153
|
+
|
|
154
|
+
<Numbered list of steps to follow.>
|
|
155
|
+
|
|
156
|
+
## Validation
|
|
157
|
+
|
|
158
|
+
<How to verify the process was followed correctly.>
|
|
159
|
+
|
|
160
|
+
## Source
|
|
161
|
+
|
|
162
|
+
- Iteration: <iteration-id>
|
|
163
|
+
```
|
|
164
|
+
|
|
165
|
+
## Lifecycle
|
|
166
|
+
|
|
167
|
+
1. **Creation**: Knowledge files are created during `/openflow-finalize` when durable knowledge meets extraction criteria.
|
|
168
|
+
2. **Retrieval**: Knowledge files are read during `/openflow-spec` and `/openflow-implement` by the `knowledge-retrieval` skill.
|
|
169
|
+
3. **Superseding**: When a decision is overturned, set `status: superseded` and `superseded_by` to the new decision ID. Do not delete old files.
|
|
170
|
+
4. **Removal**: Knowledge entries can be removed only by explicit user request. Move to `knowledge/archive/` rather than deleting.
|
|
171
|
+
|
|
172
|
+
## Knowledge Index Structure
|
|
173
|
+
|
|
174
|
+
Knowledge indexes provide fast lookup without scanning all files. They are maintained by the `knowledge-curator` during the archive phase.
|
|
175
|
+
|
|
176
|
+
### catalog.json
|
|
177
|
+
|
|
178
|
+
Top-level machine-readable index at `knowledge/catalog.json`:
|
|
179
|
+
|
|
180
|
+
```json
|
|
181
|
+
{
|
|
182
|
+
"version": 1,
|
|
183
|
+
"updated_at": "YYYY-MM-DD",
|
|
184
|
+
"entries": [
|
|
185
|
+
{
|
|
186
|
+
"id": "D-001",
|
|
187
|
+
"type": "decision",
|
|
188
|
+
"title": "Short title",
|
|
189
|
+
"tags": ["tag1"],
|
|
190
|
+
"scope": ["package-a"],
|
|
191
|
+
"summary": "One-line summary"
|
|
192
|
+
}
|
|
193
|
+
]
|
|
194
|
+
}
|
|
195
|
+
```
|
|
196
|
+
|
|
197
|
+
Fields:
|
|
198
|
+
- `version` (integer): Schema version. Currently `1`.
|
|
199
|
+
- `updated_at` (string): ISO date of last update (`YYYY-MM-DD`).
|
|
200
|
+
- `entries` (array): All knowledge entries across all types.
|
|
201
|
+
- `id` (string): Knowledge ID with type prefix (`D-NNN`, `G-NNN`, `P-NNN`, `PR-NNN`).
|
|
202
|
+
- `type` (string): One of `decision`, `guideline`, `pitfall`, `process`.
|
|
203
|
+
- `title` (string): Short human-readable title.
|
|
204
|
+
- `tags` (array of strings): Categories for retrieval.
|
|
205
|
+
- `scope` (array of strings): Affected files, packages, or concepts.
|
|
206
|
+
- `summary` (string): One-sentence summary for quick scanning.
|
|
207
|
+
|
|
208
|
+
### Per-type index.json
|
|
209
|
+
|
|
210
|
+
Each knowledge subdirectory has its own `index.json` for type-scoped lookups:
|
|
211
|
+
|
|
212
|
+
`knowledge/decisions/index.json`, `knowledge/guidelines/index.json`, `knowledge/pitfalls/index.json`, `knowledge/processes/index.json`
|
|
213
|
+
|
|
214
|
+
```json
|
|
215
|
+
{
|
|
216
|
+
"type": "decision",
|
|
217
|
+
"entries": [
|
|
218
|
+
{
|
|
219
|
+
"id": "D-001",
|
|
220
|
+
"title": "Short title",
|
|
221
|
+
"tags": ["tag1"],
|
|
222
|
+
"scope": ["package-a"],
|
|
223
|
+
"summary": "One-line summary"
|
|
224
|
+
}
|
|
225
|
+
]
|
|
226
|
+
}
|
|
227
|
+
```
|
|
228
|
+
|
|
229
|
+
### CATALOG.md
|
|
230
|
+
|
|
231
|
+
`knowledge/CATALOG.md` is a human-readable panoramic directory of all knowledge. It is generated or updated by the archive phase and provides a browsable overview for developers and reviewers.
|
|
232
|
+
|
|
233
|
+
### Index Update Timing
|
|
234
|
+
|
|
235
|
+
Indexes are maintained exclusively during the `/openflow-finalize` phase by the `knowledge-curator` agent:
|
|
236
|
+
|
|
237
|
+
1. After new knowledge files are created, regenerate `catalog.json` from all knowledge files.
|
|
238
|
+
2. Update the relevant per-type `index.json` files for any types that had new or modified entries.
|
|
239
|
+
3. Regenerate `CATALOG.md` from the updated catalog data.
|
|
240
|
+
|
|
241
|
+
Indexes must never be modified outside of the archive phase.
|
|
@@ -0,0 +1,148 @@
|
|
|
1
|
+
# State Files
|
|
2
|
+
|
|
3
|
+
This reference covers OpenFlow's machine-readable state files and human-readable status mirrors. AI agents must never write `flow.json` or `current.json` directly — use the openflow CLI commands defined in `cli-reference`.
|
|
4
|
+
|
|
5
|
+
## current.json
|
|
6
|
+
|
|
7
|
+
`current.json` points commands to the active iteration.
|
|
8
|
+
|
|
9
|
+
Location: `.openflow/current.json`
|
|
10
|
+
|
|
11
|
+
Shape:
|
|
12
|
+
|
|
13
|
+
```json
|
|
14
|
+
{
|
|
15
|
+
"activeIteration": "2026-05-09-openflow-spec-prompts"
|
|
16
|
+
}
|
|
17
|
+
```
|
|
18
|
+
|
|
19
|
+
Rules:
|
|
20
|
+
|
|
21
|
+
- `activeIteration` must be a folder name under `.openflow/iterations/`.
|
|
22
|
+
- Use `null` when no iteration is active.
|
|
23
|
+
- Do not store stage, level, or gate state here. Those belong in the iteration `flow.json`.
|
|
24
|
+
- Update this file via `openflow iteration create|switch|close`.
|
|
25
|
+
|
|
26
|
+
## flow.json
|
|
27
|
+
|
|
28
|
+
`flow.json` is the machine-readable state for one iteration.
|
|
29
|
+
|
|
30
|
+
Location: `.openflow/iterations/<iteration-id>/flow.json`
|
|
31
|
+
|
|
32
|
+
Spec-stage shape:
|
|
33
|
+
|
|
34
|
+
```json
|
|
35
|
+
{
|
|
36
|
+
"id": "2026-05-09-openflow-spec-prompts",
|
|
37
|
+
"title": "OpenFlow spec prompt design",
|
|
38
|
+
"level": "2",
|
|
39
|
+
"stage": "spec",
|
|
40
|
+
"revision": 1,
|
|
41
|
+
"gate": "review_required",
|
|
42
|
+
"createdAt": "2026-05-09T10:00:00+08:00",
|
|
43
|
+
"updatedAt": "2026-05-09T10:30:00+08:00",
|
|
44
|
+
"activeTask": null
|
|
45
|
+
}
|
|
46
|
+
```
|
|
47
|
+
|
|
48
|
+
Rules:
|
|
49
|
+
|
|
50
|
+
- Keep `id` equal to the iteration folder name.
|
|
51
|
+
- Use `stage: "spec"` throughout the spec phase.
|
|
52
|
+
- Use `stage: "implement"` while implementing approved tasks.
|
|
53
|
+
- Use `stage: "finalize"` while preparing `SUMMARY.md` and final validation.
|
|
54
|
+
- Use `stage: "archived"` only after final validation passes and the iteration is ready to move under `.openflow/archive/`.
|
|
55
|
+
- Use `level` values `"0"`, `"1"`, `"2"`, or `"3"`.
|
|
56
|
+
- Increment `revision` when `SPEC.md`, `TASKS.md`, or `PLAN.md` changes materially.
|
|
57
|
+
- Update `updatedAt` whenever durable artifacts change.
|
|
58
|
+
- Keep `activeTask` as `null` during spec.
|
|
59
|
+
- Set `activeTask` to the active `T-###` during implement.
|
|
60
|
+
- Set `activeTask` back to `null` before final archive.
|
|
61
|
+
- Store gate status here instead of parsing `STATE.md`.
|
|
62
|
+
|
|
63
|
+
**flow.json must be modified only via openflow CLI commands** — never written directly by AI agents:
|
|
64
|
+
|
|
65
|
+
- Gate changes: `openflow flow set-gate <gate>`
|
|
66
|
+
- Stage transitions: `openflow flow set-stage <stage>`
|
|
67
|
+
- Revision increments: `openflow flow inc-revision`
|
|
68
|
+
- Task activation: `openflow flow set-task <T-###>` or `openflow flow set-task -`
|
|
69
|
+
- Drift recovery: `openflow flow restart-spec --reason "<why>" --task <T-###>`
|
|
70
|
+
|
|
71
|
+
The initial `flow.json` is created by `openflow iteration create`.
|
|
72
|
+
|
|
73
|
+
## STATE.md
|
|
74
|
+
|
|
75
|
+
`STATE.md` is a readable status summary. It mirrors `flow.json` but does not replace it.
|
|
76
|
+
|
|
77
|
+
Location: `.openflow/iterations/<iteration-id>/STATE.md`
|
|
78
|
+
|
|
79
|
+
Template:
|
|
80
|
+
|
|
81
|
+
```markdown
|
|
82
|
+
# OpenFlow State
|
|
83
|
+
|
|
84
|
+
- Flow: 2026-05-09-openflow-spec-prompts
|
|
85
|
+
- Title: OpenFlow spec prompt design
|
|
86
|
+
- Stage: spec
|
|
87
|
+
- Level: 2
|
|
88
|
+
- Revision: 1
|
|
89
|
+
- Active task: none
|
|
90
|
+
- Gate status: review_required
|
|
91
|
+
|
|
92
|
+
## Open Questions
|
|
93
|
+
|
|
94
|
+
- None.
|
|
95
|
+
|
|
96
|
+
## Last Update
|
|
97
|
+
|
|
98
|
+
- 2026-05-09T10:30:00+08:00: Spec artifacts prepared for review.
|
|
99
|
+
|
|
100
|
+
## Next Action
|
|
101
|
+
|
|
102
|
+
- Run `openflow review --flow .openflow/iterations/2026-05-09-openflow-spec-prompts --mode spec`.
|
|
103
|
+
```
|
|
104
|
+
|
|
105
|
+
Rules:
|
|
106
|
+
|
|
107
|
+
- Keep it short.
|
|
108
|
+
- Update it after the other artifacts so it reflects reality.
|
|
109
|
+
- Do not hide scope, acceptance, or task detail here; link to `SPEC.md` and `TASKS.md` by implication through the same folder.
|
|
110
|
+
|
|
111
|
+
## Review Files
|
|
112
|
+
|
|
113
|
+
Review artifacts live under `.openflow/iterations/<iteration-id>/reviews/`.
|
|
114
|
+
|
|
115
|
+
Only `spec-review.json` is used in the workflow (no archive-review.json). The Review UI displays SPEC.md as the primary review target. PLAN.md, TASKS.md, and CONTEXT.md are shown as collapsible reference material.
|
|
116
|
+
|
|
117
|
+
### spec-review.json
|
|
118
|
+
|
|
119
|
+
Location: `reviews/spec-review.json`
|
|
120
|
+
|
|
121
|
+
Shape:
|
|
122
|
+
|
|
123
|
+
```json
|
|
124
|
+
{
|
|
125
|
+
"stage": "spec",
|
|
126
|
+
"revision": 1,
|
|
127
|
+
"status": "approved",
|
|
128
|
+
"reviewedAt": "2026-05-09T10:45:00+08:00",
|
|
129
|
+
"comments": [],
|
|
130
|
+
"requestedChanges": []
|
|
131
|
+
}
|
|
132
|
+
```
|
|
133
|
+
|
|
134
|
+
### spec-reviewer.md
|
|
135
|
+
|
|
136
|
+
Location: `reviews/spec-reviewer.md` — Markdown output from the `artifact-reviewer` (mode: spec) AI subagent.
|
|
137
|
+
|
|
138
|
+
### history.jsonl
|
|
139
|
+
|
|
140
|
+
Location: `reviews/history.jsonl` — append-only log of review iterations.
|
|
141
|
+
|
|
142
|
+
Rules:
|
|
143
|
+
|
|
144
|
+
- The Review UI writes `spec-review.json`.
|
|
145
|
+
- The main agent reads review files and updates `flow.json` and `STATE.md`.
|
|
146
|
+
- Do not store review state in root `.openflow/REVIEW.json` for new iterations.
|
|
147
|
+
- If review requests changes, revise the same iteration and run `openflow flow inc-revision`.
|
|
148
|
+
- Preserve reviewer findings unless they are superseded by a later review file or history entry.
|
|
@@ -0,0 +1,119 @@
|
|
|
1
|
+
# OpenFlow Workflow Rules
|
|
2
|
+
|
|
3
|
+
## Iteration Resolution
|
|
4
|
+
|
|
5
|
+
When a command starts:
|
|
6
|
+
|
|
7
|
+
1. Read `.openflow/current.json`.
|
|
8
|
+
2. If `activeIteration` points to an existing folder, read its `flow.json`.
|
|
9
|
+
3. Continue the active iteration only when the stage matches the command or the user explicitly asks to revise it.
|
|
10
|
+
4. Create a new iteration when there is no active iteration or the active iteration has moved beyond the requested command's stage.
|
|
11
|
+
|
|
12
|
+
Suggested iteration id:
|
|
13
|
+
|
|
14
|
+
```text
|
|
15
|
+
YYYY-MM-DD-short-slug
|
|
16
|
+
```
|
|
17
|
+
|
|
18
|
+
Use the user's requested change to form the slug. Keep it stable once created.
|
|
19
|
+
|
|
20
|
+
## Level Routing Decision Tree
|
|
21
|
+
|
|
22
|
+
Route before writing the spec. Revise the route if exploration reveals more risk.
|
|
23
|
+
|
|
24
|
+
Start at Level 1. Move up or down based on evidence.
|
|
25
|
+
|
|
26
|
+
### Level 0 (Skip) -- Use when ALL are true:
|
|
27
|
+
|
|
28
|
+
- Single file change
|
|
29
|
+
- Under 10 lines
|
|
30
|
+
- Zero risk (no API, schema, security, or migration impact)
|
|
31
|
+
- Acceptance is obvious
|
|
32
|
+
- No OpenFlow artifacts needed -- implement directly
|
|
33
|
+
|
|
34
|
+
### Level 1 (Simple) -- Default starting point:
|
|
35
|
+
|
|
36
|
+
Use when:
|
|
37
|
+
|
|
38
|
+
- 1-3 files affected
|
|
39
|
+
- No technical decisions required
|
|
40
|
+
- No public API, schema, migration, security, package boundary, or broad docs impact
|
|
41
|
+
- Validation is straightforward
|
|
42
|
+
|
|
43
|
+
Artifacts: SPEC only (Goal + Scope + Non-Goals + Acceptance).
|
|
44
|
+
Gate: No formal gate. Conversational confirm.
|
|
45
|
+
|
|
46
|
+
### Level 2 (Standard) -- Use when ANY are true:
|
|
47
|
+
|
|
48
|
+
- 3+ files or modules involved
|
|
49
|
+
- Technical decisions required
|
|
50
|
+
- User-visible behavior changes
|
|
51
|
+
- Tests, docs, CLI behavior, or Review UI behavior changes
|
|
52
|
+
- Acceptance needs explicit criteria
|
|
53
|
+
- Shared components affected
|
|
54
|
+
- Moderate unknowns but no architectural risk
|
|
55
|
+
|
|
56
|
+
Artifacts: SPEC + PLAN + TASKS.
|
|
57
|
+
Gate: Single review gate. SPEC.md is reviewed via Review UI (PLAN/TASKS/CONTEXT shown as reference). Approved review required before implement.
|
|
58
|
+
|
|
59
|
+
### Level 3 (Deep) -- Use when ANY are true:
|
|
60
|
+
|
|
61
|
+
- Architecture or package boundaries change
|
|
62
|
+
- Public API, storage, migration, auth/security, performance, or extension contracts change
|
|
63
|
+
- Multiple independent implementation tracks need coordination
|
|
64
|
+
- Mistakes would be hard to detect with simple tests
|
|
65
|
+
- The user is still making product decisions that materially affect the design
|
|
66
|
+
- Data model changes or cross-boundary coordination required
|
|
67
|
+
|
|
68
|
+
Artifacts: Full set (SPEC + PLAN + TASKS + reviews).
|
|
69
|
+
Gate: Single review gate. SPEC.md is reviewed by `artifact-reviewer` (mode: spec) AI then Human Review UI. PLAN+TASKS are reviewed by `artifact-reviewer` (mode: plan) AI only (no separate human gate).
|
|
70
|
+
|
|
71
|
+
## Gate Values
|
|
72
|
+
|
|
73
|
+
Recommended `flow.json.gate` values:
|
|
74
|
+
|
|
75
|
+
- `draft`: artifacts are being prepared.
|
|
76
|
+
- `review_required`: ready for human review.
|
|
77
|
+
- `changes_requested`: review found changes.
|
|
78
|
+
- `approved`: gate passed.
|
|
79
|
+
- `skipped`: gate intentionally skipped for a Level 0 or Level 1 flow.
|
|
80
|
+
- `blocked`: gate cannot proceed.
|
|
81
|
+
|
|
82
|
+
## Revision Rules
|
|
83
|
+
|
|
84
|
+
Increment `flow.json.revision` when any of these change materially:
|
|
85
|
+
|
|
86
|
+
- `SPEC.md`
|
|
87
|
+
- `TASKS.md`
|
|
88
|
+
- `PLAN.md`
|
|
89
|
+
|
|
90
|
+
Do not increment for formatting-only changes that do not alter scope, acceptance, or tasks.
|
|
91
|
+
|
|
92
|
+
When revision increments after an approval:
|
|
93
|
+
|
|
94
|
+
1. reset `flow.json.gate`
|
|
95
|
+
2. update `STATE.md`
|
|
96
|
+
3. append or preserve review history
|
|
97
|
+
4. require review again when level requires it
|
|
98
|
+
|
|
99
|
+
## Blocked State
|
|
100
|
+
|
|
101
|
+
Use `blocked` when progress would otherwise guess across a material decision or failing gate.
|
|
102
|
+
|
|
103
|
+
Record:
|
|
104
|
+
|
|
105
|
+
- what is blocked
|
|
106
|
+
- who or what can unblock it
|
|
107
|
+
- which artifact needs revision
|
|
108
|
+
- the last safe state
|
|
109
|
+
|
|
110
|
+
Do not continue execution work while the gate is blocked.
|
|
111
|
+
|
|
112
|
+
## Concurrent Iterations
|
|
113
|
+
|
|
114
|
+
Multiple iterations can exist simultaneously under `.openflow/iterations/`. The active iteration in `.openflow/current.json` determines which iteration commands operate on by default.
|
|
115
|
+
|
|
116
|
+
- Use `openflow iteration list` to see all iterations and their stages.
|
|
117
|
+
- Use `openflow iteration switch <id>` to change the active iteration.
|
|
118
|
+
- Starting a new spec (`/openflow-spec`) while another iteration is active creates a new iteration and switches to it.
|
|
119
|
+
- The previous iteration remains in its current state and can be resumed later.
|
|
File without changes
|
package/dist/index.d.ts
ADDED
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
export { runOpenFlowCli } from "./run-openflow-cli.js";
|
|
2
|
+
export { runReviewMcpServer } from "./mcp/review-mcp-server.js";
|
|
3
|
+
export { startReviewServer, type ReviewMode, type ReviewServerOptions, type RunningReviewServer } from "./mcp/review-server.js";
|
|
4
|
+
export * from "./core/index.js";
|
package/dist/index.js
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AACvD,OAAO,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AAChE,OAAO,EAAE,iBAAiB,EAAuE,MAAM,wBAAwB,CAAC;AAChI,cAAc,iBAAiB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare function runReviewMcpServer(): Promise<void>;
|