--- id: openccu-loom-types version: "0.3.15" license: MIT license_treatment: permissive maintenance: active --- # openccu-loom-types — Generated Pydantic / enum types for the openccu-loom REST + WebSocket contract License: permissive · Maintenance: active · Downloads: 262.5K/mo ## What it is and what it does openccu-loom-types is a generated type package that mirrors the wire contract of the openccu-loom home automation daemon. It exports three modules: enums (string-typed Python enums matching daemon wire values), rest (Pydantic models for the REST API surface), and ws (Pydantic models for WebSocket envelopes and push payloads). All models are regenerated from the daemon's OpenAPI schema via datamodel-code-generator, ensuring they stay in sync with the daemon's contract. The package exists to give Python clients a single, version-pinned source of truth for the daemon's types, preventing model drift and duplication across consumers. It carries two stamped constants—schema_digest and daemon_api_version—that clients use to verify type/daemon parity at connect time. Regeneration and release are fully automated: the daemon's release workflow triggers a PR in this repo, CI validates the regeneration, and a successful merge auto-publishes to PyPI. Use it for: - Building a typed Python client for the openccu-loom daemon without duplicating model definitions - Validating REST request/response payloads against the daemon's contract at runtime - Consuming WebSocket push events with full type safety and IDE autocomplete - Verifying schema_digest at client startup to catch daemon/type version mismatches - Integrating home automation logic that depends on stable enum values from the CCU ## Worth the install? AI-flagged interpretation of the facts above — verify before relying. Provides generated Pydantic models and string enums for the openccu-loom daemon's REST and WebSocket contract, enabling type-safe client integration. Yes, if you are building a Python client for openccu-loom or consuming its REST/WebSocket APIs. The package is actively maintained, has no security vulnerabilities, carries a permissive MIT license, and requires only pydantic as a dependency. Install friction is minimal. The types are generated and CI-validated on every daemon release, so they stay authoritative. Not relevant if you are not working with the openccu-loom daemon. ## Install pip install openccu-loom-types uv add openccu-loom-types poetry add openccu-loom-types ## Installing openccu-loom-types Before you install: Low friction: pure Python wheel with a single runtime dependency on pydantic. Active maintenance with releases tied to the daemon's CI/CD pipeline; last commit 2026-08-14. License in practice: MIT license permits unrestricted use, modification, and distribution with minimal obligations—suitable for both commercial and open-source projects. Quickstart: pip install openccu-loom-types from openccu_loom_types.rest import SomeRestModel from openccu_loom_types.enums import SomeEnum from openccu_loom_types.ws import WebSocketEnvelope Requires Python >= 3.11 Verify before relying: - Whether the package is suitable for production use in home automation systems beyond the daemon's own clients - Stability guarantees for the generated model API across minor/patch version bumps - Whether schema_digest validation is enforced or advisory in consuming clients ## Package facts - License: MIT (permissive) - Python support: supports_current - Install friction: low - Maintenance: active - Downloads: 262.5K/month (top 15,000 on PyPI) - Known vulnerabilities: none known ## Tags pydantic models for rest api, websocket type definitions, home automation api types, openapi schema pydantic, typed daemon client bindings, ccu home automation types, contract-first api models, generated-types, home-automation, api-contract [View on SkillFed](https://skillfed.io/packages/openccu-loom-types) · [View on PyPI](https://pypi.org/project/openccu-loom-types/)