@groupby/ai-dev 0.5.9 → 0.5.11

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 (68) hide show
  1. package/package.json +1 -1
  2. package/teams/fhr-neowise/commands/address-pr.md +120 -0
  3. package/teams/fhr-neowise/commands/ready-pr.md +70 -0
  4. package/teams/fhr-neowise/commands/review-pr.md +111 -0
  5. package/teams/fhr-neowise/commands/tdd-implementation.md +86 -0
  6. package/teams/fhr-neowise/commands/write-plan.md +23 -0
  7. package/teams/fhr-neowise/commands/write-pr.md +21 -0
  8. package/teams/fhr-neowise/commands/write-spec.md +25 -0
  9. package/teams/fhr-neowise/skills/agent-routing/SKILL.md +72 -0
  10. package/teams/fhr-neowise/skills/code-review/SKILL.md +83 -0
  11. package/teams/fhr-neowise/skills/code-review/review-template.md +90 -0
  12. package/teams/fhr-neowise/skills/mermaid-diagram/SKILL.md +94 -0
  13. package/teams/fhr-neowise/skills/mermaid-diagram/references/BEST_PRACTICES.md +96 -0
  14. package/teams/fhr-neowise/skills/mermaid-diagram/references/architecture.md +434 -0
  15. package/teams/fhr-neowise/skills/mermaid-diagram/references/block.md +753 -0
  16. package/teams/fhr-neowise/skills/mermaid-diagram/references/c4.md +619 -0
  17. package/teams/fhr-neowise/skills/mermaid-diagram/references/classDiagram.md +1186 -0
  18. package/teams/fhr-neowise/skills/mermaid-diagram/references/config-configuration.md +72 -0
  19. package/teams/fhr-neowise/skills/mermaid-diagram/references/config-directives.md +342 -0
  20. package/teams/fhr-neowise/skills/mermaid-diagram/references/config-layouts.md +40 -0
  21. package/teams/fhr-neowise/skills/mermaid-diagram/references/config-math.md +96 -0
  22. package/teams/fhr-neowise/skills/mermaid-diagram/references/config-theming.md +246 -0
  23. package/teams/fhr-neowise/skills/mermaid-diagram/references/config-tidy-tree.md +89 -0
  24. package/teams/fhr-neowise/skills/mermaid-diagram/references/cynefin.md +279 -0
  25. package/teams/fhr-neowise/skills/mermaid-diagram/references/entityRelationshipDiagram.md +670 -0
  26. package/teams/fhr-neowise/skills/mermaid-diagram/references/eventmodeling.md +475 -0
  27. package/teams/fhr-neowise/skills/mermaid-diagram/references/examples.md +301 -0
  28. package/teams/fhr-neowise/skills/mermaid-diagram/references/flowchart.md +2116 -0
  29. package/teams/fhr-neowise/skills/mermaid-diagram/references/gantt.md +725 -0
  30. package/teams/fhr-neowise/skills/mermaid-diagram/references/gitgraph.md +2138 -0
  31. package/teams/fhr-neowise/skills/mermaid-diagram/references/ishikawa.md +66 -0
  32. package/teams/fhr-neowise/skills/mermaid-diagram/references/kanban.md +161 -0
  33. package/teams/fhr-neowise/skills/mermaid-diagram/references/mindmap.md +335 -0
  34. package/teams/fhr-neowise/skills/mermaid-diagram/references/packet.md +153 -0
  35. package/teams/fhr-neowise/skills/mermaid-diagram/references/pie.md +93 -0
  36. package/teams/fhr-neowise/skills/mermaid-diagram/references/quadrantChart.md +267 -0
  37. package/teams/fhr-neowise/skills/mermaid-diagram/references/radar.md +269 -0
  38. package/teams/fhr-neowise/skills/mermaid-diagram/references/railroad.md +337 -0
  39. package/teams/fhr-neowise/skills/mermaid-diagram/references/requirementDiagram.md +495 -0
  40. package/teams/fhr-neowise/skills/mermaid-diagram/references/sankey.md +415 -0
  41. package/teams/fhr-neowise/skills/mermaid-diagram/references/sequenceDiagram.md +1195 -0
  42. package/teams/fhr-neowise/skills/mermaid-diagram/references/stateDiagram.md +670 -0
  43. package/teams/fhr-neowise/skills/mermaid-diagram/references/timeline.md +571 -0
  44. package/teams/fhr-neowise/skills/mermaid-diagram/references/treeView.md +321 -0
  45. package/teams/fhr-neowise/skills/mermaid-diagram/references/treemap.md +353 -0
  46. package/teams/fhr-neowise/skills/mermaid-diagram/references/userJourney.md +42 -0
  47. package/teams/fhr-neowise/skills/mermaid-diagram/references/venn.md +134 -0
  48. package/teams/fhr-neowise/skills/mermaid-diagram/references/wardley.md +732 -0
  49. package/teams/fhr-neowise/skills/mermaid-diagram/references/xyChart.md +312 -0
  50. package/teams/fhr-neowise/skills/mermaid-diagram/references/zenuml.md +474 -0
  51. package/teams/fhr-neowise/skills/mermaid-diagram/scripts/sync_docs.py +138 -0
  52. package/teams/fhr-neowise/skills/pull-request-authoring/COMPLEX.template.md +52 -0
  53. package/teams/fhr-neowise/skills/pull-request-authoring/NON-CODE.template.md +15 -0
  54. package/teams/fhr-neowise/skills/pull-request-authoring/SIMPLE.template.md +20 -0
  55. package/teams/fhr-neowise/skills/pull-request-authoring/SKILL.md +102 -0
  56. package/teams/fhr-neowise/skills/spec-investigation/SKILL.md +139 -0
  57. package/teams/fhr-neowise/skills/spec-investigation/TEMPLATE.spec.md +74 -0
  58. package/teams/fhr-neowise/skills/tdd-workflow/SKILL.md +137 -0
  59. package/teams/fhr-neowise/skills/write-plan/SKILL.md +285 -0
  60. package/teams/fhr-neowise/skills/write-plan/assets/TEMPLATE.checklist.json +79 -0
  61. package/teams/fhr-neowise/skills/write-plan/assets/TEMPLATE.plan.md +158 -0
  62. package/teams/rangers/resources/project-doc-contract.md +41 -0
  63. package/teams/rangers/skills/team-code-review/SKILL.md +66 -0
  64. package/teams/rangers/skills/team-development/SKILL.md +43 -0
  65. package/teams/rangers/skills/team-docs-snapshot/SKILL.md +58 -0
  66. package/teams/rangers/skills/team-docs-snapshot/scripts/collect_project_docs.py +166 -0
  67. package/teams/rangers/skills/team-phase-planning/SKILL.md +63 -0
  68. package/teams/rangers/skills/team-project-orientation/SKILL.md +46 -0
@@ -0,0 +1,246 @@
1
+ > **Warning**
2
+ >
3
+ > ## THIS IS AN AUTOGENERATED FILE. DO NOT EDIT.
4
+ >
5
+ > ## Please edit the corresponding file in [/packages/mermaid/src/docs/config/theming.md](../../packages/mermaid/src/docs/config/theming.md).
6
+
7
+ # Theme Configuration
8
+
9
+ Dynamic and integrated theme configuration was introduced in Mermaid version 8.7.0.
10
+
11
+ Themes can now be customized at the site-wide level, or on individual Mermaid diagrams. For site-wide theme customization, the `initialize` call is used. For diagram specific customization, frontmatter config is used.
12
+
13
+ ## Available Themes
14
+
15
+ 1. [**default**](https://github.com/mermaid-js/mermaid/blob/develop/packages/mermaid/src/themes/theme-default.js) - This is the default theme for all diagrams.
16
+
17
+ 2. [**neutral**](https://github.com/mermaid-js/mermaid/blob/develop/packages/mermaid/src/themes/theme-neutral.js) - This theme is great for black and white documents that will be printed.
18
+
19
+ 3. [**dark**](https://github.com/mermaid-js/mermaid/blob/develop/packages/mermaid/src/themes/theme-dark.js) - This theme goes well with dark-colored elements or dark-mode.
20
+
21
+ 4. [**forest**](https://github.com/mermaid-js/mermaid/blob/develop/packages/mermaid/src/themes/theme-forest.js) - This theme contains shades of green.
22
+
23
+ 5. [**base**](https://github.com/mermaid-js/mermaid/blob/develop/packages/mermaid/src/themes/theme-base.js) - This is the only theme that can be modified. Use this theme as the base for customizations.
24
+
25
+ ## Site-wide Theme
26
+
27
+ To customize themes site-wide, call the `initialize` method on the `mermaid`.
28
+
29
+ Example of `initialize` call setting `theme` to `base`:
30
+
31
+ ```javascript
32
+ mermaid.initialize({
33
+ securityLevel: 'loose',
34
+ theme: 'base',
35
+ });
36
+ ```
37
+
38
+ ## Diagram-specific Themes
39
+
40
+ To customize the theme of an individual diagram, use frontmatter config.
41
+
42
+ Example of frontmatter config setting the `theme` to `forest`:
43
+
44
+ ```mermaid-example
45
+ ---
46
+ config:
47
+ theme: 'forest'
48
+ ---
49
+ graph TD
50
+ a --> b
51
+ ```
52
+
53
+ ```mermaid
54
+ ---
55
+ config:
56
+ theme: 'forest'
57
+ ---
58
+ graph TD
59
+ a --> b
60
+ ```
61
+
62
+ > **Reminder**: the only theme that can be customized is the `base` theme. The following section covers how to use `themeVariables` for customizations.
63
+
64
+ ## Customizing Themes with `themeVariables`
65
+
66
+ To make a custom theme, modify `themeVariables` via frontmatter config.
67
+
68
+ You will need to use the [base](#available-themes) theme as it is the only modifiable theme.
69
+
70
+ | Parameter | Description | Type | Properties |
71
+ | -------------- | ---------------------------------- | ------ | ----------------------------------------------------------------------------------- |
72
+ | themeVariables | Modifiable with frontmatter config | Object | `primaryColor`, `primaryTextColor`, `lineColor` ([see full list](#theme-variables)) |
73
+
74
+ Example of modifying `themeVariables` using frontmatter config:
75
+
76
+ ```mermaid-example
77
+ ---
78
+ config:
79
+ theme: 'base'
80
+ themeVariables:
81
+ primaryColor: '#BB2528'
82
+ primaryTextColor: '#fff'
83
+ primaryBorderColor: '#7C0000'
84
+ lineColor: '#F8B229'
85
+ secondaryColor: '#006100'
86
+ tertiaryColor: '#fff'
87
+ ---
88
+ graph TD
89
+ A[Christmas] -->|Get money| B(Go shopping)
90
+ B --> C{Let me think}
91
+ B --> G[/Another/]
92
+ C ==>|One| D[Laptop]
93
+ C -->|Two| E[iPhone]
94
+ C -->|Three| F[fa:fa-car Car]
95
+ subgraph section
96
+ C
97
+ D
98
+ E
99
+ F
100
+ G
101
+ end
102
+ ```
103
+
104
+ ```mermaid
105
+ ---
106
+ config:
107
+ theme: 'base'
108
+ themeVariables:
109
+ primaryColor: '#BB2528'
110
+ primaryTextColor: '#fff'
111
+ primaryBorderColor: '#7C0000'
112
+ lineColor: '#F8B229'
113
+ secondaryColor: '#006100'
114
+ tertiaryColor: '#fff'
115
+ ---
116
+ graph TD
117
+ A[Christmas] -->|Get money| B(Go shopping)
118
+ B --> C{Let me think}
119
+ B --> G[/Another/]
120
+ C ==>|One| D[Laptop]
121
+ C -->|Two| E[iPhone]
122
+ C -->|Three| F[fa:fa-car Car]
123
+ subgraph section
124
+ C
125
+ D
126
+ E
127
+ F
128
+ G
129
+ end
130
+ ```
131
+
132
+ ## Color and Color Calculation
133
+
134
+ To ensure diagram readability, the default value of certain variables is calculated or derived from other variables. For example, `primaryBorderColor` is derived from the `primaryColor` variable. So if the `primaryColor` variable is customized, Mermaid will adjust `primaryBorderColor` automatically. Adjustments can mean a color inversion, a hue change, a darkening/lightening by 10%, etc.
135
+
136
+ The theming engine will only recognize hex colors and not color names. So, the value `#ff0000` will work, but `red` will not.
137
+
138
+ ## Theme Variables
139
+
140
+ | Variable | Default value | Description |
141
+ | -------------------- | ---------------------------------- | -------------------------------------------------------------------------------------------------------------------------------- |
142
+ | darkMode | false | Affects how derived colors are calculated. Set value to `true` for dark mode. |
143
+ | background | #f4f4f4 | Used to calculate color for items that should either be background colored or contrasting to the background |
144
+ | fontFamily | trebuchet ms, verdana, arial | Font family for diagram text |
145
+ | fontSize | 16px | Font size in pixels |
146
+ | primaryColor | #fff4dd | Color to be used as background in nodes, other colors will be derived from this |
147
+ | primaryTextColor | calculated from darkMode #ddd/#333 | Color to be used as text color in nodes using `primaryColor` |
148
+ | secondaryColor | calculated from primaryColor | |
149
+ | primaryBorderColor | calculated from primaryColor | Color to be used as border in nodes using `primaryColor` |
150
+ | secondaryBorderColor | calculated from secondaryColor | Color to be used as border in nodes using `secondaryColor` |
151
+ | secondaryTextColor | calculated from secondaryColor | Color to be used as text color in nodes using `secondaryColor` |
152
+ | tertiaryColor | calculated from primaryColor | |
153
+ | tertiaryBorderColor | calculated from tertiaryColor | Color to be used as border in nodes using `tertiaryColor` |
154
+ | tertiaryTextColor | calculated from tertiaryColor | Color to be used as text color in nodes using `tertiaryColor` |
155
+ | noteBkgColor | #fff5ad | Color used as background in notes |
156
+ | noteTextColor | #333 | Text color in note rectangles |
157
+ | noteBorderColor | calculated from noteBkgColor | Border color in note rectangles |
158
+ | lineColor | calculated from background | |
159
+ | textColor | calculated from primaryTextColor | Text in diagram over the background for instance text on labels and on signals in sequence diagram or the title in Gantt diagram |
160
+ | mainBkg | calculated from primaryColor | Background in flowchart objects like rects/circles, class diagram classes, sequence diagram etc |
161
+ | errorBkgColor | tertiaryColor | Color for syntax error message |
162
+ | errorTextColor | tertiaryTextColor | Color for syntax error message |
163
+
164
+ ## Flowchart Variables
165
+
166
+ | Variable | Default value | Description |
167
+ | ------------------- | ------------------------------ | --------------------------- |
168
+ | nodeBorder | primaryBorderColor | Node Border Color |
169
+ | clusterBkg | tertiaryColor | Background in subgraphs |
170
+ | clusterBorder | tertiaryBorderColor | Cluster Border Color |
171
+ | defaultLinkColor | lineColor | Link Color |
172
+ | titleColor | tertiaryTextColor | Title Color |
173
+ | edgeLabelBackground | calculated from secondaryColor | |
174
+ | nodeTextColor | primaryTextColor | Color for text inside Nodes |
175
+
176
+ ## Sequence Diagram Variables
177
+
178
+ | Variable | Default value | Description |
179
+ | --------------------- | ------------------------------ | --------------------------- |
180
+ | actorBkg | mainBkg | Actor Background Color |
181
+ | actorBorder | primaryBorderColor | Actor Border Color |
182
+ | actorTextColor | primaryTextColor | Actor Text Color |
183
+ | actorLineColor | actorBorder | Actor Line Color |
184
+ | signalColor | textColor | Signal Color |
185
+ | signalTextColor | textColor | Signal Text Color |
186
+ | labelBoxBkgColor | actorBkg | Label Box Background Color |
187
+ | labelBoxBorderColor | actorBorder | Label Box Border Color |
188
+ | labelTextColor | actorTextColor | Label Text Color |
189
+ | loopTextColor | actorTextColor | Loop Text Color |
190
+ | activationBorderColor | calculated from secondaryColor | Activation Border Color |
191
+ | activationBkgColor | secondaryColor | Activation Background Color |
192
+ | sequenceNumberColor | calculated from lineColor | Sequence Number Color |
193
+
194
+ ## Pie Diagram Variables
195
+
196
+ | Variable | Default value | Description |
197
+ | ------------------- | ------------------------------ | ------------------------------------------ |
198
+ | pie1 | primaryColor | Fill for 1st section in pie diagram |
199
+ | pie2 | secondaryColor | Fill for 2nd section in pie diagram |
200
+ | pie3 | calculated from tertiary | Fill for 3rd section in pie diagram |
201
+ | pie4 | calculated from primaryColor | Fill for 4th section in pie diagram |
202
+ | pie5 | calculated from secondaryColor | Fill for 5th section in pie diagram |
203
+ | pie6 | calculated from tertiaryColor | Fill for 6th section in pie diagram |
204
+ | pie7 | calculated from primaryColor | Fill for 7th section in pie diagram |
205
+ | pie8 | calculated from primaryColor | Fill for 8th section in pie diagram |
206
+ | pie9 | calculated from primaryColor | Fill for 9th section in pie diagram |
207
+ | pie10 | calculated from primaryColor | Fill for 10th section in pie diagram |
208
+ | pie11 | calculated from primaryColor | Fill for 11th section in pie diagram |
209
+ | pie12 | calculated from primaryColor | Fill for 12th section in pie diagram |
210
+ | pieTitleTextSize | 25px | Title text size |
211
+ | pieTitleTextColor | taskTextDarkColor | Title text color |
212
+ | pieSectionTextSize | 17px | Text size of individual section labels |
213
+ | pieSectionTextColor | textColor | Text color of individual section labels |
214
+ | pieLegendTextSize | 17px | Text size of labels in diagram legend |
215
+ | pieLegendTextColor | taskTextDarkColor | Text color of labels in diagram legend |
216
+ | pieStrokeColor | black | Border color of individual pie sections |
217
+ | pieStrokeWidth | 2px | Border width of individual pie sections |
218
+ | pieOuterStrokeWidth | 2px | Border width of pie diagram's outer circle |
219
+ | pieOuterStrokeColor | black | Border color of pie diagram's outer circle |
220
+ | pieOpacity | 0.7 | Opacity of individual pie sections |
221
+
222
+ ## State Colors
223
+
224
+ | Variable | Default value | Description |
225
+ | ------------- | ---------------- | -------------------------------------------- |
226
+ | labelColor | primaryTextColor | |
227
+ | altBackground | tertiaryColor | Used for background in deep composite states |
228
+
229
+ ## Class Colors
230
+
231
+ | Variable | Default value | Description |
232
+ | --------- | ------------- | ------------------------------- |
233
+ | classText | textColor | Color of Text in class diagrams |
234
+
235
+ ## User Journey Colors
236
+
237
+ | Variable | Default value | Description |
238
+ | --------- | ------------------------------ | --------------------------------------- |
239
+ | fillType0 | primaryColor | Fill for 1st section in journey diagram |
240
+ | fillType1 | secondaryColor | Fill for 2nd section in journey diagram |
241
+ | fillType2 | calculated from primaryColor | Fill for 3rd section in journey diagram |
242
+ | fillType3 | calculated from secondaryColor | Fill for 4th section in journey diagram |
243
+ | fillType4 | calculated from primaryColor | Fill for 5th section in journey diagram |
244
+ | fillType5 | calculated from secondaryColor | Fill for 6th section in journey diagram |
245
+ | fillType6 | calculated from primaryColor | Fill for 7th section in journey diagram |
246
+ | fillType7 | calculated from secondaryColor | Fill for 8th section in journey diagram |
@@ -0,0 +1,89 @@
1
+ > **Warning**
2
+ >
3
+ > ## THIS IS AN AUTOGENERATED FILE. DO NOT EDIT.
4
+ >
5
+ > ## Please edit the corresponding file in [/packages/mermaid/src/docs/config/tidy-tree.md](../../packages/mermaid/src/docs/config/tidy-tree.md).
6
+
7
+ # Tidy-tree Layout
8
+
9
+ The **tidy-tree** layout arranges nodes in a hierarchical, tree-like structure. It is especially useful for diagrams where parent-child relationships are important, such as mindmaps.
10
+
11
+ ## Features
12
+
13
+ - Organizes nodes in a tidy, non-overlapping tree
14
+ - Ideal for mindmaps and hierarchical data
15
+ - Automatically adjusts spacing for readability
16
+
17
+ ## Example Usage
18
+
19
+ ```mermaid-example
20
+ ---
21
+ config:
22
+ layout: tidy-tree
23
+ ---
24
+ mindmap
25
+ root((mindmap is a long thing))
26
+ A
27
+ B
28
+ C
29
+ D
30
+ ```
31
+
32
+ ```mermaid
33
+ ---
34
+ config:
35
+ layout: tidy-tree
36
+ ---
37
+ mindmap
38
+ root((mindmap is a long thing))
39
+ A
40
+ B
41
+ C
42
+ D
43
+ ```
44
+
45
+ ```mermaid-example
46
+ ---
47
+ config:
48
+ layout: tidy-tree
49
+ ---
50
+ mindmap
51
+ root((mindmap))
52
+ Origins
53
+ Long history
54
+ ::icon(fa fa-book)
55
+ Popularisation
56
+ British popular psychology author Tony Buzan
57
+ Research
58
+ On effectiveness<br/>and features
59
+ On Automatic creation
60
+ Uses
61
+ Creative techniques
62
+ Strategic planning
63
+ Argument mapping
64
+ ```
65
+
66
+ ```mermaid
67
+ ---
68
+ config:
69
+ layout: tidy-tree
70
+ ---
71
+ mindmap
72
+ root((mindmap))
73
+ Origins
74
+ Long history
75
+ ::icon(fa fa-book)
76
+ Popularisation
77
+ British popular psychology author Tony Buzan
78
+ Research
79
+ On effectiveness<br/>and features
80
+ On Automatic creation
81
+ Uses
82
+ Creative techniques
83
+ Strategic planning
84
+ Argument mapping
85
+ ```
86
+
87
+ ## Note
88
+
89
+ - Currently, tidy-tree is primarily supported for mindmap diagrams.
@@ -0,0 +1,279 @@
1
+ > **Warning**
2
+ >
3
+ > ## THIS IS AN AUTOGENERATED FILE. DO NOT EDIT.
4
+ >
5
+ > ## Please edit the corresponding file in [/packages/mermaid/src/docs/syntax/cynefin.md](../../packages/mermaid/src/docs/syntax/cynefin.md).
6
+
7
+ # Cynefin Framework Diagram (v\<MERMAID_RELEASE_VERSION>+)
8
+
9
+ > The Cynefin framework is a sense-making framework created by [Dave Snowden](https://en.wikipedia.org/wiki/Dave_Snowden) that categorizes problems into five complexity domains. It helps teams match their response to the nature of the situation they are facing. The name is Welsh for "place" or "habitat".
10
+
11
+ You can read more at [The Cynefin Co](https://thecynefin.co/about-us/about-cynefin-framework).
12
+
13
+ ## Introduction
14
+
15
+ The Cynefin framework divides the world into five domains, each with its own decision-making approach:
16
+
17
+ - **Clear** (formerly Obvious/Simple): Cause and effect are obvious. Sense → Categorise → Respond. Apply **best practices**.
18
+ - **Complicated**: Cause and effect require analysis or expertise. Sense → Analyse → Respond. Apply **good practices**.
19
+ - **Complex**: Cause and effect can only be deduced in retrospect. Probe → Sense → Respond. Apply **emergent practices**.
20
+ - **Chaotic**: No perceivable cause and effect. Act → Sense → Respond. Apply **novel practices**.
21
+ - **Confusion** (or Disorder): You do not know which domain you are in. The goal is to move items out of this state into one of the other four.
22
+
23
+ The signature visual feature is the wavy, organic boundary between the ordered (Clear, Complicated) and unordered (Complex, Chaotic) halves, and the "cliff" between Clear and Chaotic representing the risk of complacency leading to crisis.
24
+
25
+ ## Syntax
26
+
27
+ A Cynefin diagram is declared with `cynefin-beta` followed by domain blocks and optional transitions.
28
+
29
+ ```md
30
+ cynefin-beta
31
+ title Optional Diagram Title
32
+
33
+ complex
34
+ "Item label"
35
+ "Another item"
36
+
37
+ complicated
38
+ "Expert analysis needed"
39
+
40
+ clear
41
+ "Known procedure"
42
+
43
+ chaotic
44
+ "Crisis response"
45
+
46
+ confusion
47
+ "Item of unknown domain"
48
+
49
+ complex --> complicated : "Pattern identified"
50
+ clear --> chaotic : "Complacency"
51
+ ```
52
+
53
+ ### Keywords
54
+
55
+ | Keyword | Meaning |
56
+ | -------------- | ---------------------------------------------------------------------- |
57
+ | `cynefin-beta` | Diagram type declaration (required, first line after any front matter) |
58
+ | `title` | Optional diagram title |
59
+ | `complex` | Opens the Complex domain block |
60
+ | `complicated` | Opens the Complicated domain block |
61
+ | `clear` | Opens the Clear domain block |
62
+ | `chaotic` | Opens the Chaotic domain block |
63
+ | `confusion` | Opens the Confusion / Disorder domain block |
64
+ | `-->` | Declares a transition from one domain to another |
65
+
66
+ ### Items
67
+
68
+ Items are quoted string labels placed on their own lines inside a domain block. Each item renders as a text badge within the domain region.
69
+
70
+ ```
71
+ complex
72
+ "Investigate root cause"
73
+ "Run chaos experiment"
74
+ ```
75
+
76
+ Keep per-domain item lists short — the quadrants have fixed layout and long lists can visually overflow their boxes. The confusion ellipse caps at three items and shows a `+N more` badge; the four quadrant domains do not clip, so prefer a handful of items each.
77
+
78
+ ### Transitions
79
+
80
+ Transitions represent movement of items between domains over time. They are declared at the top level using `-->` between two domain names, with an optional label.
81
+
82
+ ```
83
+ complex --> complicated : "Pattern identified"
84
+ clear --> chaotic : "Complacency"
85
+ chaotic --> complex : "Stabilized"
86
+ ```
87
+
88
+ Common transitions:
89
+
90
+ - **Complex → Complicated**: An emerging pattern has become understood and can now be analyzed.
91
+ - **Chaotic → Complex**: A crisis has been stabilized enough to begin probing.
92
+ - **Clear → Chaotic**: Complacency or over-constraint has led to collapse (the "cliff").
93
+ - **Complicated → Clear**: Analysis has codified a solution into a standard practice.
94
+
95
+ ## Examples
96
+
97
+ ### Basic example
98
+
99
+ ```mermaid-example
100
+ cynefin-beta
101
+ title Incident Response
102
+
103
+ complex
104
+ "Investigate root cause"
105
+ "Run chaos experiment"
106
+
107
+ complicated
108
+ "Analyze performance data"
109
+ "Expert review needed"
110
+
111
+ clear
112
+ "Restart service"
113
+ "Apply known fix"
114
+
115
+ chaotic
116
+ "Page on-call immediately"
117
+
118
+ confusion
119
+ "Unknown failure mode"
120
+ ```
121
+
122
+ ```mermaid
123
+ cynefin-beta
124
+ title Incident Response
125
+
126
+ complex
127
+ "Investigate root cause"
128
+ "Run chaos experiment"
129
+
130
+ complicated
131
+ "Analyze performance data"
132
+ "Expert review needed"
133
+
134
+ clear
135
+ "Restart service"
136
+ "Apply known fix"
137
+
138
+ chaotic
139
+ "Page on-call immediately"
140
+
141
+ confusion
142
+ "Unknown failure mode"
143
+ ```
144
+
145
+ ### With transitions
146
+
147
+ ```mermaid-example
148
+ cynefin-beta
149
+ title Strategy Categorization
150
+
151
+ complex
152
+ "Market research"
153
+
154
+ complicated
155
+ "Competitive analysis"
156
+
157
+ clear
158
+ "Standard pricing"
159
+
160
+ chaotic
161
+ "Crisis management"
162
+
163
+ complex --> complicated : "Pattern identified"
164
+ complicated --> clear : "Best practice codified"
165
+ clear --> chaotic : "Complacency"
166
+ chaotic --> complex : "Stabilized"
167
+ ```
168
+
169
+ ```mermaid
170
+ cynefin-beta
171
+ title Strategy Categorization
172
+
173
+ complex
174
+ "Market research"
175
+
176
+ complicated
177
+ "Competitive analysis"
178
+
179
+ clear
180
+ "Standard pricing"
181
+
182
+ chaotic
183
+ "Crisis management"
184
+
185
+ complex --> complicated : "Pattern identified"
186
+ complicated --> clear : "Best practice codified"
187
+ clear --> chaotic : "Complacency"
188
+ chaotic --> complex : "Stabilized"
189
+ ```
190
+
191
+ ### Empty framework
192
+
193
+ The domains themselves render even with no items, useful as a teaching or worksheet template.
194
+
195
+ ```mermaid-example
196
+ cynefin-beta
197
+ title Cynefin Framework
198
+
199
+ complex
200
+ complicated
201
+ clear
202
+ chaotic
203
+ ```
204
+
205
+ ```mermaid
206
+ cynefin-beta
207
+ title Cynefin Framework
208
+
209
+ complex
210
+ complicated
211
+ clear
212
+ chaotic
213
+ ```
214
+
215
+ ## Configuration
216
+
217
+ Cynefin diagrams accept the following configuration under the `cynefin` key in the mermaid config:
218
+
219
+ | Option | Type | Default | Description |
220
+ | ------------------------ | ------- | ------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
221
+ | `width` | number | `800` | Width of the diagram in pixels |
222
+ | `height` | number | `600` | Height of the diagram in pixels |
223
+ | `padding` | number | `40` | Padding around the diagram |
224
+ | `showDomainDescriptions` | boolean | `true` | Show decision model and practice type subtitles per domain |
225
+ | `boundaryAmplitude` | number | `8` | Waviness amplitude of domain boundaries in pixels (set to `0` for straight lines) |
226
+ | `seed` | number | `0` | Deterministic seed for boundary waviness. `0` (default) hashes the diagram's SVG id so each diagram looks unique. Set any non-zero number to lock the waviness across renders — required for stable visual regression tests. |
227
+
228
+ Example:
229
+
230
+ ```
231
+ %%{init: {'cynefin': {'width': 1000, 'showDomainDescriptions': false}}}%%
232
+ cynefin-beta
233
+ complex
234
+ "Adaptive work"
235
+ ```
236
+
237
+ ## Theming
238
+
239
+ Cynefin diagrams use the following theme variables, which can be overridden via `themeVariables.cynefin`:
240
+
241
+ | Variable | Description |
242
+ | ---------------- | ------------------------------------------------ |
243
+ | `complexBg` | Background color for the Complex domain |
244
+ | `complicatedBg` | Background color for the Complicated domain |
245
+ | `clearBg` | Background color for the Clear domain |
246
+ | `chaoticBg` | Background color for the Chaotic domain |
247
+ | `confusionBg` | Background color for the Confusion center region |
248
+ | `boundaryColor` | Color of the wavy domain boundaries |
249
+ | `boundaryWidth` | Stroke width of the boundaries |
250
+ | `cliffColor` | Color of the Clear/Chaotic cliff |
251
+ | `cliffWidth` | Stroke width of the cliff |
252
+ | `arrowColor` | Color of transition arrows |
253
+ | `arrowWidth` | Stroke width of transition arrows |
254
+ | `labelColor` | Color of domain name labels |
255
+ | `textColor` | Color of item and subtitle text |
256
+ | `domainFontSize` | Font size of domain name labels |
257
+ | `itemFontSize` | Font size of item badges and subtitles |
258
+
259
+ ## Notes
260
+
261
+ - Domain names are fixed keywords. Only `complex`, `complicated`, `clear`, `chaotic`, and `confusion` are recognized.
262
+ - Domains can be declared in any order; their position in the diagram is always the same (Complex top-left, Complicated top-right, Chaotic bottom-left, Clear bottom-right, Confusion center).
263
+ - The `confusion` domain has a compact center ellipse. Up to 3 items are shown inside it; if more are provided a `+N more` overflow badge is displayed. In practice, the confusion domain should contain very few items — its purpose is to surface unknowns so they can be moved to one of the four main domains.
264
+ - Self-loop transitions (e.g. `complex --> complex`) are silently ignored. Transitions must connect two different domains.
265
+ - Handdrawn mode is not currently supported.
266
+ - The wavy boundary rendering is deterministic: the same input always produces the same diagram, so diffs are stable across builds.
267
+
268
+ ## Accessibility
269
+
270
+ Cynefin diagrams support the standard mermaid accessibility directives:
271
+
272
+ ```
273
+ cynefin-beta
274
+ accTitle: Cynefin framework for software delivery decisions
275
+ accDescr: A Cynefin map categorizing software tasks by complexity domain
276
+
277
+ complex
278
+ "New feature discovery"
279
+ ```