Not in the top 1,000 by GitHub stars

petergyang/fuck-cancer

Create and update a practical brief to help patients and caregivers advocate for themselves.

History

Review weekly changes to SKILL.md before updating. Dates mark the weeks in which we observed each version; checks apply to the recorded commits.

View weekly changes

skills/fuck-cancer/SKILL.md

Week of Nov 2, 2026 · +26 / −14 lines

Before Network or broad shell → After Network or broad shell

3c5a9903bd7e → ecaef1a3fa5b

- 25 On first use, if no destination exists, ask: `Do you want me to keep this in a local Markdown file, or use a Google Doc that is easier to share?` Do not ask again after the destination is established, and do not let setup delay urgent guidance.
+ 25 On first use, if the user has not named a destination, keep the brief in a Google Doc so it is easy to share with family. Do not let setup delay urgent guidance.
- 27 On a bare invocation with no details, open with one calm, welcoming sentence, then ask for the essentials in a single short message: who the brief is for, what is happening now, and whether anything is time-sensitive, ending with the destination question. Never open with the destination question alone or with a form.
+ 27 On a bare invocation with no details, open with one calm, welcoming sentence, then ask for the essentials in a single short message: who the brief is for, what is happening now, and whether anything is time-sensitive. Never open with a form.
- 29 - **Local Markdown:** Create or reuse a file named after the patient, such as `alex-brief.md`, in the current workspace.
- 30 - **Google Docs:** Ask for an existing Doc or offer to create one. Use the connected Google Drive or Docs tool. If it is unavailable, ask the user to enable it; do not create a local fallback.
+ 29 - **Google Docs:** Use the Doc the user names or create one with the connected Google Drive or Docs tool. If the tool is unavailable, ask the user to enable it. If they can't or prefer not to, offer local Markdown.
+ 30 - **Local Markdown:** Use only when the user asks for it or can't connect Google. Create or reuse a file named after the patient, such as `alex-brief.md`, in the current workspace.
- 33 If the user wants approval first, show the exact proposed changes and wait. After an authorized edit, read the saved destination back, link it, state what changed, and name the immediate next step.
+ 33 If the user wants approval first, show the exact proposed changes and wait. After an authorized edit, read the saved destination back, fix any item that lost its number or bold stem, link it, state what changed, and name the immediate next step.
- 50 1. The patient's national cancer agency. Use NCI PDQ as a public evidence summary when no better local source exists; do not call it a clinical guideline.
+ 50 1. The patient's national or provincial cancer agency, such as BC Cancer. Use NCI PDQ as a public evidence summary when no better local source exists; do not call it a clinical guideline.
- 56 Do not cite search snippets, SEO health sites, unsourced summaries, social posts, AI-generated medical pages, or unofficial copies of copyrighted resources such as UpToDate or NCCN. Treat an authorized user-supplied copy as evidence and state its date.
+ 56 Do not cite search snippets, SEO health sites, unsourced summaries, social posts, AI-generated medical pages, or unofficial copies of copyrighted resources such as UpToDate. Do not retrieve or summarize NCCN content. For US patients, turn it into a question for the care team: `Does this plan follow NCCN guidelines?`
+ 76 ### Medical records
+ 77 
+ 78 When records are missing or scattered, help the user request three types separately, because each comes through a different process:
+ 79 
+ 80 1. **Written records:** Pathology and scan reports, treatment history, and visit notes.
+ 81 2. **Imaging files:** The original scans, usually in DICOM format. A written report or online viewer does not replace them.
+ 82 3. **Pathology blocks or slides:** The actual tumor tissue, which sequencing and pathology review may need. Ask early, especially for tissue from an earlier cancer.
+ 83 
+ 84 Ask which hospitals hold what, and suggest one shared folder with a subfolder for each type. Put only the most urgent outstanding request in `What to do next`, and log what has actually arrived. Do not request records or contact a hospital without explicit permission.
+ 85 
- 78 Title it `<First name>’s Brief`. Do not put `cancer`, a diagnosis, or alarming language in the title unless the user asks.
+ 88 Title it exactly `<First name>’s Brief`, and ask for the first name if you don't have it. Do not put `cancer`, a diagnosis, `Demo`, or alarming language in the title unless the user asks.
+ 92 Format every section the same way: a heading, then a numbered list where each item starts with a bold stem and a colon, with the rest of the text on the same line. For example, `**Diagnosis:** The biopsy confirms...`. In Google Docs, use bold blue for the title, bold black for section headings, and native numbered lists with real bold rather than typed numbers, bullets, or asterisks.
+ 93 
- 84 Put essential care-coordination details first: patient facts, medical or insurance numbers, family doctor, current care team, and important contacts. Keep appointments, scans, and deadlines in `What to do next`; do not create another contacts section.
+ 96 Put essential care-coordination details first, using stems such as `Patient`, `Current team`, `Family doctor`, `Local contacts`, and `Records`: patient facts, medical or insurance numbers, family doctor, current care team, and important contacts. Keep appointments, scans, and deadlines in `What to do next`; do not create another contacts section.
- 88 Use a numbered list with no more than three priority actions. Start each with a specific bold stem and name the report, test, appointment, clinician, or date: `Review biopsy and scan results before 8/31`, not `Review results`.
+ 100 List no more than three priority actions. Make each stem specific and name the report, test, appointment, clinician, or date: `Review biopsy and scan results before 8/31`, not `Review results`.
- 96 Use a concise numbered list with bold stems. Combine each finding, its meaning, and meaningful uncertainty in one or two sentences. Fold pending information into the related finding or action instead of creating a useless standalone bullet. Keep definitions out of this section.
+ 108 Use short stems such as `Diagnosis`, `Extent`, or `Cancer history`. Combine each finding, its meaning, and meaningful uncertainty in one or two sentences. Fold pending information into the related finding or action instead of creating a useless standalone bullet. Keep definitions out of this section.
- 100 Use this optional section when several biomarkers, tests, or staging terms need explanation. Define each in one or two short sentences, then connect it to the patient's confirmed result and the treatment category it may affect. Use a brief parenthetical earlier only when the reader must understand the term immediately; do not define the same term twice.
+ 112 Use this optional section when several biomarkers, tests, or staging terms need explanation. Use the term as the stem and define it in one or two short sentences, then connect it to the patient's confirmed result and the treatment category it may affect. Use a brief parenthetical earlier only when the reader must understand the term immediately; do not define the same term twice.
- 106 Use a numbered list for the chronological care log, newest first. Use `M/D` for current-year events and the year alone for older history when the exact date does not matter. Include only decision-relevant milestones and never invent a date. Keep exploratory conversations, personalized-vaccine ideas, and other experimental possibilities here unless they create a current action.
+ 118 List the chronological care log newest first, with the date as the stem. Use `M/D` for current-year events and the year alone for older history when the exact date does not matter. Include only decision-relevant milestones and never invent a date. Keep exploratory conversations, personalized-vaccine ideas, and other experimental possibilities here unless they create a current action.
- 110 Put sources inline. Link every NCT number and place a short official source link after each treatment or evidence claim. Do not add a reference section, research date, or disclaimer to the brief.
+ 122 Put sources inline. Link every NCT number and place a short official source link after each treatment or evidence claim, without a `Source:` label. Do not add a reference section, research date, or disclaimer to the brief.

Compare on GitHub

Week of Oct 26, 2026 · Line counts unavailable

Before Not checked yet → After Network or broad shell

First observation → 3c5a9903bd7e

No earlier version was observed for comparison.

Compare on GitHub

View on GitHubAdd to my skills

Verified commit ecaef1a3fa5bbee50798942011db508ccdffd5f0

204GitHub stars
54stars in 7 days
1skill in this repository
3commits in 30 days

Heat

7.2
  • Star growth, last 7 daysNot available
  • Star growth, last 24 hoursNot available
  • Rank movement, last 7 daysNot available
  • Commits, last 30 daysNot available
  • Accounts asking about it through MCP, last 7 daysNot available
  • Hot votes this weekNot available

Heat never changes the order by stars, and sponsorship never touches it. How heat works

Stars over time

Oct 25, 2026Nov 7, 2026204

30-day change not yet available: not enough history.

Individual skills in this repository

How it works

fuck-cancer

When your agent uses it

Create and maintain one family medical brief from reports, notes, or partial information. Use when the user asks any cancer-related question or shares any cancer-related update, including symptoms during a workup, diagnosis, pathology, biomarkers, staging, treatment, recurrence, appointments, trials, second opinions, or caregiving decisions.

What it loads into context

Frontmatter

71 tokens

Always available to the agent

SKILL.md

2,495 tokens

When the skill is activated

Reference documents

301 tokens

Loaded on request

Token counts are estimates. Scripts run separately; they are not counted as reference context.

The playbook

  1. Keep one living brief
  2. Workflow
  3. Research current options
  4. Write the brief
  5. Sources and tone
  6. Protect the patient

Scripts executed separately

  • scripts/search_trials.py

Files

  • SKILL.mdcore12,385 bytes
  • SKILL.mdcore12,385 bytes
  • SKILL.mdcore12,385 bytes
  • SKILL.mdcore12,385 bytes
  • agents/openai.yamlasset281 bytes
  • eval.mddoc1,457 bytes
  • scripts/search_trials.pyruns17,706 bytes
Read SKILL.md

# Fuck Cancer

Help a patient or caregiver understand what is happening and take the next useful step. Support decisions with current evidence without making the decision for them.

Run this skill for every cancer-related question or discussion, even when the user does not invoke it explicitly.

## Keep one living brief

Turn a sentence, brain dump, report, screenshot, or scattered update into one source-of-truth brief with patient information, next steps, key facts, and a care log. Read all supplied material before responding.

Use the destination the user names. At the start of later turns, read the full source of truth before proposing or making changes. Never create a second tracker.

If a Google Doc has separate `Overview` and `Log` tabs, treat both tabs as one brief and read both at the start of every cancer-related turn:
View the complete source on GitHub

Skills included

  • fuck-cancer

Repository facts

License
MIT
Created
Aug 22, 2026
Last pushed
Nov 2, 2026
Forks
19
Open issues
0
Project activity
Active

Before you install

Network or broad shell

Automated signals, not a guarantee

Checked Nov 6, 2026

Not fully analyzed: some files were too long, unreadable or missing. This never lowers the level.

Show 3 notes
  • skills/fuck-cancer/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • skills/fuck-cancer/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • skills/fuck-cancer/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
Show all 11 signals by file

skills/fuck-cancer/scripts/search_trials.py

  • Executable scriptline 1
    #!/usr/bin/env python3
  • Network accessline 24
    API_ROOT = "https://clinicaltrials.gov/api/v2"
  • Network accessline 217
    time.sleep(2 ** attempt)         try:             request = urllib.request.Request(
  • Network accessline 218
    try:             request = urllib.request.Request(                 url,
  • Network accessline 219
    request = urllib.request.Request(
  • Network accessline 221
    headers={"User-Agent": "fuck-cancer-skill/1.0"},             )             with urllib.request.urlopen(request, timeout=30) as response:
  • Network accessline 222
    )             with urllib.request.urlopen(request, timeout=30) as response:                 return json.load(response)
  • Network accessline 223
    with urllib.request.urlopen(request, timeout=30) as response:
  • Network accessline 357
    return {         "nct_id": nct_id,         "url": f"https://clinicaltrials.gov/study/{nct_id}",
  • Network accessline 358
    "nct_id": nct_id,         "url": f"https://clinicaltrials.gov/study/{nct_id}",         "title": clean(identification.get("briefTitle")),
  • Network accessline 359
    "url": f"https://clinicaltrials.gov/study/{nct_id}",

How the signals fit together

Facts from a static read of the files at the pinned commit. They describe what the code does, not why.

Signal confidence: 11 facts

Works with

Agent compatibility, from the files in this repository
AgentStatusEvidenceInstall to
Claude CodeCompatibleStandard SKILL.md skills/fuck-cancer/SKILL.md.claude/skills/<skill-name>/
CodexCompatibleStandard SKILL.md skills/fuck-cancer/SKILL.md.agents/skills/<skill-name>/
CursorCompatibleStandard SKILL.md skills/fuck-cancer/SKILL.md.cursor/skills/<skill-name>/
Gemini CLICompatibleStandard SKILL.md skills/fuck-cancer/SKILL.md.gemini/skills/<skill-name>/
GitHub CopilotCompatibleStandard SKILL.md skills/fuck-cancer/SKILL.md.github/skills/<skill-name>/
OpenCodeCompatibleStandard SKILL.md skills/fuck-cancer/SKILL.md.opencode/skills/<skill-name>/
  • Native The repository ships a manifest, folder or frontmatter field for this agent.
  • Compatible A standard SKILL.md that this agent can read.
  • Unknown No evidence either way.

Derived automatically from paths, manifests and frontmatter. Not tested on each agent.