Add from_env() configuration helper for OpenShell Python SDK
Dieses Issue hat noch niemand übernommen.
- Vorherrschende Sprache
- Rust
- Sterne
- 8.7k
- Forks
- 1.3k
- Ø Merge
- 2 T. 7 Std.
- Gemergte PRs (30 T.)
- 243
Beschreibung
Motivation
The Python SDK should be easy to configure in CI, containers, and developer shells. A from_env() helper would make OpenShell configuration explicit and repeatable while complementing existing XDG / OPENSHELL_GATEWAY discovery.
Proposed change
Add a config constructor or client factory that loads OpenShell settings from environment variables, for example gateway address, auth/material paths, and timeout defaults.
Example shape:
client = openshell.Client.from_env()
or:
config = openshell.Config.from_env()
client = openshell.Client(config)
Acceptance criteria
- Define and document the supported environment variables and precedence rules.
- Add
from_env()tests for defaults, explicit overrides, and invalid values. - Keep existing configuration/discovery behavior backward compatible.
- Include a short docs example for local development and CI usage.
Notes
This should be SDK-only and should not require gateway/proto changes.
Beitragsleitfaden
Erste Schritte
- Lies das ganze Issue und danach den Beitragsleitfaden des Projekts.
- Schreib ins Issue, dass du es übernimmst — das erspart doppelte Arbeit.
- Forke das Repository und arbeite in einem Branch.
- Öffne einen Pull Request, der die Issue-Nummer nennt.
Rechercherichtung
Ermitteln Sie zuerst die bestehenden Einstiegsstellen des Python SDK für die Erkennung und Konfiguration von XDG und OPENSHELL_GATEWAY. Definieren Sie anschließend die unterstützten Umgebungsvariablen und deren Priorität und fügen Sie from_env()-Tests hinzu, die Standardwerte, Überschreibungen und ungültige Werte abdecken. Erledigt ist die Aufgabe, wenn die bestehende Erkennung kompatibel bleibt und ein kurzes Beispiel für die lokale Entwicklung und CI dokumentiert ist.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Bewertung
- Tech-Stack
- python
- Bereich
- developer-experience, documentation
- Issue-Typ
- Feature
- Schwierigkeit
- 4/5
- Geschätzter Aufwand
- 3-5 Tage
- Aktivitätsstatus
- Ruhig
- Klarheit
- Größtenteils klar
- Anfängerfreundlichkeit
- 55/100