pi-skill-search 0.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +20 -0
- package/LICENSE +21 -0
- package/README.md +97 -0
- package/index.ts +163 -0
- package/package.json +48 -0
- package/skills/adaptyv/SKILL.md +92 -0
- package/skills/add-community-extension/SKILL.md +85 -0
- package/skills/aeon/SKILL.md +111 -0
- package/skills/ai-slop-cleaner/SKILL.md +118 -0
- package/skills/anndata/SKILL.md +83 -0
- package/skills/arboreto/SKILL.md +107 -0
- package/skills/ask/SKILL.md +55 -0
- package/skills/astropy/SKILL.md +30 -0
- package/skills/async-worker-recovery/SKILL.md +44 -0
- package/skills/autopilot/SKILL.md +63 -0
- package/skills/autoresearch/SKILL.md +64 -0
- package/skills/autoskill/SKILL.md +116 -0
- package/skills/babysit/SKILL.md +43 -0
- package/skills/benchling-integration/SKILL.md +106 -0
- package/skills/bgpt-paper-search/SKILL.md +67 -0
- package/skills/biopython/SKILL.md +29 -0
- package/skills/bioservices/SKILL.md +96 -0
- package/skills/brainstorming/SKILL.md +104 -0
- package/skills/cancel/SKILL.md +85 -0
- package/skills/ccg/SKILL.md +87 -0
- package/skills/celery-pipeline/SKILL.md +30 -0
- package/skills/cellxgene-census/SKILL.md +104 -0
- package/skills/child-pi-spawning/SKILL.md +85 -0
- package/skills/cirq/SKILL.md +113 -0
- package/skills/citation-management/SKILL.md +91 -0
- package/skills/clinical-decision-support/SKILL.md +117 -0
- package/skills/clinical-reports/SKILL.md +118 -0
- package/skills/clinical-trial/SKILL.md +28 -0
- package/skills/cobrapy/SKILL.md +116 -0
- package/skills/configure-notifications/SKILL.md +85 -0
- package/skills/consciousness-council/SKILL.md +120 -0
- package/skills/context-artifact-hygiene/SKILL.md +85 -0
- package/skills/context-mode-ops/SKILL.md +87 -0
- package/skills/dask/SKILL.md +85 -0
- package/skills/database-lookup/SKILL.md +118 -0
- package/skills/datamol/SKILL.md +108 -0
- package/skills/debug/SKILL.md +32 -0
- package/skills/deep-dive/SKILL.md +114 -0
- package/skills/deep-interview/SKILL.md +90 -0
- package/skills/deepchem/SKILL.md +117 -0
- package/skills/deepinit/SKILL.md +100 -0
- package/skills/deeptools/SKILL.md +118 -0
- package/skills/delegation-patterns/SKILL.md +56 -0
- package/skills/depmap/SKILL.md +94 -0
- package/skills/dhdna-profiler/SKILL.md +86 -0
- package/skills/diffdock/SKILL.md +101 -0
- package/skills/dispatching-parallel-agents/SKILL.md +119 -0
- package/skills/dnanexus-integration/SKILL.md +118 -0
- package/skills/do/SKILL.md +48 -0
- package/skills/docker-sandbox/SKILL.md +29 -0
- package/skills/docx/SKILL.md +119 -0
- package/skills/esm/SKILL.md +116 -0
- package/skills/etetoolkit/SKILL.md +103 -0
- package/skills/event-log-tracing/SKILL.md +85 -0
- package/skills/exa-search/SKILL.md +72 -0
- package/skills/executing-plans/SKILL.md +69 -0
- package/skills/exploratory-data-analysis/SKILL.md +118 -0
- package/skills/external-context/SKILL.md +80 -0
- package/skills/fastapi/SKILL.md +30 -0
- package/skills/finishing-a-development-branch/SKILL.md +106 -0
- package/skills/flowio/SKILL.md +114 -0
- package/skills/fluidsim/SKILL.md +108 -0
- package/skills/generate-image/SKILL.md +108 -0
- package/skills/geniml/SKILL.md +117 -0
- package/skills/geomaster/SKILL.md +109 -0
- package/skills/geopandas/SKILL.md +114 -0
- package/skills/get-available-resources/SKILL.md +100 -0
- package/skills/gget/SKILL.md +111 -0
- package/skills/ginkgo-cloud-lab/SKILL.md +52 -0
- package/skills/git-master/SKILL.md +85 -0
- package/skills/glycoengineering/SKILL.md +104 -0
- package/skills/gtars/SKILL.md +104 -0
- package/skills/hackernews-frontpage/SKILL.md +46 -0
- package/skills/histolab/SKILL.md +98 -0
- package/skills/how-it-works/SKILL.md +25 -0
- package/skills/hud/SKILL.md +86 -0
- package/skills/hugging-science/SKILL.md +93 -0
- package/skills/huggingface/SKILL.md +30 -0
- package/skills/hypogenic/SKILL.md +107 -0
- package/skills/hypothesis-generation/SKILL.md +118 -0
- package/skills/imaging-data-commons/SKILL.md +119 -0
- package/skills/infographics/SKILL.md +102 -0
- package/skills/iso-13485-certification/SKILL.md +114 -0
- package/skills/knowledge-agent/SKILL.md +83 -0
- package/skills/labarchive-integration/SKILL.md +98 -0
- package/skills/lamindb/SKILL.md +119 -0
- package/skills/landsat/SKILL.md +29 -0
- package/skills/latchbio-integration/SKILL.md +118 -0
- package/skills/latex-posters/SKILL.md +112 -0
- package/skills/learn-codebase/SKILL.md +24 -0
- package/skills/learner/SKILL.md +118 -0
- package/skills/literature-review/SKILL.md +118 -0
- package/skills/live-agent-lifecycle/SKILL.md +85 -0
- package/skills/mailbox-interactive/SKILL.md +85 -0
- package/skills/make-plan/SKILL.md +59 -0
- package/skills/markdown-mermaid-writing/SKILL.md +118 -0
- package/skills/market-research-reports/SKILL.md +119 -0
- package/skills/markitdown/SKILL.md +111 -0
- package/skills/markitdown-docs/SKILL.md +28 -0
- package/skills/matchms/SKILL.md +91 -0
- package/skills/matlab/SKILL.md +118 -0
- package/skills/matplotlib/SKILL.md +30 -0
- package/skills/mcp-setup/SKILL.md +84 -0
- package/skills/medchem/SKILL.md +109 -0
- package/skills/mem-search/SKILL.md +96 -0
- package/skills/modal/SKILL.md +104 -0
- package/skills/model-routing-context/SKILL.md +85 -0
- package/skills/molecular-dynamics/SKILL.md +116 -0
- package/skills/molfeat/SKILL.md +110 -0
- package/skills/multi-perspective-review/SKILL.md +85 -0
- package/skills/networkx/SKILL.md +111 -0
- package/skills/neurokit2/SKILL.md +114 -0
- package/skills/neuropixels-analysis/SKILL.md +112 -0
- package/skills/nilearn/SKILL.md +29 -0
- package/skills/observability-reliability/SKILL.md +43 -0
- package/skills/omc-doctor/SKILL.md +86 -0
- package/skills/omc-reference/SKILL.md +119 -0
- package/skills/omc-setup/SKILL.md +82 -0
- package/skills/omc-teams/SKILL.md +81 -0
- package/skills/omero-integration/SKILL.md +111 -0
- package/skills/open-notebook/SKILL.md +100 -0
- package/skills/openephys/SKILL.md +28 -0
- package/skills/opentrons-integration/SKILL.md +110 -0
- package/skills/optimize-for-gpu/SKILL.md +119 -0
- package/skills/orchestration/SKILL.md +85 -0
- package/skills/ownership-session-security/SKILL.md +43 -0
- package/skills/paper-lookup/SKILL.md +119 -0
- package/skills/paperzilla/SKILL.md +114 -0
- package/skills/parallel-web/SKILL.md +64 -0
- package/skills/pathfinder/SKILL.md +114 -0
- package/skills/pathml/SKILL.md +98 -0
- package/skills/pdf/SKILL.md +113 -0
- package/skills/peer-review/SKILL.md +119 -0
- package/skills/pennylane/SKILL.md +119 -0
- package/skills/phylogenetics/SKILL.md +102 -0
- package/skills/pi-extension-lifecycle/SKILL.md +41 -0
- package/skills/plan/SKILL.md +66 -0
- package/skills/polars/SKILL.md +114 -0
- package/skills/polars-bio/SKILL.md +84 -0
- package/skills/pptx/SKILL.md +118 -0
- package/skills/pptx-posters/SKILL.md +112 -0
- package/skills/primekg/SKILL.md +97 -0
- package/skills/project-session-manager/SKILL.md +85 -0
- package/skills/protocolsio-integration/SKILL.md +119 -0
- package/skills/pubmed-search/SKILL.md +29 -0
- package/skills/pufferlib/SKILL.md +103 -0
- package/skills/pydeseq2/SKILL.md +106 -0
- package/skills/pydicom/SKILL.md +115 -0
- package/skills/pyhealth/SKILL.md +117 -0
- package/skills/pylabrobot/SKILL.md +100 -0
- package/skills/pymatgen/SKILL.md +28 -0
- package/skills/pymc/SKILL.md +108 -0
- package/skills/pymoo/SKILL.md +90 -0
- package/skills/pyopenms/SKILL.md +119 -0
- package/skills/pysam/SKILL.md +118 -0
- package/skills/pyspark/SKILL.md +30 -0
- package/skills/pytdc/SKILL.md +102 -0
- package/skills/pytorch/SKILL.md +31 -0
- package/skills/pytorch-lightning/SKILL.md +119 -0
- package/skills/pyzotero/SKILL.md +104 -0
- package/skills/qiskit/SKILL.md +119 -0
- package/skills/qutip/SKILL.md +111 -0
- package/skills/ralph/SKILL.md +23 -0
- package/skills/ralplan/SKILL.md +105 -0
- package/skills/rdflib/SKILL.md +29 -0
- package/skills/rdkit/SKILL.md +30 -0
- package/skills/read-only-explorer/SKILL.md +85 -0
- package/skills/receiving-code-review/SKILL.md +103 -0
- package/skills/release/SKILL.md +117 -0
- package/skills/remember/SKILL.md +39 -0
- package/skills/requesting-code-review/SKILL.md +85 -0
- package/skills/requirements-to-task-packet/SKILL.md +65 -0
- package/skills/research-grants/SKILL.md +118 -0
- package/skills/research-lookup/SKILL.md +117 -0
- package/skills/research-reproducibility/SKILL.md +28 -0
- package/skills/resource-discovery-config/SKILL.md +43 -0
- package/skills/rowan/SKILL.md +100 -0
- package/skills/runtime-state-reader/SKILL.md +46 -0
- package/skills/safe-bash/SKILL.md +85 -0
- package/skills/scanpy/SKILL.md +32 -0
- package/skills/scholar-evaluation/SKILL.md +115 -0
- package/skills/scientific-brainstorming/SKILL.md +118 -0
- package/skills/scientific-critical-thinking/SKILL.md +119 -0
- package/skills/scientific-schematics/SKILL.md +116 -0
- package/skills/scientific-slides/SKILL.md +117 -0
- package/skills/scientific-visualization/SKILL.md +109 -0
- package/skills/scientific-writing/SKILL.md +119 -0
- package/skills/scikit-bio/SKILL.md +92 -0
- package/skills/scikit-learn/SKILL.md +99 -0
- package/skills/scikit-survival/SKILL.md +110 -0
- package/skills/sciomc/SKILL.md +86 -0
- package/skills/scvelo/SKILL.md +106 -0
- package/skills/scvi-tools/SKILL.md +114 -0
- package/skills/seaborn/SKILL.md +97 -0
- package/skills/secure-agent-orchestration-review/SKILL.md +47 -0
- package/skills/self-improve/SKILL.md +119 -0
- package/skills/semantic-compression/SKILL.md +62 -0
- package/skills/setup/SKILL.md +42 -0
- package/skills/shap/SKILL.md +103 -0
- package/skills/simpy/SKILL.md +116 -0
- package/skills/skill/SKILL.md +117 -0
- package/skills/skill-search/SKILL.md +67 -0
- package/skills/skillify/SKILL.md +46 -0
- package/skills/smart-explore/SKILL.md +94 -0
- package/skills/sqlite-pandas/SKILL.md +30 -0
- package/skills/stable-baselines3/SKILL.md +86 -0
- package/skills/state-mutation-locking/SKILL.md +44 -0
- package/skills/statistical-analysis/SKILL.md +108 -0
- package/skills/statsmodels/SKILL.md +29 -0
- package/skills/subagent-driven-development/SKILL.md +89 -0
- package/skills/sympy/SKILL.md +115 -0
- package/skills/system-prompts/SKILL.md +116 -0
- package/skills/systematic-debugging/SKILL.md +119 -0
- package/skills/team/SKILL.md +85 -0
- package/skills/test-driven-development/SKILL.md +84 -0
- package/skills/tiledbvcf/SKILL.md +119 -0
- package/skills/timeline-report/SKILL.md +85 -0
- package/skills/timesfm-forecasting/SKILL.md +112 -0
- package/skills/torch-geometric/SKILL.md +118 -0
- package/skills/torchdrug/SKILL.md +118 -0
- package/skills/trace/SKILL.md +118 -0
- package/skills/transformers/SKILL.md +110 -0
- package/skills/treatment-plans/SKILL.md +119 -0
- package/skills/ui-render-performance/SKILL.md +41 -0
- package/skills/ultragoal/SKILL.md +63 -0
- package/skills/ultraqa/SKILL.md +85 -0
- package/skills/ultrawork/SKILL.md +20 -0
- package/skills/umap-learn/SKILL.md +119 -0
- package/skills/usfiscaldata/SKILL.md +118 -0
- package/skills/using-git-worktrees/SKILL.md +112 -0
- package/skills/using-superpowers/SKILL.md +85 -0
- package/skills/using-vetc/SKILL.md +92 -0
- package/skills/vaex/SKILL.md +111 -0
- package/skills/venue-templates/SKILL.md +113 -0
- package/skills/verification-before-completion/SKILL.md +88 -0
- package/skills/verification-before-done/SKILL.md +68 -0
- package/skills/verify/SKILL.md +33 -0
- package/skills/version-bump/SKILL.md +54 -0
- package/skills/vetc-analyze-ba/SKILL.md +117 -0
- package/skills/vetc-analyze-codebase/SKILL.md +118 -0
- package/skills/vetc-api-design/SKILL.md +103 -0
- package/skills/vetc-brainstorming/SKILL.md +116 -0
- package/skills/vetc-change-proposal/SKILL.md +111 -0
- package/skills/vetc-cicd/SKILL.md +113 -0
- package/skills/vetc-continuous-learning/SKILL.md +115 -0
- package/skills/vetc-deep-interview/SKILL.md +103 -0
- package/skills/vetc-docgen/SKILL.md +108 -0
- package/skills/vetc-frontend-patterns/SKILL.md +99 -0
- package/skills/vetc-iterative-retrieval/SKILL.md +110 -0
- package/skills/vetc-java-patterns/SKILL.md +113 -0
- package/skills/vetc-meta-skill-creator/SKILL.md +99 -0
- package/skills/vetc-oracle-patterns/SKILL.md +109 -0
- package/skills/vetc-performance-testing/SKILL.md +104 -0
- package/skills/vetc-pr-response/SKILL.md +106 -0
- package/skills/vetc-ralph/SKILL.md +108 -0
- package/skills/vetc-ralplan/SKILL.md +116 -0
- package/skills/vetc-receiving-review/SKILL.md +106 -0
- package/skills/vetc-reconcile-patterns/SKILL.md +117 -0
- package/skills/vetc-refactoring/SKILL.md +96 -0
- package/skills/vetc-runbook/SKILL.md +118 -0
- package/skills/vetc-sast/SKILL.md +118 -0
- package/skills/vetc-sdlc/SKILL.md +97 -0
- package/skills/vetc-security/SKILL.md +117 -0
- package/skills/vetc-spec-driven/SKILL.md +111 -0
- package/skills/vetc-spec-quality/SKILL.md +117 -0
- package/skills/vetc-systematic-debugging/SKILL.md +74 -0
- package/skills/vetc-tdd/SKILL.md +96 -0
- package/skills/vetc-thinking-pm/SKILL.md +110 -0
- package/skills/vetc-ui-visual-qa/SKILL.md +117 -0
- package/skills/vetc-verify/SKILL.md +101 -0
- package/skills/visual-verdict/SKILL.md +59 -0
- package/skills/what-if-oracle/SKILL.md +87 -0
- package/skills/widget-rendering/SKILL.md +85 -0
- package/skills/wiki/SKILL.md +69 -0
- package/skills/workspace-isolation/SKILL.md +85 -0
- package/skills/worktree-isolation/SKILL.md +85 -0
- package/skills/wowerpoint/SKILL.md +101 -0
- package/skills/writer-memory/SKILL.md +82 -0
- package/skills/writing-plans/SKILL.md +115 -0
- package/skills/writing-skills/SKILL.md +115 -0
- package/skills/xgboost/SKILL.md +29 -0
- package/skills/xgboost-ts/SKILL.md +28 -0
- package/skills/xlsx/SKILL.md +111 -0
- package/skills/zarr-python/SKILL.md +101 -0
- package/src/categories.ts +383 -0
- package/src/format.ts +104 -0
- package/src/indexer.ts +101 -0
- package/src/proactive.ts +51 -0
- package/src/scanner.ts +85 -0
- package/src/search.ts +89 -0
- package/src/strip.ts +29 -0
- package/src/synonyms.ts +83 -0
- package/src/text.ts +118 -0
- package/src/types.ts +64 -0
|
@@ -0,0 +1,84 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: polars-bio
|
|
3
|
+
description: High-performance genomic interval operations and bioinformatics file I/O on Polars DataFrames. Overlap, nearest, merge, coverage, complement, subtract for BED/VCF/BAM/GFF intervals. Streaming, cloud-native, faster bioframe alternative.
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# polars-bio
|
|
7
|
+
|
|
8
|
+
## Overview
|
|
9
|
+
|
|
10
|
+
polars-bio is a high-performance Python library for genomic interval operations and bioinformatics file I/O, built on Polars, Apache Arrow, and Apache DataFusion. It provides a familiar DataFrame-centric API for interval arithmetic (overlap, nearest, merge, coverage, complement, subtract) and reading/writing common bioinformatics formats (BED, VCF, BAM, CRAM, GFF/GTF, FASTA, FASTQ).
|
|
11
|
+
|
|
12
|
+
Key value propositions:
|
|
13
|
+
- **6-38x faster** than bioframe on real-world genomic benchmarks
|
|
14
|
+
- **Streaming/out-of-core** support for large genomes via DataFusion
|
|
15
|
+
- **Cloud-native** file I/O (S3, GCS, Azure) with predicate pushdown
|
|
16
|
+
- **Two API styles**: functional (`pb.overlap(df1, df2)`) and method-chaining (`df1.lazy().pb.overlap(df2)`)
|
|
17
|
+
- **SQL interface** for genomic data via DataFusion SQL engine
|
|
18
|
+
|
|
19
|
+
## When to Use This Skill
|
|
20
|
+
|
|
21
|
+
Use this skill when:
|
|
22
|
+
- Performing genomic interval operations (overlap, nearest, merge, coverage, complement, subtract)
|
|
23
|
+
- Reading/writing bioinformatics file formats (BED, VCF, BAM, CRAM, GFF/GTF, FASTA, FASTQ)
|
|
24
|
+
- Processing large genomic datasets that don't fit in memory (streaming mode)
|
|
25
|
+
- Running SQL queries on genomic data files
|
|
26
|
+
- Migrating from bioframe to a faster alternative
|
|
27
|
+
- Computing read depth/pileup from BAM/CRAM files
|
|
28
|
+
- Working with Polars DataFrames containing genomic intervals
|
|
29
|
+
|
|
30
|
+
## Quick Start
|
|
31
|
+
|
|
32
|
+
# or
|
|
33
|
+
uv pip install polars-bio
|
|
34
|
+
```
|
|
35
|
+
|
|
36
|
+
For pandas compatibility:
|
|
37
|
+
```bash
|
|
38
|
+
pip install polars-bio[pandas]
|
|
39
|
+
```
|
|
40
|
+
|
|
41
|
+
### Basic Overlap Example
|
|
42
|
+
|
|
43
|
+
```python
|
|
44
|
+
import polars as pl
|
|
45
|
+
import polars_bio as pb
|
|
46
|
+
|
|
47
|
+
# Create two interval DataFrames
|
|
48
|
+
df1 = pl.DataFrame({
|
|
49
|
+
"chrom": ["chr1", "chr1", "chr1"],
|
|
50
|
+
"start": [1, 5, 22],
|
|
51
|
+
"end": [6, 9, 30],
|
|
52
|
+
})
|
|
53
|
+
|
|
54
|
+
df2 = pl.DataFrame({
|
|
55
|
+
"chrom": ["chr1", "chr1"],
|
|
56
|
+
"start": [3, 25],
|
|
57
|
+
"end": [8, 28],
|
|
58
|
+
})
|
|
59
|
+
|
|
60
|
+
# Functional API (returns LazyFrame by default)
|
|
61
|
+
result = pb.overlap(df1, df2)
|
|
62
|
+
result_df = result.collect()
|
|
63
|
+
|
|
64
|
+
# Get a DataFrame directly
|
|
65
|
+
result_df = pb.overlap(df1, df2, output_type="polars.DataFrame")
|
|
66
|
+
|
|
67
|
+
# Method-chaining API (via .pb accessor on LazyFrame)
|
|
68
|
+
result = df1.lazy().pb.overlap(df2)
|
|
69
|
+
result_df = result.collect()
|
|
70
|
+
```
|
|
71
|
+
|
|
72
|
+
### Reading a BED File
|
|
73
|
+
|
|
74
|
+
```python
|
|
75
|
+
import polars_bio as pb
|
|
76
|
+
|
|
77
|
+
# Eager read (loads entire file)
|
|
78
|
+
df = pb.read_bed("regions.bed")
|
|
79
|
+
|
|
80
|
+
# Lazy scan (streaming, for large files)
|
|
81
|
+
lf = pb.scan_bed("regions.bed")
|
|
82
|
+
result = lf.collect()
|
|
83
|
+
|
|
84
|
+
|
|
@@ -0,0 +1,118 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: pptx
|
|
3
|
+
description: "Use this skill any time a .pptx file is involved in any way — as input, output, or both. This includes: creating slide decks, pitch decks, or presentations; reading, parsing, or extracting text from any .pptx file (even if the extracted content will be used elsewhere, like in an email or summary); editing, modifying, or updating existing presentations; combining or splitting slide files; working with templates, layouts, speaker notes, or comments. Trigger whenever the user mentions \"deck,\" \"slides,\" \"presentation,\" or references a .pptx filename, regardless of what they plan to do with the content afterward. If a .pptx file needs to be opened, created, or touched, use this skill."
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# PPTX Skill
|
|
7
|
+
|
|
8
|
+
## Quick Reference
|
|
9
|
+
|
|
10
|
+
| Task | Guide |
|
|
11
|
+
|------|-------|
|
|
12
|
+
| Read/analyze content | `python -m markitdown presentation.pptx` |
|
|
13
|
+
| Edit or create from template | Read [editing.md](editing.md) |
|
|
14
|
+
| Create from scratch | Read [pptxgenjs.md](pptxgenjs.md) |
|
|
15
|
+
|
|
16
|
+
---
|
|
17
|
+
|
|
18
|
+
## Reading Content
|
|
19
|
+
|
|
20
|
+
```bash
|
|
21
|
+
# Text extraction
|
|
22
|
+
python -m markitdown presentation.pptx
|
|
23
|
+
|
|
24
|
+
# Visual overview
|
|
25
|
+
python scripts/thumbnail.py presentation.pptx
|
|
26
|
+
|
|
27
|
+
# Raw XML
|
|
28
|
+
python scripts/office/unpack.py presentation.pptx unpacked/
|
|
29
|
+
```
|
|
30
|
+
|
|
31
|
+
---
|
|
32
|
+
|
|
33
|
+
## Editing Workflow
|
|
34
|
+
|
|
35
|
+
**Read [editing.md](editing.md) for full details.**
|
|
36
|
+
|
|
37
|
+
1. Analyze template with `thumbnail.py`
|
|
38
|
+
2. Unpack → manipulate slides → edit content → clean → pack
|
|
39
|
+
|
|
40
|
+
---
|
|
41
|
+
|
|
42
|
+
## Creating from Scratch
|
|
43
|
+
|
|
44
|
+
**Read [pptxgenjs.md](pptxgenjs.md) for full details.**
|
|
45
|
+
|
|
46
|
+
Use when no template or reference presentation is available.
|
|
47
|
+
|
|
48
|
+
---
|
|
49
|
+
|
|
50
|
+
## Design Ideas
|
|
51
|
+
|
|
52
|
+
**Don't create boring slides.** Plain bullets on a white background won't impress anyone. Consider ideas from this list for each slide.
|
|
53
|
+
|
|
54
|
+
### Before Starting
|
|
55
|
+
|
|
56
|
+
- **Pick a bold, content-informed color palette**: The palette should feel designed for THIS topic. If swapping your colors into a completely different presentation would still "work," you haven't made specific enough choices.
|
|
57
|
+
- **Dominance over equality**: One color should dominate (60-70% visual weight), with 1-2 supporting tones and one sharp accent. Never give all colors equal weight.
|
|
58
|
+
- **Dark/light contrast**: Dark backgrounds for title + conclusion slides, light for content ("sandwich" structure). Or commit to dark throughout for a premium feel.
|
|
59
|
+
- **Commit to a visual motif**: Pick ONE distinctive element and repeat it — rounded image frames, icons in colored circles, thick single-side borders. Carry it across every slide.
|
|
60
|
+
|
|
61
|
+
### Color Palettes
|
|
62
|
+
|
|
63
|
+
Choose colors that match your topic — don't default to generic blue. Use these palettes as inspiration:
|
|
64
|
+
|
|
65
|
+
| Theme | Primary | Secondary | Accent |
|
|
66
|
+
|-------|---------|-----------|--------|
|
|
67
|
+
| **Midnight Executive** | `1E2761` (navy) | `CADCFC` (ice blue) | `FFFFFF` (white) |
|
|
68
|
+
| **Forest & Moss** | `2C5F2D` (forest) | `97BC62` (moss) | `F5F5F5` (cream) |
|
|
69
|
+
| **Coral Energy** | `F96167` (coral) | `F9E795` (gold) | `2F3C7E` (navy) |
|
|
70
|
+
| **Warm Terracotta** | `B85042` (terracotta) | `E7E8D1` (sand) | `A7BEAE` (sage) |
|
|
71
|
+
| **Ocean Gradient** | `065A82` (deep blue) | `1C7293` (teal) | `21295C` (midnight) |
|
|
72
|
+
| **Charcoal Minimal** | `36454F` (charcoal) | `F2F2F2` (off-white) | `212121` (black) |
|
|
73
|
+
| **Teal Trust** | `028090` (teal) | `00A896` (seafoam) | `02C39A` (mint) |
|
|
74
|
+
| **Berry & Cream** | `6D2E46` (berry) | `A26769` (dusty rose) | `ECE2D0` (cream) |
|
|
75
|
+
| **Sage Calm** | `84B59F` (sage) | `69A297` (eucalyptus) | `50808E` (slate) |
|
|
76
|
+
| **Cherry Bold** | `990011` (cherry) | `FCF6F5` (off-white) | `2F3C7E` (navy) |
|
|
77
|
+
|
|
78
|
+
### For Each Slide
|
|
79
|
+
|
|
80
|
+
**Every slide needs a visual element** — image, chart, icon, or shape. Text-only slides are forgettable.
|
|
81
|
+
|
|
82
|
+
**Layout options:**
|
|
83
|
+
- Two-column (text left, illustration on right)
|
|
84
|
+
- Icon + text rows (icon in colored circle, bold header, description below)
|
|
85
|
+
- 2x2 or 2x3 grid (image on one side, grid of content blocks on other)
|
|
86
|
+
- Half-bleed image (full left or right side) with content overlay
|
|
87
|
+
|
|
88
|
+
**Data display:**
|
|
89
|
+
- Large stat callouts (big numbers 60-72pt with small labels below)
|
|
90
|
+
- Comparison columns (before/after, pros/cons, side-by-side options)
|
|
91
|
+
- Timeline or process flow (numbered steps, arrows)
|
|
92
|
+
|
|
93
|
+
|
|
94
|
+
### Typography
|
|
95
|
+
|
|
96
|
+
**Choose an interesting font pairing** — don't default to Arial. Pick a header font with personality and pair it with a clean body font.
|
|
97
|
+
|
|
98
|
+
| Header Font | Body Font |
|
|
99
|
+
|-------------|-----------|
|
|
100
|
+
| Georgia | Calibri |
|
|
101
|
+
| Arial Black | Arial |
|
|
102
|
+
| Calibri | Calibri Light |
|
|
103
|
+
| Cambria | Calibri |
|
|
104
|
+
| Trebuchet MS | Calibri |
|
|
105
|
+
| Impact | Arial |
|
|
106
|
+
| Palatino | Garamond |
|
|
107
|
+
| Consolas | Calibri |
|
|
108
|
+
|
|
109
|
+
|
|
110
|
+
### Spacing
|
|
111
|
+
|
|
112
|
+
- 0.5" minimum margins
|
|
113
|
+
- 0.3-0.5" between content blocks
|
|
114
|
+
- Leave breathing room—don't fill every inch
|
|
115
|
+
|
|
116
|
+
### Avoid (Common Mistakes)
|
|
117
|
+
|
|
118
|
+
|
|
@@ -0,0 +1,112 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: pptx-posters
|
|
3
|
+
description: Create research posters using HTML/CSS that can be exported to PDF or PPTX. Use this skill ONLY when the user explicitly requests PowerPoint/PPTX poster format. For standard research posters, use latex-posters instead. This skill provides modern web-based poster design with responsive layouts and easy visual integration.
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# PPTX Research Posters (HTML-Based)
|
|
7
|
+
|
|
8
|
+
## Overview
|
|
9
|
+
|
|
10
|
+
**⚠️ USE THIS SKILL ONLY WHEN USER EXPLICITLY REQUESTS PPTX/POWERPOINT POSTER FORMAT.**
|
|
11
|
+
|
|
12
|
+
For standard research posters, use the **latex-posters** skill instead, which provides better typographic control and is the default for academic conferences.
|
|
13
|
+
|
|
14
|
+
This skill creates research posters using HTML/CSS, which can then be exported to PDF or converted to PowerPoint format. The web-based approach offers:
|
|
15
|
+
- Modern, responsive layouts
|
|
16
|
+
- Easy integration of AI-generated visuals
|
|
17
|
+
- Quick iteration and preview in browser
|
|
18
|
+
- Export to PDF via browser print function
|
|
19
|
+
- Conversion to PPTX if specifically needed
|
|
20
|
+
|
|
21
|
+
## When to Use This Skill
|
|
22
|
+
|
|
23
|
+
**ONLY use this skill when:**
|
|
24
|
+
- User explicitly requests "PPTX poster", "PowerPoint poster", or "PPT poster"
|
|
25
|
+
- User specifically asks for HTML-based poster
|
|
26
|
+
- User needs to edit poster in PowerPoint after creation
|
|
27
|
+
- LaTeX is not available or user requests non-LaTeX solution
|
|
28
|
+
|
|
29
|
+
**DO NOT use this skill when:**
|
|
30
|
+
- User asks for a "poster" without specifying format → Use latex-posters
|
|
31
|
+
- User asks for "research poster" or "conference poster" → Use latex-posters
|
|
32
|
+
- User mentions LaTeX, tikzposter, beamerposter, or baposter → Use latex-posters
|
|
33
|
+
|
|
34
|
+
## AI-Powered Visual Element Generation
|
|
35
|
+
|
|
36
|
+
**STANDARD WORKFLOW: Generate ALL major visual elements using AI before creating the HTML poster.**
|
|
37
|
+
|
|
38
|
+
This is the recommended approach for creating visually compelling posters:
|
|
39
|
+
1. Plan all visual elements needed (hero image, intro, methods, results, conclusions)
|
|
40
|
+
2. Generate each element using scientific-schematics or Nano Banana Pro
|
|
41
|
+
3. Assemble generated images in the HTML template
|
|
42
|
+
4. Add text content around the visuals
|
|
43
|
+
|
|
44
|
+
**Target: 60-70% of poster area should be AI-generated visuals, 30-40% text.**
|
|
45
|
+
|
|
46
|
+
---
|
|
47
|
+
|
|
48
|
+
### CRITICAL: Poster-Size Font Requirements
|
|
49
|
+
|
|
50
|
+
**⚠️ ALL text within AI-generated visualizations MUST be poster-readable.**
|
|
51
|
+
|
|
52
|
+
When generating graphics for posters, you MUST include font size specifications in EVERY prompt. Poster graphics are viewed from 4-6 feet away, so text must be LARGE.
|
|
53
|
+
|
|
54
|
+
**MANDATORY prompt requirements for EVERY poster graphic:**
|
|
55
|
+
|
|
56
|
+
```
|
|
57
|
+
POSTER FORMAT REQUIREMENTS (STRICTLY ENFORCE):
|
|
58
|
+
- ABSOLUTE MAXIMUM 3-4 elements per graphic (3 is ideal)
|
|
59
|
+
- ABSOLUTE MAXIMUM 10 words total in the entire graphic
|
|
60
|
+
- NO complex workflows with 5+ steps (split into 2-3 simple graphics instead)
|
|
61
|
+
- NO multi-level nested diagrams (flatten to single level)
|
|
62
|
+
- NO case studies with multiple sub-sections (one key point per case)
|
|
63
|
+
|
|
64
|
+
# ❌ Creates tiny unreadable text
|
|
65
|
+
python scripts/generate_schematic.py "Drug discovery workflow: Stage 1 Target ID, Stage 2 Synthesis, Stage 3 Screening, Stage 4 Lead Opt, Stage 5 Validation, Stage 6 Clinical Trial, Stage 7 FDA Approval with metrics." -o figures/workflow.png
|
|
66
|
+
```
|
|
67
|
+
|
|
68
|
+
**Example - CORRECT (3 mega-stages):**
|
|
69
|
+
```bash
|
|
70
|
+
### CRITICAL: Preventing Content Overflow
|
|
71
|
+
|
|
72
|
+
**⚠️ POSTERS MUST NOT HAVE TEXT OR CONTENT CUT OFF AT EDGES.**
|
|
73
|
+
|
|
74
|
+
**Prevention Rules:**
|
|
75
|
+
|
|
76
|
+
**1. Limit Content Sections (MAXIMUM 5-6 sections):**
|
|
77
|
+
```
|
|
78
|
+
✅ GOOD - 5 sections with room to breathe:
|
|
79
|
+
- Title/Header
|
|
80
|
+
- Introduction/Problem
|
|
81
|
+
- Methods
|
|
82
|
+
- Results (1-2 key findings)
|
|
83
|
+
- Conclusions
|
|
84
|
+
|
|
85
|
+
|
|
86
|
+
## Core Capabilities
|
|
87
|
+
|
|
88
|
+
### 1. HTML/CSS Poster Design
|
|
89
|
+
|
|
90
|
+
The HTML template (`assets/poster_html_template.html`) provides:
|
|
91
|
+
- Fixed poster dimensions (36×48 inches = 2592×3456 pt)
|
|
92
|
+
- Professional header with gradient styling
|
|
93
|
+
- Three-column content layout
|
|
94
|
+
- Block-based sections with modern styling
|
|
95
|
+
- Footer with references and contact info
|
|
96
|
+
|
|
97
|
+
### 2. Poster Structure
|
|
98
|
+
|
|
99
|
+
**Standard Layout:**
|
|
100
|
+
```
|
|
101
|
+
┌─────────────────────────────────────────┐
|
|
102
|
+
│ HEADER: Title, Authors, Hero Image │
|
|
103
|
+
├─────────────┬─────────────┬─────────────┤
|
|
104
|
+
│ Introduction│ Results │ Discussion │
|
|
105
|
+
│ │ │ │
|
|
106
|
+
│ Methods │ (charts) │ Conclusions │
|
|
107
|
+
│ │ │ │
|
|
108
|
+
│ (diagram) │ (data) │ (summary) │
|
|
109
|
+
├─────────────┴─────────────┴─────────────┤
|
|
110
|
+
│ FOOTER: References & Contact Info │
|
|
111
|
+
└─────────────────────────────────────────┘
|
|
112
|
+
```
|
|
@@ -0,0 +1,97 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: primekg
|
|
3
|
+
description: Query the Precision Medicine Knowledge Graph (PrimeKG) for multiscale biological data including genes, drugs, diseases, phenotypes, and more.
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# PrimeKG Knowledge Graph Skill
|
|
7
|
+
|
|
8
|
+
## Overview
|
|
9
|
+
|
|
10
|
+
PrimeKG is a precision medicine knowledge graph that integrates over 20 primary databases and high-quality scientific literature into a single resource. It contains over 100,000 nodes and 4 million edges across 29 relationship types, including drug-target, disease-gene, and phenotype-disease associations.
|
|
11
|
+
|
|
12
|
+
**Key capabilities:**
|
|
13
|
+
- Search for nodes (genes, proteins, drugs, diseases, phenotypes)
|
|
14
|
+
- Retrieve direct neighbors (associated entities and clinical evidence)
|
|
15
|
+
- Analyze local disease context (related genes, drugs, phenotypes)
|
|
16
|
+
- Identify drug-disease paths (potential repurposing opportunities)
|
|
17
|
+
|
|
18
|
+
**Data access:** Programmatic access via `query_primekg.py`. Data is stored at `C:\Users\eamon\Documents\Data\PrimeKG\kg.csv`.
|
|
19
|
+
|
|
20
|
+
## When to Use This Skill
|
|
21
|
+
|
|
22
|
+
This skill should be used when:
|
|
23
|
+
|
|
24
|
+
- **Knowledge-based drug discovery:** Identifying targets and mechanisms for diseases.
|
|
25
|
+
- **Drug repurposing:** Finding existing drugs that might have evidence for new indications.
|
|
26
|
+
- **Phenotype analysis:** Understanding how symptoms/phenotypes relate to diseases and genes.
|
|
27
|
+
- **Multiscale biology:** Bridging the gap between molecular targets (genes) and clinical outcomes (diseases).
|
|
28
|
+
- **Network pharmacology:** Investigating the broader network effects of drug-target interactions.
|
|
29
|
+
|
|
30
|
+
## Core Workflow
|
|
31
|
+
|
|
32
|
+
### 1. Search for Entities
|
|
33
|
+
|
|
34
|
+
Find identifiers for genes, drugs, or diseases.
|
|
35
|
+
|
|
36
|
+
```python
|
|
37
|
+
from scripts.query_primekg import search_nodes
|
|
38
|
+
|
|
39
|
+
# Search for Alzheimer's disease nodes
|
|
40
|
+
results = search_nodes("Alzheimer", node_type="disease")
|
|
41
|
+
# Returns: [{"id": "EFO_0000249", "type": "disease", "name": "Alzheimer's disease", ...}]
|
|
42
|
+
```
|
|
43
|
+
|
|
44
|
+
### 2. Get Neighbors (Direct Associations)
|
|
45
|
+
|
|
46
|
+
Retrieve all connected nodes and relationship types.
|
|
47
|
+
|
|
48
|
+
```python
|
|
49
|
+
from scripts.query_primekg import get_neighbors
|
|
50
|
+
|
|
51
|
+
# Get all neighbors of a specific disease ID
|
|
52
|
+
neighbors = get_neighbors("EFO_0000249")
|
|
53
|
+
# Returns: List of neighbors like {"neighbor_name": "APOE", "relation": "disease_gene", ...}
|
|
54
|
+
```
|
|
55
|
+
|
|
56
|
+
### 3. Analyze Disease Context
|
|
57
|
+
|
|
58
|
+
A high-level function to summarize associations for a disease.
|
|
59
|
+
|
|
60
|
+
```python
|
|
61
|
+
from scripts.query_primekg import get_disease_context
|
|
62
|
+
|
|
63
|
+
# Comprehensive summary for a disease
|
|
64
|
+
context = get_disease_context("Alzheimer's disease")
|
|
65
|
+
# Access: context['associated_genes'], context['associated_drugs'], context['phenotypes']
|
|
66
|
+
```
|
|
67
|
+
|
|
68
|
+
## Relationship Types in PrimeKG
|
|
69
|
+
|
|
70
|
+
The graph contains several key relationship types including:
|
|
71
|
+
- `protein_protein`: Physical PPIs
|
|
72
|
+
- `drug_protein`: Drug target/mechanism associations
|
|
73
|
+
- `disease_gene`: Genetic associations
|
|
74
|
+
- `drug_disease`: Indications and contraindications
|
|
75
|
+
- `disease_phenotype`: Clinical signs and symptoms
|
|
76
|
+
- `gwas`: Genome-wide association studies evidence
|
|
77
|
+
|
|
78
|
+
## Best Practices
|
|
79
|
+
|
|
80
|
+
1. **Use specific IDs:** When using `get_neighbors`, ensure you have the correct ID from `search_nodes`.
|
|
81
|
+
2. **Context first:** Use `get_disease_context` for a broad overview before diving into specific genes or drugs.
|
|
82
|
+
3. **Filter relationships:** Use the `relation_type` filter in `get_neighbors` to focus on specific evidence (e.g., only `drug_protein`).
|
|
83
|
+
4. **Multiscale integration:** Combine with `OpenTargets` for deeper genetic evidence or `Semantic Scholar` for the latest literature context.
|
|
84
|
+
|
|
85
|
+
## Resources
|
|
86
|
+
|
|
87
|
+
### Scripts
|
|
88
|
+
- `scripts/query_primekg.py`: Core functions for searching and querying the knowledge graph.
|
|
89
|
+
|
|
90
|
+
### Data Path
|
|
91
|
+
- Data: `/mnt/c/Users/eamon/Documents/Data/PrimeKG/kg.csv`
|
|
92
|
+
- Total nodes: ~129,000
|
|
93
|
+
- Total edges: ~4,000,000
|
|
94
|
+
- Database: CSV-based, optimized for pandas querying.
|
|
95
|
+
|
|
96
|
+
|
|
97
|
+
|
|
@@ -0,0 +1,85 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: project-session-manager
|
|
3
|
+
description: Worktree-first dev environment manager for issues, PRs, and features with optional tmux sessions
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# Project Session Manager (PSM) Skill
|
|
7
|
+
|
|
8
|
+
`psm` is the compatibility alias for this canonical skill entrypoint.
|
|
9
|
+
|
|
10
|
+
> **Quick Start (worktree-first):** Start with `omc teleport` when you want an isolated issue/PR/feature worktree before adding any tmux/session orchestration:
|
|
11
|
+
> ```bash
|
|
12
|
+
> omc teleport #123 # Create worktree for issue/PR
|
|
13
|
+
> omc teleport my-feature # Create worktree for feature
|
|
14
|
+
> omc teleport list # List worktrees
|
|
15
|
+
> ```
|
|
16
|
+
> See [Teleport Command](#teleport-command) below for details.
|
|
17
|
+
|
|
18
|
+
Automate isolated development environments using git worktrees and tmux sessions with Claude Code. Enables parallel work across multiple tasks, projects, and repositories.
|
|
19
|
+
|
|
20
|
+
Canonical slash command: `project-session-manager` (alias: `psm`).
|
|
21
|
+
|
|
22
|
+
## Commands
|
|
23
|
+
|
|
24
|
+
| Command | Description | Example |
|
|
25
|
+
|---------|-------------|---------|
|
|
26
|
+
| `review <ref>` | PR review session | `/psm review omc#123` |
|
|
27
|
+
| `fix <ref>` | Issue fix session | `/psm fix omc#42` |
|
|
28
|
+
| `feature <proj> ` | Feature development | `/psm feature omc add-webhooks` |
|
|
29
|
+
| `list [project]` | List active sessions | `/psm list` |
|
|
30
|
+
| `attach <session>` | Attach to session | `/psm attach omc:pr-123` |
|
|
31
|
+
| `kill <session>` | Kill session | `/psm kill omc:pr-123` |
|
|
32
|
+
| `cleanup` | Clean merged/closed | `/psm cleanup` |
|
|
33
|
+
| `status` | Current session info | `/psm status` |
|
|
34
|
+
|
|
35
|
+
## Project References
|
|
36
|
+
|
|
37
|
+
Supported formats:
|
|
38
|
+
- **Alias**: `omc#123` (requires `~/.psm/projects.json`)
|
|
39
|
+
- **Full**: `owner/repo#123`
|
|
40
|
+
- **URL**: `https://github.com/owner/repo/pull/123`
|
|
41
|
+
- **Current**: `#123` (uses current directory's repo)
|
|
42
|
+
|
|
43
|
+
## Configuration
|
|
44
|
+
|
|
45
|
+
### Project Aliases (`~/.psm/projects.json`)
|
|
46
|
+
|
|
47
|
+
```json
|
|
48
|
+
{
|
|
49
|
+
"aliases": {
|
|
50
|
+
"omc": {
|
|
51
|
+
"repo": "Yeachan-Heo/oh-my-claudecode",
|
|
52
|
+
"local": "~/Workspace/oh-my-claudecode",
|
|
53
|
+
"default_base": "main"
|
|
54
|
+
}
|
|
55
|
+
},
|
|
56
|
+
"defaults": {
|
|
57
|
+
"worktree_root": "~/.psm/worktrees",
|
|
58
|
+
"cleanup_after_days": 14
|
|
59
|
+
}
|
|
60
|
+
}
|
|
61
|
+
```
|
|
62
|
+
|
|
63
|
+
## Providers
|
|
64
|
+
|
|
65
|
+
PSM supports multiple issue tracking providers:
|
|
66
|
+
|
|
67
|
+
| Provider | CLI Required | Reference Formats | Commands |
|
|
68
|
+
|----------|--------------|-------------------|----------|
|
|
69
|
+
| GitHub (default) | `gh` | `owner/repo#123`, `alias#123`, GitHub URLs | review, fix, feature |
|
|
70
|
+
| Jira | `jira` | `PROJ-123` (if PROJ configured), `alias#123` | fix, feature |
|
|
71
|
+
|
|
72
|
+
### Jira Configuration
|
|
73
|
+
|
|
74
|
+
To use Jira, add an alias with `jira_project` and `provider: "jira"`:
|
|
75
|
+
|
|
76
|
+
```json
|
|
77
|
+
{
|
|
78
|
+
"aliases": {
|
|
79
|
+
"mywork": {
|
|
80
|
+
"jira_project": "MYPROJ",
|
|
81
|
+
"repo": "mycompany/my-project",
|
|
82
|
+
"local": "~/Workspace/my-project",
|
|
83
|
+
"default_base": "develop",
|
|
84
|
+
"provider": "jira"
|
|
85
|
+
```
|
|
@@ -0,0 +1,119 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: protocolsio-integration
|
|
3
|
+
description: Integration with protocols.io API for managing scientific protocols. This skill should be used when working with protocols.io to search, create, update, or publish protocols; manage protocol steps and materials; handle discussions and comments; organize workspaces; upload and manage files; or integrate protocols.io functionality into workflows. Applicable for protocol discovery, collaborative protocol development, experiment tracking, lab protocol management, and scientific documentation.
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# Protocols.io Integration
|
|
7
|
+
|
|
8
|
+
## Overview
|
|
9
|
+
|
|
10
|
+
Protocols.io is a comprehensive platform for developing, sharing, and managing scientific protocols. This skill provides complete integration with the protocols.io API v3, enabling programmatic access to protocols, workspaces, discussions, file management, and collaboration features.
|
|
11
|
+
|
|
12
|
+
## When to Use This Skill
|
|
13
|
+
|
|
14
|
+
Use this skill when working with protocols.io in any of the following scenarios:
|
|
15
|
+
|
|
16
|
+
- **Protocol Discovery**: Searching for existing protocols by keywords, DOI, or category
|
|
17
|
+
- **Protocol Management**: Creating, updating, or publishing scientific protocols
|
|
18
|
+
- **Step Management**: Adding, editing, or organizing protocol steps and procedures
|
|
19
|
+
- **Collaborative Development**: Working with team members on shared protocols
|
|
20
|
+
- **Workspace Organization**: Managing lab or institutional protocol repositories
|
|
21
|
+
- **Discussion & Feedback**: Adding or responding to protocol comments
|
|
22
|
+
- **File Management**: Uploading data files, images, or documents to protocols
|
|
23
|
+
- **Experiment Tracking**: Documenting protocol executions and results
|
|
24
|
+
- **Data Export**: Backing up or migrating protocol collections
|
|
25
|
+
- **Integration Projects**: Building tools that interact with protocols.io
|
|
26
|
+
|
|
27
|
+
## Core Capabilities
|
|
28
|
+
|
|
29
|
+
This skill provides comprehensive guidance across five major capability areas:
|
|
30
|
+
|
|
31
|
+
### 1. Authentication & Access
|
|
32
|
+
|
|
33
|
+
Manage API authentication using access tokens and OAuth flows. Includes both client access tokens (for personal content) and OAuth tokens (for multi-user applications).
|
|
34
|
+
|
|
35
|
+
**Key operations:**
|
|
36
|
+
- Generate authorization links for OAuth flow
|
|
37
|
+
- Exchange authorization codes for access tokens
|
|
38
|
+
- Refresh expired tokens
|
|
39
|
+
- Manage rate limits and permissions
|
|
40
|
+
|
|
41
|
+
**Reference:** Read `(see docs)` for detailed authentication procedures, OAuth implementation, and security best practices.
|
|
42
|
+
|
|
43
|
+
### 2. Protocol Operations
|
|
44
|
+
|
|
45
|
+
Complete protocol lifecycle management from creation to publication.
|
|
46
|
+
|
|
47
|
+
**Key operations:**
|
|
48
|
+
- Search and discover protocols by keywords, filters, or DOI
|
|
49
|
+
- Retrieve detailed protocol information with all steps
|
|
50
|
+
- Create new protocols with metadata and tags
|
|
51
|
+
- Update protocol information and settings
|
|
52
|
+
- Manage protocol steps (create, update, delete, reorder)
|
|
53
|
+
- Handle protocol materials and reagents
|
|
54
|
+
- Publish protocols with DOI issuance
|
|
55
|
+
- Bookmark protocols for quick access
|
|
56
|
+
- Generate protocol PDFs
|
|
57
|
+
|
|
58
|
+
**Reference:** Read `(see docs)` for comprehensive protocol management guidance, including API endpoints, parameters, common workflows, and examples.
|
|
59
|
+
|
|
60
|
+
### 3. Discussions & Collaboration
|
|
61
|
+
|
|
62
|
+
Enable community engagement through comments and discussions.
|
|
63
|
+
|
|
64
|
+
**Key operations:**
|
|
65
|
+
- View protocol-level and step-level comments
|
|
66
|
+
- Create new comments and threaded replies
|
|
67
|
+
- Edit or delete your own comments
|
|
68
|
+
- Analyze discussion patterns and feedback
|
|
69
|
+
- Respond to user questions and issues
|
|
70
|
+
|
|
71
|
+
**Reference:** Read `(see docs)` for discussion management, comment threading, and collaboration workflows.
|
|
72
|
+
|
|
73
|
+
### 4. Workspace Management
|
|
74
|
+
|
|
75
|
+
Organize protocols within team workspaces with role-based permissions.
|
|
76
|
+
|
|
77
|
+
**Key operations:**
|
|
78
|
+
- List and access user workspaces
|
|
79
|
+
- Retrieve workspace details and member lists
|
|
80
|
+
- Request access or join workspaces
|
|
81
|
+
- List workspace-specific protocols
|
|
82
|
+
- Create protocols within workspaces
|
|
83
|
+
- Manage workspace permissions and collaboration
|
|
84
|
+
|
|
85
|
+
**Reference:** Read `(see docs)` for workspace organization, permission management, and team collaboration patterns.
|
|
86
|
+
|
|
87
|
+
### 5. File Operations
|
|
88
|
+
|
|
89
|
+
Upload, organize, and manage files associated with protocols.
|
|
90
|
+
|
|
91
|
+
**Key operations:**
|
|
92
|
+
- Search workspace files and folders
|
|
93
|
+
- Upload files with metadata and tags
|
|
94
|
+
- Download files and verify uploads
|
|
95
|
+
- Organize files into folder hierarchies
|
|
96
|
+
- Update file metadata
|
|
97
|
+
- Delete and restore files
|
|
98
|
+
- Manage storage and organization
|
|
99
|
+
|
|
100
|
+
**Reference:** Read `(see docs)` for file upload procedures, organization strategies, and storage management.
|
|
101
|
+
|
|
102
|
+
### 6. Additional Features
|
|
103
|
+
|
|
104
|
+
Supplementary functionality including profiles, notifications, and exports.
|
|
105
|
+
|
|
106
|
+
**Key operations:**
|
|
107
|
+
- Manage user profiles and settings
|
|
108
|
+
- Query recently published protocols
|
|
109
|
+
- Create and track experiment records
|
|
110
|
+
- Receive and manage notifications
|
|
111
|
+
- Export organization data for archival
|
|
112
|
+
|
|
113
|
+
**Reference:** Read `(see docs)` for profile management, publication discovery, experiment tracking, and data export.
|
|
114
|
+
|
|
115
|
+
## Getting Started
|
|
116
|
+
|
|
117
|
+
### Step 1: Authentication Setup
|
|
118
|
+
|
|
119
|
+
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: pubmed-search
|
|
3
|
+
description: Literature search and retrieval from PubMed and biomedical databases. Use when searching scientific publications, retrieving abstracts, managing citation data, or systematic review screening. Trigger on mentions of PubMed, literature search, paper search, citation, bibliography, or systematic review.
|
|
4
|
+
---
|
|
5
|
+
# pubmed-search
|
|
6
|
+
|
|
7
|
+
Use this skill for searching and retrieving biomedical literature.
|
|
8
|
+
|
|
9
|
+
## Core patterns
|
|
10
|
+
|
|
11
|
+
- **Search**: `Entrez.esearch(db='pubmed', term='keyword', retmax=100)`.
|
|
12
|
+
- **Fetch**: `Entrez.efetch(db='pubmed', id=pmids, rettype='abstract', retmode='xml')`.
|
|
13
|
+
- **Parse**: `Medline.parse()` for structured abstract parsing.
|
|
14
|
+
- **Filters**: Use MeSH terms for precision: `'neoplasms'[MeSH Terms] AND 'therapy'[MeSH Subheading]`.
|
|
15
|
+
- **Rate limit**: Always set `Entrez.email` and `Entrez.api_key`.
|
|
16
|
+
|
|
17
|
+
## Rules
|
|
18
|
+
|
|
19
|
+
- Always set `Entrez.email` before any request — NCBI requires it.
|
|
20
|
+
- Use `time.sleep(0.34)` between requests (3 req/sec without API key).
|
|
21
|
+
- Parse XML responses with `Entrez.read()` — don't regex XML.
|
|
22
|
+
|
|
23
|
+
## Anti-patterns
|
|
24
|
+
|
|
25
|
+
- Don't fetch full articles via Entrez — use `rettype='abstract'` for abstracts.
|
|
26
|
+
- Don't ignore date filters — always specify date range for recent results.
|
|
27
|
+
- Don't assume PMIDs are unique across databases — specify `db='pubmed'`.
|
|
28
|
+
|
|
29
|
+
|