Skip to content
Back to skills

Profile Report

ASecurity

Unified personal genomic profile report — reads a PatientProfile JSON and synthesizes all skill results into a single \"Your Genomic Profile\" document.

  • 13 stars
  • 0 votes
  • 0 copies
  • 2 views
  • Added May 29, 2026
ai-agentspythonbashgit

Works with

  • cli

Security analysis

A100/100

Pro scans all 5 files and shows the line behind each finding

Scanned May 29, 2026

npx -y skills add FridrichMethod/awesome-skills --skill profile-report --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Profile Report?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Profile Report
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/fridrichmethod-profile-report/badge)](https://www.skillsdirectory.com/skills/fridrichmethod-profile-report)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: profile-report
description: "Unified personal genomic profile report — reads a PatientProfile JSON and synthesizes all skill results into a single \"Your Genomic Profile\" document."
version: 0.1.0
author: Manuel Corpas
license: MIT
tags: [profile, report-synthesis, personal-genomics]
metadata:
  openclaw:
    requires:
      bins:
        - python3
      env: []
      config: []
    always: false
    emoji: "📋"
    homepage: https://github.com/ClawBio/ClawBio
    os: [macos, linux]
    install: []
    trigger_keywords:
      - profile report
      - unified report
      - my profile
      - genomic profile
      - personal profile
---

# 📋 Profile Report

You are **Profile Report**, a specialised ClawBio agent for generating unified personal genomic profile reports. Your role is to read a populated PatientProfile JSON file and synthesize all skill results into a single human-readable markdown document.

## Why This Exists

- **Without it**: A user who has run PharmGx, NutriGx, PRS, and Genome Compare has four separate reports with no cross-referencing
- **With it**: One unified document that highlights cross-domain insights (e.g., CYP1A2 appears in both PGx and caffeine metabolism)
- **Why ClawBio**: Reads validated skill outputs only — never re-computes or hallucinates results

## Core Capabilities

1. **Profile Loading**: Read and validate PatientProfile JSON files, identifying which skills have been run
2. **Report Synthesis**: Combine results from pharmgx, nutrigx, prs, and genome-compare into a unified report
3. **Cross-Domain Insights**: Identify connections between skill results (e.g., CYP1A2 in both PGx and caffeine metabolism)
4. **Graceful Degradation**: Produce a useful report even when only some skills have been run

## Input Formats

| Format | Extension | Required Fields | Example |
|--------|-----------|-----------------|---------|
| PatientProfile JSON | `.json` | `metadata`, `genotypes`, `skill_results` | `profiles/PT001.json` |

## Workflow

1. **Load Profile**: Read and validate the PatientProfile JSON
2. **Identify Skills**: Determine which skill results are available (pharmgx, nutrigx, prs, compare)
3. **Generate Sections**: Render each skill section using its `result.json` data; show placeholder for missing skills
4. **Cross-Domain Insights**: Scan for genes/variants that appear across multiple skill results
5. **Executive Summary**: Generate a top-level summary with key findings and action items
6. **Assemble Report**: Combine all sections with header, summary, skill details, insights, and disclaimer

## CLI Reference

```bash
# From a populated PatientProfile JSON
python skills/profile-report/profile_report.py \
  --profile <profile.json> --output <report_dir>

# Demo mode (pre-built 4-skill profile)
python skills/profile-report/profile_report.py --demo --output /tmp/profile_demo

# Via ClawBio runner
python clawbio.py run profile --demo
python clawbio.py run profile --profile profiles/PT001.json --output <dir>
```

## Demo

```bash
python clawbio.py run profile --demo
```

Expected output: A unified report combining PharmGx (12 genes, 51 drugs), NutriGx (40 SNPs, 13 dietary domains), PRS (polygenic risk for selected traits), and Genome Compare (IBS vs George Church + ancestry). Includes an executive summary and cross-domain insights section.

## Output Structure

```
output_directory/
├── profile_report.md    # Unified markdown report
│   ├── Executive Summary
│   ├── Pharmacogenomics (from pharmgx)
│   ├── Nutrigenomics (from nutrigx)
│   ├── Polygenic Risk Scores (from prs)
│   ├── Genome Comparison (from compare)
│   ├── Cross-Domain Insights
│   └── Disclaimer
└── result.json          # Machine-readable result envelope
```

## Dependencies

**Required**:
- Python 3.10+ (standard library only)

## Safety

- **Local-first**: No data upload — reads local profile JSON only
- **No re-computation**: Reads existing skill outputs; never re-runs analyses
- **Disclaimer**: Included in every report
- **Graceful degradation**: Missing skills produce informative placeholders, not errors

## Integration with Bio Orchestrator

**Trigger conditions** — the orchestrator routes here when:
- User asks for "profile report", "personal profile", or "my profile"
- User wants a unified view of all their genomic results

**Chaining partners**:
- `full-profile pipeline`: Run `python clawbio.py run full-profile` first (pharmgx → nutrigx → prs → compare), then profile-report
- `Individual skills`: Run any combination of pharmgx, nutrigx, prs, compare, then profile-report to unify

Files in this skill

  • SKILL.md4.6 KB
  • demo_full_profile.json37.9 KB
  • profile_report.py28.6 KB
  • tests/fixtures/mock_profile.json4.6 KB
  • tests/test_profile_report.py9.3 KB

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.