Skip to main content

Turn any documentation website into a Claude Agent Skill

Project description

site2skill

Turn any documentation website into a Claude Agent Skill.

site2skill is a tool that scrapes a documentation website, converts it to Markdown, and packages it as a Claude Agent Skill (ZIP format) with a proper SKILL.md entry point.

Agent Skills are dynamically loaded knowledge modules that Claude uses on demand. They work across Claude Code, Claude apps, and the API.

Installation

Requirements:

  • Python 3.10+
  • wget: Must be installed and available in your PATH.
    • macOS: brew install wget
    • Linux: apt install wget
    • Windows: Use WSL, or install via choco install wget / scoop install wget

Install from PyPI

# Standard installation with pip
pip install site2skill

# Or with uv
uv tool install site2skill

Run without Installation

# Run directly with uvx
uvx site2skill <URL> <SKILL_NAME>

Install from GitHub (Latest)

pip install git+https://github.com/laiso/site2skill.git
uvx --from git+https://github.com/laiso/site2skill site2skill <URL> <SKILL_NAME>

Usage

# Basic usage
site2skill <URL> <SKILL_NAME>

# Example: Create a skill for PAY.JP
site2skill https://docs.pay.jp/v1/ payjp

# Example: Create a skill for uv documentation
site2skill https://docs.astral.sh/uv/ uv-docs

# Target specific agent (sets default output directory)
site2skill <URL> <SKILL_NAME> --target claude-desktop

CLI Options

site2skill <URL> <SKILL_NAME> [options]

Options:
  --target           Target agent (claude|claude-desktop|cursor|gemini|codex). Sets default output directory
  --output, -o       Base output directory for skill structure (overrides target default)
  --skill-output     Output directory for .skill file (default: .)
  --temp-dir         Temporary directory for processing (default: build)
  --skip-fetch       Skip the download step (use existing files in temp dir)
  --clean            Clean up temporary directory after completion

How it works

  1. Fetch: Downloads the documentation site recursively using wget.
  2. Convert: Converts HTML pages to Markdown using beautifulsoup4 and markdownify.
  3. Normalize: Cleans up links and formatting.
  4. Validate: Checks the skill structure and size limits.
  5. Package: Generates SKILL.md and zips everything into a .skill file.

Output

The tool generates a skill directory in .claude/skills/<skill_name>/ containing:

<skill_name>/
├── SKILL.md           # Entry point with usage instructions
├── references/        # Markdown documentation files (preferred)
└── scripts/
    └── search_docs.py # Search tool for documentation

Additionally, a <skill_name>.skill file (ZIP archive) is created in the current directory.

Legacy note: older skills may use docs/ instead of references/. The search tool and validator now support both, preferring references/ when present.

Search Tool

Each generated skill includes a search script:

python scripts/search_docs.py "<query>"
python scripts/search_docs.py "<query>" --json --max-results 5

License

MIT

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

site2skill-0.2.0b2-py3-none-win_amd64.whl (2.7 MB view details)

Uploaded Python 3Windows x86-64

site2skill-0.2.0b2-py3-none-manylinux_2_17_x86_64.whl (3.6 MB view details)

Uploaded Python 3manylinux: glibc 2.17+ x86-64

site2skill-0.2.0b2-py3-none-manylinux_2_17_aarch64.whl (3.9 MB view details)

Uploaded Python 3manylinux: glibc 2.17+ ARM64

site2skill-0.2.0b2-py3-none-macosx_11_0_arm64.whl (3.6 MB view details)

Uploaded Python 3macOS 11.0+ ARM64

site2skill-0.2.0b2-py3-none-macosx_10_9_x86_64.whl (3.6 MB view details)

Uploaded Python 3macOS 10.9+ x86-64

File details

Details for the file site2skill-0.2.0b2-py3-none-win_amd64.whl.

File metadata

  • Download URL: site2skill-0.2.0b2-py3-none-win_amd64.whl
  • Upload date:
  • Size: 2.7 MB
  • Tags: Python 3, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for site2skill-0.2.0b2-py3-none-win_amd64.whl
Algorithm Hash digest
SHA256 072c199d5aea0b95d11d435f12d5031b0c9c59071ac28f835f0570cc55b13ca2
MD5 941c96472191e43db1113cb3e7396033
BLAKE2b-256 9fc0d5e474367a3fc2d3b79a4d2520508524e91db82afa94b265d9b5f4251fdc

See more details on using hashes here.

Provenance

The following attestation bundles were made for site2skill-0.2.0b2-py3-none-win_amd64.whl:

Publisher: release.yml on laiso/site2skill

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file site2skill-0.2.0b2-py3-none-manylinux_2_17_x86_64.whl.

File metadata

File hashes

Hashes for site2skill-0.2.0b2-py3-none-manylinux_2_17_x86_64.whl
Algorithm Hash digest
SHA256 a2cb0e9f90400a8ba35589f113a981f8a932e75555220c7c42979876f88ae675
MD5 56476d1cf8b06a4335599f37c1fb3fde
BLAKE2b-256 417c8c50b03bc10efd43ac296f399d7682baeeec204fcf5668395ac777ef99b2

See more details on using hashes here.

Provenance

The following attestation bundles were made for site2skill-0.2.0b2-py3-none-manylinux_2_17_x86_64.whl:

Publisher: release.yml on laiso/site2skill

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file site2skill-0.2.0b2-py3-none-manylinux_2_17_aarch64.whl.

File metadata

File hashes

Hashes for site2skill-0.2.0b2-py3-none-manylinux_2_17_aarch64.whl
Algorithm Hash digest
SHA256 4bcab50509c0a529011128bb83fd15f02bd2182d407ccccaac861ec38083d46f
MD5 898288a5eb95583884956b7f20990ae3
BLAKE2b-256 1b85765ba16b0efea870f0435fa39a61c0252598f93d464ae851cd683aaf9584

See more details on using hashes here.

Provenance

The following attestation bundles were made for site2skill-0.2.0b2-py3-none-manylinux_2_17_aarch64.whl:

Publisher: release.yml on laiso/site2skill

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file site2skill-0.2.0b2-py3-none-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for site2skill-0.2.0b2-py3-none-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 bc810671a35dedbe2fc98faaffcf72ae39552c50ee923ab66224a16d02d9f34c
MD5 d923a22014dc7e7b919633b6d4847192
BLAKE2b-256 cb24dfced1e9373876098ec4406252a0c231eb166b201a6b2892b0aa1f4568e0

See more details on using hashes here.

Provenance

The following attestation bundles were made for site2skill-0.2.0b2-py3-none-macosx_11_0_arm64.whl:

Publisher: release.yml on laiso/site2skill

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file site2skill-0.2.0b2-py3-none-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for site2skill-0.2.0b2-py3-none-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 89081904733e72abe2dd08f5a990b415630ca9e5da134d6e5fa54814c2126bc1
MD5 000f3fe13be193b13e475f81e3a0c430
BLAKE2b-256 750e4141350ddabf58f976647d3629443ac768899744caa40246666d21cb15db

See more details on using hashes here.

Provenance

The following attestation bundles were made for site2skill-0.2.0b2-py3-none-macosx_10_9_x86_64.whl:

Publisher: release.yml on laiso/site2skill

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page