feat: add OpenAI provider support (#11) #84

Merged
jonas.hanisch merged 1 commit from feat/openai-provider-11 into main 2026-01-22 18:57:01 +00:00
Owner

Summary

  • Adds OpenAI as an alternative provider for observation extraction
  • Uses official openai SDK with built-in retry/rate-limit handling
  • Supports OpenAI API, Azure OpenAI, and any OpenAI-compatible API

Changes

  • OpenAIAgent.ts: New agent with multi-turn conversation support
  • SettingsDefaultsManager: Added CLAUDE_MEM_OPENAI_API_KEY, _MODEL, _BASE_URL
  • SessionRoutes/WorkerService: Integrated OpenAI provider selection

Configuration

{
  "CLAUDE_MEM_PROVIDER": "openai",
  "CLAUDE_MEM_OPENAI_API_KEY": "sk-...",
  "CLAUDE_MEM_OPENAI_MODEL": "gpt-4o-mini",
  "CLAUDE_MEM_OPENAI_BASE_URL": ""
}

For Azure OpenAI, set BASE_URL to your Azure endpoint.

Benefits

  • Bring Your Own Key: Use existing OpenAI/Azure subscriptions
  • Cost control: Choose between gpt-4o-mini (cheap) or gpt-4o (powerful)
  • Custom endpoints: Set BASE_URL for Azure, local models, or compatible APIs

Test plan

  • Set provider to 'openai' with valid API key
  • Verify observations are extracted and stored
  • Test rate-limit handling (SDK handles automatically)

Closes #11

🤖 Generated with Claude Code

## Summary - Adds OpenAI as an alternative provider for observation extraction - Uses official `openai` SDK with built-in retry/rate-limit handling - Supports OpenAI API, Azure OpenAI, and any OpenAI-compatible API ## Changes - **OpenAIAgent.ts**: New agent with multi-turn conversation support - **SettingsDefaultsManager**: Added `CLAUDE_MEM_OPENAI_API_KEY`, `_MODEL`, `_BASE_URL` - **SessionRoutes/WorkerService**: Integrated OpenAI provider selection ## Configuration ```json { "CLAUDE_MEM_PROVIDER": "openai", "CLAUDE_MEM_OPENAI_API_KEY": "sk-...", "CLAUDE_MEM_OPENAI_MODEL": "gpt-4o-mini", "CLAUDE_MEM_OPENAI_BASE_URL": "" } ``` For Azure OpenAI, set `BASE_URL` to your Azure endpoint. ## Benefits - **Bring Your Own Key**: Use existing OpenAI/Azure subscriptions - **Cost control**: Choose between gpt-4o-mini (cheap) or gpt-4o (powerful) - **Custom endpoints**: Set BASE_URL for Azure, local models, or compatible APIs ## Test plan - [ ] Set provider to 'openai' with valid API key - [ ] Verify observations are extracted and stored - [ ] Test rate-limit handling (SDK handles automatically) Closes #11 🤖 Generated with [Claude Code](https://claude.com/claude-code)
feat: add OpenAI provider support (#11)
All checks were successful
CI / build (pull_request) Successful in 22s
CI / validate-plugin (pull_request) Successful in 2s
e2af408d33
Adds OpenAI as an alternative provider for observation extraction,
supporting OpenAI API, Azure OpenAI, and any OpenAI-compatible API.

Changes:
- Add @openai/openai SDK with built-in retry/rate-limit handling
- Create OpenAIAgent.ts with multi-turn conversation support
- Add settings: CLAUDE_MEM_OPENAI_API_KEY, _MODEL, _BASE_URL
- Integrate into SessionRoutes and WorkerService
- Set CLAUDE_MEM_PROVIDER='openai' to enable

Benefits:
- Bring Your Own Key: Use OpenAI, Azure, or compatible APIs
- Cost control: Choose between gpt-4o-mini (cheap) or gpt-4o
- Custom endpoints: Set BASE_URL for Azure or local models

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
jonas.hanisch force-pushed feat/openai-provider-11 from e2af408d33
All checks were successful
CI / build (pull_request) Successful in 22s
CI / validate-plugin (pull_request) Successful in 2s
to c9c0f01447
All checks were successful
CI / build (pull_request) Successful in 21s
CI / validate-plugin (pull_request) Successful in 2s
2026-01-22 18:55:00 +00:00
Compare
jonas.hanisch deleted branch feat/openai-provider-11 2026-01-22 18:57:01 +00:00
Sign in to join this conversation.
No description provided.