// the find
danielmiessler/Fabric
Fabric is an open-source framework for augmenting humans using AI. It provides a modular system for solving specific problems using a crowdsourced set of AI prompts that can be used anywhere.
Fabric is a Go CLI plus REST API that wraps a large, crowdsourced library of markdown prompts ("Patterns") for tasks like summarizing, extracting wisdom from YouTube videos, or explaining code, and can call any of ~25 LLM vendors to run them. It's for developers who want a scriptable, pipeable front-end to LLM prompts rather than copy-pasting into a chat window.
The pattern format (plain markdown, one folder per pattern, system+user split) is genuinely easy to read, diff, and fork — you can `cat` a pattern to understand exactly what it does before running it, which most prompt-management tools don't bother with. Vendor abstraction is broad and taken seriously: native SDKs for OpenAI, Anthropic, Gemini, Bedrock, Vertex, Ollama, plus a generic OpenAI-compatible path for a dozen more, so you're not locked into one provider's pricing or rate limits. The REST server with an Ollama-compatible API is a nice touch — you can point existing Ollama-integrated tools at Fabric and get pattern-as-model behavior for free. The extra tooling (YouTube transcript/comment extraction, Jina-based URL scraping, audio transcription) covers real day-to-day glue work, not just LLM wrapping.
Pattern quality is unmanaged — there's no eval suite, rating system, or versioning for the prompts themselves, so "crowdsourced" also means inconsistent; you're trusting whatever's in `data/patterns` without a way to tell a battle-tested prompt from an untouched contribution. Supporting 25+ vendors is a lot of surface area for a project this size, and it shows in the setup story: per-pattern model selection is done via shell environment variables and generated aliases pasted into your `.zshrc`, which is a rough way to manage configuration compared to a proper config file. The CLI has scope creep — TTS, image generation, transcription, OCR-based video analysis, and web scraping are all bolted onto what's nominally a prompt runner, so failures in any one of those (ffmpeg, yt-dlp, Jina) become Fabric's problem too. Patterns are opaque to testing: since they're just prompt text, a model update or provider swap can silently change output quality with no regression signal in CI.