agnes-the-ai-analyst/config
Petr 95358448e6 Add modular LLM connector for Corporate Memory
Replace hardwired Anthropic API calls with a pluggable provider system.
Each deployment configures its AI provider in instance.yaml — switching
between Anthropic, LiteLLM, OpenRouter, or any OpenAI-compatible proxy
is a config change, not a code change.

New connectors/llm/ module:
- StructuredExtractor Protocol with extract_json() interface
- AnthropicExtractor: direct Anthropic SDK with retry + backoff
- OpenAICompatExtractor: any OpenAI-compatible proxy with three-layer
  structured output fallback (json_schema -> json_object -> prompt)
- Configurable structured_output policy (strict/json/auto)
- Custom exception hierarchy (auth/rate_limit/timeout/format/refusal)
- Zero secrets in logs: no API keys, prompts, or responses logged

Reviewed by: Google Gemini, Claude Sonnet, OpenAI GPT-5.4.
Security audit passed with all critical findings resolved.
2026-03-23 12:08:33 +01:00
..
.env.template Add modular LLM connector for Corporate Memory 2026-03-23 12:08:33 +01:00
__init__.py Initial commit: OSS data distribution platform 2026-03-08 23:31:28 +01:00
data_description.md.example Step 28: Remote query architecture for local+remote table JOINs 2026-03-21 11:39:15 +01:00
instance.yaml.example Add modular LLM connector for Corporate Memory 2026-03-23 12:08:33 +01:00
loader.py Security fixes: sanitize dev_docs, harden sudoers and config validation 2026-03-09 08:06:45 +01:00