PAS • Plataforma de Agentes Sandcastle

API & Storage Control Plane na Cloudflare Edge (D1 + R2)

Verificando...
D1: Conectando
R2: Conectando
Execuções de Agentes
0
Registradas no Cloudflare D1
Tarefas Ativas
0
Fila de orquestração de agentes
Artefatos Armazenados
0
Logs, diffs e arquivos no R2 Bucket
Provedor Padrão
agy (Antigravity)
Modelo: gemini-3.1-pro

Histórico de Execuções

Registros de sessões e execuções orquestradas pelo Sandcastle

Nome / ID Provedor Modelo Status Criado em Ações
Carregando execuções...

Tarefas de Orquestração

Fila de tarefas atribuídas a agentes

Título Status Agente Atribuído Criado em Ações
Carregando tarefas...

Cloudflare R2 Bucket (pas-storage)

Artefatos, logs de execuções e outputs gerados pelas sandboxes

Chave / Arquivo Tamanho Data de Upload Ações
Carregando arquivos do R2...

Templates de Prompts

Templates reutilizáveis armazenados no D1

Nome Descrição Variáveis Criado em
Carregando templates...

Endpoints da API (Pages Functions)

GET /api/health

Verifica saúde da API, status da conexão com Cloudflare D1 e Cloudflare R2.

GET /api/runs  |  POST /api/runs

Lista histórico de execuções ou registra nova execução de agente.

GET /api/runs/:id  |  PATCH /api/runs/:id  |  DELETE /api/runs/:id

Detalhes completos da execução, iterações e artefatos associados.

GET /api/storage  |  PUT /api/storage/:path  |  DELETE /api/storage/:path

Upload streaming direto para R2 e download/listagem de artefatos.

Exemplo de Integração (TypeScript / Node):

typescript // Salvar resultado do Sandcastle na API PAS const res = await fetch("https://pas-7x4.pages.dev/api/runs", { method: "POST", headers: { "Content-Type": "application/json" }, body: JSON.stringify({ name: "Orquestração Sandcastle", agent_provider: "agy", model: "gemini-3.1-pro", status: "completed", duration_ms: 4500, metadata: { exitCode: 0, sandbox: "no-sandbox" } }) }); const data = await res.json(); console.log("Run gravada no D1:", data.run.id);