Skip to main content

Scrybe CLI — headless Markdown render/lint/mermaid tool (binary wheel)

Project description

scrybe-cli

Headless CLI binary for Scrybe: render, lint, mermaid encode/decode, and GUI launcher. Distributed as a maturin binary wheel (scrybe-cli). Python on the outside, Rust on the inside.

What it does

Provides a scrybe command-line tool with four primary subcommands plus a bare invocation shortcut. The binary is self-contained — no Python runtime required at execution time when installed from the wheel.

Role in the architecture

scrybe-cli is the human-facing entry point for headless use and scripting. It delegates to scrybe-core, scrybe-render, and scrybe-mermaid. It is also the launcher for the Tauri GUI app: scrybe file.md locates the Scrybe.app bundle (macOS) or scrybe-app binary and opens the file in it.

Subcommands

Command Description
scrybe render [FILE] Render Markdown to HTML (stdin → stdout by default); --theme, --full-html, --output
scrybe lint FILE Word count, headings, code blocks, broken links; --json for machine output; exits 1 if broken links found
scrybe mermaid embed PNG SOURCE Embed Mermaid source into PNG iTXt chunk
scrybe mermaid extract PNG Print embedded Mermaid source
scrybe mermaid verify PNG Verify SHA-256 integrity of embedded source; exits 1 if tampered
scrybe open [PATH] Launch the Scrybe GUI, optionally at a file or directory
scrybe version Print version and active feature flags
scrybe [PATH] Bare invocation with a path injects open automatically

On macOS, scrybe open prefers the .app bundle via open -n -a to satisfy WebKit's bundle entitlement requirements.

Key library helpers (for integration)

Symbol Description
lint_document(doc) -> LintReport Programmatic lint used by both CLI and MCP lint tool
wrap_full_html(output, title) Wraps a RenderOutput in a complete <!DOCTYPE html> with CDN tags
version_string() / active_features() Used by scrybe version

Build and install

# Rust build (produces scrybe binary)
cargo build -p scrybe-cli --release

# Python wheel (maturin)
maturin build -m scrybe-cli/Cargo.toml --release
pip install target/wheels/scrybe_cli-*.whl

# Run tests
cargo test -p scrybe-cli

Project details


Download files

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

Source Distribution

scrybe_cli-0.4.0.tar.gz (102.7 kB view details)

Uploaded Source

Built Distributions

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

scrybe_cli-0.4.0-py3-none-win_amd64.whl (1.9 MB view details)

Uploaded Python 3Windows x86-64

scrybe_cli-0.4.0-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (2.2 MB view details)

Uploaded Python 3manylinux: glibc 2.17+ x86-64

scrybe_cli-0.4.0-py3-none-macosx_11_0_arm64.whl (2.0 MB view details)

Uploaded Python 3macOS 11.0+ ARM64

File details

Details for the file scrybe_cli-0.4.0.tar.gz.

File metadata

  • Download URL: scrybe_cli-0.4.0.tar.gz
  • Upload date:
  • Size: 102.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for scrybe_cli-0.4.0.tar.gz
Algorithm Hash digest
SHA256 e43f7f69b3bf071a3ccda253cb042f632c506d899e2400a3d8bab63b9cbe6491
MD5 004861cba4ca8336a3eede6b45c3b668
BLAKE2b-256 592fbd3c67414b7a9f5720ef57c6527b0f63d4999955f0d1e64be45100c8977c

See more details on using hashes here.

Provenance

The following attestation bundles were made for scrybe_cli-0.4.0.tar.gz:

Publisher: release.yml on hartsock/scrybe

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

File details

Details for the file scrybe_cli-0.4.0-py3-none-win_amd64.whl.

File metadata

  • Download URL: scrybe_cli-0.4.0-py3-none-win_amd64.whl
  • Upload date:
  • Size: 1.9 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 scrybe_cli-0.4.0-py3-none-win_amd64.whl
Algorithm Hash digest
SHA256 53484c09821ee1a920d90215ca9dabddadb94bb4f88d2bde480dad292c6272bf
MD5 8a2dd97fcfef2f25ae7a3e2380297e3a
BLAKE2b-256 baca0d5769d405e089cdf74f9b0fb78cc5306713dd2a7cc896a74cf39a48b811

See more details on using hashes here.

Provenance

The following attestation bundles were made for scrybe_cli-0.4.0-py3-none-win_amd64.whl:

Publisher: release.yml on hartsock/scrybe

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

File details

Details for the file scrybe_cli-0.4.0-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for scrybe_cli-0.4.0-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 67b8eb50e4e5229cdfda7f2b82b481cc78132e778bb39fab653c023f69b4bfd4
MD5 2103454b3416e94f7e069a80508328bf
BLAKE2b-256 60ca8fd838727b361d0d1532fabf1c0dfb1c79502bdb6afb2ef8a5d5aa5d1cc2

See more details on using hashes here.

Provenance

The following attestation bundles were made for scrybe_cli-0.4.0-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: release.yml on hartsock/scrybe

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

File details

Details for the file scrybe_cli-0.4.0-py3-none-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for scrybe_cli-0.4.0-py3-none-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 0c48c1ae7e3dcf26ca4f3a07712b803aae9d83a15cad535264e305d6d3ba6894
MD5 7fe5695bd3905bde230c8f3f8d7fd853
BLAKE2b-256 1611ffdf0c627d411cd57094b7c12f6bac6c5cd8b46865f485c64408698712ea

See more details on using hashes here.

Provenance

The following attestation bundles were made for scrybe_cli-0.4.0-py3-none-macosx_11_0_arm64.whl:

Publisher: release.yml on hartsock/scrybe

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