@pikaa-ai/pikaa 0.3.22 → 0.3.24

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 (191) hide show
  1. package/assets/brand/orbit-logo-option4-whale.jpg +0 -0
  2. package/assets/brand/orbit-logo.jpg +0 -0
  3. package/assets/brand/orbit-logo.png +0 -0
  4. package/assets/brand/orbit-logo.svg +3 -0
  5. package/dist/cli.js +448 -181
  6. package/dist/index.js +22 -2
  7. package/package.json +1 -2
  8. package/skills/adaptyv/SKILL.md +0 -240
  9. package/skills/aeon/SKILL.md +0 -402
  10. package/skills/analytical-method-validation/SKILL.md +0 -299
  11. package/skills/anndata/SKILL.md +0 -431
  12. package/skills/arbor/SKILL.md +0 -152
  13. package/skills/arboreto/SKILL.md +0 -267
  14. package/skills/astropy/SKILL.md +0 -353
  15. package/skills/autoskill/SKILL.md +0 -233
  16. package/skills/benchling-integration/SKILL.md +0 -229
  17. package/skills/bgpt-paper-search/SKILL.md +0 -75
  18. package/skills/bids/SKILL.md +0 -237
  19. package/skills/biopython/SKILL.md +0 -472
  20. package/skills/bioservices/SKILL.md +0 -399
  21. package/skills/bulk-rnaseq/SKILL.md +0 -198
  22. package/skills/cellxgene-census/SKILL.md +0 -283
  23. package/skills/cirq/SKILL.md +0 -370
  24. package/skills/citation-management/SKILL.md +0 -329
  25. package/skills/clinical-decision-support/SKILL.md +0 -238
  26. package/skills/clinical-decision-support/references/README.md +0 -62
  27. package/skills/clinical-reports/SKILL.md +0 -248
  28. package/skills/clinical-reports/references/README.md +0 -34
  29. package/skills/cobrapy/SKILL.md +0 -496
  30. package/skills/consciousness-council/SKILL.md +0 -151
  31. package/skills/dask/SKILL.md +0 -482
  32. package/skills/database-lookup/SKILL.md +0 -386
  33. package/skills/datamol/SKILL.md +0 -200
  34. package/skills/deepchem/SKILL.md +0 -244
  35. package/skills/deepspot-m/SKILL.md +0 -175
  36. package/skills/deeptools/SKILL.md +0 -412
  37. package/skills/depmap/SKILL.md +0 -301
  38. package/skills/dhdna-profiler/SKILL.md +0 -184
  39. package/skills/diffdock/SKILL.md +0 -488
  40. package/skills/dnanexus-integration/SKILL.md +0 -325
  41. package/skills/docx/SKILL.md +0 -99
  42. package/skills/esm/SKILL.md +0 -334
  43. package/skills/etetoolkit/SKILL.md +0 -327
  44. package/skills/exa-search/SKILL.md +0 -102
  45. package/skills/executing-plans/SKILL.md +0 -14
  46. package/skills/experimental-design/SKILL.md +0 -234
  47. package/skills/exploratory-data-analysis/SKILL.md +0 -280
  48. package/skills/flowio/SKILL.md +0 -310
  49. package/skills/fluidsim/SKILL.md +0 -279
  50. package/skills/frontend-design/SKILL.md +0 -100
  51. package/skills/generate-image/SKILL.md +0 -304
  52. package/skills/geniml/SKILL.md +0 -310
  53. package/skills/genomic-coordinates/SKILL.md +0 -189
  54. package/skills/genomic-intelligence/SKILL.md +0 -243
  55. package/skills/geomaster/README.md +0 -105
  56. package/skills/geomaster/SKILL.md +0 -366
  57. package/skills/geopandas/SKILL.md +0 -250
  58. package/skills/get-available-resources/SKILL.md +0 -260
  59. package/skills/gget/SKILL.md +0 -153
  60. package/skills/ginkgo-cloud-lab/SKILL.md +0 -106
  61. package/skills/glycoengineering/SKILL.md +0 -339
  62. package/skills/gtars/SKILL.md +0 -282
  63. package/skills/guardian-rails/SKILL.md +0 -54
  64. package/skills/histolab/SKILL.md +0 -243
  65. package/skills/hugging-science/SKILL.md +0 -132
  66. package/skills/hypogenic/SKILL.md +0 -290
  67. package/skills/hypothesis-generation/SKILL.md +0 -264
  68. package/skills/imaging-data-commons/SKILL.md +0 -496
  69. package/skills/infographics/SKILL.md +0 -315
  70. package/skills/iso-standards-readiness/SKILL.md +0 -352
  71. package/skills/lab-hardware-cad/SKILL.md +0 -372
  72. package/skills/labarchive-integration/SKILL.md +0 -216
  73. package/skills/lamindb/SKILL.md +0 -408
  74. package/skills/latchbio-integration/SKILL.md +0 -227
  75. package/skills/latex-posters/SKILL.md +0 -369
  76. package/skills/latex-posters/references/README.md +0 -439
  77. package/skills/liteparse/SKILL.md +0 -295
  78. package/skills/literature-review/SKILL.md +0 -263
  79. package/skills/markdown-mermaid-writing/SKILL.md +0 -322
  80. package/skills/market-research-reports/SKILL.md +0 -337
  81. package/skills/markitdown/SKILL.md +0 -264
  82. package/skills/matchms/SKILL.md +0 -276
  83. package/skills/matlab/SKILL.md +0 -274
  84. package/skills/matplotlib/SKILL.md +0 -378
  85. package/skills/medchem/SKILL.md +0 -321
  86. package/skills/modal/SKILL.md +0 -468
  87. package/skills/molecular-dynamics/SKILL.md +0 -458
  88. package/skills/molfeat/SKILL.md +0 -348
  89. package/skills/ncats-arax/SKILL.md +0 -178
  90. package/skills/networkx/SKILL.md +0 -440
  91. package/skills/neurokit2/SKILL.md +0 -323
  92. package/skills/neuropixels-analysis/SKILL.md +0 -412
  93. package/skills/nextflow/SKILL.md +0 -195
  94. package/skills/omero-integration/SKILL.md +0 -222
  95. package/skills/onekgpd/SKILL.md +0 -371
  96. package/skills/ontology-term-resolution/SKILL.md +0 -147
  97. package/skills/open-notebook/SKILL.md +0 -297
  98. package/skills/openpiv/SKILL.md +0 -469
  99. package/skills/opentrons-integration/SKILL.md +0 -322
  100. package/skills/optimize-for-gpu/SKILL.md +0 -176
  101. package/skills/owasp-top10/SKILL.md +0 -48
  102. package/skills/pacsomatic/LICENSE +0 -21
  103. package/skills/pacsomatic/SKILL.md +0 -150
  104. package/skills/paper-lookup/SKILL.md +0 -263
  105. package/skills/paperclip/SKILL.md +0 -413
  106. package/skills/paperzilla/SKILL.md +0 -159
  107. package/skills/parallel-web/SKILL.md +0 -128
  108. package/skills/pathml/SKILL.md +0 -222
  109. package/skills/pathogen-variant-surveillance/SKILL.md +0 -208
  110. package/skills/pathway-enrichment/SKILL.md +0 -194
  111. package/skills/pdf/SKILL.md +0 -322
  112. package/skills/peer-review/SKILL.md +0 -288
  113. package/skills/penetration-testing/SKILL.md +0 -31
  114. package/skills/pennylane/SKILL.md +0 -240
  115. package/skills/phylogenetics/SKILL.md +0 -409
  116. package/skills/pi-agent/SKILL.md +0 -83
  117. package/skills/pkpd-modeling/SKILL.md +0 -381
  118. package/skills/polars/SKILL.md +0 -393
  119. package/skills/polars-bio/SKILL.md +0 -379
  120. package/skills/ponytail/SKILL.md +0 -31
  121. package/skills/ponytail-audit/SKILL.md +0 -18
  122. package/skills/pptx/SKILL.md +0 -246
  123. package/skills/pptx-posters/SKILL.md +0 -258
  124. package/skills/primekg/SKILL.md +0 -99
  125. package/skills/protocolsio-integration/SKILL.md +0 -236
  126. package/skills/pufferlib/SKILL.md +0 -328
  127. package/skills/pydeseq2/SKILL.md +0 -369
  128. package/skills/pydicom/SKILL.md +0 -381
  129. package/skills/pyhealth/SKILL.md +0 -124
  130. package/skills/pylabrobot/SKILL.md +0 -216
  131. package/skills/pymatgen/SKILL.md +0 -404
  132. package/skills/pymc/SKILL.md +0 -310
  133. package/skills/pymoo/SKILL.md +0 -276
  134. package/skills/pyopenms/SKILL.md +0 -179
  135. package/skills/pysam/SKILL.md +0 -330
  136. package/skills/pytdc/SKILL.md +0 -297
  137. package/skills/pytorch-lightning/SKILL.md +0 -191
  138. package/skills/pyzotero/SKILL.md +0 -137
  139. package/skills/qiskit/SKILL.md +0 -259
  140. package/skills/qutip/SKILL.md +0 -317
  141. package/skills/rdkit/SKILL.md +0 -94
  142. package/skills/relsa-severity-assessment/SKILL.md +0 -354
  143. package/skills/research-grants/SKILL.md +0 -296
  144. package/skills/research-grants/references/README.md +0 -287
  145. package/skills/research-lookup/README.md +0 -106
  146. package/skills/research-lookup/SKILL.md +0 -338
  147. package/skills/rowan/SKILL.md +0 -398
  148. package/skills/scanpy/SKILL.md +0 -303
  149. package/skills/scholar-evaluation/SKILL.md +0 -296
  150. package/skills/scientific-brainstorming/SKILL.md +0 -282
  151. package/skills/scientific-critical-thinking/SKILL.md +0 -180
  152. package/skills/scientific-schematics/SKILL.md +0 -370
  153. package/skills/scientific-slides/SKILL.md +0 -379
  154. package/skills/scientific-visualization/SKILL.md +0 -285
  155. package/skills/scientific-writing/SKILL.md +0 -356
  156. package/skills/scikit-bio/SKILL.md +0 -470
  157. package/skills/scikit-learn/SKILL.md +0 -324
  158. package/skills/scikit-survival/SKILL.md +0 -313
  159. package/skills/scvelo/SKILL.md +0 -328
  160. package/skills/scvi-tools/SKILL.md +0 -201
  161. package/skills/seaborn/SKILL.md +0 -254
  162. package/skills/security-auditor/SKILL.md +0 -37
  163. package/skills/shap/SKILL.md +0 -282
  164. package/skills/simpy/SKILL.md +0 -283
  165. package/skills/stable-baselines3/SKILL.md +0 -325
  166. package/skills/statistical-analysis/SKILL.md +0 -446
  167. package/skills/statistical-power/SKILL.md +0 -200
  168. package/skills/statsmodels/SKILL.md +0 -238
  169. package/skills/sympy/SKILL.md +0 -354
  170. package/skills/systematic-debugging/SKILL.md +0 -35
  171. package/skills/tamarind/SKILL.md +0 -285
  172. package/skills/tdd/SKILL.md +0 -26
  173. package/skills/tiledbvcf/SKILL.md +0 -456
  174. package/skills/timesfm-forecasting/SKILL.md +0 -408
  175. package/skills/timesfm-forecasting/examples/global-temperature/README.md +0 -178
  176. package/skills/torch-geometric/SKILL.md +0 -458
  177. package/skills/torchdrug/SKILL.md +0 -241
  178. package/skills/transformers/SKILL.md +0 -195
  179. package/skills/treatment-plans/SKILL.md +0 -174
  180. package/skills/treatment-plans/references/README.md +0 -19
  181. package/skills/umap-learn/SKILL.md +0 -488
  182. package/skills/uncertainty-and-units/SKILL.md +0 -384
  183. package/skills/usfiscaldata/SKILL.md +0 -171
  184. package/skills/vaex/SKILL.md +0 -204
  185. package/skills/venue-templates/SKILL.md +0 -269
  186. package/skills/verification-before-completion/SKILL.md +0 -22
  187. package/skills/waypoint-bio/SKILL.md +0 -273
  188. package/skills/what-if-oracle/SKILL.md +0 -184
  189. package/skills/writing-plans/SKILL.md +0 -15
  190. package/skills/xlsx/SKILL.md +0 -110
  191. package/skills/zarr-python/SKILL.md +0 -241
@@ -1,322 +0,0 @@
1
- ---
2
- name: markdown-mermaid-writing
3
- description: Comprehensive markdown and Mermaid diagram writing skill. Use when creating any scientific document, report, analysis, or visualization. Establishes text-based diagrams as the default documentation standard with full style guides (markdown + mermaid), 24 diagram type references, and 9 document templates.
4
- allowed-tools: Read Write Edit Bash
5
- license: Apache-2.0
6
- metadata:
7
- version: "1.1"
8
- skill-author: Clayton Young / Superior Byte Works, LLC (@borealBytes)
9
- skill-source: https://github.com/SuperiorByteWorks-LLC/agent-project
10
- skill-version: 1.0.0
11
- skill-contributors: Clayton Young (Superior Byte Works, LLC / @borealBytes; Author and originator); K-Dense Team (K-Dense Inc.; Integration target and community feedback)
12
- ---
13
-
14
- # Markdown and Mermaid Writing
15
-
16
- ## Overview
17
-
18
- This skill teaches you — and enforces a standard for — creating scientific documentation
19
- using **markdown with embedded Mermaid diagrams as the default and canonical format**.
20
-
21
- The core bet: a relationship expressed as a Mermaid diagram inside a `.md` file is more
22
- valuable than any image. It is text, so it diffs cleanly in git. It requires no build step.
23
- It renders natively on GitHub, GitLab, Notion, VS Code, and any markdown viewer. It uses
24
- fewer tokens than a prose description of the same relationship. And it can always be
25
- converted to a polished image later — but the text version remains the source of truth.
26
-
27
- > "The more you get your reports and files in .md in just regular text, which mermaid is
28
- > as well as being a simple 'script language'. This just helps with any downstream rendering
29
- > and especially AI generated images (using mermaid instead of just long form text to
30
- > describe relationships < tokens). Additionally mermaid can render along with markdown for
31
- > easy use almost anywhere by humans or AI."
32
- >
33
- > — Clayton Young (@borealBytes), K-Dense Discord, 2026-02-19
34
-
35
- ## When to Use This Skill
36
-
37
- Use this skill when:
38
-
39
- - Creating **any scientific document** — reports, analyses, manuscripts, methods sections
40
- - Writing **any documentation** — READMEs, how-tos, decision records, project docs
41
- - Producing **any diagram** — workflows, data pipelines, architectures, timelines, relationships
42
- - Generating **any output that will be version-controlled** — if it's going into git, it should be markdown
43
- - Working with **any other skill** — this skill defines the documentation layer that wraps every other output
44
- - Someone asks you to "add a diagram" or "visualize the relationship" — Mermaid first, always
45
-
46
- Do NOT start with Python matplotlib, seaborn, or AI image generation for structural or relational diagrams.
47
- Those are Phase 2 and Phase 3 — only used when Mermaid cannot express what's needed (e.g., scatter plots with real data, photorealistic images).
48
-
49
- ## 🎨 The Source Format Philosophy
50
-
51
- ### Why text-based diagrams win
52
-
53
- | What matters | Mermaid in Markdown | Python / AI Image |
54
- | ----------------------------- | :-----------------: | :---------------: |
55
- | Git diff readable | ✅ | ❌ binary blob |
56
- | Editable without regenerating | ✅ | ❌ |
57
- | Token efficient vs. prose | ✅ smaller | ❌ larger |
58
- | Renders without a build step | ✅ | ❌ needs hosting |
59
- | Parseable by AI without vision | ✅ | ❌ |
60
- | Works in GitHub / GitLab / Notion | ✅ | ⚠️ if hosted |
61
- | Accessible (screen readers) | ✅ accTitle/accDescr | ⚠️ needs alt text |
62
- | Convertible to image later | ✅ anytime | — already image |
63
-
64
- ### The three-phase workflow
65
-
66
- ```mermaid
67
- flowchart LR
68
- accTitle: Three-Phase Documentation Workflow
69
- accDescr: Phase 1 Mermaid in markdown is always required and is the source of truth. Phases 2 and 3 are optional downstream conversions for polished output.
70
-
71
- p1["📄 Phase 1<br/>Mermaid in Markdown<br/>(ALWAYS — source of truth)"]
72
- p2["🐍 Phase 2<br/>Python Generated<br/>(optional — data charts)"]
73
- p3["🎨 Phase 3<br/>AI Generated Visuals<br/>(optional — polish)"]
74
- out["📊 Final Deliverable"]
75
-
76
- p1 --> out
77
- p1 -.->|"when needed"| p2
78
- p1 -.->|"when needed"| p3
79
- p2 --> out
80
- p3 --> out
81
-
82
- classDef required fill:#dbeafe,stroke:#2563eb,stroke-width:2px,color:#1e3a5f
83
- classDef optional fill:#fef9c3,stroke:#ca8a04,stroke-width:2px,color:#713f12
84
- classDef output fill:#dcfce7,stroke:#16a34a,stroke-width:2px,color:#14532d
85
-
86
- class p1 required
87
- class p2,p3 optional
88
- class out output
89
- ```
90
-
91
- **Phase 1 is mandatory.** Even if you proceed to Phase 2 or 3, the Mermaid source stays committed.
92
-
93
- ### What Mermaid can express
94
-
95
- Mermaid covers 24 diagram types. Almost every scientific relationship fits one:
96
-
97
- | Use case | Diagram type | File |
98
- | -------------------------------------------- | ---------------- | ---------------------------------------------------- |
99
- | Experimental workflow / decision logic | Flowchart | `references/diagrams/flowchart.md` |
100
- | Service interactions / API calls / messaging | Sequence | `references/diagrams/sequence.md` |
101
- | Data model / schema | ER diagram | `references/diagrams/er.md` |
102
- | State machine / lifecycle | State | `references/diagrams/state.md` |
103
- | Project timeline / roadmap | Gantt | `references/diagrams/gantt.md` |
104
- | Proportions / composition | Pie | `references/diagrams/pie.md` |
105
- | System architecture (zoom levels) | C4 | `references/diagrams/c4.md` |
106
- | Concept hierarchy / brainstorm | Mindmap | `references/diagrams/mindmap.md` |
107
- | Chronological events / history | Timeline | `references/diagrams/timeline.md` |
108
- | Class hierarchy / type relationships | Class | `references/diagrams/class.md` |
109
- | User journey / satisfaction map | User Journey | `references/diagrams/user_journey.md` |
110
- | Two-axis comparison / prioritization | Quadrant | `references/diagrams/quadrant.md` |
111
- | Requirements traceability | Requirement | `references/diagrams/requirement.md` |
112
- | Flow magnitude / resource distribution | Sankey | `references/diagrams/sankey.md` |
113
- | Numeric trends / bar + line charts | XY Chart | `references/diagrams/xy_chart.md` |
114
- | Component layout / spatial arrangement | Block | `references/diagrams/block.md` |
115
- | Work item status / task columns | Kanban | `references/diagrams/kanban.md` |
116
- | Cloud infrastructure / service topology | Architecture | `references/diagrams/architecture.md` |
117
- | Multi-dimensional comparison / skills radar | Radar | `references/diagrams/radar.md` |
118
- | Hierarchical proportions / budget | Treemap | `references/diagrams/treemap.md` |
119
- | Binary protocol / data format | Packet | `references/diagrams/packet.md` |
120
- | Git branching / merge strategy | Git Graph | `references/diagrams/git_graph.md` |
121
- | Code-style sequence (programming syntax) | ZenUML | `references/diagrams/zenuml.md` |
122
- | Multi-diagram composition patterns | Complex Examples | `references/diagrams/complex_examples.md` |
123
-
124
- > 💡 **Pick the right type, not the easy one.** Don't default to flowcharts for everything.
125
- > A timeline beats a flowchart for chronological events. A sequence beats a flowchart for
126
- > service interactions. Scan the table and match.
127
-
128
- ---
129
-
130
- ## 🔧 Core workflow
131
-
132
- ### Step 1: Identify the document type
133
-
134
- Check if a template exists before writing from scratch:
135
-
136
- | Document type | Template |
137
- | ------------------------------ | ----------------------------------------------- |
138
- | Pull request record | `templates/pull_request.md` |
139
- | Issue / bug / feature request | `templates/issue.md` |
140
- | Sprint / project board | `templates/kanban.md` |
141
- | Architecture decision (ADR) | `templates/decision_record.md` |
142
- | Presentation / briefing | `templates/presentation.md` |
143
- | Research paper / analysis | `templates/research_paper.md` |
144
- | Project documentation | `templates/project_documentation.md` |
145
- | How-to / tutorial | `templates/how_to_guide.md` |
146
- | Status report | `templates/status_report.md` |
147
-
148
- ### Step 2: Read the style guide
149
-
150
- Before writing any `.md` file: read `references/markdown_style_guide.md`.
151
-
152
- Key rules to internalize:
153
-
154
- - **One H1 per document** — the title. Never more.
155
- - **Emoji on H2 headings only** — one emoji per H2, none in H3/H4
156
- - **Cite everything** — every external claim gets a footnote `[^N]` with full URL
157
- - **Bold sparingly** — max 2-3 bold terms per paragraph, never full sentences
158
- - **Horizontal rule after every `</details>`** — mandatory
159
- - **Tables over prose** for comparisons, configurations, structured data
160
- - **Diagrams over walls of text** — if it describes flow, structure, or relationships, add Mermaid
161
-
162
- ### Step 3: Pick the diagram type and read its guide
163
-
164
- Before creating any Mermaid diagram: read `references/mermaid_style_guide.md`.
165
-
166
- Then open the specific type file (e.g., `references/diagrams/flowchart.md`) for the exemplar, tips, and copy-paste template.
167
-
168
- Mandatory rules for every diagram:
169
-
170
- ```
171
- accTitle: Short Name 3-8 Words
172
- accDescr: One or two sentences explaining what this diagram shows.
173
- ```
174
-
175
- - **No `%%{init}` directives** — breaks GitHub dark mode
176
- - **No inline `style`** — use `classDef` only
177
- - **One emoji per node max** — at the start of the label
178
- - **`snake_case` node IDs** — match the label
179
-
180
- ### Step 4: Write the document
181
-
182
- Start from the template. Apply the markdown style guide. Place diagrams inline with related text — not in a separate "Figures" section.
183
-
184
- ### Step 5: Commit as text
185
-
186
- The `.md` file with embedded Mermaid is what gets committed. If you also generated a PNG or AI image, those are supplementary — the markdown is the source.
187
-
188
- ---
189
-
190
- ## ⚠️ Common pitfalls
191
-
192
- ### Radar chart syntax (`radar-beta`)
193
-
194
- **WRONG:**
195
- ```mermaid
196
- radar
197
- title Example
198
- x-axis ["A", "B", "C"]
199
- "Series" : [1, 2, 3]
200
- ```
201
-
202
- **CORRECT:**
203
- ```mermaid
204
- radar-beta
205
- title Example
206
- axis a["A"], b["B"], c["C"]
207
- curve series["Series"]{1, 2, 3}
208
- max 3
209
- ```
210
-
211
- - **Use `radar-beta`** not `radar` (the bare keyword doesn't exist)
212
- - **Use `axis`** to define dimensions, **not** `x-axis`
213
- - **Use `curve`** to define data series, **not** quoted labels with colon
214
- - **No `accTitle`/`accDescr`** — radar-beta doesn't support accessibility annotations; always add a descriptive italic paragraph above the diagram
215
-
216
- ### XY Chart vs Radar confusion
217
-
218
- | Diagram | Keyword | Axis syntax | Data syntax |
219
- | ------- | ------- | ----------- | ----------- |
220
- | **XY Chart** (bars/lines) | `xychart-beta` | `x-axis ["Label1", "Label2"]` | `bar [10, 20]` or `line [10, 20]` |
221
- | **Radar** (spider/web) | `radar-beta` | `axis id["Label"]` | `curve id["Label"]{10, 20}` |
222
-
223
- ### Forgetting `accTitle`/`accDescr` on supported types
224
-
225
- Only some diagram types support `accTitle`/`accDescr`. For those that don't, always place a descriptive italic paragraph directly above the code block:
226
-
227
- > _Radar chart comparing three methods across five performance dimensions. Note: Radar charts do not support accTitle/accDescr._
228
-
229
- ```mermaid
230
- radar-beta
231
- ...
232
- ```
233
-
234
- ---
235
-
236
- ## 🔗 Integration with other skills
237
-
238
- ### With `scientific-schematics`
239
-
240
- `scientific-schematics` generates AI-powered publication-quality images (PNG). Use the Mermaid diagram as the **brief** for the schematic:
241
-
242
- ```
243
- Workflow:
244
- 1. Create the concept as Mermaid in .md (this skill — Phase 1)
245
- 2. Describe the same concept to scientific-schematics for a polished PNG (Phase 3)
246
- 3. Commit both — the .md as source, the PNG as a supplementary figure
247
- ```
248
-
249
- ### With `scientific-writing`
250
-
251
- When `scientific-writing` produces a manuscript, all diagrams and structural figures should use this skill's standards. The writing skill handles prose and citations; this skill handles visual structure.
252
-
253
- ```
254
- Workflow:
255
- 1. Use scientific-writing to draft the manuscript
256
- 2. For every figure that shows a workflow, architecture, or relationship:
257
- - Replace placeholder with a Mermaid diagram following this skill's guide
258
- 3. Use scientific-schematics only for figures that truly need photorealistic/complex rendering
259
- ```
260
-
261
- ### With `literature-review`
262
-
263
- Literature review produces summaries with lots of relationship data. Use this skill to:
264
-
265
- - Create concept maps (Mindmap) of the literature landscape
266
- - Show publication timelines (Timeline or Gantt)
267
- - Compare methodologies (Quadrant or Radar)
268
- - Diagram data flows described in papers (Sequence or Flowchart)
269
-
270
- ### With any skill that produces output documents
271
-
272
- Before finalizing any document from any skill, apply this skill's checklist:
273
-
274
- - [ ] Does the document use a template? If so, did I start from the right one?
275
- - [ ] Are all diagrams in Mermaid with `accTitle` + `accDescr`?
276
- - [ ] No `%%{init}`, no inline `style`, only `classDef`?
277
- - [ ] Are all external claims cited with `[^N]`?
278
- - [ ] One H1, emoji on H2 only?
279
- - [ ] Horizontal rules after every `</details>`?
280
-
281
- ---
282
-
283
- ## 📚 Reference index
284
-
285
- ### Style guides
286
-
287
- | Guide | Path | Lines | What it covers |
288
- | ----------------------- | ------------------------------------------- | ----- | -------------------------------------------------- |
289
- | Markdown Style Guide | `references/markdown_style_guide.md` | ~733 | Headings, formatting, citations, tables, Mermaid integration, templates, quality checklist |
290
- | Mermaid Style Guide | `references/mermaid_style_guide.md` | ~458 | Accessibility, emoji set, color classes, theme neutrality, type selection, complexity tiers |
291
-
292
- ### Diagram type guides (24 types)
293
-
294
- Each file contains: production-quality exemplar, tips specific to that type, and a copy-paste template.
295
-
296
- `references/diagrams/` — architecture, block, c4, class, complex\_examples, er, flowchart, gantt, git\_graph, kanban, mindmap, packet, pie, quadrant, radar, requirement, sankey, sequence, state, timeline, treemap, user\_journey, xy\_chart, zenuml
297
-
298
- ### Document templates (9 types)
299
-
300
- `templates/` — decision\_record, how\_to\_guide, issue, kanban, presentation, project\_documentation, pull\_request, research\_paper, status\_report
301
-
302
- ### Examples
303
-
304
- `assets/examples/example-research-report.md` — a complete scientific research report demonstrating proper heading hierarchy, multiple diagram types (flowchart, sequence, gantt), tables, footnote citations, collapsible sections, and all style guide rules applied.
305
-
306
- ---
307
-
308
- ## 📝 Attribution
309
-
310
- All style guides, diagram type guides, and document templates in this skill are ported from the `SuperiorByteWorks-LLC/agent-project` repository under the Apache-2.0 License.
311
-
312
- - **Source**: https://github.com/SuperiorByteWorks-LLC/agent-project
313
- - **Author**: Clayton Young / Superior Byte Works, LLC (@borealBytes)
314
- - **License**: Apache-2.0
315
-
316
- This skill (as part of scientific-agent-skills) is distributed under the MIT License. The included Apache-2.0 content is compatible for downstream use with attribution retained, as preserved in the file headers throughout this skill.
317
-
318
- ---
319
-
320
- [^1]: GitHub Blog. (2022). "Include diagrams in your Markdown files with Mermaid." https://github.blog/2022-02-14-include-diagrams-markdown-files-mermaid/
321
-
322
- [^2]: Mermaid. "Mermaid Diagramming and Charting Tool." https://mermaid.js.org/
@@ -1,337 +0,0 @@
1
- ---
2
- name: market-research-reports
3
- description: Build evidence-traceable market research reports and assumption-driven market sizing or forecast scenarios. Use for market definition, industry and customer evidence, competitive landscapes, TAM/SAM/SOM reconciliation, forecast sensitivity, and auditable report scaffolds.
4
- license: MIT
5
- compatibility: Python 3.11+ standard library for optional offline CLIs. The optional LaTeX template uses XeLaTeX or LuaLaTeX. Online research requires user-approved network access and source-specific terms; bundled scripts make no network, LLM, or image calls.
6
- metadata:
7
- version: "1.2"
8
- skill-author: "K-Dense Inc."
9
- ---
10
-
11
- # Market Research Reports
12
-
13
- ## Purpose
14
-
15
- Create decision-focused market reports whose claims, calculations, assumptions,
16
- and uncertainties can be audited. Match depth and format to the question and
17
- evidence. There is no required length, chapter count, visual count, or output
18
- format.
19
-
20
- Do not:
21
-
22
- - imitate or imply affiliation with a consulting, analyst, or research brand;
23
- - invent citations, quotes, market shares, or paid-market figures;
24
- - present TAM/SAM/SOM or a forecast as one certain truth;
25
- - treat a framework, chart, or fluent narrative as evidence;
26
- - provide investment, legal, antitrust, tax, accounting, or regulatory advice.
27
-
28
- ## Operating principles
29
-
30
- 1. **Define before sizing.** Fix product, customer, geography, channel, period,
31
- measure, unit, denominator, currency/base year, and taxonomy.
32
- 2. **Map every claim.** Every factual or quantitative claim has a claim ID and
33
- exact source IDs.
34
- 3. **Separate statement types.** Distinguish facts, estimates, calculations,
35
- forecasts, opinions, and recommendations.
36
- 4. **Prefer primary evidence.** Use official statistics, regulator records,
37
- filed company disclosures, and transparent original studies before
38
- secondary synthesis.
39
- 5. **Preserve uncertainty.** Retain source conflicts, revisions, scenario
40
- ranges, sensitivity, and limitations.
41
- 6. **Keep methods reproducible.** Use local structured inputs and deterministic
42
- calculations when practical.
43
- 7. **Collect lawfully and ethically.** No deception, PII disclosure, access
44
- circumvention, confidential material, or trade-secret acquisition.
45
-
46
- ## Workflow
47
-
48
- ### 1. Establish the research contract
49
-
50
- Clarify:
51
-
52
- - decision, audience, deadline, and materiality threshold;
53
- - formal market definition and adjacent exclusions;
54
- - buyer, payer, user, transaction, and value-chain level;
55
- - geography and treatment of imports, exports, and channels;
56
- - historical period, forecast period, and retrieval cutoff;
57
- - revenue/expenditure, gross output/value added, units, capacity, users, or
58
- another measure;
59
- - stock/flow, gross/net, taxes, and denominator;
60
- - currency, base year, and nominal/real/current/constant basis;
61
- - industry and product classification with version;
62
- - permitted data sources, primary research, confidentiality, and output format.
63
-
64
- Ask a focused question when a missing choice would materially change the
65
- denominator or result. Otherwise state a provisional scope and proceed.
66
-
67
- Use `references/report_structure_guide.md` for modular report design.
68
-
69
- ### 2. Build the evidence plan
70
-
71
- Route each question to the source closest to the underlying event:
72
-
73
- 1. primary law, regulator decision, official filing, or official statistic;
74
- 2. original company filing or attributable first-party disclosure;
75
- 3. transparent survey/study with inspectable methods;
76
- 4. institutional or peer-reviewed research using identifiable primary data;
77
- 5. industry association data with disclosed coverage;
78
- 6. reputable secondary synthesis;
79
- 7. lawfully accessed paid estimate with inspectable scope and method;
80
- 8. news/commentary for leads or attributable events.
81
-
82
- For company data, prefer the official filing system in the relevant
83
- jurisdiction. For industry, labor, prices, population, trade, and national
84
- accounts, prefer the responsible national statistical agency or central bank.
85
- For cross-country work, use harmonized World Bank, IMF, OECD, or Eurostat data
86
- only after checking definitions and original-source lineage.
87
-
88
- Read `references/official_data_sources.md` before using public APIs. API rules
89
- and limits are a dated snapshot: verify current official terms before automated
90
- or high-volume retrieval. Never put an API key in a report or bundled script.
91
-
92
- ### 3. Create the source ledger
93
-
94
- Assign stable IDs (`S-001`, `S-002`, ...). Record:
95
-
96
- - title, publisher, URL/persistent ID, source type;
97
- - publication date and retrieval date;
98
- - original producer when accessed through an aggregator;
99
- - geography, covered population, period, and vintage;
100
- - currency, base year, price basis, measure type, unit, and denominator;
101
- - taxonomy and version;
102
- - preliminary/revised/final/current status;
103
- - method, sample, imputation, suppression, and limitations;
104
- - license/terms and lawful local snapshot path.
105
-
106
- Use `assets/source_ledger_template.csv` and validate it:
107
-
108
- ```bash
109
- python3 scripts/validate_evidence_ledger.py data/source_ledger.csv
110
- ```
111
-
112
- If publication date is unavailable, record `not-stated`; do not guess.
113
-
114
- ### 4. Maintain a claims ledger
115
-
116
- Assign IDs (`C-001`, ...). Keep the exact claim text, statement type, source
117
- IDs, report location, as-of date, geography, currency/base, measure/unit,
118
- taxonomy, revision status, confidence, calculation ID, and assumption IDs.
119
-
120
- Rules:
121
-
122
- - one end-of-paragraph citation does not support unrelated sentences;
123
- - split compound claims that rely on different evidence;
124
- - a calculation cites its inputs, not a source that never published the result;
125
- - an aggregator and its original source are not independent corroboration;
126
- - an interview theme is not population prevalence;
127
- - absence of public feature evidence means `unknown`, not `no`.
128
-
129
- Audit mappings:
130
-
131
- ```bash
132
- python3 scripts/audit_claim_citations.py \
133
- data/claims.csv data/source_ledger.csv
134
- ```
135
-
136
- See `references/evidence_model.md`.
137
-
138
- ### 5. Size the market as scenarios
139
-
140
- #### Measurement guardrails
141
-
142
- Give every component a disjoint `coverage_key` and one shared
143
- `denominator_id`. Do not add:
144
-
145
- - manufacturer revenue to distributor or end-customer spend;
146
- - production, imports, and sales without trade/inventory reconciliation;
147
- - parent and subsidiary revenue;
148
- - bundles and their included components;
149
- - gross output and value added;
150
- - installed-base stock and annual transaction flow;
151
- - overlapping customer or geographic segments.
152
-
153
- Use product classifications and supply-use logic when industry codes are too
154
- broad. Preserve an unknown/residual category instead of forcing totals.
155
-
156
- #### Top-down and bottom-up
157
-
158
- Compute independently:
159
-
160
- ```text
161
- TAM_top = sum(disjoint in-scope component values)
162
-
163
- TAM_bottom =
164
- sum(customer_count
165
- * addressable_fraction
166
- * annual_quantity_per_customer
167
- * price_per_unit)
168
- ```
169
-
170
- Then apply scenario-specific serviceability and capture assumptions:
171
-
172
- ```text
173
- SAM_s = TAM * serviceable_fraction_s
174
- SOM_s = SAM_s * obtainable_share_s
175
- ```
176
-
177
- Use at least two genuinely different scenarios; a downside/base/upside set is
178
- usually useful. State horizon, constraints, evidence, and assumptions. SOM is
179
- not a guaranteed revenue forecast.
180
-
181
- Run the deterministic calculator:
182
-
183
- ```bash
184
- python3 scripts/calculate_market_sizing.py \
185
- assets/market_sizing_scenarios_template.json
186
- ```
187
-
188
- Report both methods, midpoint-relative gap, scope differences, sensitivity, and
189
- unresolved reconciliation. Do not average incompatible methods.
190
-
191
- ### 6. Forecast with explicit uncertainty
192
-
193
- Separate observed, estimated, and forecast periods. Record series ID,
194
- frequency, units, seasonal adjustment, transformations, taxonomy breaks,
195
- retrieval date, and vintage/revisions.
196
-
197
- For each scenario:
198
-
199
- - provide an annual rate path or driver equations;
200
- - state demand, price, supply, regulation, competition, capacity, and timing
201
- assumptions;
202
- - list evidence and assumption IDs;
203
- - identify conditions that invalidate the scenario.
204
-
205
- Do not call scenario bounds confidence or prediction intervals. Do not assign
206
- probabilities without a validated probabilistic model and diagnostics.
207
-
208
- Run:
209
-
210
- ```bash
211
- python3 scripts/forecast_sensitivity.py \
212
- assets/forecast_sensitivity_template.json
213
- ```
214
-
215
- Show the range by year, endpoint sensitivity, influential assumptions, and
216
- switching values. See `references/data_analysis_patterns.md`.
217
-
218
- ### 7. Analyze customers and primary research
219
-
220
- For survey evidence, disclose sponsor, target population, frame,
221
- probability/non-probability design, recruitment, mode/language, field dates,
222
- unweighted sample, subgroup bases, weighting, response/participation,
223
- instrument wording, precision, processing, and limitations.
224
-
225
- For interviews/focus groups, disclose recruitment, consent, role coverage,
226
- dates/mode, guide, coding, divergent evidence, privacy controls, and limits to
227
- generalization.
228
-
229
- Never:
230
-
231
- - collect more personal data than necessary;
232
- - place direct identifiers or raw recordings in report artifacts;
233
- - use research as disguised selling or lead generation;
234
- - misrepresent identity/purpose;
235
- - pressure participants to reveal employer/customer secrets;
236
- - report qualitative mention counts as market prevalence.
237
-
238
- Follow `references/methods_and_ethics.md`.
239
-
240
- ### 8. Analyze competitors and concentration
241
-
242
- Define product and geographic scope from the customer perspective before
243
- selecting competitors or calculating shares. Consider non-price dimensions,
244
- channels, imports, digital/multi-sided features, innovation, and dynamic change
245
- where relevant.
246
-
247
- Use lawful public evidence and a common product edition, geography, and as-of
248
- date. Validate a complete matrix:
249
-
250
- ```bash
251
- python3 scripts/validate_competitor_matrix.py \
252
- assets/competitor_feature_matrix_template.csv \
253
- --source-ledger assets/source_ledger_template.csv
254
- ```
255
-
256
- For shares, state revenue/units/capacity/users or other metric, denominator,
257
- period, residual share, and source coverage. HHI/CRn are descriptive screens,
258
- not legal conclusions. A TAM category is not automatically a relevant antitrust
259
- market.
260
-
261
- ### 9. Normalize units and definitions
262
-
263
- Before combining values:
264
-
265
- - align geography, period, stock/flow, gross/net, unit, and denominator;
266
- - convert currencies with an identified source and rate convention;
267
- - align base year and nominal/real basis;
268
- - do not force chained-dollar additivity;
269
- - preserve taxonomy versions and document concordance uncertainty;
270
- - record every conversion as a calculation.
271
-
272
- Check comparison groups:
273
-
274
- ```bash
275
- python3 scripts/check_unit_consistency.py \
276
- assets/consistency_check_template.csv
277
- ```
278
-
279
- ### 10. Draft and review
280
-
281
- Lead with findings and uncertainty, not frameworks. Use optional frameworks
282
- only to organize questions; do not force scores or a fixed number of factors.
283
- Keep recommendations separate from evidence and include dependencies,
284
- trade-offs, decision thresholds, and disconfirming evidence.
285
-
286
- Visuals are optional. If used, build them from validated local data and include
287
- scope, units, source IDs, calculation ID, observed/forecast distinction, and
288
- limitations. See `references/visual_generation_guide.md`.
289
-
290
- Generate a Markdown workspace:
291
-
292
- ```bash
293
- python3 scripts/generate_report_scaffold.py \
294
- assets/report_manifest_template.json ./market-report-workspace
295
- ```
296
-
297
- Or use the optional LaTeX assets:
298
-
299
- - `assets/market_report_template.tex`
300
- - `assets/market_research.sty`
301
- - `assets/FORMATTING_GUIDE.md`
302
-
303
- ## Release gate
304
-
305
- - Market boundary, taxonomy, denominator, geography, and period are explicit.
306
- - Every factual/quantitative claim maps to exact source IDs.
307
- - Publication/retrieval dates, revisions, method, and limitations are recorded.
308
- - Currency/base year, nominal/real basis, stock/flow, and units are consistent.
309
- - Top-down and bottom-up methods use disjoint coverage and are reconciled.
310
- - TAM/SAM/SOM and forecasts are conditional scenarios with sensitivity.
311
- - Survey/interview evidence carries method, privacy, and inference limits.
312
- - Competitor evidence is lawful, dated, scoped, and uses `unknown` honestly.
313
- - Source conflicts and revisions remain visible.
314
- - No fabricated/unsupported paid figures, PII, trade secrets, deceptive
315
- collection, brand impersonation, or investment-advice framing appears.
316
-
317
- ## Bundled resources
318
-
319
- ### References
320
-
321
- - `references/report_structure_guide.md` — modular report architecture.
322
- - `references/evidence_model.md` — claim-source mapping and provenance.
323
- - `references/data_analysis_patterns.md` — sizing, forecast, consistency,
324
- survey, and concentration methods.
325
- - `references/official_data_sources.md` — current official source/API routing.
326
- - `references/methods_and_ethics.md` — survey, interview, privacy, competitor,
327
- and antitrust safeguards.
328
- - `references/visual_generation_guide.md` — optional evidence-led displays.
329
- - `references/sources.md` — dated authoritative source ledger.
330
-
331
- ### Templates and CLIs
332
-
333
- Use the templates in `assets/` as synthetic schemas, not real-world evidence.
334
- All scripts in `scripts/` are standard-library, bounded, local-only tools. They
335
- reject oversized or malformed input, do not follow symlink inputs, do not
336
- overwrite outputs without explicit permission, and make no network, LLM, image,
337
- dynamic-evaluation, or pickle calls.