repo-to-docs

April 27, 2026 · View on GitHub

Convert a GitHub repository's content (README, docs/, planning/, diagrams, images) into polished, publishable documents via Typst. Supports multiple output formats and publishing targets.

Skills

SkillPurpose
repo-scanShared helper. Walks a repo and emits a manifest of text sources, images, and metadata.
repo-to-pdfGenerate a public-facing PDF from a repo, with optional AI-generated banner.
repo-to-internal-docGenerate a private/internal PDF — no repo URL, no license line, optional CONFIDENTIAL header.
repo-to-blog-postSynthesize a markdown blog post (intro / body / conclusion) from the repo.
repo-to-white-paperProduce a structured long-form white paper PDF.
repo-to-docs-indexPublish a generated file into a configured docs-index repo and push.
repo-to-gdriveUpload a generated file to Google Drive via the configured GWS MCP.
repo-to-docs-configureInteractive setup for ~/.config/repo-to-docs/config.json.

Install

claude plugins install repo-to-content@danielrosehill

After installing, restart Claude Code so the skills are registered.

Configure

Run the configure skill, or hand-edit ~/.config/repo-to-docs/config.json.

Example config:

{
  "author_name": "<Your Name>",
  "author_url": "https://example.com",
  "default_license": "MIT",
  "generate_banner_if_missing": false,
  "typst_footer_defaults": {
    "show_page_numbers": true,
    "show_repo_url": true,
    "show_license": true,
    "show_author": true
  },
  "index_repos": [
    {
      "name": "public",
      "path": "~/repos/Public-Docs",
      "default": true,
      "gdrive_folder_id": null
    }
  ],
  "gdrive_default_folder_id": null,
  "gdrive_mcp_server": "gws-personal"
}

All defaults are example values — set them to your own name, URL, and paths.

How it works

Skills chain via a shared manifest at /tmp/repo-to-docs/<slug>/manifest.json. The entry-point skills (e.g. repo-to-pdf) invoke repo-scan first if the manifest is missing. Typst compilation uses shared/styles.typ for consistent styling across all output formats.

Requirements

  • Typst at /usr/local/bin/typst (or adjust the skill).
  • IBM Plex Sans font (falls back to system sans).
  • Optional: an MCP that exposes text_to_image for AI banners (the skills default to nano-tech-diagrams).
  • Optional: a Google Workspace MCP (gws-personal or similar) for Drive uploads.

License

MIT — see LICENSE.