home / skills / danielmiessler / paiplugin / fabric
npx playbooks add skill danielmiessler/paiplugin --skill fabricReview the files below or copy the command above to add this skill to your agents.
---
name: fabric
description: Intelligent pattern selection for Fabric CLI. Automatically selects the right pattern from 242+ specialized prompts based on your intent - threat modeling, analysis, summarization, content creation, extraction, and more. USE WHEN processing content, analyzing data, creating summaries, threat modeling, or transforming text.
---
# Fabric Skill
## Setup Check - Fabric Repository
**IMPORTANT: Before using this skill, verify the Fabric repository is available:**
```bash
# Check if Fabric repo exists
if [ ! -d "$HOME/.claude/skills/fabric/fabric-repo" ]; then
echo "Fabric repository not found. Cloning..."
cd "$HOME/.claude/skills/fabric"
git clone https://github.com/danielmiessler/fabric.git fabric-repo
echo "Fabric repository cloned successfully."
else
echo "Fabric repository found at $HOME/.claude/skills/fabric/fabric-repo"
fi
```
**If the repo doesn't exist, clone it immediately before proceeding with any pattern selection.**
## When to Activate This Skill
**Primary Use Cases:**
- "Create a threat model for..."
- "Summarize this article/video/paper..."
- "Extract wisdom/insights from..."
- "Analyze this [code/malware/claims/debate]..."
- "Improve my writing/code/prompt..."
- "Create a [visualization/summary/report]..."
- "Rate/review/judge this content..."
**The Goal:** Select the RIGHT pattern from 242+ available patterns based on what you're trying to accomplish.
## 🎯 Pattern Selection Strategy
When a user requests Fabric processing, follow this decision tree:
### 1. Identify Intent Category
**Threat Modeling & Security:**
- Threat model → `create_threat_model` or `create_stride_threat_model`
- Threat scenarios → `create_threat_scenarios`
- Security update → `create_security_update`
- Security rules → `create_sigma_rules`, `write_nuclei_template_rule`, `write_semgrep_rule`
- Threat analysis → `analyze_threat_report`, `analyze_threat_report_trends`
**Summarization:**
- General summary → `summarize`
- 5-sentence summary → `create_5_sentence_summary`
- Micro summary → `create_micro_summary` or `summarize_micro`
- Meeting → `summarize_meeting`
- Paper/research → `summarize_paper`
- Video/YouTube → `youtube_summary`
- Newsletter → `summarize_newsletter`
- Code changes → `summarize_git_changes` or `summarize_git_diff`
**Wisdom Extraction:**
- General wisdom → `extract_wisdom`
- Article wisdom → `extract_article_wisdom`
- Book ideas → `extract_book_ideas`
- Insights → `extract_insights` or `extract_insights_dm`
- Main idea → `extract_main_idea`
- Recommendations → `extract_recommendations`
- Controversial ideas → `extract_controversial_ideas`
**Analysis:**
- Malware → `analyze_malware`
- Code → `analyze_code` or `review_code`
- Claims → `analyze_claims`
- Debate → `analyze_debate`
- Logs → `analyze_logs`
- Paper → `analyze_paper`
- Threat report → `analyze_threat_report`
- Product feedback → `analyze_product_feedback`
- Sales call → `analyze_sales_call`
**Content Creation:**
- PRD → `create_prd`
- Design document → `create_design_document`
- User story → `create_user_story`
- Visualization → `create_visualization`, `create_mermaid_visualization`, `create_markmap_visualization`
- Essay → `write_essay`
- Report finding → `create_report_finding`
- Newsletter entry → `create_newsletter_entry`
**Improvement:**
- Writing → `improve_writing`
- Academic writing → `improve_academic_writing`
- Prompt → `improve_prompt`
- Report finding → `improve_report_finding`
- Code → `review_code`
**Rating/Evaluation:**
- AI response → `rate_ai_response`
- Content quality → `rate_content`
- Value assessment → `rate_value`
- General judgment → `judge_output`
### 2. Execute Pattern
```bash
# Basic format
fabric [input] -p [selected_pattern]
# From URL
fabric -u "URL" -p [pattern]
# From YouTube
fabric -y "YOUTUBE_URL" -p [pattern]
# From file
cat file.txt | fabric -p [pattern]
# Direct text
fabric "your text here" -p [pattern]
```
## 📚 Pattern Categories (242 Total)
### Threat Modeling & Security (15 patterns)
- `create_threat_model` - General threat modeling
- `create_stride_threat_model` - STRIDE methodology
- `create_threat_scenarios` - Threat scenario generation
- `create_security_update` - Security update documentation
- `create_sigma_rules` - SIGMA detection rules
- `write_nuclei_template_rule` - Nuclei scanner templates
- `write_semgrep_rule` - Semgrep static analysis rules
- `analyze_threat_report` - Threat report analysis
- `analyze_threat_report_cmds` - Extract commands from threat reports
- `analyze_threat_report_trends` - Identify threat trends
- `t_threat_model_plans` - Threat model for plans
- `ask_secure_by_design_questions` - Secure by design questions
- `create_network_threat_landscape` - Network threat landscape
- `analyze_incident` - Incident analysis
- `analyze_risk` - Risk analysis
### Summarization (20 patterns)
- `summarize` - General summarization
- `create_5_sentence_summary` - Ultra-concise 5-line summary
- `create_micro_summary` - Micro summary
- `create_summary` - Detailed summary
- `summarize_micro` - Micro summarization
- `summarize_meeting` - Meeting notes summary
- `summarize_paper` - Academic paper summary
- `summarize_lecture` - Lecture summary
- `summarize_newsletter` - Newsletter summary
- `summarize_debate` - Debate summary
- `summarize_legislation` - Legislation summary
- `summarize_rpg_session` - RPG session summary
- `summarize_board_meeting` - Board meeting summary
- `summarize_git_changes` - Git changes summary
- `summarize_git_diff` - Git diff summary
- `summarize_pull-requests` - PR summary
- `summarize_prompt` - Prompt summary
- `youtube_summary` - YouTube video summary
- `create_ul_summary` - Unsupervised Learning summary
- `create_cyber_summary` - Cybersecurity summary
### Extraction (30+ patterns)
- `extract_wisdom` - General wisdom extraction
- `extract_article_wisdom` - Article-specific wisdom
- `extract_book_ideas` - Book ideas
- `extract_insights` - General insights
- `extract_insights_dm` - Daniel Miessler style insights
- `extract_main_idea` - Core message
- `extract_recommendations` - Recommendations
- `extract_ideas` - Ideas from content
- `extract_questions` - Questions raised
- `extract_predictions` - Predictions made
- `extract_controversial_ideas` - Controversial points
- `extract_business_ideas` - Business opportunities
- `extract_skills` - Skills mentioned
- `extract_patterns` - Patterns identified
- `extract_sponsors` - Sponsor mentions
- `extract_references` - References cited
- `extract_instructions` - Instructions from content
- `extract_jokes` - Humor extraction
- `extract_primary_problem` - Main problem
- `extract_primary_solution` - Main solution
- `extract_product_features` - Product features
- `extract_core_message` - Core message
- `extract_algorithm_update_recommendations` - Algorithm recommendations
- `extract_extraordinary_claims` - Extraordinary claims
- `extract_most_redeeming_thing` - Most valuable aspect
### Analysis (35+ patterns)
- `analyze_claims` - Claim analysis
- `analyze_malware` - Malware analysis
- `analyze_code` - Code analysis
- `analyze_paper` - Paper analysis
- `analyze_logs` - Log analysis
- `analyze_debate` - Debate analysis
- `analyze_incident` - Incident analysis
- `analyze_comments` - Comment analysis
- `analyze_answers` - Answer analysis
- `analyze_email_headers` - Email header analysis
- `analyze_military_strategy` - Military strategy
- `analyze_mistakes` - Mistake analysis
- `analyze_personality` - Personality analysis
- `analyze_presentation` - Presentation analysis
- `analyze_product_feedback` - Product feedback
- `analyze_proposition` - Proposition analysis
- `analyze_prose` - Prose analysis
- `analyze_risk` - Risk analysis
- `analyze_sales_call` - Sales call analysis
- `analyze_spiritual_text` - Spiritual text analysis
- `analyze_tech_impact` - Tech impact analysis
- `analyze_threat_report` - Threat report analysis
- `analyze_bill` - Legislation analysis
- `analyze_candidates` - Candidate analysis
- `analyze_cfp_submission` - CFP submission analysis
- `analyze_terraform_plan` - Terraform plan analysis
- `analyze_interviewer_techniques` - Interviewer technique analysis
### Creation (50+ patterns)
- `create_prd` - Product Requirements Document
- `create_design_document` - Design documentation
- `create_user_story` - User stories
- `create_coding_project` - Coding project
- `create_coding_feature` - Code features
- `create_mermaid_visualization` - Mermaid diagrams
- `create_markmap_visualization` - Markmap mindmaps
- `create_visualization` - General visualizations
- `create_threat_model` - Threat models
- `create_stride_threat_model` - STRIDE threat models
- `create_threat_scenarios` - Threat scenarios
- `create_report_finding` - Report findings
- `create_newsletter_entry` - Newsletter content
- `create_keynote` - Keynote presentations
- `create_academic_paper` - Academic papers
- `create_flash_cards` - Study flashcards
- `create_quiz` - Quizzes
- `create_graph_from_input` - Graphs
- `create_tags` - Content tags
- `create_art_prompt` - Art generation prompts
- `create_command` - CLI commands
- `create_pattern` - Fabric patterns
- `create_logo` - Logo designs
- `create_podcast_image` - Podcast imagery
- `create_sigma_rules` - SIGMA rules
- `create_video_chapters` - Video chapters
- `create_upgrade_pack` - Upgrade documentation
### Improvement (10 patterns)
- `improve_writing` - General writing improvement
- `improve_academic_writing` - Academic writing
- `improve_prompt` - Prompt engineering
- `improve_report_finding` - Report findings
- `review_code` - Code review
- `review_design` - Design review
- `refine_design_document` - Design refinement
- `humanize` - Humanize AI text
- `enrich_blog_post` - Blog enhancement
- `clean_text` - Text cleanup
### Rating/Judgment (8 patterns)
- `rate_ai_response` - Rate AI outputs
- `rate_ai_result` - Rate AI results
- `rate_content` - Rate content quality
- `rate_value` - Rate value proposition
- `judge_output` - General judgment
- `label_and_rate` - Label and rate
- `check_agreement` - Agreement checking
- `arbiter-evaluate-quality` - Quality evaluation
## 🔄 Updating Patterns
The Fabric repository is included in this skill at `${PAI_DIR}/skills/fabric/fabric-repo/`.
**To update patterns:**
```bash
cd ${PAI_DIR}/skills/fabric/fabric-repo
git pull origin main
```
**To see all available patterns:**
```bash
ls ${PAI_DIR}/skills/fabric/fabric-repo/data/patterns/
# OR from your local Fabric install:
ls ~/.config/fabric/patterns/
```
## 💡 Usage Examples
**Threat Modeling:**
```bash
# User: "Create a threat model for our new API"
fabric "API that handles user authentication and payment processing" -p create_threat_model
```
**Summarization:**
```bash
# User: "Summarize this blog post"
fabric -u "https://example.com/blog-post" -p summarize
# User: "Give me a 5-sentence summary"
fabric -u "https://example.com/article" -p create_5_sentence_summary
```
**Wisdom Extraction:**
```bash
# User: "Extract wisdom from this video"
fabric -y "https://youtube.com/watch?v=..." -p extract_wisdom
# User: "What are the main ideas?"
fabric -u "URL" -p extract_main_idea
```
**Analysis:**
```bash
# User: "Analyze this code for issues"
fabric "$(cat code.py)" -p analyze_code
# User: "Analyze these security claims"
fabric "security claims text" -p analyze_claims
```
## 🎯 Pattern Selection Decision Matrix
| User Request Contains | Likely Intent | Recommended Patterns |
|----------------------|---------------|----------------------|
| "threat model" | Security modeling | `create_threat_model`, `create_stride_threat_model` |
| "summarize", "summary" | Summarization | `summarize`, `create_5_sentence_summary` |
| "extract wisdom", "insights" | Wisdom extraction | `extract_wisdom`, `extract_insights` |
| "analyze [X]" | Analysis | `analyze_[X]` (match X to pattern) |
| "improve", "enhance" | Improvement | `improve_writing`, `improve_prompt` |
| "create [visualization]" | Visualization | `create_mermaid_visualization`, `create_markmap_visualization` |
| "rate", "judge", "evaluate" | Rating | `rate_content`, `judge_output` |
| "main idea", "core message" | Core extraction | `extract_main_idea`, `extract_core_message` |
## 🚀 Advanced Usage
**Pipe content through Fabric:**
```bash
cat article.txt | fabric -p extract_wisdom
pbpaste | fabric -p summarize
curl -s "https://..." | fabric -p analyze_claims
```
**Process YouTube videos:**
```bash
# Fabric handles download + transcription + processing
fabric -y "https://youtube.com/watch?v=..." -p youtube_summary
```
**Chain patterns (manual):**
```bash
# Extract then summarize
fabric -u "URL" -p extract_wisdom > wisdom.txt
cat wisdom.txt | fabric -p create_5_sentence_summary
```
## 📖 Supplementary Resources
**Full Pattern List:** `ls ${PAI_DIR}/skills/fabric/fabric-repo/data/patterns/`
**Fabric Repo:** `${PAI_DIR}/skills/fabric/fabric-repo/`
**Fabric Documentation:** https://github.com/danielmiessler/fabric
**Pattern Templates:** See `${PAI_DIR}/skills/fabric/fabric-repo/data/patterns/official_pattern_template/`
## 🔑 Key Insight
**The skill's value is in selecting the RIGHT pattern for the task.**
When user says "Create a threat model using Fabric", your job is to:
1. Recognize "threat model" intent
2. Know available options: `create_threat_model`, `create_stride_threat_model`, `create_threat_scenarios`
3. Select the best match (usually `create_threat_model` unless STRIDE specified)
4. Execute: `fabric "[content]" -p create_threat_model`
**Not:** "Here are the patterns, pick one"
**Instead:** "I'll use `create_threat_model` for this" → execute immediately