Add typed/Pydantic models for OpenShell specs
Nobody has claimed this yet.
- Dominant language
- Rust
- Stars
- 8.7k
- Forks
- 1.3k
- Avg merge
- 2d 11h
- Merged PRs (30d)
- 253
Description
Motivation
Constructing OpenShell specs directly from raw protobuf objects can be verbose and hard to validate. Typed Python models would improve developer experience and make configuration errors easier to understand.
Proposed change
Add typed models, potentially Pydantic-based, for common OpenShell spec construction. These models should validate user input and convert explicitly to the existing protobuf types.
Acceptance criteria
- Add typed model(s) for common sandbox/session/spec construction paths.
- Provide clear validation errors for invalid inputs.
- Keep protobuf interop explicit and backward compatible.
- Add unit tests for valid construction, invalid values, and protobuf conversion.
- Document at least one end-to-end example.
Notes
This is primarily a Python SDK developer-experience improvement and should not require gateway/proto changes.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Locate the Python SDK's existing OpenShell spec-construction paths and protobuf types first. Add unit tests covering valid construction, invalid values, and explicit protobuf conversion, then document one end-to-end example; done means validation is clear and existing protobuf interoperability remains backward compatible.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- python
- Domain
- developer-experience
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Quiet
- Clarity
- Mostly clear
- Newbie friendliness
- 48/100