[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M6DAYBJ7D6WMQD0RXY7529XQ":3,"skill-same:01M6DAYBJ7D6WMQD0RXY7529XQ":80},{"skillNo":4,"name":5,"nameZh":6,"description":7,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":16,"categories":17,"keywords":18,"publishedAt":27,"linkOnly":28,"markdownContent":29,"markdownBody":30,"frontMatter":31,"refName":32,"commitSha":33,"skillDirectory":34,"forksCount":14,"repositoryHtmlUrl":35,"repositoryHomepageUrl":6,"ownerHtmlUrl":36,"ownerBlogUrl":6,"ownerDescription":6,"updatedAt":37,"install":38,"resources":51},"01M6DAYBJ7D6WMQD0RXY7529XQ","tooluniverse-systems-biology",null,"Comprehensive systems biology and pathway analysis using multiple pathway databases (Reactome, KEGG, WikiPathways, Pathway Commons, BioModels). Performs pathway enrichment, protein-pathway mapping, keyword searches, and systems-level analysis. Use when analyzing gene sets, exploring biological pathways, or investigating systems-level biology.","Prekzursil\u002Fagent-skills-toolchain","Prekzursil","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F54636077?v=4","01M6DACZ1PCQHD99SCR1YXG28B","Andrei Mihai Visalon","01M6DACZ670WZF535V3WYYSS4Z",0,"MIT","https:\u002F\u002Fgithub.com\u002FPrekzursil\u002Fagent-skills-toolchain\u002Fblob\u002Fmain\u002F.agents\u002Flibrary\u002Fskills\u002Ftooluniverse-systems-biology\u002FSKILL.md",[],[19,20,21,22,23,24,25,26],"systems biology","systems","tooluniverse systems biology","analyzing","enrichment","analysis","use","databases","2026-11-10 10:12:30",false,"---\nname: tooluniverse-systems-biology\ndescription: Comprehensive systems biology and pathway analysis using multiple pathway databases (Reactome, KEGG, WikiPathways, Pathway Commons, BioModels). Performs pathway enrichment, protein-pathway mapping, keyword searches, and systems-level analysis. Use when analyzing gene sets, exploring biological pathways, or investigating systems-level biology.\n---\n\n# Systems Biology & Pathway Analysis\n\nComprehensive pathway and systems biology analysis integrating multiple curated databases to provide multi-dimensional view of biological systems, pathway enrichment, and protein-pathway relationships.\n\n## When to Use This Skill\n\n**Triggers**:\n- \"Analyze pathways for this gene list\"\n- \"What pathways is [protein] involved in?\"\n- \"Find pathways related to [keyword\u002Fprocess]\"\n- \"Perform pathway enrichment analysis\"\n- \"Map proteins to biological pathways\"\n- \"Find computational models for [process]\"\n- \"Systems biology analysis of [genes\u002Fproteins]\"\n\n**Use Cases**:\n1. **Gene Set Analysis**: Identify enriched pathways from RNA-seq, proteomics, or screen results\n2. **Protein Function**: Discover pathways and processes a protein participates in\n3. **Pathway Discovery**: Find pathways related to diseases, processes, or phenotypes\n4. **Systems Integration**: Connect genes → pathways → processes → diseases\n5. **Model Discovery**: Find computational systems biology models (SBML)\n6. **Cross-Database Validation**: Compare pathway annotations across multiple sources\n\n## COMPUTE, DON'T DESCRIBE\nWhen analysis requires computation (statistics, data processing, scoring, enrichment), write and run Python code via Bash. Don't describe what you would do — execute it and report actual results. Use ToolUniverse tools to retrieve data, then Python (pandas, scipy, statsmodels, matplotlib) to analyze it.\n\n## Domain Reasoning: Enrichment vs Causation\n\nPathway analysis answers: which biological processes are enriched in my gene list? But enrichment is not causation. A pathway being enriched means your gene list overlaps it more than expected by chance. Ask: is the enrichment driven by a few hub genes, or by many genes distributed across the pathway? A pathway with 3 input genes but 200 annotated members is less informative than one where 15 of 40 members are in your list.\n\nLOOK UP DON'T GUESS: pathway membership, gene-to-pathway assignments, and enrichment statistics. Do not assume a gene is in a pathway — use Reactome, KEGG, or Enrichr to verify. Pathway databases disagree on membership; cross-validate key findings across at least two sources.\n\n## Core Databases Integrated\n\n| Database | Strengths |\n|----------|-----------|\n| **Reactome** | Detailed mechanistic pathways with reactions; human-curated |\n| **KEGG** | Metabolic maps, disease pathways, drug targets |\n| **WikiPathways** | Emerging and community-curated pathways |\n| **Pathway Commons** | Meta-database aggregating multiple sources |\n| **BioModels** | Mathematical\u002Fcomputational SBML models |\n| **Enrichr** | Statistical over-representation analysis |\n\n## Workflow Overview\n\n```\nInput → Phase 1: Enrichment → Phase 2: Protein Mapping → Phase 3: Keyword Search → Phase 4: Top Pathways → Report\n```\n\n---\n\n## Phase 1: Pathway Enrichment Analysis\n\n**When**: Gene list provided (from experiments, screens, differentially expressed genes)\n\n**Objective**: Identify biological pathways statistically over-represented in gene list\n\n### Tools & Workflow\n\n| Tool | Input | Use |\n|------|-------|-----|\n| `ReactomeAnalysis_pathway_enrichment` | `identifiers` (newline-separated symbols), `page_size` | FDR-corrected Reactome enrichment (recommended) |\n| `enrichr_gene_enrichment_analysis` | `gene_list` (array), `libs` (array) | Over-representation with KEGG\u002FReactome\u002FWikiPathways |\n| `STRING_functional_enrichment` | `protein_ids` (array), `species`, `category` | Functional enrichment from PPI networks |\n| `intact_get_interactions` | `identifier` (UniProt accession) | Binary protein interactions with evidence |\n\n1. Submit gene list to Enrichr\u002FReactome. 2. Sort by adjusted p-value \u003C 0.05. 3. Report top 10-20 pathways with IDs, p-values, and overlapping genes. If no enrichment, note explicitly.\n\n---\n\n## Phase 2: Protein-Pathway Mapping\n\n**When**: Protein UniProt ID provided\n\n**Objective**: Map protein to all known pathways it participates in\n\n### Tools Used\n\n**Reactome_map_uniprot_to_pathways**:\n- **Input**:\n  - `uniprot_id`: UniProt accession (e.g., \"P53350\")\n- **Output**: Array of Reactome pathways containing this protein\n\n**Reactome_get_pathway_reactions**:\n- **Input**:\n  - `stId`: Reactome pathway stable ID (e.g., \"R-HSA-73817\")\n- **Output**: Array of reactions and subpathways\n- **Use**: Get mechanistic details of pathways\n\n### Workflow\n\n1. Map UniProt ID to Reactome pathways\n2. Get all pathways this protein appears in\n3. For top pathway (or user-specified):\n   - Retrieve detailed reactions and subpathways\n   - Extract event names, types (Reaction vs Pathway)\n   - Note disease associations if present\n\n### Decision Logic\n\n- **Multiple pathways**: Report all pathways, prioritize by hierarchical level\n- **Top pathway details**: Get detailed reactions for 1-3 most relevant\n- **Versioned IDs**: Reactome uses unversioned IDs - strip version if present\n- **Empty results**: Check if protein ID valid; suggest alternative databases if Reactome empty\n\n---\n\n## Phase 3: Keyword-Based Pathway Search\n\n**When**: User provides keyword or biological process name\n\n**Objective**: Search multiple pathway databases to find relevant pathways\n\n### Tools\n\n| Tool | Key Params | Coverage |\n|------|-----------|----------|\n| `kegg_search_pathway` | `keyword` | Reference, metabolic, disease pathways |\n| `kegg_get_pathway_info` | `pathway_id` (e.g., \"hsa04930\") | Detailed genes\u002Fcompounds for a pathway |\n| `WikiPathways_search` | `query`, `organism` | Community-curated, emerging pathways |\n| `PathwayCommons_search` | `action`=\"search_pathways\", `keyword` | Meta-database aggregating multiple sources |\n| `biomodels_search` | `query`, `limit` | SBML computational models |\n\nSearch all databases in parallel. Group results by pathway concept. BioModels often returns empty — this is normal.\n\n---\n\n## Phase 4: Top-Level Pathway Catalog\n\n**When**: Always included to provide context\n\n**Objective**: Show major biological systems\u002Fpathways for organism\n\n### Tools Used\n\n**Reactome_list_top_pathways**:\n- **Input**: `species` (e.g., \"Homo sapiens\")\n- **Output**: Array of top-level pathway categories\n- **Use**: Provides hierarchical pathway organization\n\n### Workflow\n\n1. Retrieve top-level pathways for specified organism\n2. Display pathway categories (metabolism, signaling, disease, etc.)\n3. Serve as reference for pathway hierarchy\n\n### Decision Logic\n\n- **Always show**: Provides context even if other phases empty\n- **Organism-specific**: Filter by species of interest\n- **Hierarchical view**: These are parent pathways with many subpathways\n\n---\n\n## Output Structure\n\nCreate a markdown report progressively: header → Phase 1 enrichment results → Phase 2 protein mapping → Phase 3 keyword search → Phase 4 top pathway catalog. Note empty results explicitly; never silently omit them. Include pathway IDs for follow-up.\n\n## Tool Parameter Reference\n\n**Critical Parameter Notes** (from testing):\n\n| Tool | Correct Parameter | Common Mistake |\n|------|-------------------|----------------|\n| `Reactome_map_uniprot_to_pathways` | `uniprot_id` | `id` |\n| `PathwayCommons_search` | `action` + `keyword` (both required) | omitting `action` |\n| `enrichr_gene_enrichment_analysis` | `gene_list` (array) | string |\n\n**Response Format Notes**:\n- **Reactome**: Returns list directly (not wrapped in `{status, data}`)\n- **Pathway Commons**: Returns dict with `total_hits` and `pathways`\n- **Others**: Standard `{status: \"success\", data: [...]}` format\n\n---\n\n## Domain Reasoning: Enzyme Kinetics & Metabolic Analysis\n\nLOOK UP DON'T GUESS: Km values, kcat values, cofactor requirements, and optimal pH\u002Ftemperature for specific enzymes. Use `BindingDB_search_by_target`, `ChEMBL_get_molecule`, `BRENDA_search` (if available), or `EuropePMC_search_articles` to retrieve published kinetic parameters. Do not estimate Km from first principles.\n\n### Michaelis-Menten Kinetics\n\nThe foundational model: v = Vmax * [S] \u002F (Km + [S])\n- **Km** = substrate concentration at half-maximal velocity. NOT binding affinity (Km = (koff + kcat) \u002F kon).\n- **Vmax** = maximum velocity = kcat * [E_total]. Proportional to enzyme concentration.\n- **kcat** = turnover number = molecules of substrate converted per enzyme per second.\n- **Catalytic efficiency** = kcat \u002F Km. The \"best\" enzymes approach the diffusion limit (~10^8 M^-1 s^-1).\n\nTo determine Km and Vmax from data: use Lineweaver-Burk (1\u002Fv vs 1\u002F[S]), Eadie-Hofstee (v vs v\u002F[S]), or nonlinear regression (preferred — avoids distortion from reciprocal transforms). See `enzyme_kinetics.py` in `skills\u002Ftooluniverse-computational-biophysics\u002Fscripts\u002F`.\n\n### Allosteric Regulation & Cooperative Binding\n\nNot all enzymes follow Michaelis-Menten. Sigmoidal v-vs-[S] curves indicate cooperativity.\n- **Hill equation**: v = Vmax * [S]^nH \u002F (K0.5^nH + [S]^nH)\n- **Hill coefficient (nH)**: nH = 1 (no cooperativity), nH > 1 (positive, e.g., hemoglobin O2 binding nH ~ 2.8), nH \u003C 1 (negative cooperativity).\n- **K0.5**: substrate concentration at half-maximal velocity (analogous to Km but not identical for cooperative systems).\n- Allosteric activators shift the curve LEFT (lower K0.5). Allosteric inhibitors shift it RIGHT (higher K0.5) or reduce Vmax.\n\n### Enzyme Inhibition Types\n\n| Type | Effect on Km | Effect on Vmax | Lineweaver-Burk pattern |\n|------|-------------|----------------|------------------------|\n| Competitive | Increases (Km_app = Km * (1 + [I]\u002FKi)) | Unchanged | Lines intersect on y-axis |\n| Uncompetitive | Decreases | Decreases | Parallel lines |\n| Noncompetitive (pure) | Unchanged | Decreases (Vmax_app = Vmax \u002F (1 + [I]\u002FKi)) | Lines intersect on x-axis |\n| Mixed | Changes | Decreases | Lines intersect in quadrant II or III |\n\nTo determine Ki: measure v at multiple [I] and [S], fit to the appropriate model. The `enzyme_kinetics.py` script handles competitive, uncompetitive, and noncompetitive inhibition calculations.\n\n### Troubleshooting \"No Activity\" Results\n\nWhen a purified enzyme shows no catalytic activity, systematically check:\n\n1. **Oligomeric state**: Many enzymes are obligate dimers\u002Ftetramers. Dilute protein may dissociate. Check with SEC, native PAGE, or DLS. Concentrate sample or add stabilizing agents (glycerol, specific ions).\n2. **Cofactors**: Metal ions (Zn2+, Mg2+, Mn2+), coenzymes (NAD+, FAD, PLP), or prosthetic groups may be lost during purification. LOOK UP the enzyme's cofactor requirements and supplement the assay buffer.\n3. **pH**: Most enzymes have a sharp pH optimum. Even 1 pH unit off can reduce activity 10-fold. Buffer at the literature-reported optimal pH.\n4. **Temperature**: Standard assays at 25C or 37C. Thermophilic enzymes need 50-80C. Psychrophilic enzymes denature above 30C.\n5. **Reducing environment**: Many enzymes need DTT or beta-mercaptoethanol to maintain active-site cysteines in reduced form.\n6. **Substrate**: Wrong isomer (D- vs L-), wrong oxidation state, or degraded substrate. Use fresh substrate and verify by a positive control enzyme.\n7. **Inhibitors in buffer**: EDTA chelates essential metals. Phosphate competes at phospho-binding sites. Detergents can denature.\n8. **Protein folding**: Inclusion body protein may be misfolded even after refolding. Check by CD spectroscopy or thermal shift assay.\n\n### Metabolic Flux Analysis Reasoning\n\nMetabolic flux analysis (MFA) quantifies the rates of metabolic reactions in vivo, not just enzyme activities in vitro.\n\nKey concepts:\n- **Steady-state assumption**: At metabolic steady state, the rate of production of each intermediate equals its rate of consumption. This gives a system of linear equations: S * v = 0, where S is the stoichiometric matrix and v is the flux vector.\n- **Flux Balance Analysis (FBA)**: When the system is underdetermined (more reactions than metabolites), FBA uses linear programming to optimize an objective function (e.g., maximize biomass production). Use `biomodels_search` to find published SBML models for the organism.\n- **13C-MFA**: Uses isotope labeling to experimentally constrain intracellular fluxes. The labeling pattern of metabolites reveals which pathways carried flux.\n- **Control coefficients**: How much does a 1% change in enzyme activity change the pathway flux? Most enzymes have near-zero flux control coefficients — flux is usually controlled by a few rate-limiting steps plus substrate supply.\n\nLOOK UP DON'T GUESS: stoichiometric coefficients, pathway topology, and published flux distributions. Use KEGG (`kegg_get_pathway_info`), Reactome (`Reactome_get_pathway_reactions`), and BioModels (`biomodels_search`) for these data.\n\n---\n\n## Fallback Strategies\n\n### Enrichment Analysis\n- **Primary**: Enrichr with KEGG library\n- **Fallback**: Try alternative libraries (Reactome, GO Biological Process)\n- **If all fail**: Note \"enrichment analysis unavailable\" and continue\n\n### Protein Mapping\n- **Primary**: Reactome protein-pathway mapping\n- **Fallback**: Use keyword search with protein name\n- **If empty**: Check if protein ID valid; suggest checking gene symbol\n\n### Keyword Search\n- **Primary**: Search all databases (KEGG, WikiPathways, Pathway Commons, BioModels)\n- **Fallback**: If all empty, broaden keyword (e.g., \"diabetes\" → \"glucose\")\n- **If still empty**: Note \"no pathways found for [keyword]\"\n\n---\n\n## Limitations & Known Issues\n\n- **Reactome**: Strong human coverage; limited for non-model organisms\n- **KEGG**: Requires keyword match; may miss synonyms\n- **WikiPathways**: Variable curation quality; check pathway version dates\n- **Pathway Commons**: Aggregation may have duplicates; check source attribution\n- **BioModels**: Sparse for many processes; often returns no results\n- **Enrichr**: Requires gene symbols (not IDs); case-sensitive\n\n**Best for**: Gene set analysis, protein function investigation, pathway discovery, systems-level biology\n","# Systems Biology & Pathway Analysis\n\nComprehensive pathway and systems biology analysis integrating multiple curated databases to provide multi-dimensional view of biological systems, pathway enrichment, and protein-pathway relationships.\n\n## When to Use This Skill\n\n**Triggers**:\n- \"Analyze pathways for this gene list\"\n- \"What pathways is [protein] involved in?\"\n- \"Find pathways related to [keyword\u002Fprocess]\"\n- \"Perform pathway enrichment analysis\"\n- \"Map proteins to biological pathways\"\n- \"Find computational models for [process]\"\n- \"Systems biology analysis of [genes\u002Fproteins]\"\n\n**Use Cases**:\n1. **Gene Set Analysis**: Identify enriched pathways from RNA-seq, proteomics, or screen results\n2. **Protein Function**: Discover pathways and processes a protein participates in\n3. **Pathway Discovery**: Find pathways related to diseases, processes, or phenotypes\n4. **Systems Integration**: Connect genes → pathways → processes → diseases\n5. **Model Discovery**: Find computational systems biology models (SBML)\n6. **Cross-Database Validation**: Compare pathway annotations across multiple sources\n\n## COMPUTE, DON'T DESCRIBE\nWhen analysis requires computation (statistics, data processing, scoring, enrichment), write and run Python code via Bash. Don't describe what you would do — execute it and report actual results. Use ToolUniverse tools to retrieve data, then Python (pandas, scipy, statsmodels, matplotlib) to analyze it.\n\n## Domain Reasoning: Enrichment vs Causation\n\nPathway analysis answers: which biological processes are enriched in my gene list? But enrichment is not causation. A pathway being enriched means your gene list overlaps it more than expected by chance. Ask: is the enrichment driven by a few hub genes, or by many genes distributed across the pathway? A pathway with 3 input genes but 200 annotated members is less informative than one where 15 of 40 members are in your list.\n\nLOOK UP DON'T GUESS: pathway membership, gene-to-pathway assignments, and enrichment statistics. Do not assume a gene is in a pathway — use Reactome, KEGG, or Enrichr to verify. Pathway databases disagree on membership; cross-validate key findings across at least two sources.\n\n## Core Databases Integrated\n\n| Database | Strengths |\n|----------|-----------|\n| **Reactome** | Detailed mechanistic pathways with reactions; human-curated |\n| **KEGG** | Metabolic maps, disease pathways, drug targets |\n| **WikiPathways** | Emerging and community-curated pathways |\n| **Pathway Commons** | Meta-database aggregating multiple sources |\n| **BioModels** | Mathematical\u002Fcomputational SBML models |\n| **Enrichr** | Statistical over-representation analysis |\n\n## Workflow Overview\n\n```\nInput → Phase 1: Enrichment → Phase 2: Protein Mapping → Phase 3: Keyword Search → Phase 4: Top Pathways → Report\n```\n\n---\n\n## Phase 1: Pathway Enrichment Analysis\n\n**When**: Gene list provided (from experiments, screens, differentially expressed genes)\n\n**Objective**: Identify biological pathways statistically over-represented in gene list\n\n### Tools & Workflow\n\n| Tool | Input | Use |\n|------|-------|-----|\n| `ReactomeAnalysis_pathway_enrichment` | `identifiers` (newline-separated symbols), `page_size` | FDR-corrected Reactome enrichment (recommended) |\n| `enrichr_gene_enrichment_analysis` | `gene_list` (array), `libs` (array) | Over-representation with KEGG\u002FReactome\u002FWikiPathways |\n| `STRING_functional_enrichment` | `protein_ids` (array), `species`, `category` | Functional enrichment from PPI networks |\n| `intact_get_interactions` | `identifier` (UniProt accession) | Binary protein interactions with evidence |\n\n1. Submit gene list to Enrichr\u002FReactome. 2. Sort by adjusted p-value \u003C 0.05. 3. Report top 10-20 pathways with IDs, p-values, and overlapping genes. If no enrichment, note explicitly.\n\n---\n\n## Phase 2: Protein-Pathway Mapping\n\n**When**: Protein UniProt ID provided\n\n**Objective**: Map protein to all known pathways it participates in\n\n### Tools Used\n\n**Reactome_map_uniprot_to_pathways**:\n- **Input**:\n  - `uniprot_id`: UniProt accession (e.g., \"P53350\")\n- **Output**: Array of Reactome pathways containing this protein\n\n**Reactome_get_pathway_reactions**:\n- **Input**:\n  - `stId`: Reactome pathway stable ID (e.g., \"R-HSA-73817\")\n- **Output**: Array of reactions and subpathways\n- **Use**: Get mechanistic details of pathways\n\n### Workflow\n\n1. Map UniProt ID to Reactome pathways\n2. Get all pathways this protein appears in\n3. For top pathway (or user-specified):\n   - Retrieve detailed reactions and subpathways\n   - Extract event names, types (Reaction vs Pathway)\n   - Note disease associations if present\n\n### Decision Logic\n\n- **Multiple pathways**: Report all pathways, prioritize by hierarchical level\n- **Top pathway details**: Get detailed reactions for 1-3 most relevant\n- **Versioned IDs**: Reactome uses unversioned IDs - strip version if present\n- **Empty results**: Check if protein ID valid; suggest alternative databases if Reactome empty\n\n---\n\n## Phase 3: Keyword-Based Pathway Search\n\n**When**: User provides keyword or biological process name\n\n**Objective**: Search multiple pathway databases to find relevant pathways\n\n### Tools\n\n| Tool | Key Params | Coverage |\n|------|-----------|----------|\n| `kegg_search_pathway` | `keyword` | Reference, metabolic, disease pathways |\n| `kegg_get_pathway_info` | `pathway_id` (e.g., \"hsa04930\") | Detailed genes\u002Fcompounds for a pathway |\n| `WikiPathways_search` | `query`, `organism` | Community-curated, emerging pathways |\n| `PathwayCommons_search` | `action`=\"search_pathways\", `keyword` | Meta-database aggregating multiple sources |\n| `biomodels_search` | `query`, `limit` | SBML computational models |\n\nSearch all databases in parallel. Group results by pathway concept. BioModels often returns empty — this is normal.\n\n---\n\n## Phase 4: Top-Level Pathway Catalog\n\n**When**: Always included to provide context\n\n**Objective**: Show major biological systems\u002Fpathways for organism\n\n### Tools Used\n\n**Reactome_list_top_pathways**:\n- **Input**: `species` (e.g., \"Homo sapiens\")\n- **Output**: Array of top-level pathway categories\n- **Use**: Provides hierarchical pathway organization\n\n### Workflow\n\n1. Retrieve top-level pathways for specified organism\n2. Display pathway categories (metabolism, signaling, disease, etc.)\n3. Serve as reference for pathway hierarchy\n\n### Decision Logic\n\n- **Always show**: Provides context even if other phases empty\n- **Organism-specific**: Filter by species of interest\n- **Hierarchical view**: These are parent pathways with many subpathways\n\n---\n\n## Output Structure\n\nCreate a markdown report progressively: header → Phase 1 enrichment results → Phase 2 protein mapping → Phase 3 keyword search → Phase 4 top pathway catalog. Note empty results explicitly; never silently omit them. Include pathway IDs for follow-up.\n\n## Tool Parameter Reference\n\n**Critical Parameter Notes** (from testing):\n\n| Tool | Correct Parameter | Common Mistake |\n|------|-------------------|----------------|\n| `Reactome_map_uniprot_to_pathways` | `uniprot_id` | `id` |\n| `PathwayCommons_search` | `action` + `keyword` (both required) | omitting `action` |\n| `enrichr_gene_enrichment_analysis` | `gene_list` (array) | string |\n\n**Response Format Notes**:\n- **Reactome**: Returns list directly (not wrapped in `{status, data}`)\n- **Pathway Commons**: Returns dict with `total_hits` and `pathways`\n- **Others**: Standard `{status: \"success\", data: [...]}` format\n\n---\n\n## Domain Reasoning: Enzyme Kinetics & Metabolic Analysis\n\nLOOK UP DON'T GUESS: Km values, kcat values, cofactor requirements, and optimal pH\u002Ftemperature for specific enzymes. Use `BindingDB_search_by_target`, `ChEMBL_get_molecule`, `BRENDA_search` (if available), or `EuropePMC_search_articles` to retrieve published kinetic parameters. Do not estimate Km from first principles.\n\n### Michaelis-Menten Kinetics\n\nThe foundational model: v = Vmax * [S] \u002F (Km + [S])\n- **Km** = substrate concentration at half-maximal velocity. NOT binding affinity (Km = (koff + kcat) \u002F kon).\n- **Vmax** = maximum velocity = kcat * [E_total]. Proportional to enzyme concentration.\n- **kcat** = turnover number = molecules of substrate converted per enzyme per second.\n- **Catalytic efficiency** = kcat \u002F Km. The \"best\" enzymes approach the diffusion limit (~10^8 M^-1 s^-1).\n\nTo determine Km and Vmax from data: use Lineweaver-Burk (1\u002Fv vs 1\u002F[S]), Eadie-Hofstee (v vs v\u002F[S]), or nonlinear regression (preferred — avoids distortion from reciprocal transforms). See `enzyme_kinetics.py` in `skills\u002Ftooluniverse-computational-biophysics\u002Fscripts\u002F`.\n\n### Allosteric Regulation & Cooperative Binding\n\nNot all enzymes follow Michaelis-Menten. Sigmoidal v-vs-[S] curves indicate cooperativity.\n- **Hill equation**: v = Vmax * [S]^nH \u002F (K0.5^nH + [S]^nH)\n- **Hill coefficient (nH)**: nH = 1 (no cooperativity), nH > 1 (positive, e.g., hemoglobin O2 binding nH ~ 2.8), nH \u003C 1 (negative cooperativity).\n- **K0.5**: substrate concentration at half-maximal velocity (analogous to Km but not identical for cooperative systems).\n- Allosteric activators shift the curve LEFT (lower K0.5). Allosteric inhibitors shift it RIGHT (higher K0.5) or reduce Vmax.\n\n### Enzyme Inhibition Types\n\n| Type | Effect on Km | Effect on Vmax | Lineweaver-Burk pattern |\n|------|-------------|----------------|------------------------|\n| Competitive | Increases (Km_app = Km * (1 + [I]\u002FKi)) | Unchanged | Lines intersect on y-axis |\n| Uncompetitive | Decreases | Decreases | Parallel lines |\n| Noncompetitive (pure) | Unchanged | Decreases (Vmax_app = Vmax \u002F (1 + [I]\u002FKi)) | Lines intersect on x-axis |\n| Mixed | Changes | Decreases | Lines intersect in quadrant II or III |\n\nTo determine Ki: measure v at multiple [I] and [S], fit to the appropriate model. The `enzyme_kinetics.py` script handles competitive, uncompetitive, and noncompetitive inhibition calculations.\n\n### Troubleshooting \"No Activity\" Results\n\nWhen a purified enzyme shows no catalytic activity, systematically check:\n\n1. **Oligomeric state**: Many enzymes are obligate dimers\u002Ftetramers. Dilute protein may dissociate. Check with SEC, native PAGE, or DLS. Concentrate sample or add stabilizing agents (glycerol, specific ions).\n2. **Cofactors**: Metal ions (Zn2+, Mg2+, Mn2+), coenzymes (NAD+, FAD, PLP), or prosthetic groups may be lost during purification. LOOK UP the enzyme's cofactor requirements and supplement the assay buffer.\n3. **pH**: Most enzymes have a sharp pH optimum. Even 1 pH unit off can reduce activity 10-fold. Buffer at the literature-reported optimal pH.\n4. **Temperature**: Standard assays at 25C or 37C. Thermophilic enzymes need 50-80C. Psychrophilic enzymes denature above 30C.\n5. **Reducing environment**: Many enzymes need DTT or beta-mercaptoethanol to maintain active-site cysteines in reduced form.\n6. **Substrate**: Wrong isomer (D- vs L-), wrong oxidation state, or degraded substrate. Use fresh substrate and verify by a positive control enzyme.\n7. **Inhibitors in buffer**: EDTA chelates essential metals. Phosphate competes at phospho-binding sites. Detergents can denature.\n8. **Protein folding**: Inclusion body protein may be misfolded even after refolding. Check by CD spectroscopy or thermal shift assay.\n\n### Metabolic Flux Analysis Reasoning\n\nMetabolic flux analysis (MFA) quantifies the rates of metabolic reactions in vivo, not just enzyme activities in vitro.\n\nKey concepts:\n- **Steady-state assumption**: At metabolic steady state, the rate of production of each intermediate equals its rate of consumption. This gives a system of linear equations: S * v = 0, where S is the stoichiometric matrix and v is the flux vector.\n- **Flux Balance Analysis (FBA)**: When the system is underdetermined (more reactions than metabolites), FBA uses linear programming to optimize an objective function (e.g., maximize biomass production). Use `biomodels_search` to find published SBML models for the organism.\n- **13C-MFA**: Uses isotope labeling to experimentally constrain intracellular fluxes. The labeling pattern of metabolites reveals which pathways carried flux.\n- **Control coefficients**: How much does a 1% change in enzyme activity change the pathway flux? Most enzymes have near-zero flux control coefficients — flux is usually controlled by a few rate-limiting steps plus substrate supply.\n\nLOOK UP DON'T GUESS: stoichiometric coefficients, pathway topology, and published flux distributions. Use KEGG (`kegg_get_pathway_info`), Reactome (`Reactome_get_pathway_reactions`), and BioModels (`biomodels_search`) for these data.\n\n---\n\n## Fallback Strategies\n\n### Enrichment Analysis\n- **Primary**: Enrichr with KEGG library\n- **Fallback**: Try alternative libraries (Reactome, GO Biological Process)\n- **If all fail**: Note \"enrichment analysis unavailable\" and continue\n\n### Protein Mapping\n- **Primary**: Reactome protein-pathway mapping\n- **Fallback**: Use keyword search with protein name\n- **If empty**: Check if protein ID valid; suggest checking gene symbol\n\n### Keyword Search\n- **Primary**: Search all databases (KEGG, WikiPathways, Pathway Commons, BioModels)\n- **Fallback**: If all empty, broaden keyword (e.g., \"diabetes\" → \"glucose\")\n- **If still empty**: Note \"no pathways found for [keyword]\"\n\n---\n\n## Limitations & Known Issues\n\n- **Reactome**: Strong human coverage; limited for non-model organisms\n- **KEGG**: Requires keyword match; may miss synonyms\n- **WikiPathways**: Variable curation quality; check pathway version dates\n- **Pathway Commons**: Aggregation may have duplicates; check source attribution\n- **BioModels**: Sparse for many processes; often returns no results\n- **Enrichr**: Requires gene symbols (not IDs); case-sensitive\n\n**Best for**: Gene set analysis, protein function investigation, pathway discovery, systems-level biology\n",{"name":5,"description":7},"main","a298c929b6cbd662e1fce54302ce520d5ceea1a5",".agents\u002Flibrary\u002Fskills\u002Ftooluniverse-systems-biology","https:\u002F\u002Fgithub.com\u002FPrekzursil\u002Fagent-skills-toolchain","https:\u002F\u002Fgithub.com\u002FPrekzursil","2026-11-02 14:30:57",{"source":8,"skillName":5,"commands":39,"prompt":49,"zipAvailable":50},[40,43,46],{"tool":41,"command":42},"npx","npx skills add Prekzursil\u002Fagent-skills-toolchain --skill tooluniverse-systems-biology",{"tool":44,"command":45},"bunx","bunx skills add Prekzursil\u002Fagent-skills-toolchain --skill tooluniverse-systems-biology",{"tool":47,"command":48},"pnpm","pnpm dlx skills add Prekzursil\u002Fagent-skills-toolchain --skill tooluniverse-systems-biology","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002FPrekzursil\u002Fagent-skills-toolchain\u002Fblob\u002Fmain\u002F.agents\u002Flibrary\u002Fskills\u002Ftooluniverse-systems-biology\u002FSKILL.md",true,[52,58,62,68,72,76],{"path":53,"resourceType":54,"resourceTypeDesc":55,"sizeBytes":56,"sourceHtmlUrl":57},"python_implementation.py","SCRIPT","脚本",12274,"https:\u002F\u002Fgithub.com\u002FPrekzursil\u002Fagent-skills-toolchain\u002Fblob\u002Fmain\u002F.agents\u002Flibrary\u002Fskills\u002Ftooluniverse-systems-biology\u002Fpython_implementation.py",{"path":59,"resourceType":54,"resourceTypeDesc":55,"sizeBytes":60,"sourceHtmlUrl":61},"test_skill.py",3697,"https:\u002F\u002Fgithub.com\u002FPrekzursil\u002Fagent-skills-toolchain\u002Fblob\u002Fmain\u002F.agents\u002Flibrary\u002Fskills\u002Ftooluniverse-systems-biology\u002Ftest_skill.py",{"path":63,"resourceType":64,"resourceTypeDesc":65,"sizeBytes":66,"sourceHtmlUrl":67},"test1_genelist.md","REFERENCE","参考文档",1127,"https:\u002F\u002Fgithub.com\u002FPrekzursil\u002Fagent-skills-toolchain\u002Fblob\u002Fmain\u002F.agents\u002Flibrary\u002Fskills\u002Ftooluniverse-systems-biology\u002Ftest1_genelist.md",{"path":69,"resourceType":64,"resourceTypeDesc":65,"sizeBytes":70,"sourceHtmlUrl":71},"test2_protein.md",2674,"https:\u002F\u002Fgithub.com\u002FPrekzursil\u002Fagent-skills-toolchain\u002Fblob\u002Fmain\u002F.agents\u002Flibrary\u002Fskills\u002Ftooluniverse-systems-biology\u002Ftest2_protein.md",{"path":73,"resourceType":64,"resourceTypeDesc":65,"sizeBytes":74,"sourceHtmlUrl":75},"test3_keyword.md",2812,"https:\u002F\u002Fgithub.com\u002FPrekzursil\u002Fagent-skills-toolchain\u002Fblob\u002Fmain\u002F.agents\u002Flibrary\u002Fskills\u002Ftooluniverse-systems-biology\u002Ftest3_keyword.md",{"path":77,"resourceType":64,"resourceTypeDesc":65,"sizeBytes":78,"sourceHtmlUrl":79},"test4_combined.md",5449,"https:\u002F\u002Fgithub.com\u002FPrekzursil\u002Fagent-skills-toolchain\u002Fblob\u002Fmain\u002F.agents\u002Flibrary\u002Fskills\u002Ftooluniverse-systems-biology\u002Ftest4_combined.md",[81,102,133,160,174,190],{"skillNo":82,"name":83,"nameZh":6,"description":84,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":85,"categories":86,"keywords":87,"publishedAt":27},"01M6DF7D7478R55P46REYH4QAC","clarify-requirements","Resolve genuine pre-execution ambiguity by scanning repo context, generating 1-6 grounded options, and asking 1-3 focused questions via AskUserQuestion. NOT for mid-task use (injection risk); NOT when the goal is already unambiguous; use to disambiguate vague prompts before any file edits.","https:\u002F\u002Fgithub.com\u002FPrekzursil\u002Fagent-skills-toolchain\u002Fblob\u002Fmain\u002Ftools\u002Fworkspace-hooks\u002Fskills\u002Fclarify-requirements\u002FSKILL.md",[],[88,89,90,91,92,93,94,95,96,25,97,98,99,100,101],"clarify requirements","clarify","requirements","risk","options","task","prompts","goal","scanning","context","repo","injection","execution","file",{"skillNo":103,"name":104,"nameZh":6,"description":105,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":106,"categories":107,"keywords":113,"publishedAt":27},"01M6DF79CA4BHJS66J8EZDBPWJ","openmm-md","Run FREE, open-source, Windows-native GPU molecular dynamics via the openmm-md MCP (OpenMM + CUDA on the local NVIDIA GPU). Use for protein \u002F protein-ligand MD when you want a free stack or are on Windows without a Schrodinger license. Covers the full workflow (prepare, solvate, minimize, equilibrate, production, analyze, mmgbsa) AND an honest decision guide vs Schrodinger Desmond, including how to run Desmond legitimately on Linux or a cloud GPU with a real license. This is a deliberately LESSER free alternative and does NOT replace the schrodinger MCP tools. Do NOT use it to pick a free tool when a validated FEP+, WaterMap, IFD-MD, or Prime MM-GBSA result is actually required.","https:\u002F\u002Fgithub.com\u002FPrekzursil\u002Fagent-skills-toolchain\u002Fblob\u002Fmain\u002Ftools\u002Fmcp\u002Fopenmm-md-mcp\u002Fskill\u002Fopenmm-md\u002FSKILL.md",[108],{"categoryNo":109,"categoryName":110,"taxonomyType":111,"taxonomyTypeDesc":112},"01JBSEEDCAT000000000000023","Skill与智能体开发","SCENARIO","使用场景",[114,115,116,117,118,119,120,121,122,123,124,125,126,127,25,128,129,130,131,132],"openmm md","how","decision","pick","linux","analyze","tool","stack","open","NVIDIA","gpu","license","workflow","windows","free","molecular dynamics","local","do","MCP",{"skillNo":134,"name":135,"nameZh":6,"description":136,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":137,"categories":138,"keywords":145,"publishedAt":27},"01M6DF76C1MG85VEWP8VZCBNMN","visual-review","Take screenshots of web pages and UI using Playwright for visual review and iteration","https:\u002F\u002Fgithub.com\u002FPrekzursil\u002Fagent-skills-toolchain\u002Fblob\u002Fmain\u002Ftools\u002Feditor\u002Fmetaswarm\u002Fskills\u002Fvisual-review\u002FSKILL.md",[139,142],{"categoryNo":140,"categoryName":141,"taxonomyType":111,"taxonomyTypeDesc":112},"01JBSEEDCAT000000000000003","演示文稿",{"categoryNo":143,"categoryName":144,"taxonomyType":111,"taxonomyTypeDesc":112},"01JBSEEDCAT000000000000008","测试与质量",[146,147,148,149,150,151,152,153,154,155,115,156,157,158,159],"review","visual","visual review","pages","web","false","iteration","take","check","slides","ui","screenshot","playwright","screenshots",{"skillNo":161,"name":162,"nameZh":6,"description":163,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":164,"categories":165,"keywords":166,"publishedAt":27},"01M6DF73AQVCBZKEN0YXEX9FXP","status","Diagnostic status report — shows metaswarm installation state, project setup, and potential issues","https:\u002F\u002Fgithub.com\u002FPrekzursil\u002Fagent-skills-toolchain\u002Fblob\u002Fmain\u002Ftools\u002Feditor\u002Fmetaswarm\u002Fskills\u002Fstatus\u002FSKILL.md",[],[162,167,168,169,170,171,172,173],"setup","report","project","installation","project setup","issues","state",{"skillNo":175,"name":176,"nameZh":6,"description":177,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":178,"categories":179,"keywords":181,"publishedAt":27},"01M6DF6X6C2XB0P6GX76P7TTYV","start","Use when starting work on any task, when the user mentions metaswarm, or when the user wants to begin tracked development work","https:\u002F\u002Fgithub.com\u002FPrekzursil\u002Fagent-skills-toolchain\u002Fblob\u002Fmain\u002Ftools\u002Feditor\u002Fmetaswarm\u002Fskills\u002Fstart\u002FSKILL.md",[180],{"categoryNo":109,"categoryName":110,"taxonomyType":111,"taxonomyTypeDesc":112},[176,182,93,183,184,185,25,186,187,188,189],"start issue","issue","ready","work on issue","user","work","work on","development",{"skillNo":191,"name":167,"nameZh":6,"description":192,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":193,"categories":194,"keywords":195,"publishedAt":27},"01M6DF6QMJ9AJKFKHHKRT005PQ","Interactive project setup — detects your project, configures metaswarm, writes project-local files","https:\u002F\u002Fgithub.com\u002FPrekzursil\u002Fagent-skills-toolchain\u002Fblob\u002Fmain\u002Ftools\u002Feditor\u002Fmetaswarm\u002Fskills\u002Fsetup\u002FSKILL.md",[],[167,169,130,196,171,197],"files","interactive"]