Skip to content
llms-txt-manager logo

llms.txt Manager Skill

llms-txt-manager

Comprehensive system for managing llms.txt and my-blog.json files across the project. Handles creation, updating, and synchronization of AI-readable content catalogs. Automatically detects when working with llms.txt files, my-blog.json files, or updating blog content. Includes utilities for fetch...

SKILL.md

Full skill instructions

llms.txt Manager Skill

Purpose

Manage llms.txt and my-blog.json files across the project, ensuring AI systems have comprehensive, up-to-date content catalogs. Automates synchronization between blog content (query-index.json) and llms.txt files.

When to Use

This skill activates when:

  • Creating or editing llms.txt files
  • Creating or editing my-blog.json files
  • User mentions updating blog catalogs
  • User wants to synchronize content indexes
  • Working with query-index.json data
  • Creating folder-specific content indexes

Core Concepts

File Structure

llms.txt - AI-readable content catalog

  • Location: Root or folder-specific (e.g., blogs/​ddt/​integrations/​llms.txt)
  • Purpose: Comprehensive list of content for AI systems
  • Format: Markdown with metadata and categorized links
  • Source: URLs from my-blog.json, text/​descriptions from existing llms.txt

my-blog.json - Structured blog data

  • Location: Same directory as llms.txt
  • Purpose: Machine-readable catalog of blog posts
  • Format: JSON with categories, posts, metadata
  • Source: query-index.json filtered by folder context

query-index.json - Master content index

  • Location: https://allabout.network/query-index.json
  • Purpose: Single source of truth for all site content
  • Contains: All pages with URLs, titles, descriptions, lastModified dates
  • Updated: Automatically by the site

Folder Context

When llms.txt is in a subfolder (e.g., blogs/​ddt/​integrations/):

  • The final folder name indicates intent/​scope
  • my-blog.json should exist in same folder
  • Content should be filtered to relevant posts only
  • Example: /​integrations/ folder focuses on EDS integration tutorials

Update Logic

lastModified Date Comparison:

  1. Check lastModified date in llms.txt metadata
  2. Fetch query-index.json
  3. Filter entries with lastModified > llms.txt date
  4. Add only new/​updated content

File Templates

llms.txt Template

# [Project/​Section Title]

[Brief description of what this content covers]

**Last updated:** [Month Year]
**Authors:** [Author Names]

## [Category Name]

### [Subcategory Name]

- [Title](URL): Description
- [Title](URL): Description

## Version Information

**Version:** [version] (Updated: [date])
**Comprehensive catalog:** [count] posts across [n] categories
**Categories:** [List with counts]

my-blog.json Template

{
  "metadata": {
    "last-updated": "YYYY-MM-DD",
    "scope": "folder-name-or-site-wide"
  },
  "mostVisited": [
    {
      "title": "Popular Post Title",
      "url": "/​path/​to/​post",
      "description": "Post description"
    }
  ],
  "categoryMap": [
    {
      "id": "category-id",
      "name": "Display Name",
      "count": 0,
      "description": "Category description"
    }
  ],
  "categories": [
    {
      "id": "category-id",
      "name": "Display Name",
      "posts": [
        {
          "title": "Post Title",
          "url": "/​path/​to/​post",
          "description": "Post description",
          "lastModified": "YYYY-MM-DD"
        }
      ]
    }
  ]
}

IMPORTANT: Do NOT include a latestPosts array in my-blog.json files. The view-myblog block automatically generates it from the 3 most recent posts. Including it manually requires maintenance and defeats the purpose of auto-generation.

Key Concepts

Workflows

Creating New llms.txt

Automatic Creation: The sync script now automatically creates llms.txt files if they don't exist:

  1. Detects Missing Files

    • Finds all my-blog.json files
    • Checks for paired llms.txt in same directory
    • Creates missing files automatically
  2. Builds Complete Structure

    • Creates header with title, description, authors
    • Builds organized sections from my-blog.json categories
    • Uses folder name for context (e.g., "ai" → "Ai Resources")
  3. Populates Content

    • Fetches from query-index.json
    • Filters by folder context if applicable
    • Formats posts with titles, URLs, descriptions
    • Updates metadata to current date

Manual Creation: If you need to manually create one:

  1. Determine Scope

    • Root llms.txt: Site-wide catalog
    • Folder llms.txt: Section-specific (use folder name for context)
  2. Check for my-blog.json

    • Look in same directory as llms.txt
    • If missing, create one first
    • Filter query-index.json by folder path if folder-specific
  3. Structure Content

    • Use folder name to determine focus (e.g., /​integrations/ = EDS integrations)
    • Organize with subsections for better scannability
    • Include all relevant posts from my-blog.json
    • Add descriptive text for context
  4. Add Metadata

    • Version number
    • Last updated date
    • Category counts
    • Access guidelines (optional)

Updating Existing llms.txt

  1. Read Current File

    • Extract last-updated date from metadata
    • Note current structure and organization
  2. Fetch New Content

    • Load query-index.json
    • Filter by lastModified > current date
    • Filter by folder context if applicable
  3. Merge New Posts

    • Add new posts to organized sections
    • Update version number and date
    • Maintain text patterns and formatting
  4. Update my-blog.json

    • Add new posts to appropriate categories
    • Update metadata.last-updated
    • Increment category counts

Creating my-blog.json from query-index.json

Automatic Creation: The sync script now automatically creates my-blog.json files if they don't exist:

  1. Detects Missing Files

    • Finds all llms.txt files
    • Checks for paired my-blog.json in same directory
    • Creates missing files automatically
  2. Initializes Structure

    • Creates empty categoryMap with all 6 standard categories
    • Sets metadata with scope (folder name or 'site-wide')
    • Sets last-updated to 2020-01-01 (extreme past, will populate on next update)
  3. Populates Content

    • Fetches from query-index.json
    • Filters by folder context if applicable
    • Categorizes posts automatically
    • Updates metadata to current date

Manual Creation: If you need to manually create one:

  1. Fetch Data

    curl https://allabout.network/​query-index.json
    
  2. Filter by Context

    • Root my-blog.json: All content
    • Folder my-blog.json: Filter by path prefix
  3. Categorize Posts

    • Group by topic/​category
    • Count posts per category
    • Create categoryMap
  4. Structure Output

    • metadata section with date and scope
    • categoryMap with counts
    • categories with full post arrays

Command Usage

/​update-llms

Finds all llms.txt files in the project and updates them with new content:

/​update-llms

Or use the script directly:

node scripts/​sync-blog-content.js --target=llms

Process:

  1. Find all existing llms.txt files: **/​*llms.txt
  2. Find all my-blog.json files without paired llms.txt
  3. For each file (existing or new):
    • If new: Create complete structure from my-blog.json
    • If existing: Read last-updated date from metadata
    • Determine folder context (site-wide or folder-specific)
    • Fetch query-index.json from production
    • Filter by context (folder path matching)
    • Filter new posts (lastModified > last-updated)
    • Add new posts to organized sections (if any)
    • Update version date and metadata

/​update-my-blog

Finds all my-blog.json files and updates them with latest content:

/​update-my-blog

Process:

  1. Find all my-blog.json files: **/​*my-blog.json
  2. For each file:
    • Read current content and last-updated
    • Determine folder context
    • Fetch query-index.json
    • Filter by context and date
    • Update categories and counts
    • Update metadata

Best Practices

Content Organization

✅ Use subsections - Break large categories into logical groups ✅ Consistent formatting - Use same pattern throughout ✅ Rich descriptions - Include full descriptions from source ✅ Clear hierarchy - Main section → Subsection → Posts ✅ Cross-references - Link between related llms.txt files

URL Management

✅ Source of truth: my-blog.json for URLs ✅ Text source: Existing llms.txt for descriptions/​formatting ✅ New content: query-index.json for latest posts ✅ Relative URLs: Use relative paths in my-blog.json ✅ Absolute URLs: Use full URLs in llms.txt

Date Handling

✅ ISO format: YYYY-MM-DD for dates ✅ Comparison: Filter by lastModified > last-updated ✅ Display format: "Month Year" in llms.txt header ✅ Update always: Change date when content changes

Folder Context

✅ Use folder name: Final path segment indicates scope ✅ Filter appropriately: Only relevant content for folder llms.txt ✅ Paired files: Keep my-blog.json with llms.txt ✅ Independent updates: Each folder maintains own files

Examples

Example 1: Root llms.txt

Location: /​llms.txt Scope: Entire site my-blog.json: /​my-blog.json (all content) Categories: All site categories

Example 2: Integrations llms.txt

Location: /​blogs/​ddt/​integrations/​llms.txt Scope: EDS integration tutorials only my-blog.json: /​blogs/​ddt/​integrations/​my-blog.json Categories: Filtered to integration-related posts

Example 3: AI Topics llms.txt

Location: /​blogs/​ddt/​ai/​llms.txt Scope: AI/​LLM content only my-blog.json: /​blogs/​ddt/​ai/​my-blog.json Categories: Filtered to AI-related posts

Troubleshooting

my-blog.json Missing

Solution: Create it from query-index.json filtered by folder context

Dates Not Comparing

Solution: Ensure ISO format (YYYY-MM-DD) and proper parsing

Wrong Content Scope

Solution: Check folder context and filter query-index.json properly

Duplicate Entries Within Categories

Solution: Deduplicate by URL before adding to categories

Related Files

  • .claude/​commands/​update-llms.md - Slash command for updating llms.txt
  • .claude/​commands/​update-my-blog.md - Slash command for updating my-blog.json
  • scripts/​sync-blog-content.js - Utility script for bulk updates (no dependencies)

Version

Skill Version: 1.0 Last Updated: November 2025 Line Count: < 500 ✅

More Productivity & Planning skills

brainstorming logo
Productivity & Planning

brainstorming

Structured design dialogue that validates ideas before implementation begins.

295.4K 385.7K
View
ui-ux-pro-max logo
Productivity & Planning

ui-ux-pro-max

Comprehensive design intelligence for web and mobile UI/UX across 10 technology stacks.

133.1K 383.9K
View
writing-plans logo
Productivity & Planning

writing-plans

Comprehensive implementation plans for multi-step tasks, breaking down specs into bite-sized, testable steps.

295.4K 268K
View
using-superpowers logo
Productivity & Planning

using-superpowers

Introduction to the obra skills system with mandatory skill invocation rules and best practices.

295.4K 259.8K
View
executing-plans logo
Productivity & Planning

executing-plans

Execute a written implementation plan with critical review and task checkpoints.

295.4K 229.1K
View
dispatching-parallel-agents logo
Productivity & Planning

dispatching-parallel-agents

Delegate independent tasks to specialized agents working concurrently with isolated context.

295.4K 206.3K
View
using-git-worktrees logo
Productivity & Planning

using-git-worktrees

Isolated git worktrees with smart directory selection and safety verification.

295.4K 205.2K
View
webapp-testing logo
Productivity & Planning

webapp-testing

Toolkit for interacting with and testing local web applications using Playwright. Supports verifying frontend functionality, debugging UI behavior, capturing browser screenshots, and viewing browser logs.

179.7K 170.6K
View
content-strategy logo
Productivity & Planning

content-strategy

Plan searchable and shareable content that drives traffic, builds authority, and generates leads.

53.3K 150.9K
View
repo-intake-and-plan logo
Productivity & Planning

repo-intake-and-plan

README-first repository scanner that extracts commands and classifies reproduction candidates without executing them.

497 139.6K
View
marketing-ideas logo
Productivity & Planning

marketing-ideas

Brainstorm and prioritize marketing strategies tailored to your SaaS stage, budget, and goals.

53.3K 137.2K
View
site-architecture logo
Productivity & Planning

site-architecture

Plan and optimize your website's page hierarchy, navigation, URL structure, and internal linking.

53.3K 112.8K
View

Productivity AI tools

Vimcal logo
Productivity

Vimcal

The world's fastest calendar for remote work

Free
View
SaveDay logo
Productivity

SaveDay

Capture, organize, and utilize your knowledge effortlessly.

Free
View
Any Summary logo
Productivity

Any Summary

Instant Summaries of Audio & Video Interviews with AnySummary

Freemium
View
M
Productivity

Map This

Transform PDFs into engaging mind maps.

Freemium
View
ChatPDF logo
Productivity

ChatPDF

Chat with any PDF instantly

Free
View
I
Productivity

intellisay

Create an optimal daily plan using your voice

Paid
View
A
Productivity

Aurora AI

A productivity platform to centralize organizational knowledge and workflows with contextual AI assistance.

Paid
View
AskYourPDF logo
Productivity

AskYourPDF

AskYourPDF Pricing Plans: Tailored to Your Needs

Free
View