Protocolos de clientes nativos
SubLane guía: protocolos de clientes nativos.
Estos puntos finales fueron introducidos después de v0.1.0-rc.1; esa liberación no los incluye. Utilice una fuente de construcción hasta que una nueva versión incluya este cambio.
Están habilitadas las suscripciones Codex, Claude, Antigravity y Grok Build y los canales API. Claude Messages, Gemini, Responses y Chat Completions son formatos cliente independientes del proveedor. Se eligen recursos compatibles con el modelo según el grupo de la clave, los permisos y la política de enrutamiento y respaldo. Cada canal API configura su protocolo: Messages puede conservarse o convertirse a Chat Completions, Responses o Gemini. La integración SDK pública conserva límites explícitos y estados incompletos. /v1/responses/compact sigue reservado a Codex. Los proveedores y clientes reales requieren verificación independiente.
Puntos finales y autenticación
| Protocolo | Punto final | Credenciales |
|---|---|---|
| Claude Mensajes | POST /v1/messages | x-api-key o Authorization: Bearer |
| Gemini JSON | POST /v1beta/models/{model}:generateContent | x-goog-api-key, Authorization: Bearer, o key parámetro query |
| Gemini SSE | POST /v1beta/models/{model}:streamGenerateContent?alt=sse | Igual que el mismo. Gemini JSON |
Usar un personal SubLane API llave. Si se suministran múltiples ubicaciones credenciales, deben estar de acuerdo; un encabezado de Autorización inválido no puede caer a otra clave. Las cookies de sesión del navegador no son credenciales de puerta. Preferir encabezados a claves de búsqueda porque otros proxies pueden registrar URLs. SubLane no envía las claves del cliente, las cookies o las cadenas de consulta a los proveedores.
Usar GET /v1/models con autenticación de Bearer para descubrir los IDs de modelo nativo permitidos. Gemini solicitudes, el modelo en la URL es autorizado; un cuerpo model o stream campo no puede anular la ruta. streamGenerateContent retornos SSE; alt puede omitirse o establecerse sse.
Claude ejemplo
Colocar SUBLANE_URL al origen de la instancia y SUBLANE_API_KEY a su llave personal. YOUR_MODEL_ID con un modelo del catálogo:
curl "$SUBLANE_URL/v1/messages" \
-H "x-api-key: $SUBLANE_API_KEY" \
-H 'anthropic-version: 2023-06-01' \
-H 'content-type: application/json' \
--data '{"model":"YOUR_MODEL_ID","max_tokens":1024,"messages":[{"role":"user","content":"Hello"}]}'Añadir "stream": true para Mensajes nombrados SSE eventos. Contenido de solicitud nativa incluye bloques de sistema, herramientas, resultados de herramientas, controles de caché y configuración de pensamiento. Claude-respuestas de formato conservan bloques de contenido y firmas de pensamiento, sujetas al manejo específico del proveedor del ejecutante seleccionado. Los errores usan el sobre antropópico y nombrado SSE eventos de error. request-id y X-Request-ID Identificar el registro de solicitud correspondiente.
Gemini ejemplo
curl "$SUBLANE_URL/v1beta/models/YOUR_MODEL_ID:generateContent" \
-H "x-goog-api-key: $SUBLANE_API_KEY" \
-H 'content-type: application/json' \
--data '{"contents":[{"role":"user","parts":[{"text":"Hello"}]}]}'Para streaming, uso :streamGenerateContent?alt=sse y curl --no-buffer. Responses contener nativos candidates, partes y usageMetadata; Antigravity's internal response el sobre es quitado por el SDK. Las llamadas de herramientas y las firmas de pensamiento permanecen en sus Gemini representación. Los errores usan estilo de Google error.code, error.status y error.message. SSE Los pedazos tienen data: sin encuadres OpenAI's [DONE] marcador.
Comportamiento compartido
- Los miembros habilitados y las claves, el vencimiento clave, las subvenciones de el pool, las políticas modelo, la disponibilidad de cuentas, el consentimiento y los límites de solicitud de los miembros se revisan a través de los servicios existentes de la puerta de entrada.
- Cada solicitud comprueba la clave, el miembro, el grupo de recursos, la política de modelos, la capacidad y los límites del miembro. Las solicitudes nuevas pueden usar suscripciones o canales API según el enrutamiento y el respaldo del grupo. Las conversaciones existentes conservan su recurso; deshabilitarlo o eliminarlo no provoca un cambio automático.
- Usos de afinidad de conversación
Session_id; Claude también usosmetadata.user_idcuando no se proporciona sesión explícita. Los identificadores se enmarcan en el miembro y el pool. Las solicitudes sin un identificador de afinidad permanecen sin sesión. - La cancelación cierra el trabajo y libera los arrendamientos de cuenta/miembro. Los eventos terminales perdidos y eventos malformados o sobredimensionados son fracasos, no respuestas vacías exitosas. Los errores de streaming se sanitizan después de que se han enviado encabezados.
- Solicitar las operaciones de etiquetas de historia como
messagesogemini, con identificación de solicitud, latencia de salida y uso de token disponible. Los totales de entrada antropópicos incluyen lecturas de caché y creación; Gemini La entrada ya incluye tokens caché, y su total de salida incluye tokens de pensamiento. Gemini los trozos de uso se consumen despuésfinishReason. - El cuerpo de la solicitud tiene un límite predeterminado de 128 MiB (
SUBLANE_MAX_REQUEST_BODY_MB); las respuestas y los eventos tienen límites separados de 8 MiB. El plazo total predeterminado es de 30 minutos (SUBLANE_GATEWAY_REQUEST_TIMEOUT) y la espera de cabeceras de inferencia es de cinco minutos (SUBLANE_INFERENCE_HEADER_TIMEOUT), también para los protocolos nativos. Las respuestas en streaming se transmiten de forma incremental.
El esquema de inicialización consolidada incluye operaciones de protocolo nativo en la historia de la solicitud. No se requiere servicio persistente adicional.
Alcance y verificación
Esta matriz sintética cubre Codex, Claude y Antigravity, todos habilitados en tiempo de ejecución. Grok Build y los canales API también están habilitados y tienen pruebas independientes, fuera de esta matriz de 24 casos:
| Protocolo de cliente | Codex cuenta | Claude cuenta | Antigravity cuenta |
|---|---|---|---|
| OpenAI Responses | Probada | Probada | Probada |
| OpenAI Chat Completions | Probada | Probada | Probada |
| Claude Mensajes | Probada | Probada | Probada |
| Gemini generación | Probada | Probada | Probada |
TestClientProtocolMatrix verifica 24 combinaciones de proveedor, protocolo y streaming con servicios simulados. Otras pruebas cubren Grok Build, canales API, firmas, caché, permisos, reintentos, cancelación y flujos incorrectos. No certifican todas las herramientas, modos de razonamiento, campos de proveedor ni flujos con clientes reales.
Coverage utiliza cuentas sintéticas y proveedores de falsificación, incluyendo nativos JSON/SSE, herramientas/pensamiento, traducción cruzada del proveedor, autorización, uso, interrupción y cancelación. No se establece una cuenta real completa Claude Código, Gemini CLI o compatibilidad de escritorio. Las características nativas avanzadas dependen del proveedor seleccionado y SDK Camino de conversión.
In API claves → Guía de configuración, elegir su cliente o API formato. La guía proporciona Codex configuración, Cline/OpenAI-compatible configuración y Chat Completions ejemplos, o nativos Claude/Gemini solicitar ejemplos, con la URL base correcta y el encabezado de autenticación. Seleccione un modelo de el pool de la llave. La guía nunca sembra el secreto de una clave; ejemplos leer SUBLANE_API_KEY desde el entorno del cliente. CC Switch importación rápida soportes Codex, OpenCode, Claude Código, OpenClaw, Hermes, Gemini CLI, and Grok Build.
Gemini CLI 0.37.2 ha completado además una solicitud de incorporación de texto y un viaje de redondeo de herramientas de sólo lectura contra un punto final de mock aislado utilizando una llave y un modelo sintéticos. Esto comprueba la ruta de solicitud y el consumo de respuesta del CLI; no valida la inferencia de suscripción real, cada característica del CLI o los flujos de trabajo completos de los otros clientes.
Puntos finales de cuenta de ficha, Batches de mensaje, Archivos, Gemini Vivir y vivir Antigravity Los protocolos de conexión de escritorio no son implementados por este cambio. Las acciones no respaldadas son rechazadas en lugar de tratarlas como solicitudes de generación. Los recursos nativos de descubrimiento de modelos no están expuestos; use el conjunto-scopio /v1/models catálogo.
Referencias del Protocolo: Claude streaming, Claude errores, y Gemini generación. Los límites de rutina y compatibilidad se compararon con sub2api y Nuevo API; SubLane mantiene su propio permiso, ciclo de vida y aplicación de almacenamiento.