{"passport":{"unfragile":{"@version":"1.0","version":"2026-05","artifact":{"id":"npm-get-llms-txt","slug":"get-llms-txt","name":"get-llms-txt","type":"repo","url":"https://github.com/romankurnovskii/get-llms-txt#readme","page_url":"https://unfragile.ai/get-llms-txt","categories":["automation"],"tags":["nextjs","llms","get-llms-txt","ai","llm-context","documentation","markdown","mdx","static-site-generator","gatsby","astro","docusaurus","vitepress"],"pricing":{"model":"open_source","free":true,"starting_price":null},"status":"active","verified":false},"capabilities":[{"id":"npm-get-llms-txt__cap_0","uri":"capability://data.processing.analysis.markdown.to.llm.context.extraction","name":"markdown-to-llm-context extraction","description":"Parses markdown and MDX files from a documentation source directory and extracts semantic content blocks (headings, paragraphs, code blocks, lists) into a structured format optimized for LLM consumption. Uses AST-based parsing to preserve document hierarchy and metadata, then flattens content into a single llms.txt file with clear delimiters and context markers that help LLMs understand document structure without needing to parse raw markdown syntax.","intents":["I want to make my entire documentation corpus available to LLMs in a single, easily digestible file","I need to convert my Next.js/Astro/Docusaurus documentation into a format that LLMs can efficiently process","I want to generate an llms.txt file that includes all my markdown content with preserved structure and hierarchy"],"best_for":["documentation site maintainers using Next.js, Astro, Docusaurus, or VitePress","teams building AI-powered documentation assistants or chatbots","developers wanting to provide LLM context for their projects without manual curation"],"limitations":["No support for custom markdown extensions beyond standard CommonMark and MDX syntax","Does not handle embedded images or binary assets — only text content extraction","No built-in deduplication of repeated content across files","Output file size grows linearly with documentation size; very large docs (>10MB) may exceed LLM context windows"],"requires":["Node.js 14+ (for file system operations and markdown parsing)","Markdown or MDX files in a structured directory","npm or yarn package manager"],"input_types":["markdown files (.md)","MDX files (.mdx)","directory paths"],"output_types":["plain text (llms.txt)","structured text with delimiters"],"categories":["data-processing-analysis","documentation-processing"],"confidence":0.5,"matches":0,"success_rate":0},{"id":"npm-get-llms-txt__cap_1","uri":"capability://automation.workflow.multi.framework.documentation.source.detection","name":"multi-framework documentation source detection","description":"Automatically detects and adapts to different documentation framework conventions (Next.js, Astro, Docusaurus, VitePress, Gatsby) by identifying framework-specific directory patterns, configuration files, and content organization schemes. Uses heuristic-based framework detection (checking for framework config files like next.config.js, astro.config.mjs, docusaurus.config.js) to determine the correct source directory and content structure without requiring explicit configuration.","intents":["I want a tool that works with my documentation setup without needing to configure paths for each framework","I'm migrating my docs between frameworks and need a tool that adapts automatically","I want to generate llms.txt from my docs without learning framework-specific setup"],"best_for":["teams using popular static site generators for documentation","developers who want zero-configuration setup for their specific framework","documentation maintainers managing multiple projects with different tech stacks"],"limitations":["Only supports a predefined set of frameworks (Next.js, Astro, Docusaurus, VitePress, Gatsby); custom frameworks require manual path configuration","Framework detection relies on presence of config files; monorepos with multiple frameworks may cause detection conflicts","Does not handle framework-specific content plugins or custom content sources"],"requires":["Node.js 14+","A recognized documentation framework installed in the project","Framework configuration file present in project root"],"input_types":["project directory","framework config files"],"output_types":["detected framework name","resolved content directory path"],"categories":["automation-workflow","framework-detection"],"confidence":0.5,"matches":0,"success_rate":0},{"id":"npm-get-llms-txt__cap_2","uri":"capability://data.processing.analysis.recursive.directory.traversal.with.file.filtering","name":"recursive directory traversal with file filtering","description":"Walks through nested directory structures starting from a detected or configured source directory, recursively discovers all markdown and MDX files, and applies filtering rules to include/exclude content based on file patterns, directory names, and metadata. Uses file system APIs with configurable glob patterns or ignore rules to skip common non-content directories (node_modules, .git, build output) and focus only on documentation source files.","intents":["I want to process all markdown files in my docs directory without manually listing each file","I need to exclude certain directories (like examples or drafts) from the llms.txt output","I want to handle nested documentation structures with multiple levels of directories"],"best_for":["large documentation projects with complex directory hierarchies","teams with mixed content types who need to selectively include/exclude files","projects with generated or temporary markdown files that should be ignored"],"limitations":["No built-in support for .gitignore patterns; requires explicit configuration for exclusions","Performance degrades with very deep directory nesting (>20 levels) or thousands of files","Symlinks are not followed by default; requires explicit configuration to enable"],"requires":["Node.js 14+ (fs module with recursive directory support)","Read permissions on all directories in the traversal path"],"input_types":["directory path","glob patterns (optional)","ignore rules (optional)"],"output_types":["array of file paths","file metadata (size, modification time)"],"categories":["data-processing-analysis","file-system-operations"],"confidence":0.5,"matches":0,"success_rate":0},{"id":"npm-get-llms-txt__cap_3","uri":"capability://text.generation.language.markdown.to.plaintext.semantic.conversion","name":"markdown-to-plaintext semantic conversion","description":"Transforms markdown syntax into plain text while preserving semantic meaning and document structure through strategic formatting choices. Converts markdown headers to uppercase labels with separators, converts lists to indented plain text, strips inline formatting (bold, italic) while keeping content, removes markdown-specific syntax (backticks, brackets), and preserves code blocks as indented text blocks. This approach ensures LLMs can understand content hierarchy without needing to parse markdown syntax.","intents":["I want my documentation readable to LLMs without markdown syntax noise","I need to preserve heading hierarchy and list structure in plain text format","I want code examples to remain readable and distinct in the output"],"best_for":["LLM context preparation where markdown syntax is noise","teams generating training data for fine-tuned models","documentation that will be consumed by multiple LLM providers with different markdown support"],"limitations":["Loses markdown-specific metadata like link URLs (converts [text](url) to just 'text')","No support for markdown tables; converts to plain text representation that may be ambiguous","Inline code formatting is stripped; code blocks are preserved but lose syntax highlighting metadata","Custom markdown extensions (like admonitions, footnotes) are not handled; treated as plain text"],"requires":["Node.js 14+","markdown parsing library (built-in or dependency)"],"input_types":["markdown text","MDX text"],"output_types":["plain text","text with structural delimiters"],"categories":["text-generation-language","content-transformation"],"confidence":0.5,"matches":0,"success_rate":0},{"id":"npm-get-llms-txt__cap_4","uri":"capability://data.processing.analysis.mdx.component.and.jsx.handling","name":"mdx component and jsx handling","description":"Processes MDX files containing embedded JSX components and React code by extracting text content from component props, rendering component descriptions, and handling interactive elements as plain text descriptions. Parses JSX syntax to identify component boundaries, extracts meaningful text from component children and props, and generates fallback text descriptions for components that don't have direct text equivalents (e.g., 'Interactive Code Example' for a CodeSandbox embed).","intents":["I want to include content from MDX files that use custom React components","I need to extract meaningful text from interactive components in my documentation","I want my llms.txt to include descriptions of visual or interactive elements"],"best_for":["documentation using MDX with custom component libraries","teams with interactive documentation (code playgrounds, live examples)","projects mixing markdown content with React-based interactive elements"],"limitations":["Cannot execute JSX or render components; only extracts static text content","Custom component handling requires predefined mappings; unknown components are skipped or treated as text","Props containing dynamic values (function calls, variables) cannot be evaluated; only static strings are extracted","Complex nested component structures may result in incomplete text extraction"],"requires":["Node.js 14+","MDX parser library","Component mapping configuration (optional, for custom components)"],"input_types":["MDX files","JSX syntax","component definitions"],"output_types":["extracted text content","component descriptions","fallback text for interactive elements"],"categories":["data-processing-analysis","jsx-parsing"],"confidence":0.5,"matches":0,"success_rate":0},{"id":"npm-get-llms-txt__cap_5","uri":"capability://automation.workflow.configurable.output.formatting.and.delimiters","name":"configurable output formatting and delimiters","description":"Generates llms.txt output with customizable formatting options including configurable section delimiters, header formatting styles, content separators, and metadata inclusion. Allows users to specify how headers are formatted (e.g., '# HEADER' vs '=== HEADER ==='), what separators divide sections, whether to include file paths or metadata, and how to structure the final output. Supports multiple output format presets (compact, verbose, structured) to optimize for different LLM consumption patterns.","intents":["I want to customize how my llms.txt looks to match my LLM's preferred input format","I need to include file paths or metadata in the output for context tracking","I want to generate different output formats for different LLM providers or use cases"],"best_for":["teams fine-tuning models with specific input format requirements","projects using multiple LLM providers with different format preferences","documentation maintainers who want to optimize output for specific LLM architectures"],"limitations":["Output format customization requires configuration; no UI for format selection","Some format combinations may produce invalid or suboptimal output for certain LLMs","No validation of format choices against LLM specifications; user is responsible for format correctness","Metadata inclusion (file paths, timestamps) increases output size without improving content quality"],"requires":["Node.js 14+","Configuration file or command-line arguments","Knowledge of target LLM's preferred input format"],"input_types":["configuration object","command-line flags","format preset names"],"output_types":["formatted text file (llms.txt)","multiple format variants"],"categories":["automation-workflow","output-formatting"],"confidence":0.5,"matches":0,"success_rate":0},{"id":"npm-get-llms-txt__cap_6","uri":"capability://data.processing.analysis.batch.processing.and.file.aggregation","name":"batch processing and file aggregation","description":"Processes multiple markdown and MDX files in a single operation, aggregates their content into a unified llms.txt output, and maintains file-level organization through metadata or section markers. Reads all discovered files, parses each independently, concatenates converted content with clear file boundaries, and optionally includes file path information or table of contents to help LLMs navigate the aggregated content. Handles file ordering (alphabetical, by modification time, or custom) to ensure consistent output.","intents":["I want to combine all my documentation files into a single llms.txt in one command","I need to maintain file boundaries in the output so LLMs know where content comes from","I want to generate a table of contents or index for the aggregated documentation"],"best_for":["documentation sites with dozens or hundreds of markdown files","teams generating training data from entire documentation corpora","projects needing a single-file representation of all documentation"],"limitations":["Output file size can become very large (>10MB) for extensive documentation, potentially exceeding LLM context windows","No built-in deduplication; repeated content across files is included multiple times","File ordering is deterministic but may not match logical documentation hierarchy","Memory usage scales with total documentation size; very large projects may require streaming or chunking"],"requires":["Node.js 14+","Sufficient disk space for output file","Sufficient memory for loading all files (or streaming implementation)"],"input_types":["array of file paths","directory path","file ordering specification"],"output_types":["single aggregated text file (llms.txt)","file metadata (paths, sizes, order)"],"categories":["data-processing-analysis","batch-processing"],"confidence":0.5,"matches":0,"success_rate":0},{"id":"npm-get-llms-txt__cap_7","uri":"capability://tool.use.integration.npm.package.distribution.and.cli.integration","name":"npm package distribution and cli integration","description":"Distributes get-llms-txt as an npm package with a command-line interface that can be invoked directly or integrated into build scripts and CI/CD pipelines. Provides both programmatic API (for Node.js projects) and CLI commands (for shell scripts and automation), supports configuration via command-line arguments or config files, and integrates with npm scripts in package.json for automated llms.txt generation during builds or deployments.","intents":["I want to install get-llms-txt as a dev dependency and use it in my build process","I need to run llms.txt generation from the command line or in a CI/CD pipeline","I want to automate llms.txt generation whenever my documentation changes"],"best_for":["Node.js projects and documentation sites","teams using npm-based build systems","CI/CD pipelines (GitHub Actions, GitLab CI, etc.) that run Node.js"],"limitations":["Requires Node.js runtime; not suitable for non-Node.js projects without a wrapper","CLI interface may have limited discoverability compared to GUI tools","Configuration via CLI arguments can become unwieldy for complex setups; config files are recommended","No built-in integration with non-npm package managers (pip, cargo, etc.)"],"requires":["Node.js 14+","npm or yarn package manager","npm package registry access"],"input_types":["command-line arguments","configuration files (JSON, YAML, or JavaScript)","environment variables"],"output_types":["llms.txt file","CLI exit codes and messages","programmatic return values (for API usage)"],"categories":["tool-use-integration","package-distribution"],"confidence":0.5,"matches":0,"success_rate":0},{"id":"npm-get-llms-txt__cap_8","uri":"capability://automation.workflow.incremental.generation.with.change.detection","name":"incremental generation with change detection","description":"Detects changes in source markdown files since the last llms.txt generation and optionally regenerates only affected sections or the entire file based on modification timestamps or content hashing. Tracks file modification times or computes hashes of source files to determine if regeneration is necessary, enabling faster builds by skipping unchanged documentation. Can be configured to always regenerate or to use change detection for optimization.","intents":["I want to avoid regenerating llms.txt when my documentation hasn't changed","I need faster build times for my documentation site","I want to track which documentation files have been updated"],"best_for":["large documentation projects with frequent builds","CI/CD pipelines where build speed matters","teams with documentation that changes incrementally"],"limitations":["Change detection based on file modification time is unreliable if files are copied or touched without content changes","Content hashing adds computational overhead; may not be faster than full regeneration for small projects","No support for detecting changes in framework configuration or formatting rules; only source file changes are tracked","Incremental updates may produce inconsistent output if formatting rules change between generations"],"requires":["Node.js 14+","File system that preserves modification timestamps","Optional: previous llms.txt file for comparison"],"input_types":["source file paths","previous generation metadata (timestamps or hashes)","change detection strategy (timestamp or hash-based)"],"output_types":["boolean indicating if regeneration is needed","list of changed files","updated llms.txt file"],"categories":["automation-workflow","performance-optimization"],"confidence":0.5,"matches":0,"success_rate":0},{"id":"npm-get-llms-txt__cap_9","uri":"capability://data.processing.analysis.front.matter.and.metadata.extraction","name":"front matter and metadata extraction","description":"Extracts YAML or TOML front matter from markdown files (metadata like title, description, tags, date) and optionally includes this metadata in the llms.txt output or uses it to filter/organize content. Parses front matter blocks at the beginning of files, extracts key-value pairs, and can use metadata to determine file importance, ordering, or inclusion in the output. Supports filtering files based on metadata (e.g., exclude draft files, include only published content).","intents":["I want to include document metadata (title, description, tags) in my llms.txt","I need to exclude draft or unpublished documentation from the llms.txt output","I want to organize documentation by metadata like category or priority"],"best_for":["documentation sites using front matter for metadata (common in static site generators)","teams with editorial workflows that mark content status (draft, published, archived)","projects needing to filter documentation based on metadata"],"limitations":["Only supports YAML and TOML front matter; other metadata formats are not recognized","Front matter must be at the beginning of files; inline metadata is not extracted","No support for complex metadata structures (nested objects, arrays); only flat key-value pairs are reliably extracted","Metadata filtering requires explicit configuration; no automatic filtering based on common conventions"],"requires":["Node.js 14+","YAML or TOML parser library","Markdown files with front matter blocks"],"input_types":["markdown files with front matter","metadata filter rules (optional)"],"output_types":["extracted metadata object","filtered file list","metadata-enhanced llms.txt"],"categories":["data-processing-analysis","metadata-extraction"],"confidence":0.5,"matches":0,"success_rate":0}],"trust":{"score":33,"verified":false,"data_access_risk":"high","permissions":["Node.js 14+ (for file system operations and markdown parsing)","Markdown or MDX files in a structured directory","npm or yarn package manager","Node.js 14+","A recognized documentation framework installed in the project","Framework configuration file present in project root","Node.js 14+ (fs module with recursive directory support)","Read permissions on all directories in the traversal path","markdown parsing library (built-in or dependency)","MDX parser library"],"failure_modes":["No support for custom markdown extensions beyond standard CommonMark and MDX syntax","Does not handle embedded images or binary assets — only text content extraction","No built-in deduplication of repeated content across files","Output file size grows linearly with documentation size; very large docs (>10MB) may exceed LLM context windows","Only supports a predefined set of frameworks (Next.js, Astro, Docusaurus, VitePress, Gatsby); custom frameworks require manual path configuration","Framework detection relies on presence of config files; monorepos with multiple frameworks may cause detection conflicts","Does not handle framework-specific content plugins or custom content sources","No built-in support for .gitignore patterns; requires explicit configuration for exclusions","Performance degrades with very deep directory nesting (>20 levels) or thousands of files","Symlinks are not followed by default; requires explicit configuration to enable","builder identity is not verified yet","no observed match outcomes yet"],"rank_breakdown":{"adoption":0.25237984750125614,"quality":0.3,"ecosystem":0.6000000000000001,"match_graph":0.25,"freshness":0.6,"weights":{"adoption":0.3,"quality":0.2,"ecosystem":0.15,"match_graph":0.3,"freshness":0.05}},"observed_outcomes":{"matches":0,"success_rate":0,"avg_confidence":0,"top_intents":[],"last_matched_at":null},"maintenance":{"status":"active","updated_at":"2026-05-24T12:16:23.902Z","last_scraped_at":"2026-04-22T08:08:13.652Z","last_commit":null},"community":{"stars":null,"forks":null,"weekly_downloads":16702,"model_downloads":null,"model_likes":null}},"distribution":{"claim_url":"https://unfragile.ai/submit?claim=get-llms-txt","compare_url":"https://unfragile.ai/compare?artifact=get-llms-txt"}},"signature":"pwISCBMdBN1dARRKtfGPMKwXx5kKpZi9SW9pvcnBrAa9k8w0WZejDSKqFzqHOE9UhGaWObbbC1dyXrSjkJKlAA==","signedAt":"2026-06-23T03:03:33.982Z","signedBy":"unfragile.ai","version":1},"_links":{"self":"https://unfragile.ai/api/v1/passport/get-llms-txt","artifact":"https://unfragile.ai/get-llms-txt","verify":"https://unfragile.ai/api/v1/verify?slug=get-llms-txt","publicKey":"https://unfragile.ai/api/v1/trust-passport-public-key","spec":"https://unfragile.ai/trust","schema":"https://unfragile.ai/schema.json","docs":"https://unfragile.ai/docs"}}