Repurpose
Transform any information source into a suite of high-quality derivative artifacts.
Phase 1: Ingest the Source
Read the source material from $ARGUMENTS.
- File path (PDF, markdown, text, slides): Use the Read tool. For PDFs, read in batches of 15-20 pages. For very large files (>100 pages), read strategically: title/abstract, introduction, methodology, results/key sections, conclusion, references.
- URL: Use WebFetch to retrieve content. If the page is too large, extract the main content.
- No argument provided: Ask the user what source to repurpose.
After reading, write a brief internal summary capturing: the title/topic, the author(s), the core thesis or purpose, and the overall structure.
Phase 2: Analyze the Source
Classify the source along these dimensions. For detailed guidance on how each source type behaves, consult source-analysis-guide.md.
Determine:
- Source type: presentation/talk, academic paper, blog post, YouTube/video transcript, podcast transcript, technical documentation, report, interview, book chapter, or other
- Domain and topic: What field? What specific subject?
- Original audience: Experts, practitioners, general public, students?
- Content signals — check every one that applies:
- Contains significant quantitative data (numbers, metrics, benchmarks, costs)
- Contains citations or references to other works
- Identifies open problems, limitations, or future work
- Describes reproducible methodology (code, configs, datasets, hardware)
- Is a spoken presentation with slide structure or delivery moments
- Is long-form content (>30 min talk, >5,000 words, >50 slides)
- Contains structural or relational concepts that benefit from diagrams
- Contains controversial, debatable, or surprising claims
- Has a strong narrative arc or personal story
- References specific tools, libraries, or frameworks
Phase 3: Propose Artifacts
Consult artifact-catalog.md for the full menu of 13 artifact types with applicability criteria.
For each artifact type, evaluate:
- Do the content signals support it? (check positive signals in catalog)
- Are there reasons to skip it? (check negative signals — e.g., don't generate a blog post if the source IS a blog post)
- Rate it: strong fit, moderate fit, or skip
Present your proposal to the user:
## Source Analysis
**Source:** [title or description]
**Type:** [source type]
**Domain:** [domain/topic]
**Author(s):** [if known]
**Content signals:** [list checked signals as comma-separated tags]
## Proposed Artifacts
| # | Artifact | Format | Fit | Rationale |
|---|----------|--------|-----|-----------|
| 1 | [name] | HTML/MD | Strong | [why] |
| 2 | [name] | HTML/MD | Strong | [why] |
| ... | ... | ... | ... | ... |
**Excluded (and why):**
- [artifact]: [reason]
- [artifact]: [reason]
Shall I proceed with these N artifacts? You can add, remove, or modify any.
Wait for explicit user approval before generating. If the user modifies the list, acknowledge and proceed with their revised selection.
Phase 4: Generate Artifacts
After approval, generate all artifacts in parallel using Task agents.
Output location
- If source is a local file: create
artifacts/ next to the source
- If source is a URL: create
artifacts/ in the current working directory
- Respect any output path the user specifies
Launching agents
For each approved artifact, launch a builder Task agent (subagent_type: "builder") with a prompt containing:
- The source content — full text, or a thorough summary if too large. Err on including more rather than less. The agent has no other context.
- The artifact specification — copy the relevant section from artifact-catalog.md (purpose, format, structure, quality criteria)
- The output file path — exact path where the file should be written
- Specific content guidance — key themes, data points, or sections from the source that are most relevant to this artifact
Launch ALL agents in a single message for maximum parallelism. Use run_in_background: true for each.
Quality gates (include in each agent prompt)
- HTML artifacts: self-contained (inline CSS, no external JS/CSS), responsive, print-friendly
- Markdown artifacts: valid GitHub-flavored markdown, renders correctly
- All artifacts: internally consistent numbers, accurate claims, no hallucinated data
- Twitter threads: every post must be 280 characters or fewer
- No artifact should simply restate the source — each must add value through restructuring, reframing, or visual presentation
Phase 5: Verify and Deliver
After all agents complete:
- List all generated files with sizes (
ls -la artifacts/)
- Spot-check at least one HTML file and one markdown file by reading them
- Open HTML files in the browser for the user (
start "" "path" on Windows, open on Mac)
- Present a summary:
## Generated Artifacts
| File | Size | Description |
|------|------|-------------|
| artifacts/cheat_sheet.html | 16 KB | One-page visual summary |
| ... | ... | ... |
N artifacts generated from [source description].
Handling Edge Cases
- Source is too large for a single Task agent context: Create a thorough summary document first, then pass the summary + key excerpts to each agent
- Source is in a non-English language: Note this in the analysis, ask user if artifacts should be in the source language or English
- Source is multimedia (video, audio without transcript): Ask user to provide a transcript, or suggest using a transcription tool first
- User wants a custom artifact not in the catalog: Accept it — ask them to describe the format, audience, and purpose, then generate it alongside catalog artifacts
- User wants only specific artifacts: Skip the proposal phase and generate only what they asked for
1---2name: repurpose3description: Repurpose any information source into multiple high-quality derivative artifacts. Analyzes lectures, papers, blog posts, transcripts, and other sources, proposes applicable output formats, and generates them after user approval. Use when user says "repurpose this", "turn this into artifacts", "create content from", "break this down into outputs", or wants to maximize the reach of existing content.4---56# Repurpose78Transform any information source into a suite of high-quality derivative artifacts.910## Phase 1: Ingest the Source1112Read the source material from `$ARGUMENTS`.1314- **File path** (PDF, markdown, text, slides): Use the Read tool. For PDFs, read in batches of 15-20 pages. For very large files (>100 pages), read strategically: title/abstract, introduction, methodology, results/key sections, conclusion, references.15- **URL**: Use WebFetch to retrieve content. If the page is too large, extract the main content.16- **No argument provided**: Ask the user what source to repurpose.1718After reading, write a brief internal summary capturing: the title/topic, the author(s), the core thesis or purpose, and the overall structure.1920## Phase 2: Analyze the Source2122Classify the source along these dimensions. For detailed guidance on how each source type behaves, consult [source-analysis-guide.md](references/source-analysis-guide.md).2324**Determine:**25261. **Source type**: presentation/talk, academic paper, blog post, YouTube/video transcript, podcast transcript, technical documentation, report, interview, book chapter, or other272. **Domain and topic**: What field? What specific subject?283. **Original audience**: Experts, practitioners, general public, students?294. **Content signals** — check every one that applies:30 - Contains significant quantitative data (numbers, metrics, benchmarks, costs)31 - Contains citations or references to other works32 - Identifies open problems, limitations, or future work33 - Describes reproducible methodology (code, configs, datasets, hardware)34 - Is a spoken presentation with slide structure or delivery moments35 - Is long-form content (>30 min talk, >5,000 words, >50 slides)36 - Contains structural or relational concepts that benefit from diagrams37 - Contains controversial, debatable, or surprising claims38 - Has a strong narrative arc or personal story39 - References specific tools, libraries, or frameworks4041## Phase 3: Propose Artifacts4243Consult [artifact-catalog.md](references/artifact-catalog.md) for the full menu of 13 artifact types with applicability criteria.4445For each artifact type, evaluate:46- Do the content signals support it? (check positive signals in catalog)47- Are there reasons to skip it? (check negative signals — e.g., don't generate a blog post if the source IS a blog post)48- Rate it: **strong fit**, **moderate fit**, or **skip**4950Present your proposal to the user:5152```53## Source Analysis5455**Source:** [title or description]56**Type:** [source type]57**Domain:** [domain/topic]58**Author(s):** [if known]59**Content signals:** [list checked signals as comma-separated tags]6061## Proposed Artifacts6263| # | Artifact | Format | Fit | Rationale |64|---|----------|--------|-----|-----------|65| 1 | [name] | HTML/MD | Strong | [why] |66| 2 | [name] | HTML/MD | Strong | [why] |67| ... | ... | ... | ... | ... |6869**Excluded (and why):**70- [artifact]: [reason]71- [artifact]: [reason]7273Shall I proceed with these N artifacts? You can add, remove, or modify any.74```7576**Wait for explicit user approval before generating.** If the user modifies the list, acknowledge and proceed with their revised selection.7778## Phase 4: Generate Artifacts7980After approval, generate all artifacts **in parallel** using Task agents.8182### Output location83- If source is a local file: create `artifacts/` next to the source84- If source is a URL: create `artifacts/` in the current working directory85- Respect any output path the user specifies8687### Launching agents8889For each approved artifact, launch a **builder** Task agent (`subagent_type: "builder"`) with a prompt containing:90911. **The source content** — full text, or a thorough summary if too large. Err on including more rather than less. The agent has no other context.922. **The artifact specification** — copy the relevant section from artifact-catalog.md (purpose, format, structure, quality criteria)933. **The output file path** — exact path where the file should be written944. **Specific content guidance** — key themes, data points, or sections from the source that are most relevant to this artifact9596Launch ALL agents in a **single message** for maximum parallelism. Use `run_in_background: true` for each.9798### Quality gates (include in each agent prompt)99- HTML artifacts: self-contained (inline CSS, no external JS/CSS), responsive, print-friendly100- Markdown artifacts: valid GitHub-flavored markdown, renders correctly101- All artifacts: internally consistent numbers, accurate claims, no hallucinated data102- Twitter threads: every post must be 280 characters or fewer103- No artifact should simply restate the source — each must add value through restructuring, reframing, or visual presentation104105## Phase 5: Verify and Deliver106107After all agents complete:1081091. List all generated files with sizes (`ls -la artifacts/`)1102. Spot-check at least one HTML file and one markdown file by reading them1113. Open HTML files in the browser for the user (`start "" "path"` on Windows, `open` on Mac)1124. Present a summary:113114```115## Generated Artifacts116117| File | Size | Description |118|------|------|-------------|119| artifacts/cheat_sheet.html | 16 KB | One-page visual summary |120| ... | ... | ... |121122N artifacts generated from [source description].123```124125## Handling Edge Cases126127- **Source is too large for a single Task agent context**: Create a thorough summary document first, then pass the summary + key excerpts to each agent128- **Source is in a non-English language**: Note this in the analysis, ask user if artifacts should be in the source language or English129- **Source is multimedia** (video, audio without transcript): Ask user to provide a transcript, or suggest using a transcription tool first130- **User wants a custom artifact not in the catalog**: Accept it — ask them to describe the format, audience, and purpose, then generate it alongside catalog artifacts131- **User wants only specific artifacts**: Skip the proposal phase and generate only what they asked for