@diagrammo/dgmo 0.48.1 → 0.49.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.
Files changed (216) hide show
  1. package/.cursorrules +8 -3
  2. package/.github/copilot-instructions.md +8 -3
  3. package/.windsurfrules +8 -3
  4. package/SKILL.md +8 -3
  5. package/dist/advanced.d.ts +444 -1
  6. package/dist/advanced.js +208 -146
  7. package/dist/auto.css +74 -5
  8. package/dist/auto.js +213 -107
  9. package/dist/auto.mjs +6906 -831
  10. package/dist/block.css +74 -5
  11. package/dist/block.d.ts +13 -5
  12. package/dist/block.js +148 -62
  13. package/dist/{charts-d3-QOZHKTCT.js → charts-d3-EW3YQTEA.js} +9 -8
  14. package/dist/chunk-26RVGM44.js +331 -0
  15. package/dist/{chunk-44CM72SQ.js → chunk-2WMBWZY2.js} +3 -3
  16. package/dist/{chunk-L66GEFB6.js → chunk-35BBZDFE.js} +4 -4
  17. package/dist/{chunk-4GRI7MEB.js → chunk-3BIAFYD2.js} +6 -6
  18. package/dist/chunk-3NFJWFNP.js +1474 -0
  19. package/dist/{chunk-76OWZ3BA.js → chunk-4BD7EVPK.js} +2 -2
  20. package/dist/{chunk-MITI6NOL.js → chunk-4FIV4K4Z.js} +9 -9
  21. package/dist/chunk-4HVNZ7WF.js +574 -0
  22. package/dist/{chunk-X5LCYCL5.js → chunk-4NQ3IKUM.js} +2 -2
  23. package/dist/{chunk-PWIHZ6NJ.js → chunk-4UDKKGHH.js} +4 -4
  24. package/dist/{chunk-6NYWYNBI.js → chunk-4XK3FLFB.js} +3 -3
  25. package/dist/chunk-4YNP6O47.js +607 -0
  26. package/dist/{chunk-3MQQNXPD.js → chunk-5FGDJIJX.js} +3 -3
  27. package/dist/{chunk-WCT3NYCV.js → chunk-5LWQH6QV.js} +1 -1
  28. package/dist/chunk-5XCM7UUW.js +261 -0
  29. package/dist/{chunk-RYEGFMUO.js → chunk-5ZZLLBFK.js} +2 -2
  30. package/dist/{chunk-EB6FPQUP.js → chunk-65RTDUZH.js} +3 -3
  31. package/dist/chunk-6CLKNXVP.js +664 -0
  32. package/dist/{chunk-H6PI3KJT.js → chunk-6IUAK7RZ.js} +2 -2
  33. package/dist/{chunk-ZGR7ULFJ.js → chunk-6SA7FJE4.js} +31 -19
  34. package/dist/{chunk-LIOHW36Z.js → chunk-6VE3VLWM.js} +3 -3
  35. package/dist/{chunk-AN2MOO5T.js → chunk-7OVSJI2V.js} +3 -3
  36. package/dist/{chunk-YAA6IID3.js → chunk-7UEMZREK.js} +2 -2
  37. package/dist/{chunk-FCIIHT24.js → chunk-7VLUGEMJ.js} +7 -7
  38. package/dist/{chunk-VOKGH627.js → chunk-AHGF2YYA.js} +13 -3
  39. package/dist/{chunk-3R5POCTZ.js → chunk-AJ2PEY7J.js} +6 -6
  40. package/dist/{chunk-PBHE5UG6.js → chunk-ALRHIR6I.js} +46 -12
  41. package/dist/{chunk-7JEGTRLD.js → chunk-B57V3DWN.js} +3 -3
  42. package/dist/{chunk-ILKORZ3H.js → chunk-BCT5G2VN.js} +7 -7
  43. package/dist/{chunk-TYS6CSS5.js → chunk-BCYVE3N5.js} +2 -2
  44. package/dist/{chunk-ZBWMSD5N.js → chunk-BGJV5ATD.js} +4 -4
  45. package/dist/{chunk-G2H74XJZ.js → chunk-BPIJLRYE.js} +8 -8
  46. package/dist/{chunk-YGJTDXVR.js → chunk-C4GQDB5L.js} +2 -2
  47. package/dist/{chunk-Y2ZE3MSG.js → chunk-C63UWAKM.js} +2 -2
  48. package/dist/{chunk-QEBUY5NY.js → chunk-CEHZOPGM.js} +4 -4
  49. package/dist/{chunk-725LDASD.js → chunk-CLD2OKV7.js} +2 -2
  50. package/dist/{chunk-5QXL4NYS.js → chunk-CLR4A2N2.js} +10 -5
  51. package/dist/{chunk-WBRZJOEC.js → chunk-CMCR5WBW.js} +3 -3
  52. package/dist/{chunk-SML67VPV.js → chunk-D5AVQCDN.js} +3 -3
  53. package/dist/{chunk-2LACINWN.js → chunk-DDTJ5N7Q.js} +9 -9
  54. package/dist/{chunk-FITOLXSX.js → chunk-EOFPYPAU.js} +26 -2
  55. package/dist/{chunk-B65G5DNL.js → chunk-EYN7VFKL.js} +3 -3
  56. package/dist/{chunk-4OHACBGX.js → chunk-F2L5GCQ4.js} +2 -2
  57. package/dist/{chunk-RVMRZAPB.js → chunk-F743CM2N.js} +3 -3
  58. package/dist/{chunk-3JLKYGBQ.js → chunk-F7BFXWNQ.js} +2 -2
  59. package/dist/{chunk-WCSOJFU3.js → chunk-FMKTYMP4.js} +3 -3
  60. package/dist/{chunk-RTLBSQ3G.js → chunk-FUCAB3KQ.js} +3 -3
  61. package/dist/{chunk-SGZYXELT.js → chunk-GB3YZTAM.js} +9 -6
  62. package/dist/{chunk-QLCCJEJI.js → chunk-HBVD67XG.js} +2 -2
  63. package/dist/{chunk-PBAHEPLQ.js → chunk-HGN652MU.js} +7 -6
  64. package/dist/{chunk-3SMGIJDD.js → chunk-HHXOONLX.js} +13 -1
  65. package/dist/{chunk-QOOUC2J5.js → chunk-HQCHYB5F.js} +2 -2
  66. package/dist/chunk-IAEC4KLA.js +492 -0
  67. package/dist/{chunk-J5FIXQRT.js → chunk-IBC35BTK.js} +4 -4
  68. package/dist/{chunk-NURGB5Z4.js → chunk-IFK3GIUW.js} +2 -2
  69. package/dist/{chunk-FANX6UJR.js → chunk-IHLSHCPZ.js} +11 -11
  70. package/dist/{chunk-GMR5MFHJ.js → chunk-IUK7AGD4.js} +2 -2
  71. package/dist/chunk-IVKC4GID.js +32 -0
  72. package/dist/{chunk-OJR3MQYV.js → chunk-JFPY3UJ7.js} +296 -57
  73. package/dist/{chunk-5MLYVTYM.js → chunk-K6HNAY5V.js} +2 -2
  74. package/dist/{chunk-P235SVAH.js → chunk-KQAEKMIX.js} +2 -2
  75. package/dist/{chunk-7DTWEFUE.js → chunk-KUBBJ2CD.js} +10 -10
  76. package/dist/{chunk-BUVJFRPY.js → chunk-KV6Y2HE6.js} +4 -4
  77. package/dist/{chunk-OURHMODR.js → chunk-LG4TWW4U.js} +13 -13
  78. package/dist/{chunk-XAKEUMEJ.js → chunk-LVHPTBO3.js} +3 -3
  79. package/dist/{chunk-ERLBPDGU.js → chunk-MJCG5K2O.js} +2 -2
  80. package/dist/{chunk-THXCFRTU.js → chunk-N4J5KGWG.js} +12 -12
  81. package/dist/{chunk-MZSBFAPJ.js → chunk-NVT6C2VE.js} +9 -9
  82. package/dist/{chunk-AELOBFW5.js → chunk-O5MQPK7E.js} +3 -3
  83. package/dist/{chunk-JM4LEPY3.js → chunk-O7NUCTFU.js} +2 -2
  84. package/dist/{chunk-JED6ZDEE.js → chunk-O7WP4ZD4.js} +2 -2
  85. package/dist/{chunk-ZO27FGJS.js → chunk-PH5X4GIP.js} +2 -2
  86. package/dist/{chunk-B7JUCQUA.js → chunk-PU3AUQPA.js} +4 -4
  87. package/dist/{chunk-A4VFQH5G.js → chunk-PZFVK3IH.js} +52 -7
  88. package/dist/chunk-QQJUTGQH.js +135 -0
  89. package/dist/{chunk-HSH73DP6.js → chunk-RI4NIMFP.js} +99 -39
  90. package/dist/{chunk-33LCUH4H.js → chunk-RTERS6S5.js} +3 -3
  91. package/dist/{chunk-T3UBLACL.js → chunk-SCQ5VPUF.js} +19 -5
  92. package/dist/chunk-SGHSY3LU.js +377 -0
  93. package/dist/{chunk-SRTU6HMQ.js → chunk-SJEGO2QL.js} +8 -8
  94. package/dist/chunk-SQDFK5ZQ.js +273 -0
  95. package/dist/{chunk-UC7TFHUM.js → chunk-SVDWQGX2.js} +296 -121
  96. package/dist/{chunk-Z5CGSFJB.js → chunk-T7IKPCMI.js} +4 -4
  97. package/dist/chunk-TC3YWBFO.js +233 -0
  98. package/dist/{chunk-EVCVDTXE.js → chunk-TLKMTQYL.js} +3 -3
  99. package/dist/{chunk-IJZFN3HM.js → chunk-TWQUYVP3.js} +4 -4
  100. package/dist/{chunk-IZMRON6C.js → chunk-UVCXZEGU.js} +2 -2
  101. package/dist/{chunk-CKNVO24D.js → chunk-UWDO3O52.js} +2 -2
  102. package/dist/{chunk-RJE5JTVK.js → chunk-VC3TR4NL.js} +7 -7
  103. package/dist/{chunk-CI2G3OEB.js → chunk-X2CH42BN.js} +9 -9
  104. package/dist/{chunk-6HO5ZTXK.js → chunk-XCC2RENT.js} +2 -2
  105. package/dist/chunk-XHVV4NVW.js +51 -0
  106. package/dist/{chunk-ZJEL4H2R.js → chunk-XJ7J6WOO.js} +9 -9
  107. package/dist/{chunk-ULOEATBZ.js → chunk-XKTN7CZF.js} +106 -29
  108. package/dist/{chunk-IPWPWM6R.js → chunk-YM2BSPYW.js} +111 -10
  109. package/dist/{chunk-BUPDIHML.js → chunk-YRVLP7UU.js} +3 -3
  110. package/dist/{chunk-T2OE3YQB.js → chunk-YTN572Q2.js} +3 -3
  111. package/dist/{chunk-WVAJFAIA.js → chunk-YYX3SU6H.js} +3 -3
  112. package/dist/{chunk-MO5YHHMQ.js → chunk-ZDUQGL3N.js} +2 -2
  113. package/dist/{chunk-Y3J7VR52.js → chunk-ZNQX6QWH.js} +30 -2
  114. package/dist/{chunk-UWN33VNX.js → chunk-ZREZOIGS.js} +8 -8
  115. package/dist/{chunk-6SM5NJQH.js → chunk-ZTLWVRNS.js} +4 -4
  116. package/dist/{chunk-RUNNI6VE.js → chunk-ZXL6MB4R.js} +3 -3
  117. package/dist/cli.cjs +159 -122
  118. package/dist/dgmo-router-ODKPEJ3P.js +79 -0
  119. package/dist/dimensions-WSIJXT5Q.js +22 -0
  120. package/dist/editor.js +4 -1
  121. package/dist/element.js +214 -108
  122. package/dist/element.mjs +6906 -831
  123. package/dist/{flowchart-parser-ZNSKIBVR.js → flowchart-parser-IVZN7CQN.js} +4 -4
  124. package/dist/{flowchart-renderer-SNDSII4D.js → flowchart-renderer-GMI2U3DD.js} +9 -9
  125. package/dist/highlight.js +7 -1
  126. package/dist/index.d.ts +5 -1
  127. package/dist/index.js +193 -232
  128. package/dist/{layout-HRBZPFCN.js → layout-34CLNICW.js} +5 -5
  129. package/dist/{layout-5RA6QWR6.js → layout-4Z5JM7PT.js} +6 -6
  130. package/dist/layout-6RDJHS6E.js +9 -0
  131. package/dist/{layout-7QXCNOVS.js → layout-7H4H46CS.js} +3 -3
  132. package/dist/{layout-46N4JJYK.js → layout-7SKMFYHL.js} +5 -5
  133. package/dist/{layout-HWDSRX5E.js → layout-D42XE4RE.js} +6 -6
  134. package/dist/{layout-EE6GE46Y.js → layout-DC4TVXER.js} +5 -5
  135. package/dist/layout-FGQWRYYW.js +14 -0
  136. package/dist/layout-GZ2CWONU.js +14 -0
  137. package/dist/layout-HQMBPJVS.js +10 -0
  138. package/dist/{layout-UM5F4DJB.js → layout-K2ZN3Q42.js} +5 -5
  139. package/dist/{layout-S2QBYSK2.js → layout-NXG63LWH.js} +3 -3
  140. package/dist/{layout-N76NR4ZO.js → layout-PUQCB6AN.js} +7 -7
  141. package/dist/{layout-HYZPWAK5.js → layout-QNUQLEHU.js} +3 -3
  142. package/dist/layout-S3EK4IYO.js +14 -0
  143. package/dist/{layout-search-OYV77HHS.js → layout-search-QS44PI5R.js} +6 -6
  144. package/dist/{parser-KNSQSKQO.js → parser-4BKIFG2C.js} +5 -5
  145. package/dist/{parser-OV7NOBW6.js → parser-4ROBKVUR.js} +4 -4
  146. package/dist/parser-667RGSUW.js +13 -0
  147. package/dist/{parser-IXSZZQHY.js → parser-BL7Z72EY.js} +4 -4
  148. package/dist/{parser-AQETEVRW.js → parser-CLMFZWCC.js} +4 -4
  149. package/dist/{parser-XKRP7QKP.js → parser-D6ONJQFR.js} +3 -3
  150. package/dist/{parser-2EWECDSA.js → parser-DERPY5KC.js} +4 -4
  151. package/dist/{parser-4OGOBJJ4.js → parser-GFSOPDB7.js} +4 -4
  152. package/dist/{parser-2MFP2H2E.js → parser-HVJFTOXL.js} +3 -3
  153. package/dist/{parser-VQP2UJ6W.js → parser-IKZFTLOJ.js} +3 -3
  154. package/dist/parser-J3P2D6IP.js +13 -0
  155. package/dist/{parser-PQ3POX45.js → parser-JD7OQ2E6.js} +4 -4
  156. package/dist/{parser-O5J4VBII.js → parser-K647FRI4.js} +3 -3
  157. package/dist/{parser-NGU3ETO6.js → parser-KPMN5KKE.js} +4 -4
  158. package/dist/{parser-4FL2CMDG.js → parser-MBJSBTL5.js} +4 -4
  159. package/dist/{parser-TFZFBVWN.js → parser-MCJWF5G3.js} +3 -3
  160. package/dist/{parser-NRAI6O25.js → parser-MRBPXXIV.js} +4 -4
  161. package/dist/{parser-6BTRLKRZ.js → parser-OBQG655V.js} +4 -4
  162. package/dist/{parser-3STE62GB.js → parser-QJYS7KQQ.js} +4 -4
  163. package/dist/{parser-XDVELHRK.js → parser-SMBJO3XN.js} +4 -4
  164. package/dist/{parser-TRTHDFPP.js → parser-TITK4YW6.js} +5 -5
  165. package/dist/{parser-I6KXEYFK.js → parser-TNYX5S7E.js} +4 -4
  166. package/dist/{parser-Y6WTBU76.js → parser-UBGPTIZD.js} +3 -3
  167. package/dist/parser-UGA23PYK.js +14 -0
  168. package/dist/{parser-N5O4IHUN.js → parser-WISPH7LW.js} +4 -4
  169. package/dist/{parser-CFZD5IBL.js → parser-XWUDFJ7P.js} +4 -4
  170. package/dist/parser-ZKF5K2H2.js +15 -0
  171. package/dist/{parser-ZSDPZYQP.js → parser-ZYC3XGNS.js} +4 -4
  172. package/dist/{renderer-AWWAF6XD.js → renderer-4IUPINAE.js} +10 -10
  173. package/dist/renderer-6L3NBEY5.js +24 -0
  174. package/dist/{renderer-ZRNG54CW.js → renderer-6T3KK4S3.js} +11 -11
  175. package/dist/{renderer-KQB7UGDS.js → renderer-7RH2SI3B.js} +3 -3
  176. package/dist/{renderer-6EEZHMH4.js → renderer-A5VFZQQK.js} +9 -9
  177. package/dist/{renderer-5MYBMBYO.js → renderer-BB5PREMY.js} +5 -5
  178. package/dist/{renderer-BYCNMBF7.js → renderer-CGW7QPNA.js} +10 -10
  179. package/dist/{renderer-QIWVHWZO.js → renderer-DAXMXIKD.js} +3 -3
  180. package/dist/{renderer-7MVLWWQD.js → renderer-DKESNMU5.js} +9 -9
  181. package/dist/{renderer-ZTR3DER3.js → renderer-HVCU2C3Z.js} +3 -3
  182. package/dist/{renderer-VACVQYML.js → renderer-LWGJFT3D.js} +8 -8
  183. package/dist/{renderer-PGX2TKVS.js → renderer-MFJ7HY2H.js} +8 -8
  184. package/dist/{renderer-B2OMQIQG.js → renderer-MJDDU27W.js} +15 -15
  185. package/dist/{renderer-4JHRUBE6.js → renderer-QL5KO6SK.js} +10 -10
  186. package/dist/{renderer-W4M6QLIJ.js → renderer-QNHUXCRL.js} +14 -14
  187. package/dist/{renderer-ZGNTUWC4.js → renderer-ROV756WT.js} +8 -8
  188. package/dist/{renderer-YY2OSF6E.js → renderer-SQ3JUAI7.js} +9 -9
  189. package/dist/renderer-THD6V5TL.js +22 -0
  190. package/dist/{renderer-5NDVNDAZ.js → renderer-TPIBXNOS.js} +9 -9
  191. package/dist/{renderer-RPOA5YPZ.js → renderer-TYXRHMRI.js} +13 -13
  192. package/dist/{renderer-N43WR5GV.js → renderer-UZF3JROD.js} +11 -11
  193. package/dist/{renderer-6W5462RB.js → renderer-V3JEMWMM.js} +9 -9
  194. package/dist/{renderer-JGBKUCZD.js → renderer-VFUVRNLK.js} +4 -4
  195. package/dist/{renderer-Z7I3W2PP.js → renderer-VICQ4WNY.js} +8 -8
  196. package/dist/renderer-W5RMOURB.js +21 -0
  197. package/dist/renderer-XEKIRPI6.js +23 -0
  198. package/dist/{renderer-CLJHQPBJ.js → renderer-YHXPN3GF.js} +12 -12
  199. package/dist/renderer-radial-MHO2VDXN.js +21 -0
  200. package/dist/{resolver-NOAA7ID7.js → resolver-FHBCO3PL.js} +3 -3
  201. package/dist/{state-parser-Z2V23ATR.js → state-parser-RX3GXOIB.js} +4 -4
  202. package/dist/{state-renderer-B4DQBM6M.js → state-renderer-AJUKGNWU.js} +9 -9
  203. package/docs/ai-integration.md +8 -3
  204. package/docs/language-reference.md +179 -5
  205. package/gallery/fixtures/family.dgmo +23 -0
  206. package/gallery/fixtures/sketch.dgmo +22 -0
  207. package/package.json +1 -1
  208. package/dist/chunk-ODZVHU3R.js +0 -153
  209. package/dist/dgmo-router-X35VLZLM.js +0 -73
  210. package/dist/dimensions-J3FHIMJ6.js +0 -22
  211. package/dist/layout-5T6RH5M6.js +0 -14
  212. package/dist/layout-G23F7LDH.js +0 -9
  213. package/dist/layout-OB3RI63S.js +0 -14
  214. package/dist/parser-JAL2HD4I.js +0 -13
  215. package/dist/renderer-SMIBCRVB.js +0 -24
  216. package/dist/renderer-radial-C32GPJQ7.js +0 -21
package/.cursorrules CHANGED
@@ -6,7 +6,7 @@ When the user asks for a diagram, visualization, or chart, generate a `.dgmo` fi
6
6
  <!-- DGMO-AI-CORE:START -->
7
7
  ## DGMO AI Core
8
8
 
9
- _Generated from `language-reference.md` — the anti-patterns and 43-type index below are identical across every DGMO AI surface._
9
+ _Generated from `language-reference.md` — the anti-patterns and 46-type index below are identical across every DGMO AI surface._
10
10
 
11
11
  ### Disambiguation — where DGMO diverges from LLM priors
12
12
 
@@ -60,7 +60,7 @@ Valid markup is the floor, not the goal. A good diagram reads at a glance. Apply
60
60
  - **Let the defaults show.** Don't add `no-*` opt-outs unless the user asked to hide or disable something — they strip helpful labels, values, and color.
61
61
  - **Pick a fitting direction.** Top-to-bottom for hierarchies and processes; left-to-right for pipelines and flows (where the type supports a direction).
62
62
 
63
- ### Chart-type index (43) — pick the type, then fetch its section
63
+ ### Chart-type index (45) — pick the type, then fetch its section
64
64
 
65
65
  | id | when to use |
66
66
  | -- | ----------- |
@@ -75,6 +75,7 @@ Valid markup is the floor, not the goal. A good diagram reads at a glance. Apply
75
75
  | `sitemap` | site / app navigation structure |
76
76
  | `mindmap` | radial hierarchy of ideas from a central topic |
77
77
  | `org` | reporting hierarchy |
78
+ | `family` | family tree / genealogy: unions (couples), children, remarriage, adoption, GEDCOM-style metadata |
78
79
  | `kanban` | task-board columns |
79
80
  | `gantt` | project scheduling with task dependencies and milestones |
80
81
  | `pert` | project network with three-point estimates and critical path |
@@ -82,6 +83,7 @@ Valid markup is the floor, not the goal. A good diagram reads at a glance. Apply
82
83
  | `version-control` | git / version-control branch-and-merge graph: commits, branches, merges, rebase, HEAD and remote-tracking (gitGraph-style) |
83
84
  | `timeline` | events, eras, and date ranges |
84
85
  | `event-line` | annotated narrative timeline — events on a line with descriptions, optionally not to scale (NOT the date-scaled `timeline`) |
86
+ | `body` | human anatomy figure annotated by muscle name — for medical, exercise, and educational diagrams |
85
87
  | `journey-map` | UX flow with emotion scores, phases, annotations |
86
88
  | `cycle` | cyclical process (PDCA, OODA, DevOps loops) |
87
89
  | `raci` | tasks × roles responsibility matrix; variant (RACI / RASCI / DACI) is inferred from the markers used |
@@ -91,6 +93,7 @@ Valid markup is the floor, not the goal. A good diagram reads at a glance. Apply
91
93
  | `ring` | concentric rings of nested categories |
92
94
  | `treemap` | nested rectangles sized by value (budgets, disk usage, portfolios) |
93
95
  | `block` | author-controlled grid of nested, collapsible blocks (system / architecture layouts) |
96
+ | `sketch` | GUI-first free-placement canvas: uniform shapes on a snap grid, arrows, tags (markup is app-generated) |
94
97
  | `map` | geographic concept map: regions, points, routes |
95
98
  | `wireframe` | low-fidelity UI layout with panels and controls |
96
99
  | `bar` | categorical comparisons (multi-series via `stack` / `group`) |
@@ -114,7 +117,7 @@ Valid markup is the floor, not the goal. A good diagram reads at a glance. Apply
114
117
 
115
118
  ### Common examples (curated, parse-clean)
116
119
 
117
- _The most common types, inline so you can generate them without a fetch. For the other 35, get the per-type section (see below)._
120
+ _The most common types, inline so you can generate them without a fetch. For the other 38, get the per-type section (see below)._
118
121
 
119
122
  #### journey-map
120
123
 
@@ -226,6 +229,8 @@ ports
226
229
  ```dgmo
227
230
  class Ship Class Hierarchy
228
231
 
232
+ solid-fill
233
+
229
234
  interface Vessel
230
235
  + sail(): void
231
236
  + anchor(): void
@@ -6,7 +6,7 @@ When the user asks for a diagram, visualization, or chart, generate a `.dgmo` fi
6
6
  <!-- DGMO-AI-CORE:START -->
7
7
  ## DGMO AI Core
8
8
 
9
- _Generated from `language-reference.md` — the anti-patterns and 43-type index below are identical across every DGMO AI surface._
9
+ _Generated from `language-reference.md` — the anti-patterns and 46-type index below are identical across every DGMO AI surface._
10
10
 
11
11
  ### Disambiguation — where DGMO diverges from LLM priors
12
12
 
@@ -60,7 +60,7 @@ Valid markup is the floor, not the goal. A good diagram reads at a glance. Apply
60
60
  - **Let the defaults show.** Don't add `no-*` opt-outs unless the user asked to hide or disable something — they strip helpful labels, values, and color.
61
61
  - **Pick a fitting direction.** Top-to-bottom for hierarchies and processes; left-to-right for pipelines and flows (where the type supports a direction).
62
62
 
63
- ### Chart-type index (43) — pick the type, then fetch its section
63
+ ### Chart-type index (45) — pick the type, then fetch its section
64
64
 
65
65
  | id | when to use |
66
66
  | -- | ----------- |
@@ -75,6 +75,7 @@ Valid markup is the floor, not the goal. A good diagram reads at a glance. Apply
75
75
  | `sitemap` | site / app navigation structure |
76
76
  | `mindmap` | radial hierarchy of ideas from a central topic |
77
77
  | `org` | reporting hierarchy |
78
+ | `family` | family tree / genealogy: unions (couples), children, remarriage, adoption, GEDCOM-style metadata |
78
79
  | `kanban` | task-board columns |
79
80
  | `gantt` | project scheduling with task dependencies and milestones |
80
81
  | `pert` | project network with three-point estimates and critical path |
@@ -82,6 +83,7 @@ Valid markup is the floor, not the goal. A good diagram reads at a glance. Apply
82
83
  | `version-control` | git / version-control branch-and-merge graph: commits, branches, merges, rebase, HEAD and remote-tracking (gitGraph-style) |
83
84
  | `timeline` | events, eras, and date ranges |
84
85
  | `event-line` | annotated narrative timeline — events on a line with descriptions, optionally not to scale (NOT the date-scaled `timeline`) |
86
+ | `body` | human anatomy figure annotated by muscle name — for medical, exercise, and educational diagrams |
85
87
  | `journey-map` | UX flow with emotion scores, phases, annotations |
86
88
  | `cycle` | cyclical process (PDCA, OODA, DevOps loops) |
87
89
  | `raci` | tasks × roles responsibility matrix; variant (RACI / RASCI / DACI) is inferred from the markers used |
@@ -91,6 +93,7 @@ Valid markup is the floor, not the goal. A good diagram reads at a glance. Apply
91
93
  | `ring` | concentric rings of nested categories |
92
94
  | `treemap` | nested rectangles sized by value (budgets, disk usage, portfolios) |
93
95
  | `block` | author-controlled grid of nested, collapsible blocks (system / architecture layouts) |
96
+ | `sketch` | GUI-first free-placement canvas: uniform shapes on a snap grid, arrows, tags (markup is app-generated) |
94
97
  | `map` | geographic concept map: regions, points, routes |
95
98
  | `wireframe` | low-fidelity UI layout with panels and controls |
96
99
  | `bar` | categorical comparisons (multi-series via `stack` / `group`) |
@@ -114,7 +117,7 @@ Valid markup is the floor, not the goal. A good diagram reads at a glance. Apply
114
117
 
115
118
  ### Common examples (curated, parse-clean)
116
119
 
117
- _The most common types, inline so you can generate them without a fetch. For the other 35, get the per-type section (see below)._
120
+ _The most common types, inline so you can generate them without a fetch. For the other 38, get the per-type section (see below)._
118
121
 
119
122
  #### journey-map
120
123
 
@@ -226,6 +229,8 @@ ports
226
229
  ```dgmo
227
230
  class Ship Class Hierarchy
228
231
 
232
+ solid-fill
233
+
229
234
  interface Vessel
230
235
  + sail(): void
231
236
  + anchor(): void
package/.windsurfrules CHANGED
@@ -6,7 +6,7 @@ When the user asks for a diagram, visualization, or chart, generate a `.dgmo` fi
6
6
  <!-- DGMO-AI-CORE:START -->
7
7
  ## DGMO AI Core
8
8
 
9
- _Generated from `language-reference.md` — the anti-patterns and 43-type index below are identical across every DGMO AI surface._
9
+ _Generated from `language-reference.md` — the anti-patterns and 46-type index below are identical across every DGMO AI surface._
10
10
 
11
11
  ### Disambiguation — where DGMO diverges from LLM priors
12
12
 
@@ -60,7 +60,7 @@ Valid markup is the floor, not the goal. A good diagram reads at a glance. Apply
60
60
  - **Let the defaults show.** Don't add `no-*` opt-outs unless the user asked to hide or disable something — they strip helpful labels, values, and color.
61
61
  - **Pick a fitting direction.** Top-to-bottom for hierarchies and processes; left-to-right for pipelines and flows (where the type supports a direction).
62
62
 
63
- ### Chart-type index (43) — pick the type, then fetch its section
63
+ ### Chart-type index (45) — pick the type, then fetch its section
64
64
 
65
65
  | id | when to use |
66
66
  | -- | ----------- |
@@ -75,6 +75,7 @@ Valid markup is the floor, not the goal. A good diagram reads at a glance. Apply
75
75
  | `sitemap` | site / app navigation structure |
76
76
  | `mindmap` | radial hierarchy of ideas from a central topic |
77
77
  | `org` | reporting hierarchy |
78
+ | `family` | family tree / genealogy: unions (couples), children, remarriage, adoption, GEDCOM-style metadata |
78
79
  | `kanban` | task-board columns |
79
80
  | `gantt` | project scheduling with task dependencies and milestones |
80
81
  | `pert` | project network with three-point estimates and critical path |
@@ -82,6 +83,7 @@ Valid markup is the floor, not the goal. A good diagram reads at a glance. Apply
82
83
  | `version-control` | git / version-control branch-and-merge graph: commits, branches, merges, rebase, HEAD and remote-tracking (gitGraph-style) |
83
84
  | `timeline` | events, eras, and date ranges |
84
85
  | `event-line` | annotated narrative timeline — events on a line with descriptions, optionally not to scale (NOT the date-scaled `timeline`) |
86
+ | `body` | human anatomy figure annotated by muscle name — for medical, exercise, and educational diagrams |
85
87
  | `journey-map` | UX flow with emotion scores, phases, annotations |
86
88
  | `cycle` | cyclical process (PDCA, OODA, DevOps loops) |
87
89
  | `raci` | tasks × roles responsibility matrix; variant (RACI / RASCI / DACI) is inferred from the markers used |
@@ -91,6 +93,7 @@ Valid markup is the floor, not the goal. A good diagram reads at a glance. Apply
91
93
  | `ring` | concentric rings of nested categories |
92
94
  | `treemap` | nested rectangles sized by value (budgets, disk usage, portfolios) |
93
95
  | `block` | author-controlled grid of nested, collapsible blocks (system / architecture layouts) |
96
+ | `sketch` | GUI-first free-placement canvas: uniform shapes on a snap grid, arrows, tags (markup is app-generated) |
94
97
  | `map` | geographic concept map: regions, points, routes |
95
98
  | `wireframe` | low-fidelity UI layout with panels and controls |
96
99
  | `bar` | categorical comparisons (multi-series via `stack` / `group`) |
@@ -114,7 +117,7 @@ Valid markup is the floor, not the goal. A good diagram reads at a glance. Apply
114
117
 
115
118
  ### Common examples (curated, parse-clean)
116
119
 
117
- _The most common types, inline so you can generate them without a fetch. For the other 35, get the per-type section (see below)._
120
+ _The most common types, inline so you can generate them without a fetch. For the other 38, get the per-type section (see below)._
118
121
 
119
122
  #### journey-map
120
123
 
@@ -226,6 +229,8 @@ ports
226
229
  ```dgmo
227
230
  class Ship Class Hierarchy
228
231
 
232
+ solid-fill
233
+
229
234
  interface Vessel
230
235
  + sail(): void
231
236
  + anchor(): void
package/SKILL.md CHANGED
@@ -11,7 +11,7 @@ Use dgmo tools to create, render, and share diagrams. dgmo is a text-based diagr
11
11
  <!-- DGMO-AI-CORE:START -->
12
12
  ## DGMO AI Core
13
13
 
14
- _Generated from `language-reference.md` — the anti-patterns and 43-type index below are identical across every DGMO AI surface._
14
+ _Generated from `language-reference.md` — the anti-patterns and 46-type index below are identical across every DGMO AI surface._
15
15
 
16
16
  ### Disambiguation — where DGMO diverges from LLM priors
17
17
 
@@ -65,7 +65,7 @@ Valid markup is the floor, not the goal. A good diagram reads at a glance. Apply
65
65
  - **Let the defaults show.** Don't add `no-*` opt-outs unless the user asked to hide or disable something — they strip helpful labels, values, and color.
66
66
  - **Pick a fitting direction.** Top-to-bottom for hierarchies and processes; left-to-right for pipelines and flows (where the type supports a direction).
67
67
 
68
- ### Chart-type index (43) — pick the type, then fetch its section
68
+ ### Chart-type index (45) — pick the type, then fetch its section
69
69
 
70
70
  | id | when to use |
71
71
  | -- | ----------- |
@@ -80,6 +80,7 @@ Valid markup is the floor, not the goal. A good diagram reads at a glance. Apply
80
80
  | `sitemap` | site / app navigation structure |
81
81
  | `mindmap` | radial hierarchy of ideas from a central topic |
82
82
  | `org` | reporting hierarchy |
83
+ | `family` | family tree / genealogy: unions (couples), children, remarriage, adoption, GEDCOM-style metadata |
83
84
  | `kanban` | task-board columns |
84
85
  | `gantt` | project scheduling with task dependencies and milestones |
85
86
  | `pert` | project network with three-point estimates and critical path |
@@ -87,6 +88,7 @@ Valid markup is the floor, not the goal. A good diagram reads at a glance. Apply
87
88
  | `version-control` | git / version-control branch-and-merge graph: commits, branches, merges, rebase, HEAD and remote-tracking (gitGraph-style) |
88
89
  | `timeline` | events, eras, and date ranges |
89
90
  | `event-line` | annotated narrative timeline — events on a line with descriptions, optionally not to scale (NOT the date-scaled `timeline`) |
91
+ | `body` | human anatomy figure annotated by muscle name — for medical, exercise, and educational diagrams |
90
92
  | `journey-map` | UX flow with emotion scores, phases, annotations |
91
93
  | `cycle` | cyclical process (PDCA, OODA, DevOps loops) |
92
94
  | `raci` | tasks × roles responsibility matrix; variant (RACI / RASCI / DACI) is inferred from the markers used |
@@ -96,6 +98,7 @@ Valid markup is the floor, not the goal. A good diagram reads at a glance. Apply
96
98
  | `ring` | concentric rings of nested categories |
97
99
  | `treemap` | nested rectangles sized by value (budgets, disk usage, portfolios) |
98
100
  | `block` | author-controlled grid of nested, collapsible blocks (system / architecture layouts) |
101
+ | `sketch` | GUI-first free-placement canvas: uniform shapes on a snap grid, arrows, tags (markup is app-generated) |
99
102
  | `map` | geographic concept map: regions, points, routes |
100
103
  | `wireframe` | low-fidelity UI layout with panels and controls |
101
104
  | `bar` | categorical comparisons (multi-series via `stack` / `group`) |
@@ -119,7 +122,7 @@ Valid markup is the floor, not the goal. A good diagram reads at a glance. Apply
119
122
 
120
123
  ### Common examples (curated, parse-clean)
121
124
 
122
- _The most common types, inline so you can generate them without a fetch. For the other 35, get the per-type section (see below)._
125
+ _The most common types, inline so you can generate them without a fetch. For the other 38, get the per-type section (see below)._
123
126
 
124
127
  #### journey-map
125
128
 
@@ -231,6 +234,8 @@ ports
231
234
  ```dgmo
232
235
  class Ship Class Hierarchy
233
236
 
237
+ solid-fill
238
+
234
239
  interface Vessel
235
240
  + sail(): void
236
241
  + anchor(): void