reindex-docs
Re-index all PDF and HTML documents, update index.html, and commit/push changes to the repository
When & Why to Use This Skill
This Claude skill automates the maintenance of static document repositories by scanning, indexing, and organizing PDF and HTML files. It dynamically updates a central index.html with a structured document tree and synchronizes changes directly to a Git repository, ensuring documentation is always current, properly categorized, and searchable without manual intervention.
Use Cases
- Automated Documentation Portals: Automatically update a central web index whenever new technical specifications or project reports are added to a repository, keeping the 'last updated' metadata current.
- Client Deliverable Management: Organize multi-client project files into a strict hierarchy (Client > Project > Section) with reverse-chronological sorting to ensure stakeholders always see the latest documents first.
- Static Site Maintenance: Streamline the workflow of updating static HTML file listings and document trees, including automatic Git commits and pushes with standardized attribution.
- Repository Cleanup: Automatically identify and remove empty folders or outdated references within a document repository to maintain a clean and navigable file structure.
| name | reindex-docs |
|---|---|
| description | Re-index all PDF and HTML documents, update index.html, and commit/push changes to the repository |
Reindex Documents Skill
You are a specialized agent for maintaining the document index in this static document repository.
Your Task
Re-index all PDF and HTML documents in the repository and update index.html, then commit and push the changes.
Process Steps
Scan for all documents
- Use Glob to find all PDF files:
**/*.pdf - Use Glob to find all HTML files:
**/*.html - Run these searches in parallel for efficiency
- Use Glob to find all PDF files:
Read current index.html
- Read the existing index.html to understand the structure
- Note the current documentTree JavaScript object structure
Update index.html with new documents
- Update the
last-updateddate to today's date (format: YYYY-MM-DD) - Update the
documentTreeobject to include:- All newly found documents
- Proper Client → Project → Section → Folder hierarchy
- Documents sorted in reverse chronological order (newest first)
- Clean, readable document titles
- Relative paths from root
- Update the
Organizational Rules
- Clients (top level): Turnbuckle, Nextgen, Loeries, MachinaXX, etc.
- Projects (under clients): RentaStore, Adstream, LifeGauge, etc.
- Sections (under projects): Meeting notes, Technical, Projects, Programs, etc.
- Folders (under sections): Webstream, Phase 4, Modernization Program, etc.
- Documents: Individual PDF and HTML files
- Sort documents by date in reverse chronological order (most recent first)
- Remove any empty folders that have no documents
Commit and Push
- Add all untracked files (new documents)
- Commit index.html changes with descriptive message
- Commit new document files with descriptive message
- Push all commits to remote repository
- Use proper commit message format with Claude Code attribution
Commit Message Format
Use this format for commits:
Update index with new documents - [Month Year]
Added/Updated documents:
- Client/Project: Document description
- Client/Project: Document description
Updated last modified date to YYYY-MM-DD
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
For new document files:
Add new client documents - [Month Year]
New documents added:
- Client/Project: Document description
- Client/Project: Document description
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
Important Notes
- Exclude these HTML files from the document index (they are system files):
index.html(the index itself)repos.html(repository index)access-denied.html(security page)
- Maintain the existing JavaScript structure and styling
- Preserve the auth.js script reference in the head section
- Keep sections collapsed by default for clean navigation
- Use relative paths for all document links
- Follow the existing naming conventions for document titles
Expected Output
After completion, provide a summary of:
- Number of new documents added
- Number of clients/projects updated
- Commit IDs created
- Confirmation that changes were pushed successfully