AgentSkillOS fabric
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.
git clone https://github.com/ynulihao/AgentSkillOS
T=$(mktemp -d) && git clone --depth=1 https://github.com/ynulihao/AgentSkillOS "$T" && mkdir -p ~/.claude/skills && cp -r "$T/data/skill_seeds/fabric" ~/.claude/skills/ynulihao-agentskillos-fabric && rm -rf "$T"
data/skill_seeds/fabric/SKILL.mdFabric Skill
Setup Check - Fabric Repository
IMPORTANT: Before using this skill, verify the Fabric repository is available:
# 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 →
orcreate_threat_modelcreate_stride_threat_model - Threat scenarios →
create_threat_scenarios - Security update →
create_security_update - Security rules →
,create_sigma_rules
,write_nuclei_template_rulewrite_semgrep_rule - Threat analysis →
,analyze_threat_reportanalyze_threat_report_trends
Summarization:
- General summary →
summarize - 5-sentence summary →
create_5_sentence_summary - Micro summary →
orcreate_micro_summarysummarize_micro - Meeting →
summarize_meeting - Paper/research →
summarize_paper - Video/YouTube →
youtube_summary - Newsletter →
summarize_newsletter - Code changes →
orsummarize_git_changessummarize_git_diff
Wisdom Extraction:
- General wisdom →
extract_wisdom - Article wisdom →
extract_article_wisdom - Book ideas →
extract_book_ideas - Insights →
orextract_insightsextract_insights_dm - Main idea →
extract_main_idea - Recommendations →
extract_recommendations - Controversial ideas →
extract_controversial_ideas
Analysis:
- Malware →
analyze_malware - Code →
oranalyze_codereview_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_visualizationcreate_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
# 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)
- General threat modelingcreate_threat_model
- STRIDE methodologycreate_stride_threat_model
- Threat scenario generationcreate_threat_scenarios
- Security update documentationcreate_security_update
- SIGMA detection rulescreate_sigma_rules
- Nuclei scanner templateswrite_nuclei_template_rule
- Semgrep static analysis ruleswrite_semgrep_rule
- Threat report analysisanalyze_threat_report
- Extract commands from threat reportsanalyze_threat_report_cmds
- Identify threat trendsanalyze_threat_report_trends
- Threat model for planst_threat_model_plans
- Secure by design questionsask_secure_by_design_questions
- Network threat landscapecreate_network_threat_landscape
- Incident analysisanalyze_incident
- Risk analysisanalyze_risk
Summarization (20 patterns)
- General summarizationsummarize
- Ultra-concise 5-line summarycreate_5_sentence_summary
- Micro summarycreate_micro_summary
- Detailed summarycreate_summary
- Micro summarizationsummarize_micro
- Meeting notes summarysummarize_meeting
- Academic paper summarysummarize_paper
- Lecture summarysummarize_lecture
- Newsletter summarysummarize_newsletter
- Debate summarysummarize_debate
- Legislation summarysummarize_legislation
- RPG session summarysummarize_rpg_session
- Board meeting summarysummarize_board_meeting
- Git changes summarysummarize_git_changes
- Git diff summarysummarize_git_diff
- PR summarysummarize_pull-requests
- Prompt summarysummarize_prompt
- YouTube video summaryyoutube_summary
- Unsupervised Learning summarycreate_ul_summary
- Cybersecurity summarycreate_cyber_summary
Extraction (30+ patterns)
- General wisdom extractionextract_wisdom
- Article-specific wisdomextract_article_wisdom
- Book ideasextract_book_ideas
- General insightsextract_insights
- Daniel Miessler style insightsextract_insights_dm
- Core messageextract_main_idea
- Recommendationsextract_recommendations
- Ideas from contentextract_ideas
- Questions raisedextract_questions
- Predictions madeextract_predictions
- Controversial pointsextract_controversial_ideas
- Business opportunitiesextract_business_ideas
- Skills mentionedextract_skills
- Patterns identifiedextract_patterns
- Sponsor mentionsextract_sponsors
- References citedextract_references
- Instructions from contentextract_instructions
- Humor extractionextract_jokes
- Main problemextract_primary_problem
- Main solutionextract_primary_solution
- Product featuresextract_product_features
- Core messageextract_core_message
- Algorithm recommendationsextract_algorithm_update_recommendations
- Extraordinary claimsextract_extraordinary_claims
- Most valuable aspectextract_most_redeeming_thing
Analysis (35+ patterns)
- Claim analysisanalyze_claims
- Malware analysisanalyze_malware
- Code analysisanalyze_code
- Paper analysisanalyze_paper
- Log analysisanalyze_logs
- Debate analysisanalyze_debate
- Incident analysisanalyze_incident
- Comment analysisanalyze_comments
- Answer analysisanalyze_answers
- Email header analysisanalyze_email_headers
- Military strategyanalyze_military_strategy
- Mistake analysisanalyze_mistakes
- Personality analysisanalyze_personality
- Presentation analysisanalyze_presentation
- Product feedbackanalyze_product_feedback
- Proposition analysisanalyze_proposition
- Prose analysisanalyze_prose
- Risk analysisanalyze_risk
- Sales call analysisanalyze_sales_call
- Spiritual text analysisanalyze_spiritual_text
- Tech impact analysisanalyze_tech_impact
- Threat report analysisanalyze_threat_report
- Legislation analysisanalyze_bill
- Candidate analysisanalyze_candidates
- CFP submission analysisanalyze_cfp_submission
- Terraform plan analysisanalyze_terraform_plan
- Interviewer technique analysisanalyze_interviewer_techniques
Creation (50+ patterns)
- Product Requirements Documentcreate_prd
- Design documentationcreate_design_document
- User storiescreate_user_story
- Coding projectcreate_coding_project
- Code featurescreate_coding_feature
- Mermaid diagramscreate_mermaid_visualization
- Markmap mindmapscreate_markmap_visualization
- General visualizationscreate_visualization
- Threat modelscreate_threat_model
- STRIDE threat modelscreate_stride_threat_model
- Threat scenarioscreate_threat_scenarios
- Report findingscreate_report_finding
- Newsletter contentcreate_newsletter_entry
- Keynote presentationscreate_keynote
- Academic paperscreate_academic_paper
- Study flashcardscreate_flash_cards
- Quizzescreate_quiz
- Graphscreate_graph_from_input
- Content tagscreate_tags
- Art generation promptscreate_art_prompt
- CLI commandscreate_command
- Fabric patternscreate_pattern
- Logo designscreate_logo
- Podcast imagerycreate_podcast_image
- SIGMA rulescreate_sigma_rules
- Video chapterscreate_video_chapters
- Upgrade documentationcreate_upgrade_pack
Improvement (10 patterns)
- General writing improvementimprove_writing
- Academic writingimprove_academic_writing
- Prompt engineeringimprove_prompt
- Report findingsimprove_report_finding
- Code reviewreview_code
- Design reviewreview_design
- Design refinementrefine_design_document
- Humanize AI texthumanize
- Blog enhancementenrich_blog_post
- Text cleanupclean_text
Rating/Judgment (8 patterns)
- Rate AI outputsrate_ai_response
- Rate AI resultsrate_ai_result
- Rate content qualityrate_content
- Rate value propositionrate_value
- General judgmentjudge_output
- Label and ratelabel_and_rate
- Agreement checkingcheck_agreement
- Quality evaluationarbiter-evaluate-quality
🔄 Updating Patterns
The Fabric repository is included in this skill at
${PAI_DIR}/skills/fabric/fabric-repo/.
To update patterns:
cd ${PAI_DIR}/skills/fabric/fabric-repo git pull origin main
To see all available patterns:
ls ${PAI_DIR}/skills/fabric/fabric-repo/data/patterns/ # OR from your local Fabric install: ls ~/.config/fabric/patterns/
💡 Usage Examples
Threat Modeling:
# User: "Create a threat model for our new API" fabric "API that handles user authentication and payment processing" -p create_threat_model
Summarization:
# 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:
# 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:
# 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 | , |
| "summarize", "summary" | Summarization | , |
| "extract wisdom", "insights" | Wisdom extraction | , |
| "analyze [X]" | Analysis | (match X to pattern) |
| "improve", "enhance" | Improvement | , |
| "create [visualization]" | Visualization | , |
| "rate", "judge", "evaluate" | Rating | , |
| "main idea", "core message" | Core extraction | , |
🚀 Advanced Usage
Pipe content through Fabric:
cat article.txt | fabric -p extract_wisdom pbpaste | fabric -p summarize curl -s "https://..." | fabric -p analyze_claims
Process YouTube videos:
# Fabric handles download + transcription + processing fabric -y "https://youtube.com/watch?v=..." -p youtube_summary
Chain patterns (manual):
# 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:
- Recognize "threat model" intent
- Know available options:
,create_threat_model
,create_stride_threat_modelcreate_threat_scenarios - Select the best match (usually
unless STRIDE specified)create_threat_model - 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