<!-- COPYRIGHT NOTICE This file is part of the "Universal Biomedical Skills" project. Copyright c 2026 MD BABU MIA, PhD <md.babu.mia@mssm.edu All Rights Reserved. This code is proprietary and confidential. Unauthorized copying of this file, via any medium is strictly prohibited. Provenance:
Install with the open skills CLI (global, non-interactive — available in every Claude Code session):
npx skills add FreedomIntelligence/OpenClaw-Medical-Skills --skill "clinical-nlp-extractor" -g -a claude-code -yOr manually — clone and copy the skill directory (SKILL.md + companion files):
git clone --depth 1 https://github.com/FreedomIntelligence/OpenClaw-Medical-Skills /tmp/OpenClaw-Medical-Skills && cp -r /tmp/OpenClaw-Medical-Skills/skills/clinical-nlp-extractor ~/.claude/skills/clinical-nlp-extractorThis skill is a directory: SKILL.md is the entry point; the files below ship with it.
<!--
# COPYRIGHT NOTICE
# This file is part of the "Universal Biomedical Skills" project.
# Copyright (c) 2026 MD BABU MIA, PhD <md.babu.mia@mssm.edu>
# All Rights Reserved.
#
# This code is proprietary and confidential.
# Unauthorized copying of this file, via any medium is strictly prohibited.
#
# Provenance: Authenticated by MD BABU MIA
-->
---
name: 'clinical-nlp-extractor'
description: 'Extracts medical entities (Diseases, Medications, Procedures) from unstructured clinical text using regex and simple rules (or LLM wrappers).'
measurable_outcome: Execute skill workflow successfully with valid output within 15 minutes.
allowed-tools:
- read_file
- run_shell_command
---
# Clinical NLP Entity Extractor
The **Clinical NLP Skill** converts free-text clinical notes into structured data. It identifies key medical entities like problems/diagnoses, medications, and procedures.
## When to Use This Skill
* When analyzing unstructured EHR notes.
* To populate a patient's problem list or medication reconciliation.
* To de-identify text (phi-removal) - *Basic version*.
## Core Capabilities
1. **NER (Named Entity Recognition)**: Extracts Problems, Drugs, Procedures.
2. **Negation Detection**: (Basic) Checks if a finding is denied ("No fever").
3. **Structuring**: Returns JSON format compatible with FHIR/USDL.
## Workflow
1. **Input**: A string of clinical text or a text file.
2. **Process**: Tokenizes and matches against patterns/dictionaries.
3. **Output**: JSON list of entities with spans and types.
## Example Usage
**User**: "Extract entities from this note."
**Agent Action**:
```bash
python3 Skills/Clinical/Clinical_NLP/entity_extractor.py \
--text "Patient has diabetes type 2. Prescribed Metformin 500mg. No chest pain." \
--output entities.json
```
```
<!-- AUTHOR_SIGNATURE: 9a7f3c2e-MD-BABU-MIA-2026-MSSM-SECURE -->Give the agent its own dedicated email inbox via AgentMail. Send, receive, and manage email autonomously using agent-owned email addresses (e.g. hermes-agent@agentmail.to).
AudioCraft: MusicGen text-to-music, AudioGen text-to-sound.
Axolotl: YAML LLM fine-tuning (LoRA, DPO, GRPO).