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.0b1-py3-none-manylinux_2_17_x86_64.whl (3.6 MB view details)

Uploaded Python 3manylinux: glibc 2.17+ x86-64

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

Uploaded Python 3manylinux: glibc 2.17+ ARM64

site2skill-0.2.0b1-py3-none-macosx_11_0_arm64.whl (3.7 MB view details)

Uploaded Python 3macOS 11.0+ ARM64

site2skill-0.2.0b1-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.0b1-py3-none-manylinux_2_17_x86_64.whl.

File metadata

File hashes

Hashes for site2skill-0.2.0b1-py3-none-manylinux_2_17_x86_64.whl
Algorithm Hash digest
SHA256 e43594014abfedfa22e234d551a7658937b8ae836e571bafdf8eca14d56c6644
MD5 bd2c10b81704f5730b53705d3374d68b
BLAKE2b-256 41bbbed04dc6c80d38fbc7b55fd24311d8849daee2ba65fbc4e9ac5a20b583df

See more details on using hashes here.

Provenance

The following attestation bundles were made for site2skill-0.2.0b1-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.0b1-py3-none-manylinux_2_17_aarch64.whl.

File metadata

File hashes

Hashes for site2skill-0.2.0b1-py3-none-manylinux_2_17_aarch64.whl
Algorithm Hash digest
SHA256 1e2a168bde1429a501b8358a7c1e678cd80a7229a36824367d55547befad5baf
MD5 f86252f7ebcc694c80ac1d1868fd5cb7
BLAKE2b-256 888e9ca8a505e0bcb37bebfaac7c736f32e8273a9c0c3a490bdeb671e4053db5

See more details on using hashes here.

Provenance

The following attestation bundles were made for site2skill-0.2.0b1-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.0b1-py3-none-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for site2skill-0.2.0b1-py3-none-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 f5d1ac769bf90cc87c11e8e6ab55c7122fbb5934cf191731d2003452ffbfd046
MD5 8e90ac67dd4760eeea36ac5f2cd1958e
BLAKE2b-256 0d9f17555cad9f03d13d69da9cfc70912ae5f6f2d26f09bb9a5def94c588df50

See more details on using hashes here.

Provenance

The following attestation bundles were made for site2skill-0.2.0b1-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.0b1-py3-none-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for site2skill-0.2.0b1-py3-none-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 7336f865e8cf73d586cf5292ca3230e48b2c88a436d61714a97c2a5a19f9c3dd
MD5 a8b3b2c460d579df7130ead3d6c2b45a
BLAKE2b-256 588a263dac0a09c64a2b69bd07735df9cb81327e1746c00a9b16616ba3e64a50

See more details on using hashes here.

Provenance

The following attestation bundles were made for site2skill-0.2.0b1-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