Skip to main content

windy-drops (Python SDK)

Python SDK + CLI for authoring and publishing Windy Drops.

Not published yet. This package is not on PyPI as of 2026-08-10; the command below is what the install will be once it ships. Until then, run the CLI from a checkout of sneakyfree/windy-drops.

pip install windy-drops
windy-drops --help

Commands

Command What it does Strand
new --type <type> <path> Scaffold a starter drop from examples/<type>-minimal/ WD-4 (this)
validate <path> Validate SKILL.md frontmatter against the schema WD-5
bundle <path> Produce a deterministic .zip + SHA-256 digest WD-6
sign <path> Sign manifest with the author's Eternitas Passport (ES256) WD-7
publish <path> Validate → bundle → sign → upload to R2 → POST to registry WD-8
withdraw <drop-id> Hide from search (existing installs keep working) WD-9
fork <source-drop-id> <new-id> Clone locally + rewrite manifest + register lineage WD-10

Commands marked future-strand exit code 2 with a clear message until that strand lands.

Scaffold

windy-drops new --type control-panel-template ./my-dashboard
# ✓ scaffolded control-panel-template drop at /.../my-dashboard
# Next steps:
#   1. Edit /.../my-dashboard/SKILL.md (set author + id)
#   2. windy-drops validate /.../my-dashboard
#   3. windy-drops publish /.../my-dashboard

The 6 v1 reserved drop types each ship a starter scaffold:

  • control-panel-template
  • skill
  • tool
  • theme
  • voice-pack
  • workflow

Library API

from windy_drops import scaffold

result = scaffold(type="skill", path="./my-skill")
print(result.target_dir, result.files_copied)

Parity with the TypeScript SDK

The TypeScript sibling (windy-drops-sdk, also unpublished) has the same CLI surface. A drop scaffolded by one is byte-identical to one scaffolded by the other; a drop published by one is indistinguishable to the registry. Cross-SDK byte-identity is enforced by the WD-11 conformance harness.

Strand reference

This package is owned by strands WD-4..WD-10 in docs/DNA_STRAND_MASTER_PLAN.md. Each strand owns one subcommand (or related set).

License

MIT

Getting a token

new, validate, sign and bundle need nothing. publish and withdraw need a token, and this is where most first-time authors stop.

The registry accepts either identity:

You are Token Where it comes from
a person your Windy Word account token (RS256, issued by account.windyword.ai) the same login you use at windyword.ai
an agent an Eternitas passport token (EPT, ES256) your Eternitas passport

Pass it per-command or export it:

windy-drops publish ./my-drop --token <jwt>
# or
export WINDY_REGISTRY_TOKEN=<jwt>

There is no windy-drops login yet, and nothing reads a token out of ~/.windy/credentials.json — that file is only consulted for the signing key (eternitas.private_key), which is a different thing. Publishing a drop whose manifest declares an author passport additionally requires that the token carry that same passport; you cannot publish as someone else.

Release files for windy-drops 0.1.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Built distribution (wheel)

Table of built distributions (wheels) for windy-drops 0.1.0
File Interpreter ABI Platform
windy_drops-0.1.0-py3-none-any.whl Python 3 none any Details

Release files / windy_drops-0.1.0-py3-none-any.whl

Download URL windy_drops-0.1.0-py3-none-any.whl
Size 29.0 kB
Tags Python 3
SHA-256 checksum
How to use checksums
691d662875fc9937e953b6ab51dd8873c39d2977a6c4e9595159fb8bc1e6ae6d
BLAKE2b-256 checksum
How to use checksums
b4b8702c5176d0abae47103134046086453721d90eae6113112507c43c453a59
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.12.13

Release history Release notifications | RSS feed

This release

0.1.0 This release

1 release file

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page