Skip to content

Справочник по точкам доступа: обзор маршрутов HTTP для внешнего доступа

Чему вы научитесь

  • Быстро найти путь к вызываемой точке доступа
  • Понять распределение точек доступа разных протоколов
  • Узнать специальные правила режима аутентификации и проверки работоспособности

Обзор точек доступа

Локальный reverse proxy Antigravity Tools предоставляет следующие типы точек доступа:

Классификация протоколовНазначениеТипичные клиенты
Протокол OpenAIСовместимость с общими AI приложениямиOpenAI SDK / Совместимые клиенты
Протокол AnthropicВызовы серии ClaudeClaude Code / Anthropic SDK
Протокол GeminiОфициальный SDK GoogleGoogle Gemini SDK
Точки доступа MCPУлучшение вызова инструментовКлиенты MCP
Внутренние/вспомогательныеПроверка работоспособности, перехват/внутренние возможностиАвтоматизированные скрипты / Мониторинг работоспособности

Точки доступа протокола OpenAI

Эти точки доступа совместимы с форматом API OpenAI, подходят для большинства клиентов, поддерживающих OpenAI SDK.

МетодПутьТочка входа маршрута (Rust handler)Примечания
GET/v1/modelshandlers::openai::handle_list_modelsСовместимость с OpenAI: список моделей
POST/v1/chat/completionshandlers::openai::handle_chat_completionsСовместимость с OpenAI: Chat Completions
POST/v1/completionshandlers::openai::handle_completionsСовместимость с OpenAI: Legacy Completions
POST/v1/responseshandlers::openai::handle_completionsСовместимость с OpenAI: запросы Codex CLI (тот же handler, что и /v1/completions)
POST/v1/images/generationshandlers::openai::handle_images_generationsСовместимость с OpenAI: Images Generations
POST/v1/images/editshandlers::openai::handle_images_editsСовместимость с OpenAI: Images Edits
POST/v1/audio/transcriptionshandlers::audio::handle_audio_transcriptionСовместимость с OpenAI: Audio Transcriptions

Совместимость

Точка доступа /v1/responses специально разработана для Codex CLI, фактически использует ту же логику обработки, что и /v1/completions.


Точки доступа протокола Anthropic

Эти точки доступа организованы по пути и формату запросов API Anthropic, для вызовов Claude Code / Anthropic SDK.

МетодПутьТочка входа маршрута (Rust handler)Примечания
POST/v1/messageshandlers::claude::handle_messagesСовместимость с Anthropic: Messages
POST/v1/messages/count_tokenshandlers::claude::handle_count_tokensСовместимость с Anthropic: count_tokens
GET/v1/models/claudehandlers::claude::handle_list_modelsСовместимость с Anthropic: список моделей

Точки доступа протокола Gemini

Эти точки доступа совместимы с форматом API Google Gemini, можно напрямую использовать официальный SDK Google.

МетодПутьТочка входа маршрута (Rust handler)Примечания
GET/v1beta/modelshandlers::gemini::handle_list_modelsНативный Gemini: список моделей
GET/v1beta/models/:modelhandlers::gemini::handle_get_modelНативный Gemini: GetModel
POST/v1beta/models/:modelhandlers::gemini::handle_generateНативный Gemini: generateContent / streamGenerateContent
POST/v1beta/models/:model/countTokenshandlers::gemini::handle_count_tokensНативный Gemini: countTokens

Пояснение к пути

/v1beta/models/:model одновременно регистрирует GET и POST в одном и том же пути (см. определение маршрута).


Точки доступа MCP

Точки доступа MCP (Model Context Protocol) используются для внешнего предоставления интерфейсов "вызова инструментов" (обрабатываются handlers::mcp::*). Включены ли и конкретное поведение зависят от конфигурации; детали см. Точки доступа MCP.

МетодПутьТочка входа маршрута (Rust handler)Примечания
ANY/mcp/web_search_prime/mcphandlers::mcp::handle_web_search_primeMCP: Web Search Prime
ANY/mcp/web_reader/mcphandlers::mcp::handle_web_readerMCP: Web Reader
ANY/mcp/zai-mcp-server/mcphandlers::mcp::handle_zai_mcp_serverMCP: z.ai MCP Server
Пояснение по MCP

Область применения и границы MCP см. в Границы возможностей интеграции z.ai (реализовано vs явно не реализовано).


Внутренние и вспомогательные точки доступа

Эти точки доступа используются для внутренних функций и внешнего мониторинга.

МетодПутьТочка входа маршрута (Rust handler)Примечания
POST/internal/warmuphandlers::warmup::handle_warmupВнутренняя точка доступа для прогрева
POST/v1/api/event_loggingsilent_ok_handlerПерехват логов телеметрии: напрямую возвращает 200
POST/v1/api/event_logging/batchsilent_ok_handlerПерехват логов телеметрии: напрямую возвращает 200
GET/healthzhealth_check_handlerПроверка работоспособности: возвращает {"status":"ok"}
POST/v1/models/detecthandlers::common::handle_detect_modelАвтоматическое обнаружение модели

Бесшумная обработка

Точки доступа логов событий напрямую возвращают 200 OK, не выполняют реальную обработку, используются для перехвата отчетов телеметрии клиентов.

Нужно ли этим точкам доступа API Key?

За исключением GET /healthz, который может быть освобожден, нужны ли другие маршруты с ключом, решает "эффективный режим" proxy.auth_mode (см. ниже "Режим аутентификации" и auth_middleware в исходном коде).


Режим аутентификации

Разрешения доступа всех точек доступа управляются proxy.auth_mode:

РежимОписание/healthz требует аутентификации?Другие точки доступа требуют аутентификации?
offПолностью открыт❌ Нет❌ Нет
strictВсе требуют аутентификации✅ Да✅ Да
all_except_healthТолько проверка работоспособности открыта❌ Нет✅ Да
autoАвтоматическое определение (по умолчанию)❌ НетЗависит от allow_lan_access

Логика режима auto

auto не является независимой стратегией, а выводится из конфигурации: когда proxy.allow_lan_access=true эквивалентно all_except_health, иначе эквивалентно off (см. docs/proxy/auth.md).

Формат запроса аутентификации:

bash
 # Authorization: Bearer
curl -H "Authorization: Bearer YOUR_API_KEY" \
  "http://127.0.0.1:<PORT>/v1/messages"

 # x-api-key (стиль OpenAI)
curl -H "x-api-key: YOUR_API_KEY" \
  "http://127.0.0.1:<PORT>/v1/chat/completions"

 # x-goog-api-key (стиль Gemini)
curl -H "x-goog-api-key: YOUR_API_KEY" \
  "http://127.0.0.1:<PORT>/v1beta/models/gemini-2-pro"
powershell
 # Authorization: Bearer
curl.exe -H "Authorization: Bearer YOUR_API_KEY" `
  "http://127.0.0.1:<PORT>/v1/messages"

 # x-api-key (стиль OpenAI)
curl.exe -H "x-api-key: YOUR_API_KEY" `
  "http://127.0.0.1:<PORT>/v1/chat/completions"

 # x-goog-api-key (стиль Gemini)
curl.exe -H "x-goog-api-key: YOUR_API_KEY" `
  "http://127.0.0.1:<PORT>/v1beta/models/gemini-2-pro"

Краткое итог этого раздела

Antigravity Tools предоставляет полный набор точек доступа совместимости с несколькими протоколами, поддерживая три основных формата API OpenAI, Anthropic, Gemini, а также расширение вызова инструментов MCP.

  • Быстрая интеграция: приоритетное использование точек доступа протокола OpenAI, самая сильная совместимость
  • Нативные функции: используйте точки доступа протокола Anthropic, когда нужна полная функциональность Claude Code
  • Экосистема Google: используйте официальный SDK Google для выбора точек доступа протокола Gemini
  • Безопасная конфигурация: выберите подходящий режим аутентификации в зависимости от сценария использования (локальный/LAN/публичная сеть)

Следующий урок预告

Следующий урок мы изучим Данные и модели.

Вы узнаете:

  • Структура хранения файлов аккаунтов
  • Структура таблицы базы данных статистики SQLite
  • Определение ключевых полей и стратегия резервного копирования

Приложение: Справка по исходному коду

Нажмите, чтобы увидеть местоположение исходного кода

Обновлено: 2026-01-23

ФункцияПуть к файлуСтроки
Регистрация маршрутов (все точки доступа)src-tauri/src/proxy/server.rs120-194
Middleware аутентификации (совместимость заголовков + исключение /healthz + разрешение OPTIONS)src-tauri/src/proxy/middleware/auth.rs14-78
Режим auth_mode и правила вывода autodocs/proxy/auth.md9-24
Возвращаемое значение /healthzsrc-tauri/src/proxy/server.rs266-272
Перехват логов телеметрии (silent 200)src-tauri/src/proxy/server.rs274-277

Ключевые функции:

  • AxumServer::start(): Запустить сервер Axum и зарегистрировать маршруты (строки 79-254)
  • health_check_handler(): Обработка проверки работоспособности (строки 266-272)
  • silent_ok_handler(): Обработка бесшумного успеха (строки 274-277)