--- id: capability.agents.llm-connector name: Pluggable LLM Adapter Library (llm-connect) summary: Provider-neutral Python/CLI LLM adapter library supporting OpenRouter, Gemini, OpenAI, and the Claude Code CLI out of the box, with a clean abstract interface for adding new providers. owner: llm-connect status: draft domain: agents tags: - llm - adapter - provider-neutral maturity: discovery: current: D3 target: D5 confidence: medium rationale: README documents a working quick-start (`create_adapter`, `RunConfig`, `execute_prompt`), the supported provider list, and both local-editable and future-published install paths. availability: current: A2 target: A3 confidence: medium rationale: Installable today via `pip install -e` (local) with a documented future `pip install llm-connect` path once published; consumed today by sibling repos including `cya` (can-you-assist) and referenced as the intended backend for reuse-surface's own `establish --discover`. external_evidence: completeness: level: C2 confidence: low basis: scope_vs_intent_and_consumer_expectations satisfied_expectations: - four providers implemented (OpenRouter, Gemini, OpenAI, Claude Code CLI) - abstract adapter interface for adding new providers - already a named integration point for other repos (can-you-assist's LLMAdapter seam, reuse-surface's establish --discover) broken_expectations: [] out_of_scope_expectations: [] reliability: level: R1 confidence: low basis: consumer_quality_signals known_reliability_risks: - no llm-connect instance was running on this workstation during the REUSE-WP-0017 sweep, so establish --discover fell back to manual authoring for this campaign discovery: intent: Give Python and CLI consumers a single, provider-neutral way to call LLMs, decoupling agent/tool code from any one vendor's SDK. includes: - provider-neutral adapter interface - OpenRouter, Gemini, OpenAI, Claude Code CLI adapters - RunConfig-based execution excludes: - hosting or credential custody for providers (routes to OpenBao/operator paths per credential-routing conventions) assumptions: [] use_cases: [] research_memos: [] availability: current_level: A2 target_level: A3 current_artifacts: - Python package (`llm_connect`) target_artifacts: [] consumption_modes: - library import - cli relations: depends_on: [] supports: [] related_to: [] evidence: documentation: - README.md tests: - tests/ consumer_feedback: [] bug_reports: [] incidents: [] consumer_guidance: recommended_for: - any repo needing provider-neutral LLM calls instead of a vendor-specific SDK not_recommended_for: - needs requiring a provider not yet adapted (extend via the abstract interface first) known_limitations: - not yet published to a package index; local editable install only promotion_history: [] --- # Pluggable LLM Adapter Library (llm-connect) ## Overview `llm-connect` provides pluggable, provider-neutral LLM adapters for Python and the command line, supporting OpenRouter, Gemini, OpenAI, and the Claude Code CLI out of the box behind a clean abstract interface, and is already the intended backend for several sibling repos including `can-you-assist` and `reuse-surface`'s own drafting tooling. ## Assessment notes ### Discovery README documents a working quick-start (`create_adapter`, `RunConfig`, `execute_prompt`), the supported provider list, and both local-editable and future-published install paths. ### Availability Installable today via `pip install -e` (local) with a documented future `pip install llm-connect` path once published; consumed today by sibling repos including `cya` (can-you-assist) and referenced as the intended backend for reuse-surface's own `establish --discover`. ### Completeness First-pass honest assessment from the REUSE-WP-0017 coverage campaign (reuse-surface). No external consumer feedback exists yet; levels reflect scope-vs-intent documentation quality, not internal code quality. ### Reliability No production consumer telemetry exists yet; reliability level is intentionally conservative pending REUSE-WP-0019 reuse-telemetry evidence. ## Promotion checklist - [x] ID follows `capability..` pattern - [x] Maturity enums match `specs/CapabilityMaturityStandard.md` - [x] `external_evidence` is populated separately from `maturity` - [ ] Relations reference valid capability IDs (none yet) - [x] Index entry added in `registry/indexes/capabilities.yaml`