Summary
Create the foundational obd_ai package that wraps the existing low-level python-OBD library with a higher-level session abstraction and an approved command catalog for LLM-safe access.
Why
The current repository exposes low-level OBD command primitives directly. For LLM integration we need a constrained, explicit, testable layer that models safe diagnostic capabilities without exposing arbitrary raw command access.
Scope
- Add an
obd_ai/ package (or equivalent namespace) for higher-level integration code
- Implement a session manager around
obd.OBD and optionally obd.Async
- Create an approved command catalog with metadata such as:
- public tool name
- backing
obd.commands.* command
- category
- read/write classification
- expected response type
- human description
- Exclude arbitrary raw hex command construction from the high-level layer
- Add focused unit tests for catalog integrity and basic session lifecycle behavior
Acceptance Criteria
obd_ai package exists with a clear boundary from core library code
- Approved command catalog covers the MVP read-only diagnostics set
- Session manager can connect, report status, and expose a controlled command lookup path
- No high-level API surface allows arbitrary custom command execution in MVP
- Tests verify catalog contents and session wiring behavior
Summary
Create the foundational
obd_aipackage that wraps the existing low-level python-OBD library with a higher-level session abstraction and an approved command catalog for LLM-safe access.Why
The current repository exposes low-level OBD command primitives directly. For LLM integration we need a constrained, explicit, testable layer that models safe diagnostic capabilities without exposing arbitrary raw command access.
Scope
obd_ai/package (or equivalent namespace) for higher-level integration codeobd.OBDand optionallyobd.Asyncobd.commands.*commandAcceptance Criteria
obd_aipackage exists with a clear boundary from core library code