# Transporte e implantação

> Endereços de escuta padrão, transporte, formato de streaming e layout de URLs de um serviço LMSP, e como ele roda como serviço do sistema operacional, separado dos processos dos modelos.

Source: https://madeforagent.com/pt-br/lmsp/1.0/transport/
Language: pt-BR
Specification: LMSP 1.0 (draft)
Updated: 2026-11-08

## 2.1 Implantação padrão {#deployment}

Um serviço **DEVE** escutar por padrão nos endereços de loopback `127.0.0.1` e `::1`. A porta convencional é `17832`, o que torna o endereço base padrão `http://127.0.0.1:17832`.

| Item | Valor |
| --- | --- |
| Endereços de escuta | `127.0.0.1` e `::1` |
| Transporte | HTTP/1.1 ou HTTP/2 transportando JSON |
| Streaming | Eventos enviados pelo servidor, `Content-Type: text/event-stream` |
| Prefixo da interface principal | `/lmsp/v1` |
| Prefixo compatível com a OpenAI | `/v1` |
| Descrição do serviço | `GET /.well-known/lmsp.json` |
| Contrato legível por máquina | `GET /lmsp/v1/openapi.json` |
| Canal local opcional | Socket de domínio Unix ou named pipe do Windows |

As requisições e as respostas usam JSON em UTF-8 (`Content-Type: application/json`), exceto os fluxos (`text/event-stream`) e os erros (`application/problem+json`). Os carimbos de data e hora são inteiros: segundos desde a época Unix. Os identificadores são strings opacas; um prefixo de tipo, como `resp_` ou `task_`, é **RECOMENDADO**.

O contrato da interface é um documento OpenAPI 3.2. O OpenAPI 3.2 consegue descrever eventos enviados pelo servidor, JSON Lines e JSON Sequences, de modo que os endpoints de streaming são especificados no mesmo documento que o restante. O contrato desta versão é publicado em [`/lmsp/1.0/openapi.json`](https://madeforagent.com/lmsp/1.0/openapi.json).

Um serviço **PODE** também aceitar conexões em um socket de domínio Unix ou em um named pipe do Windows, com a mesma semântica HTTP. Na 1.0, a forma de anunciar esses endpoints fica a cargo de extensões.

## 2.2 Operação contínua {#operation}

Um serviço **DEVERIA** ser hospedado pelo sistema operacional: launchd no macOS, systemd no Linux e o Gerenciador de Serviços no Windows.

O processo do serviço e os processos dos modelos **DEVERIAM** ser separados. A falha de um modelo **DEVERIA** afetar apenas as tarefas que usam esse modelo. Ela **NÃO DEVERIA** tornar indisponíveis a descoberta de serviços, o catálogo de modelos nem as consultas sobre tarefas anteriores.
