Claude Skill Engineering Bootcamp

Build Your First SKILL.md

Advanced AI Systems Architecture for Pharma Professionals.

Sovereign AI Systems
Stop prompting. Start engineering. Build AI systems that never forget, never drift, and never hallucinate.

Welcome to Module 5 — the most advanced module in the ASJ Masterclass. Here, we cross the threshold from prompt engineering to AI systems architecture. You will learn to build two foundational files — SKILL.md and AGENTS.md — that transform Claude from a general chatbot into a deterministic, domain-expert system.

The Shift: A prompt is a conversation. A SKILL.md is a compiled expert. Once built, it works identically across every session, every user, every time — without re-explaining anything.
Before vs After This Module
❌ Before (Prompt Engineering)
  • Re-explain context every new chat
  • Claude drifts after 4-5 messages
  • Inconsistent outputs across sessions
  • No guardrails — hallucination risk
  • Single-domain, single-session only
✅ After (SKILL.md + AGENTS.md)
  • Zero-context startup — auto-triggers
  • Identity lock prevents all drift
  • Deterministic phases = same output every time
  • NEVER rules enforce honesty
  • Multi-skill orchestration pipeline
Your Learning Journey
1
Master the 7-Layer SKILL.md Architecture
Understand how each layer gives Claude structured, repeatable expertise.
2
Master the 6-Section AGENTS.md Framework
Learn the operating charter: identity, scope, dispatch, orchestration, security, output.
3
Build Your First SKILL.md from Scratch
Write every layer live using pharma clinical analysis as the domain.
4
Download 3 Production Pharma Skills
Real deployable SKILL.md files with practice datasets.
5
Build the Capstone: Pharma Intelligence Orchestrator
Wire 3 specialist skills under one AGENTS.md conductor.
6
Deploy, Test, and Certify
Install skills into Claude, run capstone, earn your certificate.
90-120 min
Estimated time
🎯
Advanced
Difficulty level
📦
6 Artifacts
Downloadable files
🏆
Certification
PDF credential
Intelligence Architecture
Two files. Seven layers. One unbreakable system. Master both to become an AI Systems Architect.
File 1 — SKILL.md

A SKILL.md is a compiled expert identity — a structured markdown file that encodes a repeatable domain workflow. It tells Claude exactly what to do when a specific task is requested, with steps, logic, guardrails, and output format all pre-engineered. Think of it as a job description + SOP for a specialist.

Analogy: If Claude is a doctor, a SKILL.md is the clinical protocol it must follow — not improvised, not free-form. Systematic. Auditable. Reproducible.
The 7-Layer Architecture
Layer 1 — YAML Frontmatter
Identity & Trigger Logic
Defines the skill's name, version, model hint, and the trigger description that tells Claude when to activate. Costs ~50 tokens at startup. This is the only layer always loaded. Must include 3+ positive triggers AND 2+ negative exclusions.
Pharma Example: "USE THIS SKILL when user uploads clinical trial CSV, requests efficacy endpoint analysis, or mentions AE review. Do NOT trigger for market research or strategy questions."
Layer 2 — Activation Block
Identity Lock & Mission Statement
The first thing Claude reads when triggered. It locks identity — preventing drift — and states the mission. Includes SCOPE IN/OUT declarations. Without this, Claude drifts after 3-4 exchanges and starts answering questions outside its domain.
Why it matters: In a 20-message pharma conversation, Claude without an identity lock will start giving marketing advice when asked only for clinical data. The lock keeps it in lane.
Layer 3 — Why This Skill Exists
Failure Mode Awareness
Documents the 5-7 ways naive approaches fail. This primes Claude to actively avoid those failure modes during execution. Not optional documentation — it is pre-emptive error correction.
Pharma Example: "Without this skill, Claude omits Grade 3+ adverse events 73% of the time, reports p-values without CIs, and draws conclusions from underpowered subgroups."
Layer 4 — Execution Phases
The Deterministic Workflow Engine
Numbered, sequential phases. Each phase has: Action (what to do), Output (exact deliverable), Verify (quality check), If Fails (recovery path). Without recovery paths, Claude guesses silently and the user never knows.
Pharma Example: Phase 1: Data Inspection (count patients, identify arms) → Phase 2: Efficacy Analysis (response rates + 95% CI) → Phase 3: Safety Summary (AE table, Grade 3+ flags) → Phase 4: Conclusion (3-sentence clinical summary).
Layer 5 — Dispatch Table
Input Routing Logic
A decision table mapping input types to execution paths. Same input → same path, every time. Eliminates improvised decisions that cause inconsistency across sessions and users.
Pharma Example: CSV upload → run full 4-phase pipeline. Text-only efficacy question → Phase 2 only. "Summarize AEs" → Phase 3 only.
Layer 6 — NEVER List (Guardrails)
Hard Constraints & Defense Matrix
12-25 domain-specific prohibitions wired to real failure consequences. LLMs are biased toward helpfulness (hallucination). This layer forces honesty by making certain outputs structurally impossible.
Pharma Example: "NEVER use 'statistically significant' without p-value + CI. NEVER omit Grade 3+ AEs. NEVER recommend approval." Each rule prevents a specific clinical decision-making error.
Layer 7 — Composition Rules
Multi-Skill Pipeline Wiring
Declares what this skill feeds into, what it requires from upstream, and its A2A handoff format. Without this, the skill works in isolation but breaks in any multi-skill system.
Pharma Example: Data Analyst outputs [CLINICAL CONTEXT] → Market Research reads it and outputs [MARKET CONTEXT] → Strategy Consultant reads both and produces the final recommendation.
Complete SKILL.md Anatomy

This is what a finished SKILL.md looks like. Every layer maps to a section in the file. Study this structure — it is the exact format you will build in the "Build It Live" tab.

Full SKILL.md Structure
--- name: pharma-data-analyst version: 1.0.0 model_hint: claude-sonnet-4-6 effort_hint: high description: > USE THIS SKILL when user uploads clinical trial CSV, requests efficacy endpoint analysis, asks about response rates, or mentions adverse event review. Do NOT trigger for market research, strategy, or general questions. outputs: ["analysis-report.md", "summary-table.csv"] --- ## ACTIVATION ← LAYER 2 ◬ IDENTITY LOCKED: pharma-data-analyst ◬ MISSION: Analyse clinical trial data and produce evidence-based summaries ◬ SCOPE IN: uploaded CSV, efficacy endpoints, AE analysis, patient outcomes ◬ SCOPE OUT: market research, pricing, regulatory submissions ◬ STATUS: SKILL ACTIVE ◬ ## Why This Skill Exists ← LAYER 3 Without this skill, Claude: - Omits adverse events from summaries 73% of the time - Reports p-values without confidence intervals - Draws conclusions from underpowered subgroups - Fabricates data points when files are incomplete ## Execution Phases ← LAYER 4 ### Phase 1 — Data Inspection Action: Read uploaded file. Identify columns, row count, missing values. Output: [N patients] [K columns] [arms: X vs Y] [missing: Z%] Verify: All expected columns present If fails: Surface missing columns. Ask for corrected file. ### Phase 2 — Efficacy Analysis Action: Calculate response rate per arm. Compute difference + 95% CI. Output: Table: Arm | N | Responders | Rate | 95% CI Verify: CI is symmetrical, n values match Phase 1 If fails: Flag calculation error. Show raw numbers. ### Phase 3 — Safety Summary Action: Enumerate AE types, grades, relatedness by arm. Output: AE summary table. Flag Grade ≥3 events. Verify: No Grade 3/4 suppressed. If fails: NEVER proceed without AE data. ### Phase 4 — Conclusion Action: 3-sentence clinical summary. NEVER use "significant" without p-value + CI. ## Dispatch Table ← LAYER 5 | Input Type | Execute | Skip | |------------------|---------------|---------------| | CSV uploaded | Phase 1-2-3-4 | none | | Efficacy question| Phase 2 only | Phase 1,3,4 | | "Summarize AEs" | Phase 3 only | Phase 1,2,4 | ## NEVER Rules ← LAYER 6 - NEVER fabricate or interpolate missing data points - NEVER omit adverse events regardless of severity - NEVER report p-values without 95% confidence intervals - NEVER recommend drug approval - NEVER suppress Grade 3+ adverse events ## Composition Rules ← LAYER 7 FEEDS INTO: pharma-market-research REQUIRES FROM: none (first in chain) OUTPUT FORMAT: [CLINICAL CONTEXT] block HANDOFF: Wrap output in --- BEGIN/END [CLINICAL CONTEXT] ---
Key observation: Every section is a constraint, not a suggestion. The YAML trigger constrains activation. The Activation Block constrains identity. The Phases constrain workflow. The NEVER rules constrain outputs. Nothing is advisory — everything is mandatory.
File 2 — AGENTS.md

An AGENTS.md is the operating charter for an agent. While SKILL.md defines what the agent knows how to do, AGENTS.md defines who the agent is, what its limits are, how it handles security, and — most importantly — how it orchestrates other skills into a unified pipeline.

Analogy: If SKILL.md files are specialist doctors (cardiologist, radiologist, pathologist), then AGENTS.md is the Chief Medical Officer — it decides which specialist to consult, in what order, and assembles the final diagnosis.
Without AGENTS.md: If you load 3 SKILL.md files without an orchestrator, Claude will pick whichever skill it thinks is relevant — or try to blend them randomly. The result is unpredictable, unrepeatable, and untestable.
The 6 Sections — Anatomy of AGENTS.md
1. Identity Declaration

Name, role, model, version, and mission. This is the constitutional anchor — Claude reads it before every message. In a 30-message conversation, Claude re-reads this 30 times. Without it, by message 10, Claude forgets it is supposed to be an orchestrator and starts acting as a generic assistant.

agent_name: Pharma Intelligence Orchestrator
role: Multi-skill coordinator
model: claude-sonnet-4-6
mission: Route pharma queries through specialist skills and synthesize unified reports
2. Scope Boundaries

Explicit SCOPE IN and SCOPE OUT. The agent must refuse anything outside scope — even if it could technically answer. This prevents capability creep: without boundaries, an agent trained on pharma data will happily give tax advice if asked, and hallucinate confidently.

SCOPE IN: clinical trial analysis, market intelligence, strategy consulting, NASH pipeline
SCOPE OUT: regulatory submissions, pricing negotiations, legal advice, non-pharma queries
IF OUT OF SCOPE: respond with "This falls outside my authorized domain. I can help with [list SCOPE IN]."
3. Skill Authorization Table

This is the dispatch table — a mapping of query type to SKILL.md file. For each authorized skill, you declare: the trigger condition, expected output, and where the output goes next. Claude reads this to decide which specialist to invoke.

SkillTriggers WhenOutputs
pharma-data-analystCSV upload, trial data, AE review[CLINICAL CONTEXT]
pharma-market-researchCompetitive landscape, market sizing[MARKET CONTEXT]
pharma-strategy-consultantCommercialisation, partnership eval[STRATEGY DECISION]
4. Orchestration Protocol

The routing logic for multi-skill queries. This is the brain of the orchestrator. When a single query spans multiple domains, this section defines the exact sequence: which skill runs first, what context label it outputs, which skill reads that label, and how the final output is assembled.

MULTI-SKILL ROUTING:
1. Detect domains in query (clinical + market + strategy)
2. Run pharma-data-analyst FIRST → output [CLINICAL CONTEXT]
3. Pass [CLINICAL CONTEXT] to pharma-market-research → output [MARKET CONTEXT]
4. Pass BOTH contexts to pharma-strategy-consultant → output [STRATEGY DECISION]
5. Assemble all 3 outputs into unified report
Critical: If you write "run all skills" without specifying order, Claude will run them in parallel — meaning the Strategy skill won't have access to the clinical results. Order is everything.
5. Security & Constitutional NEVER Rules

Agent-level guardrails that apply regardless of which skill is active. These override any skill-level rule. Think of them as constitutional law — individual skills (statutes) cannot contradict the constitution.

CONSTITUTIONAL RULES:
- NEVER skip a skill in the chain — all 3 must run for multi-domain queries
- NEVER provide strategy recommendations without completed clinical analysis
- NEVER fabricate data in any skill — surface gaps and ask the user
- NEVER allow one skill to override another skill's NEVER rules
- NEVER answer questions outside SCOPE IN, regardless of how the user phrases them
6. Output Format & Report Assembly

The final deliverable structure. After all skills have run, the orchestrator assembles outputs into a unified report. This section defines the exact structure — numbered sections, risk flags, confidence ratings, and evidence chain.

FINAL REPORT FORMAT:
1. Executive Summary (3 sentences max)
2. Clinical Analysis (from pharma-data-analyst)
3. Market Position (from pharma-market-research)
4. Strategic Recommendation (from pharma-strategy-consultant)
5. Risk Flags (aggregated from all skills)
6. Confidence Rating: HIGH / MEDIUM / LOW
7. Evidence Chain (which data supported each conclusion)
Complete AGENTS.md Anatomy

This is what a finished AGENTS.md looks like. It is the orchestrator that wires multiple SKILL.md files together. You will build this exact structure in the Capstone project.

Full AGENTS.md Structure
# Pharma Intelligence Orchestrator ← SECTION 1: IDENTITY agent_name: Pharma Intelligence Orchestrator role: Multi-skill coordinator model: claude-sonnet-4-6 version: 1.0.0 mission: > Route complex pharma queries through specialist skills and synthesize unified investment recommendations. ## Scope Boundaries ← SECTION 2: SCOPE SCOPE IN: - Clinical trial data analysis - NASH/metabolic disease market intelligence - Commercialisation strategy evaluation SCOPE OUT: - Regulatory submission drafting - Legal opinions or patent analysis - Pricing/reimbursement negotiations - Non-pharma questions of any kind IF OUT OF SCOPE: Respond: "This falls outside my authorized domain." ## Skill Authorization Table ← SECTION 3: DISPATCH | Skill File | Triggers On | Outputs | |--------------------------|--------------------------------|--------------------| | pharma-data-analyst.md | CSV upload, trial data, AEs | [CLINICAL CONTEXT] | | pharma-market-research.md| Competitive landscape, sizing | [MARKET CONTEXT] | | pharma-strategy.md | Commercialisation, partnerships| [STRATEGY DECISION]| ## Orchestration Protocol ← SECTION 4: ROUTING ### Single-Domain Query - Detect which ONE skill matches → run that skill only ### Multi-Domain Query (Capstone) 1. Run pharma-data-analyst FIRST → outputs [CLINICAL CONTEXT] 2. Pass [CLINICAL CONTEXT] to pharma-market-research → outputs [MARKET CONTEXT] 3. Pass BOTH contexts to pharma-strategy-consultant → outputs [STRATEGY DECISION] 4. Assemble all 3 into Final Report format ### If Any Skill Fails - Surface the failure to the user - Do NOT proceed to the next skill with incomplete data - Do NOT fabricate the missing context ## Constitutional NEVER Rules ← SECTION 5: SECURITY - NEVER skip a skill in the chain - NEVER provide strategy without clinical analysis - NEVER fabricate data in any skill - NEVER override a skill's NEVER rules - NEVER answer outside SCOPE IN ## Output Format ← SECTION 6: REPORT FINAL REPORT: 1. Executive Summary (3 sentences) 2. Clinical Analysis [from skill 1] 3. Market Position [from skill 2] 4. Strategic Recommendation [from skill 3] 5. Risk Flags [aggregated] 6. Confidence: HIGH / MEDIUM / LOW 7. Evidence Chain
Notice the difference: SKILL.md defines how to do a task. AGENTS.md defines who does which task, in what order, and what happens when things fail. One is the worker. The other is the manager.
SKILL.md vs AGENTS.md — At a Glance
Dimension SKILL.md AGENTS.md
PurposeDomain workflowOperating charter
AnalogyClinical protocolHospital policy manual
ScopeSingle domainMulti-domain orchestration
ActivationAuto-triggers on matching queryAlways active as conductor
NEVER RulesDomain-specificConstitutional (overrides skills)
Build It Live
Follow these steps to go from blank file to working agent.
Step 1: Write the YAML Frontmatter
Define the trigger — this is the most critical part

The description field is what Claude reads at startup to decide whether to activate your skill. Write it like a precise firing condition — not a vague summary.

Common Mistake: Writing "This skill helps with pharma analysis" is too vague — Claude will fire on any pharma question. Instead, list exact trigger phrases: "uploads clinical trial CSV", "requests AE summary", "asks about response rates".
Template — YAML Frontmatter
--- name: your-skill-name version: 1.0.0 model_hint: claude-sonnet-4-6 effort_hint: high description: > USE THIS SKILL when user uploads clinical trial data for analysis, requests patient outcome summaries, asks about drug efficacy metrics, or mentions adverse event review. Do NOT trigger for general pharma questions, market research, or strategy tasks. outputs: ["analysis-report.md", "summary-table.csv"] ---
Rule: Your description must have 3+ positive trigger phrases AND at least 2 negative examples (what should NOT fire this skill). Without negatives, you get false-positive activations.
Step 2: Write the Activation Block
Lock identity before anything else

The activation block runs immediately after the skill triggers. It establishes who Claude is for this session. Without it, Claude starts as "helpful assistant" and gradually forgets it's supposed to be a clinical analyst. The SCOPE OUT line is especially important — it tells Claude what to refuse.

Template — Activation Block
## ACTIVATION ◬ IDENTITY LOCKED: pharma-data-analyst ◬ MISSION: Analyse clinical trial data and produce evidence-based summaries ◬ SCOPE IN: uploaded CSV/trial data, efficacy endpoints, AE analysis, patient outcomes ◬ SCOPE OUT: market research, pricing strategy, regulatory submissions, general questions ◬ NEVER: fabricate data points, omit adverse events, report p-values without CIs ◬ STATUS: SKILL ACTIVE ◬
Step 3: Write the Execution Phases
Number every step. Include verify + recover.

This is the engine of your skill. Each phase must have exactly 4 components: Action (what to do), Output (what to produce), Verify (how to check), If Fails (what to do instead). A phase without a recovery path will fail silently — Claude will guess, and neither you nor the user will know it guessed.

Pro Tip: Write phases in the order a human expert would execute them. For clinical analysis: inspect data first, analyse efficacy second, review safety third, conclude last. Never let Claude skip ahead.
Template — Phases
## Execution Phases ### Phase 1 — Data Inspection Action: Read uploaded file. Identify columns, row count, missing values, arm labels. Output: Structured summary: [N patients] [K columns] [arms: X vs Y] [missing: Z%] Verify: All expected columns present (patient_id, arm, primary endpoint, AE columns) If fails: Surface missing columns to user. Ask for corrected file before proceeding. ### Phase 2 — Efficacy Analysis Action: Calculate primary endpoint response rate per arm. Compute difference + 95% CI. Output: Table: Arm | N | Responders | Rate | 95% CI Verify: CI is symmetrical, n values match Phase 1 total If fails: Flag calculation error. Show raw numbers and ask user to verify. ### Phase 3 — Safety Summary Action: Enumerate AE types, grades, and relatedness by arm. Output: AE summary table. Flag any Grade ≥3 events. Verify: AE-related column reviewed. No Grade 3/4 suppressed. If fails: NEVER proceed without AE data. Surface gap explicitly. ### Phase 4 — Conclusion Action: Write 3-sentence clinical summary: efficacy finding, safety signal, confidence level. NEVER use "significant" without p-value + CI. NEVER recommend approval.
Step 4: Integration — Load Your Skill into Claude
Two methods to install — choose based on your use case

Your SKILL.md is just a text file. To make Claude actually use it, you must load it into one of two locations. The method you choose determines whether the skill is active globally or only in a specific project.

Method 1: Native Claude Skills (Global)

Best for skills you want active across all conversations.

1
Create a folder: pharma-data-analyst/
2
Put your SKILL.md file inside it
3
ZIP the folder (not just the file — the folder containing the file)
4
Go to claude.ai → Profile icon → Customize ClaudeSkills → Upload ZIP
5
Toggle the skill ON. It now auto-activates whenever a matching query arrives.
Force-invoke: Type /pharma-data-analyst in any chat to manually activate the skill, even if the trigger didn't fire.
Method 2: Project Instructions (Project-Scoped)

Best for skills you want active only in a specific project.

1
Go to claude.aiProjects → Create new project
2
Open the project → Click "Instructions" panel → Paste entire SKILL.md content
3
Start a new chat inside the project — the skill is now active for every message
Limitation: Project Instructions have a character limit (~8000 chars). For large skills, use Method 1 or upload as Project Knowledge files instead.
Step 4.5: Write the Dispatch Table
Map every input type to a specific execution path

The dispatch table ensures deterministic routing. Without it, Claude decides on-the-fly how to handle different input types — sometimes running all 4 phases when only Phase 3 is needed, or skipping Phase 1 when data inspection is critical.

Template — Dispatch Table
## Dispatch Table | Input Type | Execute | Skip | |-----------------------------|------------------|-------------| | CSV file uploaded | Phase 1-2-3-4 | none | | Text-only efficacy question | Phase 2 only | Phase 1,3,4 | | "Summarize the AEs" | Phase 3 only | Phase 1,2,4 | | Incomplete/corrupt file | Phase 1 only | halt + ask | | Follow-up on prior output | Resume from last | none |
Design principle: The dispatch table is like a switch statement in code. Every possible input has exactly one defined path. No ambiguity. No improvisation.
Step 5: Write the NEVER Rules
The Defense Matrix — What Claude Must NEVER Do

NEVER rules are the hardest part to write well. Each rule must: (a) be specific, not generic, (b) name the exact failure mode it prevents, (c) state the consequence of violating it. Aim for 6–12 rules per skill.

Template — NEVER Rules
## NEVER Rules NEVER fabricate or interpolate missing data points — surface gaps explicitly. NEVER omit adverse events from the safety summary, regardless of severity or relatedness. NEVER report p-values without accompanying 95% confidence intervals. NEVER draw efficacy conclusions from subgroups not pre-specified in the trial design. NEVER use the word "significant" without numeric qualification (p-value + CI). NEVER proceed past Phase 1 if primary endpoint column is missing. NEVER recommend drug approval — this skill produces analysis, not regulatory decisions. NEVER suppress Grade 3+ adverse events from the summary, even if rare.
Test: For each NEVER rule, ask: "If Claude violates this, what real-world harm could result?" If you can't answer that, the rule is too vague.
Step 6: Write Composition Rules
How This Skill Connects to Others

If your skill will be part of a multi-skill pipeline (like the capstone project), you must declare what it outputs and what the next skill expects.

Template — Composition
## Composition Rules FEEDS INTO: pharma-market-research (passes [CLINICAL CONTEXT] block) REQUIRES FROM: none (first in chain) OUTPUT FORMAT: Structured markdown block labelled [CLINICAL CONTEXT] HANDOFF PROTOCOL: After Phase 4, wrap entire output in: --- BEGIN [CLINICAL CONTEXT] --- (output here) --- END [CLINICAL CONTEXT] ---
Why this matters: Without composition rules, each skill works in isolation. With them, you can chain any number of skills into a deterministic pipeline.
Production-Grade Pharma Skills
Three real SKILL.md files with practice datasets. Download, study the architecture, install into Claude, and test immediately.
1. Pharma Data Analyst
4 Phases6 NEVER Rules

Activates on clinical trial CSV uploads. Runs a 4-phase deterministic pipeline: Data Inspection, Efficacy Analysis, Safety Summary, Clinical Conclusion. Enforces confidence interval reporting on all endpoints and prevents suppression of Grade 3+ adverse events.

Triggers On
CSV upload, trial data, efficacy endpoints, AE analysis, response rates
Key NEVER Rule
NEVER omit adverse events from safety summary, regardless of severity
2. NASH Market Research Intel
4 Phases5 NEVER Rules

Activates on competitive landscape queries for NASH and metabolic diseases. Runs Market Framing, Competitor Profiling, Positioning Assessment, and Market Size analysis. Prevents fabrication of competitor data and enforces source citation.

Triggers On
Competitive landscape, NASH market, pipeline positioning, market sizing
Key NEVER Rule
NEVER fabricate competitor pipeline data or invent market share figures
3. Pharma Strategy Consultant
3 Phases5 NEVER Rules

Activates on commercialisation and partnership decision requests. Evaluates clinical evidence and market position to produce structured recommendations: solo commercialisation vs. co-development vs. licensing. Requires upstream clinical and market context.

Triggers On
Commercialisation decision, partnership evaluation, licensing strategy
Key NEVER Rule
NEVER recommend a strategy without citing specific clinical and market evidence
How to Study a SKILL.md
1
Read the YAML Trigger
Ask: What phrases would activate this skill? What phrases are excluded?
2
Read the Activation Block
Ask: What is the identity? What is in scope? What is explicitly out of scope?
3
Trace Each Phase
For each phase: What does Claude do? What does it output? How does it verify? What happens if it fails?
4
Read Every NEVER Rule
For each rule, ask: What real-world harm does this prevent? What would Claude do without it?
Final Project: The Pharma Intelligence Agent
Build an orchestration layer that wires 3 specialist skills into a single decision-making agent.
What You're Building

You will write an AGENTS.md Orchestrator that receives a single high-level query and automatically routes it through 3 specialist skills in sequence — each skill's output becoming the input context for the next — culminating in a unified investment recommendation.

Key Concept: You are not building a fourth skill. You are building the conductor that tells the existing three skills when to play, in what order, and how to hand off their output.
The Orchestration Flow
🧠 AGENTS.md Orchestrator
Receives query · Routes skills · Synthesizes output
🔬 Skill 1 — Pharma Data Analyst
Input: trial CSV · Output: efficacy + AE summary
↓ passes efficacy profile to →
📊 Skill 2 — Market Research Intel
Input: efficacy profile · Output: competitive positioning
↓ passes market position to →
🎯 Skill 3 — Strategy Consultant
Input: clinical + market data · Output: commercialisation decision
📋 Final Report
Unified recommendation with evidence chain
The Capstone Query

This is the single query your AGENTS.md must be able to handle by routing through all 3 skills:

Capstone Query
"Analyse the uploaded clinical trial data. Based on the efficacy and safety profiles, compare our position against the NASH market landscape. Finally, provide a strategic recommendation on whether to pursue solo commercialisation or seek a co-development partner."
Notice: This single query touches all 3 domains — clinical analysis, market intelligence, and strategy. Without an orchestrator AGENTS.md, Claude would have to decide on its own how to route this. With it, the routing is deterministic.
Zero to Hero: Complete Walkthrough

Follow every step in order. By the end, you will have a working multi-agent system running inside Claude.

Prerequisites: You need a Claude Pro or Team account (free tier does not support Projects or Skills). Have all 3 SKILL.md files and the practice datasets downloaded from the "Live Skills" tab.
Phase A — Environment Setup
1
Download All Required Files
Go to the Live Skills tab. Download all 3 SKILL.md files and their practice datasets. You should have 6 files on your machine: pharma-data-analyst.md, pharma-market-research.md, pharma-strategy-consultant.md, trial-data.csv, market-brief.md, strategy-brief.md.
2
Download the AGENTS.md Template
Click the download button below. This is your orchestrator file. Open it in a text editor and read it end-to-end before proceeding. Pay attention to the Identity section and the Skill Authorization Table.
Phase B — Create Claude Project
3
Open Claude and Create a New Project
Go to claude.ai → Click "Projects" in the left sidebar → Click "+ Create Project". Name it "Pharma Intelligence Agent". This creates an isolated workspace where all your files persist across chats.
4
Load AGENTS.md as Project Instructions
In your project, find the "Instructions" panel on the right → Click "+" → Paste the entire AGENTS.md content. This becomes the orchestrator's brain — it will read this before every message you send.
5
Add All 3 SKILL.md Files to Project Knowledge
Still in the project setup, find "Project Knowledge" → Upload all 3 SKILL.md files. Loading order matters: upload pharma-data-analyst.md first (it runs first in the chain), then pharma-market-research.md, then pharma-strategy-consultant.md.
Why order matters: Claude reads Project Knowledge files top-to-bottom. The first skill loaded has the strongest contextual weight. Since clinical analysis must run first, it should be uploaded first.
Phase C — Test Run
6
Start a New Chat Inside the Project
Click "New Chat" within the project. This ensures the AGENTS.md instructions and all SKILL.md files are loaded into context.
7
Upload Practice Datasets
In the chat window, attach the trial-data.csv file using the paperclip icon. You can also paste the market brief and strategy brief as text in the same message, or attach them as files.
8
Send the Capstone Query
Copy the Capstone Query from above and paste it into the chat. Hit send. Watch Claude's response carefully — it should run all 3 skills in sequence: clinical analysis → market positioning → strategic recommendation.
Phase D — Verify & Score
9
Check the Output Against the Rubric
Scroll down to the Self-Assessment Rubric below. Score your agent's output on all 5 criteria: Skill Sequencing, Context Passing, NEVER Rule Enforcement, Output Format, and Identity Stability. Target: 80/100 or higher.
10
Iterate and Fix
If Claude skipped a skill or broke sequence, check: (1) Does the AGENTS.md Orchestration Protocol explicitly state the order? (2) Does each skill's trigger description match the query keywords? (3) Are the context labels ([CLINICAL CONTEXT], [MARKET CONTEXT]) spelled identically in both the AGENTS.md and the skill files?
Common Failure: If Claude produces the market research section but ignores the CSV entirely, the most likely cause is that the pharma-data-analyst trigger description does not include phrases like "uploaded CSV" or "clinical trial data". Check and fix it.
AGENTS.md Template — Preview
AGENTS.md
--- name: pharma-intelligence-orchestrator version: 1.0.0 model_hint: claude-opus-4-6 effort_hint: max --- ## IDENTITY ◬ AGENT: pharma-intelligence-orchestrator ◬ MISSION: Synthesise clinical, market, and strategic analysis into investment-grade pharma asset recommendations using 3 specialist skills in sequence. ◬ SCOPE IN: Queries combining clinical data + market context + commercialisation decisions ◬ SCOPE OUT: Standalone questions answerable by a single skill alone; regulatory filings; financial modelling; HR or operational queries ◬ STATUS: ORCHESTRATOR ACTIVE ◬ --- ## SKILL AUTHORIZATION TABLE | Skill | Trigger Condition | Authorized Output | |-------------------------|------------------------------------------------|------------------------------------------| | pharma-data-analyst | Query includes clinical/trial data or CSV | Efficacy summary + AE table + Grade 3 flags | | pharma-market-research | Query references competitive landscape or NASH | Competitor positioning + market share analysis | | pharma-strategy-consultant | Query asks for commercialisation recommendation | Solo vs. co-develop decision + rationale | --- ## ORCHESTRATION PROTOCOL When query requires all 3 skill domains, execute in this exact sequence: PHASE 1 — Clinical Analysis → Activate: pharma-data-analyst → Input: Uploaded CSV file → Output required: [efficacy_profile] with response rates, 95% CIs, AE summary → Verify: Grade 3+ AEs surfaced. CI present on all endpoints. → Pass to: Phase 2 as context block labelled [CLINICAL CONTEXT] PHASE 2 — Market Intelligence → Activate: pharma-market-research → Input: [CLINICAL CONTEXT] from Phase 1 + any uploaded market brief → Output required: [market_position] with competitor comparison table → Verify: At least 3 competitors assessed. Market size estimate included. → Pass to: Phase 3 as context block labelled [MARKET CONTEXT] PHASE 3 — Strategic Recommendation → Activate: pharma-strategy-consultant → Input: [CLINICAL CONTEXT] + [MARKET CONTEXT] → Output required: [strategic_decision] — solo / co-develop / license, with rationale → Verify: Decision references specific clinical and market data points from Phases 1-2. → Final output: Structured recommendation report (see Output Format below) --- ## OUTPUT FORMAT After all 3 phases complete, produce a unified report with: 1. CLINICAL SUMMARY (3 sentences max — efficacy, safety, confidence level) 2. MARKET POSITION (2 sentences — where does the asset sit vs. competitors) 3. STRATEGIC RECOMMENDATION (1 clear decision + 3 supporting evidence points) 4. RISK FLAGS (any Grade 3+ AEs, weak market position, or data gaps) 5. CONFIDENCE RATING (High / Medium / Low with reason) --- ## AGENT-LEVEL NEVER RULES NEVER provide a strategic recommendation before completing clinical analysis. NEVER omit adverse event data from the clinical summary, regardless of severity. NEVER recommend a commercialisation path without citing specific competitor data. NEVER report a confidence rating of High if any data input was incomplete or estimated. NEVER override a skill's own NEVER rules — they take precedence within their domain.
Self-Assessment Rubric
After running your Capstone Query, score your AGENTS.md against these 5 criteria:
1. Skill Sequencing 20 pts

Did Claude run all 3 skills in the correct order (clinical → market → strategy)?

2. Context Passing 20 pts

Did Skill 3's recommendation explicitly reference data produced by Skills 1 and 2?

3. NEVER Rule Enforcement 20 pts

Did the agent respect its own NEVER rules throughout? (e.g., no recommendation before clinical phase?)

4. Output Format 20 pts

Did the final report include all 5 required sections (Clinical, Market, Recommendation, Risks, Confidence)?

5. Identity Stability 20 pts

Did the agent stay within scope? (i.e., it did not answer unrelated questions or hallucinate clinical data?)

Deploy Your Intelligence
Move from local files to a professional sovereign AI portfolio.
3 Ways to Deploy Your Skills
Method 1: Claude Native Skills (Best)

Step 1: Create a folder named after your skill (e.g. pharma-data-analyst/).
Step 2: Put the SKILL.md file inside.
Step 3: ZIP the folder.
Step 4: Go to claude.ai → Profile → Customize → Skills → Upload ZIP.
Step 5: Toggle ON. The skill auto-activates when it matches a query.

Why best: Works across ALL conversations. Auto-triggers. Can force-invoke with /skill-name.
Method 2: Claude Projects

Paste SKILL.md content into Project Instructions. Best for project-specific workflows where skills should only be active within that project.

Method 3: GitHub Repository

Version-control your skills. Share with teams. Structure:

Portfolio Structure
/skills/
SKILL.md files for each domain
/agents/
Orchestrator AGENTS.md files
/data/
Practice datasets for testing
README.md
Project overview + setup guide
Generate Your Assets
Full Name
Domain
Final Exam
10 questions. Test your understanding of SKILL.md and AGENTS.md architecture.
🎓
Exam Complete
Sovereign Architect Certification
Verify your mastery and unlock your professional credential.
Requirement Checklist
?
Mastery Points
Collect at least 500 XP to unlock.
?
Final Exam
Complete the exam with 100% score.
💾 Progress Vault
Your progress auto-saves locally. Use a Progress Code or JSON to back up across devices or browsers.