0005 — AI клијент користи сиров HTTP, не Anthropic SDK
Контекст
Свака AI функција (генерисање стратегије, аутореправка, заштита ризика, посмртни извештаји) позива Anthropic API. SDK зависност додаје прилична површина коју не контролишемо, везује нашу кадуку за њихову, и скрива тачан уговор жиче коју морамо размишљати за отпорност и цену.
Одлука
IAiClient позива Anthropic преко сировог HTTP кроз типизиран HttpClient — намерно не SDK.
AiFeatureService је јединствени оркестратор дељен од Web крајњих тачака, MCP AiTools, и
AiRiskGuard. Цела површина је закупљена на AppOptions.Ai.ApiKey: без кључа, свака функција
враћа AiResult.Fail и апликација ради непромењена.
Последице
- Кључ није потребан за грађење, тестирање или E2E — CI и локални развој покрећу пуну апликацију без AI.
- Поседујемо облик захтева/одговора, политику поновног покушаја/времена чекања и рачуноводство жетона експлицитно.
- Нове Anthropic функције морају бити повезане ручно; трговајемо погодношћу за контролу и мању
површину зависности. Видите
claude-apiреференцу за текуће идентификаторе модела и параметре.