@pikaa-ai/pikaa 0.3.23 → 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 +337 -162
  6. package/dist/index.js +1 -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,329 +0,0 @@
1
- ---
2
- name: citation-management
3
- description: Comprehensive citation management for academic research. Search OpenAlex, PubMed, and Google Scholar for papers, extract accurate metadata, validate citations, and generate properly formatted BibTeX entries. This skill should be used when you need to find papers, verify citation information, convert DOIs to BibTeX, or ensure reference accuracy in scientific writing.
4
- allowed-tools: Read Write Edit Bash WebSearch WebFetch
5
- license: MIT License
6
- compatibility: Requires Python 3.9+ with requests. Google Scholar search additionally needs scholarly. Needs network access to api.openalex.org, api.crossref.org, eutils.ncbi.nlm.nih.gov, export.arxiv.org, and api.datacite.org.
7
- metadata:
8
- version: "2.0"
9
- skill-author: K-Dense Inc.
10
- openclaw:
11
- envVars:
12
- - name: NCBI_EMAIL
13
- required: false
14
- description: Email for NCBI Entrez identification.
15
- - name: NCBI_API_KEY
16
- required: false
17
- description: NCBI API key to raise Entrez rate limits.
18
- - name: OPENALEX_EMAIL
19
- required: false
20
- description: Contact email for the faster OpenAlex polite pool.
21
- ---
22
-
23
- # Citation Management
24
-
25
- ## Overview
26
-
27
- Manage citations systematically throughout the research and writing process. This skill provides tools and strategies for searching academic databases (Google Scholar, PubMed), extracting accurate metadata from multiple sources (CrossRef, PubMed, arXiv), validating citation information, and generating properly formatted BibTeX entries.
28
-
29
- Critical for maintaining citation accuracy, avoiding reference errors, and ensuring reproducible research. Integrates seamlessly with the literature-review skill for comprehensive research workflows.
30
-
31
- ## When to Use This Skill
32
-
33
- Use this skill when:
34
- - Searching for specific papers on Google Scholar or PubMed
35
- - Converting DOIs, PMIDs, or arXiv IDs to properly formatted BibTeX
36
- - Extracting complete metadata for citations (authors, title, journal, year, etc.)
37
- - Validating existing citations for accuracy
38
- - Cleaning and formatting BibTeX files
39
- - Finding highly cited papers in a specific field
40
- - Verifying that citation information matches the actual publication
41
- - Building a bibliography for a manuscript or thesis
42
- - Checking for duplicate citations
43
- - Ensuring consistent citation formatting
44
-
45
- If a document built from these citations needs a diagram, use the
46
- **scientific-schematics** skill.
47
-
48
- ---
49
-
50
- ## Core Workflow
51
-
52
- Citation management follows a systematic process. Each phase below shows the canonical
53
- command; every variant, option, and metadata-source detail is in
54
- [references/core_workflow.md](references/core_workflow.md).
55
-
56
- ### Phase 1: Paper Discovery and Search
57
-
58
- Find relevant papers. Search more than one database — coverage differs sharply,
59
- and a single source is the most common cause of a biased reference list.
60
-
61
- ```bash
62
- # OpenAlex: ~250M works, every discipline, no API key, documented REST API
63
- python scripts/search_openalex.py "CRISPR gene editing" --limit 50 --output results.json
64
-
65
- # PubMed: the authority for biomedical and life sciences (35M+ citations)
66
- python scripts/search_pubmed.py "Alzheimer's disease treatment" --limit 100 --output alz.json
67
-
68
- # Google Scholar: broadest reach, but scraped -- rate-limited and prone to blocking
69
- python scripts/search_google_scholar.py "CRISPR gene editing" --limit 50 --output scholar.json
70
- ```
71
-
72
- Prefer OpenAlex or PubMed as the primary source. Google Scholar has no API:
73
- `scholarly` scrapes it, sleeps 2–5 s between results, and is blocked often
74
- enough that it should be a supplement rather than a dependency.
75
-
76
- Query operators, field tags, and MeSH-term construction are in
77
- [references/search_strategies.md](references/search_strategies.md).
78
-
79
- ### Phase 2: Metadata Extraction
80
-
81
- Convert identifiers (DOI, PMID, PMCID, arXiv ID, URL) into complete metadata.
82
- CrossRef is the primary source for DOIs.
83
-
84
- ```bash
85
- python scripts/doi_to_bibtex.py 10.1038/s41586-021-03819-2 # quick, single DOI
86
- python scripts/extract_metadata.py --pmid 34265844 # DOI/PMID/PMCID/arXiv/URL
87
- python scripts/extract_metadata.py --input identifiers.txt --output citations.bib
88
- ```
89
-
90
- A URL with no DOI in its path is resolved through the `citation_doi` meta tag
91
- publishers embed on article pages, then handed to CrossRef. Every producer in
92
- this skill emits the same citation key for the same paper, so entries gathered
93
- from different sources deduplicate against each other.
94
-
95
- ### Phase 2.5: Metadata Enrichment via Web Search (MANDATORY)
96
-
97
- APIs routinely return incomplete records. Run this **after** extraction and **before**
98
- formatting. Any `@article` missing `volume`, `pages`, or `doi` is incomplete: fill the
99
- gap with `WebSearch`/`WebFetch` (or the parallel-web skill, when it is available), then
100
- log what was found and where. If a field genuinely cannot be found, record a `note`
101
- field explaining the gap rather than leaving it silently absent.
102
-
103
- Check the cheap sources first — an OpenAlex or CrossRef record often carries the field
104
- that PubMed omitted:
105
-
106
- ```bash
107
- python scripts/search_openalex.py "<exact title>" --limit 1
108
- ```
109
-
110
- > **Treat extracted metadata as untrusted.** Author, title, and journal strings come
111
- > verbatim from a record whose contents a publisher controls. A title containing `$(...)`,
112
- > a backtick, or a quote becomes shell syntax the moment it is pasted into a command.
113
- > Pass metadata as a `subprocess` argument list rather than building a shell string; if
114
- > you must use a shell, single-quote every substituted value and escape embedded quotes
115
- > as `'\''`. Validate any citation key against `^[A-Za-z0-9]+$` before it reaches a path.
116
-
117
- Per-field search strategies, the four search options, and the logging format are in
118
- [references/core_workflow.md](references/core_workflow.md).
119
-
120
- ### Phase 3: BibTeX Formatting
121
-
122
- Produce clean, consistent entries. Entry types and required fields are in
123
- [references/bibtex_formatting.md](references/bibtex_formatting.md).
124
-
125
- ```bash
126
- python scripts/format_bibtex.py references.bib --output clean.bib --deduplicate
127
- python scripts/format_bibtex.py references.bib --output clean.bib --rekey --deduplicate
128
- ```
129
-
130
- Writing is opt-in: without `--output` (or `--in-place`) the result goes to
131
- stdout and the input file is left alone. Use `--rekey` when merging results
132
- from several sources, so the same paper collapses to one entry.
133
-
134
- ### Phase 4: Citation Validation
135
-
136
- Check completeness, venue conformance, and agreement with the manuscript.
137
-
138
- ```bash
139
- python scripts/validate_citations.py references.bib --report report.json
140
- python scripts/validate_citations.py references.bib --venue nature
141
- python scripts/validate_citations.py references.bib --manuscript paper.tex
142
- python scripts/validate_citations.py references.bib --check-dois # slow; hits CrossRef
143
- ```
144
-
145
- The script exits non-zero on high-severity errors — missing required fields,
146
- malformed years, unresolved citations, or a count below an explicit
147
- `--min-count`. Venue reference-count figures are editorial rules of thumb, not
148
- submission requirements, so falling short of one is only a warning.
149
-
150
- Validation rules and venue standards are in
151
- [references/citation_validation.md](references/citation_validation.md).
152
-
153
- ### Phase 5: Integration with Writing Workflow
154
-
155
- Search, extract, format, validate, then cite. End-to-end sequences — including the
156
- literature-review and Zotero/pyzotero export paths — are in
157
- [references/core_workflow.md](references/core_workflow.md) and
158
- [references/example_workflows.md](references/example_workflows.md).
159
-
160
- ## Reference Files
161
-
162
- - [references/core_workflow.md](references/core_workflow.md): all five phases in full.
163
- - [references/search_strategies.md](references/search_strategies.md): OpenAlex, Google Scholar, and PubMed query construction.
164
- - [references/script_reference.md](references/script_reference.md): every bundled script's arguments and examples.
165
- - [references/best_practices.md](references/best_practices.md): search, extraction, BibTeX quality, validation.
166
- - [references/example_workflows.md](references/example_workflows.md): four end-to-end worked examples.
167
- - [references/google_scholar_search.md](references/google_scholar_search.md), [references/pubmed_search.md](references/pubmed_search.md): advanced search syntax.
168
- - [references/metadata_extraction.md](references/metadata_extraction.md), [references/bibtex_formatting.md](references/bibtex_formatting.md), [references/citation_validation.md](references/citation_validation.md): per-topic detail.
169
-
170
- ## Common Pitfalls to Avoid
171
-
172
- 1. **Single source bias**: Only using one database
173
- - **Solution**: Search at least OpenAlex and PubMed, then merge with
174
- `format_bibtex.py --rekey --deduplicate`
175
-
176
- 2. **Accepting metadata blindly**: Not verifying extracted information
177
- - **Solution**: Spot-check extracted metadata against original sources
178
-
179
- 3. **Ignoring DOI errors**: Broken or incorrect DOIs in bibliography
180
- - **Solution**: Run validation before final submission
181
-
182
- 4. **Inconsistent formatting**: Mixed citation key styles, formatting
183
- - **Solution**: Use format_bibtex.py to standardize
184
-
185
- 5. **Duplicate entries**: Same paper cited multiple times with different keys
186
- - **Solution**: Use duplicate detection in validation
187
-
188
- 6. **Missing required fields**: Incomplete BibTeX entries (volume, pages, DOI missing)
189
- - **Solution**: Run Phase 2.5 metadata enrichment — web search for every missing field before proceeding. NEVER leave an @article entry without volume, pages, and DOI.
190
-
191
- 7. **Outdated preprints**: Citing preprint when published version exists
192
- - **Solution**: Check if preprints have been published, update to journal version
193
-
194
- 8. **Special character issues**: Broken LaTeX compilation due to characters
195
- - **Solution**: Use proper escaping or Unicode in BibTeX
196
-
197
- 9. **No validation before submission**: Submitting with citation errors
198
- - **Solution**: Always run validation as final check
199
-
200
- 10. **Manual BibTeX entry**: Typing entries by hand
201
- - **Solution**: Always extract from metadata sources using scripts
202
-
203
- ## Integration with Other Skills
204
-
205
- ### Literature Review Skill
206
-
207
- **Citation Management** provides the technical infrastructure for **Literature Review**:
208
-
209
- - **Literature Review**: Multi-database systematic search and synthesis
210
- - **Citation Management**: Metadata extraction and validation
211
-
212
- **Combined workflow**:
213
- 1. Use literature-review for systematic search methodology
214
- 2. Use citation-management to extract and validate citations
215
- 3. Use literature-review to synthesize findings
216
- 4. Use citation-management to ensure bibliography accuracy
217
-
218
- ### Scientific Writing Skill
219
-
220
- **Citation Management** ensures accurate references for **Scientific Writing**:
221
-
222
- - Export validated BibTeX for use in LaTeX manuscripts
223
- - Verify citations match publication standards
224
- - Format references according to journal requirements
225
-
226
- ### Venue Templates Skill
227
-
228
- **Citation Management** works with **Venue Templates** for submission-ready manuscripts:
229
-
230
- - Different venues require different citation styles
231
- - Generate properly formatted references
232
- - Validate citations meet venue requirements
233
-
234
- ## Resources
235
-
236
- ### Bundled Resources
237
-
238
- **References** (in `references/`):
239
- - `google_scholar_search.md`: Complete Google Scholar search guide
240
- - `pubmed_search.md`: PubMed and E-utilities API documentation
241
- - `metadata_extraction.md`: Metadata sources and field requirements
242
- - `citation_validation.md`: Validation criteria and quality checks
243
- - `bibtex_formatting.md`: BibTeX entry types and formatting rules
244
-
245
- **Scripts** (in `scripts/`):
246
- - `search_openalex.py`: OpenAlex search client (no API key)
247
- - `search_pubmed.py`: PubMed E-utilities API client
248
- - `search_google_scholar.py`: Google Scholar search automation
249
- - `extract_metadata.py`: Universal metadata extractor
250
- - `validate_citations.py`: Citation validation and verification
251
- - `format_bibtex.py`: BibTeX formatter and cleaner
252
- - `doi_to_bibtex.py`: Quick DOI to BibTeX converter
253
- - `_common.py`: shared BibTeX parser, renderer, and citation-key scheme
254
-
255
- **Assets** (in `assets/`):
256
- - `bibtex_template.bib`: Example BibTeX entries for all types
257
- - `citation_checklist.md`: Quality assurance checklist
258
-
259
- ### External Resources
260
-
261
- **Search Engines**:
262
- - OpenAlex: https://openalex.org/
263
- - Google Scholar: https://scholar.google.com/
264
- - PubMed: https://pubmed.ncbi.nlm.nih.gov/
265
- - PubMed Advanced Search: https://pubmed.ncbi.nlm.nih.gov/advanced/
266
-
267
- **Metadata APIs**:
268
- - OpenAlex API: https://docs.openalex.org/
269
- - CrossRef API: https://api.crossref.org/
270
- - PubMed E-utilities: https://www.ncbi.nlm.nih.gov/books/NBK25501/
271
- - arXiv API: https://arxiv.org/help/api/
272
- - DataCite API: https://api.datacite.org/
273
-
274
- **Tools and Validators**:
275
- - MeSH Browser: https://meshb.nlm.nih.gov/search
276
- - DOI Resolver: https://doi.org/
277
- - BibTeX Format: http://www.bibtex.org/Format/
278
-
279
- **Citation Styles**:
280
- - BibTeX documentation: http://www.bibtex.org/
281
- - LaTeX bibliography management: https://www.overleaf.com/learn/latex/Bibliography_management
282
-
283
- ## Dependencies
284
-
285
- ### Required Python Packages
286
-
287
- ```bash
288
- uv pip install requests # HTTP access to CrossRef, PubMed, OpenAlex, arXiv
289
- ```
290
-
291
- BibTeX parsing, rendering, deduplication, and validation are standard library
292
- (`scripts/_common.py`), so `format_bibtex.py` and `validate_citations.py` run
293
- with no third-party packages at all.
294
-
295
- ### Optional
296
-
297
- ```bash
298
- uv pip install scholarly # only for search_google_scholar.py
299
- ```
300
-
301
- ### Where credentials are sent
302
-
303
- This skill needs no API key. The two environment variables it reads are
304
- optional identifiers, each sent to the one service it belongs to and nowhere
305
- else; no script bundles environment variables together.
306
-
307
- | Variable | Sent only to | Purpose |
308
- |---|---|---|
309
- | `NCBI_API_KEY` | `eutils.ncbi.nlm.nih.gov` | Raises Entrez rate limits |
310
- | `NCBI_EMAIL` | `eutils.ncbi.nlm.nih.gov` | Entrez caller identification (requested by NCBI) |
311
- | `OPENALEX_EMAIL` | `api.openalex.org` | Joins the faster OpenAlex polite pool |
312
-
313
- `api.openalex.org`, `api.crossref.org`, `api.datacite.org`, `export.arxiv.org`,
314
- and `eutils.ncbi.nlm.nih.gov` are all queried without credentials when these are
315
- unset.
316
-
317
- ## Summary
318
-
319
- The citation-management skill provides:
320
-
321
- 1. **Comprehensive search capabilities** for OpenAlex, PubMed, and Google Scholar
322
- 2. **Automated metadata extraction** from DOI, PMID, PMCID, arXiv ID, URLs
323
- 3. **Citation validation** with DOI verification and completeness checking
324
- 4. **BibTeX formatting** with standardization and cleaning tools
325
- 5. **Quality assurance** through validation and reporting
326
- 6. **Integration** with scientific writing workflow
327
- 7. **Reproducibility** through documented search and extraction methods
328
-
329
- Use this skill to maintain accurate, complete citations throughout your research and ensure publication-ready bibliographies.
@@ -1,238 +0,0 @@
1
- ---
2
- name: clinical-decision-support
3
- description: Prepare and validate research-only clinical decision-support evaluation, evidence-profile, cohort, survival, biomarker/model, privacy, and governance artifacts. Use for aggregate or synthetic research documentation and traceability—not patient care or live clinical operation.
4
- license: MIT
5
- compatibility: Python 3.11+; local files only; bundled scripts use the standard library and require no network, credentials, API keys, LLMs, or image services.
6
- metadata:
7
- version: "2.1"
8
- skill-author: K-Dense Inc.
9
- ---
10
-
11
- # Clinical Decision-Support Research and Evaluation
12
-
13
- ## Hard Safety Boundary
14
-
15
- This skill produces **research, evaluation, documentation, and governance artifacts only**.
16
-
17
- Never use it to:
18
-
19
- - diagnose or classify a person;
20
- - recommend, select, sequence, start, stop, or modify treatment;
21
- - calculate or communicate a patient-specific dose;
22
- - triage, prioritize, alarm, alert, or determine urgency;
23
- - make or automate a patient-specific clinical decision;
24
- - support bedside, point-of-care, or live clinical operation;
25
- - replace professional judgment or a validated, authorized clinical system;
26
- - claim FDA authorization, regulatory conformity, HIPAA compliance, or legal compliance.
27
-
28
- If a request could affect care for a person, stop the workflow and route the matter to a licensed healthcare professional using locally validated and appropriately authorized systems. Do not redirect to another skill for patient-specific care.
29
-
30
- ## In Scope
31
-
32
- - Intended-use and limitation statements for research artifacts
33
- - Aggregate cohort table shells with disclosure controls
34
- - Statistical analysis plans and survival-analysis plan review
35
- - Aggregate model or biomarker performance evaluation
36
- - Transparent GRADE evidence-profile checklists
37
- - Evidence-source and decision-logic traceability
38
- - De-identification process checklists
39
- - Fairness, subgroup, calibration, uncertainty, external-validation, monitoring, change-control, audit, and human-factors documentation
40
-
41
- Outputs remain drafts until qualified humans approve them. Reporting guidance improves transparency; it does not establish study quality, clinical utility, safety, effectiveness, authorization, or compliance.
42
-
43
- ## Data Gate
44
-
45
- Before any script:
46
-
47
- 1. Confirm input is synthetic or aggregate.
48
- 2. Reject patient rows, records, narratives, identifiers, free text, dates tied to people, images, waveforms, or genomic sequences.
49
- 3. Keep source files local. Do not fetch URLs, call APIs, read environment variables, or send data to a model.
50
- 4. Set disclosure thresholds before producing tables.
51
- 5. Record provenance, data cut date, population, exclusions, missingness, and transformations.
52
-
53
- The scripts cap file size, groups, rows, and text length. They reject URL-like paths and common row-level keys. These controls reduce accidental misuse; they are not a privacy determination.
54
-
55
- ## Required Artifact Header
56
-
57
- Every artifact must visibly include:
58
-
59
- - `artifact_type`, title, version, status, owner, date, and change summary;
60
- - intended purpose, intended users, aggregate population scope, and decision role;
61
- - all prohibited uses from the hard boundary;
62
- - data level and confirmation that no PHI or raw rows were supplied;
63
- - limitations, uncertainty, and foreseeable failure modes;
64
- - external-validation and subgroup applicability status;
65
- - human-review roles, completion status, and approval boundary;
66
- - source citations with versions or dates;
67
- - monitoring, change-control, retirement, and audit expectations;
68
- - the statement: **Not for patient care or live clinical use.**
69
-
70
- Start from `assets/artifact_intended_use_template.json`.
71
-
72
- ## Workflow
73
-
74
- ### 1. Frame the Research Question
75
-
76
- - Define the estimand or evaluation target before viewing results.
77
- - Distinguish descriptive, prognostic, predictive, diagnostic-accuracy, and causal questions.
78
- - Pre-specify outcomes, time origin, horizon, subgroups, cut points, missing-data handling, multiplicity, and sensitivity analyses.
79
- - Separate exploratory findings from confirmatory analyses.
80
-
81
- ### 2. Select the Artifact
82
-
83
- | Need | Asset | Script |
84
- |---|---|---|
85
- | Intended-use/governance review | `assets/artifact_intended_use_template.json` | `scripts/validate_cds_artifact.py` |
86
- | GRADE evidence profile | `assets/evidence_profile_template.json` | `scripts/evidence_profile_check.py` |
87
- | Aggregate model/biomarker evaluation | `assets/aggregate_model_evaluation_template.json` | `scripts/model_biomarker_evaluation.py` |
88
- | Aggregate cohort table | `assets/aggregate_cohort_table_template.json` | `scripts/cohort_table_generator.py` |
89
- | Survival analysis plan | `assets/survival_analysis_plan_template.json` | `scripts/survival_plan_validator.py` |
90
- | Logic traceability matrix | `assets/decision_logic_traceability_template.json` | `scripts/decision_logic_traceability.py` |
91
- | De-identification process review | `assets/deidentification_checklist_template.json` | `scripts/deidentification_checklist.py` |
92
-
93
- ### 3. Run Locally
94
-
95
- All helpers are dependency-free:
96
-
97
- ```bash
98
- python3 scripts/validate_cds_artifact.py --help
99
- python3 scripts/evidence_profile_check.py --help
100
- python3 scripts/model_biomarker_evaluation.py --help
101
- python3 scripts/cohort_table_generator.py --help
102
- python3 scripts/survival_plan_validator.py --help
103
- python3 scripts/decision_logic_traceability.py --help
104
- python3 scripts/deidentification_checklist.py --help
105
- ```
106
-
107
- Write outputs only to a reviewed local directory. Never place generated reports in an EHR, alerting system, clinical portal, or device workflow.
108
-
109
- ### 4. Human Review
110
-
111
- Require review proportionate to the artifact:
112
-
113
- - methodologist/statistician for design and analysis;
114
- - domain expert for clinical-scientific context;
115
- - privacy officer or qualified expert for disclosure decisions;
116
- - regulatory or legal counsel for jurisdiction-specific interpretations;
117
- - human-factors specialist for user studies;
118
- - authorized governance owner for release and change control.
119
-
120
- Script success means only that declared fields and internal consistency checks passed.
121
-
122
- ## GRADE Evidence Profiles
123
-
124
- Do not infer a certainty rating from article text, study design alone, p-values, or keywords. Do not use the legacy `1A/2B` shorthand as if it were universal GRADE output.
125
-
126
- For each important outcome, a human panel must document:
127
-
128
- - risk of bias;
129
- - inconsistency;
130
- - indirectness;
131
- - imprecision;
132
- - publication bias;
133
- - any applicable upgrading considerations;
134
- - effect estimate and uncertainty;
135
- - rationale and source IDs for every judgment;
136
- - final certainty judgment and named review role.
137
-
138
- The checker validates completeness and citation links only. It never calculates certainty or recommendation strength. See `references/evidence_profiles.md`.
139
-
140
- ## Aggregate Model and Biomarker Evaluation
141
-
142
- Do not derive thresholds, assign molecular or disease classes, match therapies, or emit person-level predictions.
143
-
144
- The evaluator accepts only aggregate confusion counts and calibration bins. It reports bounded descriptive metrics with Wilson intervals, calibration gaps, subgroup differences, and explicit suppression. It does not determine fairness, clinical utility, or fitness for use. Require:
145
-
146
- - locked model/assay/version and pre-specified threshold provenance;
147
- - representative internal validation and independent external validation;
148
- - calibration and discrimination appropriate to the target;
149
- - subgroup performance with uncertainty and sample sizes;
150
- - missingness, spectrum/selection bias, dataset shift, and assay variability;
151
- - human-factors and prospective evaluation where relevant;
152
- - monitoring, change control, rollback, and retirement criteria.
153
-
154
- See `references/model_biomarker_evaluation.md`.
155
-
156
- ## Cohort Tables
157
-
158
- Use aggregate cells only. Do not provide row-level data to the generator.
159
-
160
- - Choose the minimum cell threshold under an approved disclosure policy.
161
- - Apply primary and complementary suppression.
162
- - Report denominators and missingness.
163
- - Avoid baseline significance testing as a balance diagnostic.
164
- - Label adjusted, unadjusted, pre-specified, and exploratory results.
165
- - Do not interpret association as causation or clinical actionability.
166
-
167
- The default threshold is an operational safeguard, not a HIPAA rule or guarantee. See `references/cohort_evaluation.md` and `references/privacy_and_disclosure.md`.
168
-
169
- ## Survival Plans
170
-
171
- Define time zero, event, competing events, censoring, intercurrent events, estimand, horizon, effect measure, and analysis population together.
172
-
173
- - Assess proportional hazards before treating a hazard ratio as constant.
174
- - Pre-specify alternatives such as time-varying effects or restricted mean survival time.
175
- - Use cumulative-incidence methods when competing events matter.
176
- - Address immortal-time, informative-censoring, delayed-entry, missing-data, and multiplicity risks.
177
- - Include sensitivity analyses and uncertainty, not only p-values.
178
-
179
- The bundled helper validates a plan; it does not analyze survival data. See `references/survival_analysis.md`.
180
-
181
- ## Decision Logic
182
-
183
- Only document research or governance logic, such as evidence inclusion, validation gates, release holds, and human-review checkpoints. Each node must link to source IDs, tests, owner, version, and status.
184
-
185
- Do not encode care pathways, urgency, medication actions, diagnostic rules, alarms, or patient-facing outputs. See `references/decision_logic_traceability.md`.
186
-
187
- ## Privacy and De-identification
188
-
189
- The HHS methods are Expert Determination and Safe Harbor. A checklist cannot perform either method by itself. Do not claim that removing a list of fields, hashing identifiers, using a minimum cell size, or passing this script proves de-identification or HIPAA compliance.
190
-
191
- The helper inventories documented human work. It never reads a dataset. Escalate unresolved items, free text, dates, geography, rare combinations, linkage risk, genomics, and longitudinal patterns to qualified privacy review.
192
-
193
- ## Reporting-Guideline Selection
194
-
195
- - Cohort/case-control/cross-sectional: STROBE; add RECORD for routinely collected data.
196
- - Prediction model development/evaluation: TRIPOD+AI and PROBAST+AI.
197
- - Tumor prognostic marker study: REMARK.
198
- - AI diagnostic accuracy: STARD-AI with STARD.
199
- - AI trial protocol: SPIRIT-AI with the current SPIRIT base statement.
200
- - AI randomized trial report: CONSORT-AI with the current CONSORT base statement.
201
- - Early live AI evaluation: DECIDE-AI—but live evaluation is outside this skill's execution scope.
202
-
203
- These are reporting or appraisal tools, not automatic quality scores. See `references/study_reporting.md`.
204
-
205
- ## Regulatory and Governance Context
206
-
207
- FDA device status turns on intended use and function, not a document label. FDA's January 2026 CDS guidance distinguishes certain non-device CDS functions from device software functions; its examples are not a self-certification checklist. ONC HTI-1 requirements apply within the defined certification scope. ICH E6(R3) and E9/E9(R1) inform trial governance and statistical planning but do not make an artifact compliant.
208
-
209
- Use `references/regulatory_and_governance.md` for dated context. Obtain qualified advice for an actual product, study, submission, deployment, or jurisdiction.
210
-
211
- ## Verification
212
-
213
- From this skill directory:
214
-
215
- ```bash
216
- python3 -m unittest discover -s tests/clinical-decision-support -p 'test_*.py'
217
- ```
218
-
219
- Run AST compilation without bytecode:
220
-
221
- ```bash
222
- python3 -c "import ast,pathlib; [ast.parse(p.read_text()) for p in pathlib.Path('scripts').glob('*.py')]"
223
- ```
224
-
225
- ## Reference Map
226
-
227
- - `references/README.md` — scope and navigation
228
- - `references/safety_and_scope.md` — refusal and escalation rules
229
- - `references/regulatory_and_governance.md` — FDA, ONC, ICH context
230
- - `references/evidence_profiles.md` — human GRADE workflow
231
- - `references/study_reporting.md` — EQUATOR and PROBAST+AI selection
232
- - `references/cohort_evaluation.md` — aggregate cohort methods
233
- - `references/survival_analysis.md` — time-to-event planning
234
- - `references/model_biomarker_evaluation.md` — model/biomarker evaluation
235
- - `references/privacy_and_disclosure.md` — de-identification and suppression
236
- - `references/decision_logic_traceability.md` — governance logic
237
- - `references/sources.md` — dated authoritative source ledger
238
- - `references/security_validation.md` — scan results and accepted LOW findings
@@ -1,62 +0,0 @@
1
- # Clinical Decision-Support References
2
-
3
- Version 2.0 is the breaking safety redesign dated 2026-07-23. It replaces
4
- the former recommendation-oriented templates, references, and scripts with
5
- offline research-evaluation and governance artifacts.
6
-
7
- ## Boundary
8
-
9
- These references support aggregate or synthetic research evaluation, methods documentation, evidence profiles, privacy review, and governance traceability. They do not support diagnosis, treatment recommendations, dosing, triage, alarms, bedside use, autonomous decisions, or patient-specific output.
10
-
11
- No reference or script establishes regulatory authorization, HIPAA compliance, clinical validity, or fitness for live use. Route care decisions to licensed professionals using validated and appropriately authorized systems.
12
-
13
- ## Navigation
14
-
15
- | File | Purpose |
16
- |---|---|
17
- | `safety_and_scope.md` | Refusal rules, escalation, and intended-use language |
18
- | `regulatory_and_governance.md` | FDA CDS/AI, ONC HTI-1, and ICH context |
19
- | `evidence_profiles.md` | Human GRADE evidence-profile workflow |
20
- | `study_reporting.md` | STROBE/RECORD, TRIPOD+AI, CONSORT-AI, SPIRIT-AI, DECIDE-AI, STARD-AI, REMARK, and PROBAST+AI |
21
- | `cohort_evaluation.md` | Aggregate cohort reporting and disclosure-aware tables |
22
- | `survival_analysis.md` | Estimand-led time-to-event planning |
23
- | `model_biomarker_evaluation.md` | Aggregate validation, calibration, uncertainty, and subgroup review |
24
- | `privacy_and_disclosure.md` | HHS de-identification methods and output controls |
25
- | `decision_logic_traceability.md` | Research/governance logic matrices |
26
- | `sources.md` | Authoritative source ledger checked 2026-07-23 |
27
- | `security_validation.md` | Baseline remediation, scan results, and accepted LOW findings |
28
-
29
- ## Assets
30
-
31
- All assets are JSON skeletons. They contain no patient rows or real identifiers:
32
-
33
- - `artifact_intended_use_template.json`
34
- - `evidence_profile_template.json`
35
- - `aggregate_model_evaluation_template.json`
36
- - `aggregate_cohort_table_template.json`
37
- - `survival_analysis_plan_template.json`
38
- - `decision_logic_traceability_template.json`
39
- - `deidentification_checklist_template.json`
40
-
41
- Every template includes intended use, prohibited uses, limitations, data level, and human-review fields.
42
-
43
- ## Scripts
44
-
45
- The standard-library scripts read bounded local JSON and produce bounded local JSON, Markdown, or CSV:
46
-
47
- - `validate_cds_artifact.py`
48
- - `evidence_profile_check.py`
49
- - `model_biomarker_evaluation.py`
50
- - `cohort_table_generator.py`
51
- - `survival_plan_validator.py`
52
- - `decision_logic_traceability.py`
53
- - `deidentification_checklist.py`
54
-
55
- They do not use networks, API keys, environment variables, dynamic evaluation, serialization formats that execute code, LLMs, or image services.
56
-
57
- ## Method Selection
58
-
59
- Use the study design and evaluation stage—not the presence of “AI” in a title—to select a framework. Reporting checklists are minimum disclosure guidance. Risk-of-bias tools require informed human judgments. GRADE certainty is outcome-specific and cannot be inferred from text.
60
-
61
- For an actual protocol, product, regulated submission, certified health IT module, or data release, obtain review from the relevant methodologist, privacy official, legal/regulatory counsel, governance owner, and domain experts.
62
-