Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
7 changes: 3 additions & 4 deletions src/components/docs/ApiReference.astro
Original file line number Diff line number Diff line change
Expand Up @@ -40,12 +40,12 @@ const t = {
en: {
title: 'API Reference · NaN Docs',
description:
'Interactive reference for the NaN API: OpenAI-compatible endpoints for chat, embeddings, rerank, audio, images and web search.',
'Interactive reference for the NaN API: OpenAI-compatible endpoints for chat, embeddings, rerank, audio and images.',
},
es: {
title: 'Referencia API · NaN Docs',
description:
'Referencia interactiva de la API de NaN: endpoints compatibles con OpenAI para chat, embeddings, rerank, audio, imágenes y búsqueda web.',
'Referencia interactiva de la API de NaN: endpoints compatibles con OpenAI para chat, embeddings, rerank, audio e imágenes.',
},
}[lang];

Expand Down Expand Up @@ -162,8 +162,7 @@ const CSP = [
// "Generate MCP" is a hosted-product feature of Scalar: it queries
// their registry at api.scalar.com on every load. Turned off here and
// not merely by hiding the button with CSS, because hiding it does not
// stop the request. Nothing to do with NaN's /mcp endpoint, which IS
// documented: that is a spec route, this is a Scalar integration.
// stop the request.
mcp: { disabled: true },
// "Ask AI" is Scalar's hosted assistant. Hiding its button is not
// enough: the component mounts anyway and queries api.scalar.com on
Expand Down
6 changes: 0 additions & 6 deletions src/content/docs-es/agent-setup.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -115,12 +115,6 @@ Cada página de esta sección tiene la misma forma: qué necesitas, la configura
kind: 'Terminal',
note: 'Configura OpenCode, Codex, Pi, droid y Hermes por ti, y te enseña tu consumo.',
},
{
name: 'Servidor MCP',
href: '/es/docs/mcp',
kind: 'Herramientas',
note: 'La búsqueda web de NaN dentro de cualquier agente compatible con MCP.',
},
]}
/>

Expand Down
5 changes: 1 addition & 4 deletions src/content/docs-es/agents.md
Original file line number Diff line number Diff line change
@@ -1,17 +1,14 @@
---
title: Agentes
description: "Despliega agentes de IA en una microVM aislada con QEMU: Hermes, terminal web, subida de ficheros y observabilidad."
order: 20
order: 19
group: Guías
---

# Agentes.

NaN Cloud te permite desplegar agentes de IA en tu propia **microVM**: una máquina virtual ligera con QEMU y KVM, con su propio kernel, su propio sistema de ficheros y acceso root completo. Aislada del host y del resto de miembros. El primer tipo de agente disponible es **Hermes**.

> **¿Usas un agente que alojas tú?**
> Si ejecutas tu propio agente compatible con MCP en otro sitio, puedes enchufarle nuestras herramientas (como la búsqueda web) directamente, con la misma API key, a través de nuestro [servidor MCP](/es/docs/api#tag/mcp) remoto.

## Arquitectura

Cada agente corre dentro de su propia microVM de QEMU. En vez de compartir el kernel del host (como haría un contenedor normal), arranca con su propio kernel de Linux. La VM monta un disco ext4 de 20 GiB sobre un volumen persistente en modo bloque. Todo lo que hagas dentro (`apt install`, `pip install`, cambios en `/etc`, ficheros que subas) vive en ese disco y sobrevive a los reinicios.
Expand Down
2 changes: 1 addition & 1 deletion src/content/docs-es/apps.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
---
title: Apps
description: Despliega tus apps desde GitHub a NaN Cloud en minutos.
order: 21
order: 20
group: Guías
---

Expand Down
4 changes: 0 additions & 4 deletions src/content/docs-es/claude-code.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -198,7 +198,3 @@ En cualquiera de los dos, evita `glm5.3` para tareas que impliquen leer capturas
- **El comportamiento del agente depende del modelo.** Claude Code está afinado contra los modelos de Anthropic, y un modelo abierto puede usar peor sus herramientas. Es esperable, y no es un fallo del clúster. Esto solo afecta al camino de la pasarela: delegando, Claude Code sigue siendo Claude Code.
- **Las funciones atadas a la cuenta de Anthropic no viajan.** Lo que dependa de la infraestructura de Anthropic no funciona contra otra base URL.
- **El contexto se llena rápido.** Una sesión de agente consume tokens mucho más deprisa que un chat. Si usas `glm5.3`, vigila la ventana móvil de 4 horas descrita en [Elige tu modelo](/es/docs/choose-a-model).

## Las herramientas de NaN, aparte

Independientemente del camino que elijas, puedes darle a Claude Code la búsqueda web del clúster con una sola orden. Está en [Servidor MCP](/es/docs/mcp).
48 changes: 1 addition & 47 deletions src/content/docs-es/examples.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
---
title: Ejemplos
description: Fragmentos de código para conectarte a la API de NaN con Python, Node.js, curl y más.
order: 19
order: 18
group: Guías
---

Expand Down Expand Up @@ -474,52 +474,6 @@ console.log(image.data[0].url);

Las imágenes necesitan membresía de inferencia, `403` si no la tienes, y van por su propio presupuesto: 20 peticiones por minuto y 100 al mes, que no toca tu cuota de tokens.

## tool: web search

búsqueda web autenticada para agentes: `POST /v1/search`

### curl

```bash
curl https://api.nan.builders/v1/search \
-H "Content-Type: application/json" \
-H "Authorization: Bearer sk-your-key-here" \
-d '{
"query": "latest go release",
"count": 5,
"freshness": "pw"
}'
# → {"results":[{"title":...,"url":...,"snippet":...,"source":...}],"cached":false}
```

### python

```python
import os
from openai import OpenAI

client = OpenAI(
api_key=os.environ["NAN_API_KEY"],
base_url="https://api.nan.builders/v1"
)

# /search is not part of the standard OpenAI client, but we can invoke it with client.post().
response = client.post(
path="/search",
cast_to=object,
body={
"query": "latest go release",
"count": 5,
"freshness": "pw",
},
)

for r in response["results"]:
print(r["title"], "-", r["url"])
```

También funciona con `requests` a pelo o con cualquier cliente HTTP: manda el cuerpo JSON con tu key en el Bearer.

## Conectar tu editor o tu agente

Las configuraciones de Cursor, Claude Code, Codex, Cline, OpenCode, Zed y el resto están en [Configurar tu agente](/es/docs/agent-setup), con una página por herramienta.
1 change: 0 additions & 1 deletion src/content/docs-es/gentle-ai.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -131,5 +131,4 @@ Conviene pasar `sync` después de cada `upgrade`: lo primero actualiza el progra
## Siguientes pasos

- [Configurar tu agente](/es/docs/agent-setup): conecta primero tu herramienta al clúster.
- [Servidor MCP](/es/docs/mcp): añade además la búsqueda web de NaN a tu agente.
- [Elige tu modelo](/es/docs/choose-a-model): qué modelo pedir para cada tarea.
4 changes: 2 additions & 2 deletions src/content/docs-es/getting-started.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -109,7 +109,7 @@ const resp = await client.chat.completions.create({
console.log(resp.choices[0].message.content);
```

Tienes más ejemplos, incluidos embeddings, voz, imágenes y búsqueda web, en [Ejemplos](/es/docs/examples).
Tienes más ejemplos, incluidos embeddings, voz e imágenes, en [Ejemplos](/es/docs/examples).

### Elige el modelo

Expand Down Expand Up @@ -153,7 +153,7 @@ El detalle completo, endpoint a endpoint, está en la [referencia de la API](/es

Dos límites van por API key y se aplican a todo lo que llames: peticiones por minuto y peticiones a la vez.

Encima de esos, algunos modelos llevan el suyo: un techo de tokens por minuto en los modelos de chat grandes, y uno de peticiones por minuto en `rerank`. `glm5.3` no se rige por minuto en absoluto, sino por una ventana móvil de tokens más una asignación por periodo de facturación. La búsqueda web va por un presupuesto separado del de los modelos.
Encima de esos, algunos modelos llevan el suyo: un techo de tokens por minuto en los modelos de chat grandes, y uno de peticiones por minuto en `rerank`. `glm5.3` no se rige por minuto en absoluto, sino por una ventana móvil de tokens más una asignación por periodo de facturación. Los endpoints de imágenes van por un presupuesto separado del de los modelos.

Las cifras vigentes están al final de [Modelos](/es/docs/models), que es donde se publican para que no haya dos versiones de la misma cifra dando vueltas.

Expand Down
1 change: 0 additions & 1 deletion src/content/docs-es/intro.md
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,6 @@ Los límites van por API key — un tope de peticiones por minuto y un máximo d
- [Elige tu modelo](/es/docs/choose-a-model): qué modelo pedir para cada tarea y cómo se escribe su id.
- [Configurar tu agente](/es/docs/agent-setup): Claude Code, Codex, Cursor, Cline, OpenCode, Zed y compañía.
- [CLI de NaN](/es/docs/nan-cli): la herramienta oficial de terminal, que además configura varias de ellas por ti.
- [Servidor MCP](/es/docs/mcp): la búsqueda web de NaN dentro de tu agente.
- [Referencia de la API](/es/docs/api): todos los endpoints, campo a campo.
- [Modelos](/es/docs/models): las fichas técnicas y los límites.
- [Ejemplos](/es/docs/examples): fragmentos en Python, Node.js y curl.
Expand Down
124 changes: 0 additions & 124 deletions src/content/docs-es/mcp.mdx

This file was deleted.

2 changes: 1 addition & 1 deletion src/content/docs-es/models.mdx
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
---
title: Modelos
description: Especificaciones técnicas, capacidades y parámetros de los modelos del clúster compartido.
order: 18
order: 17
group: Referencia
---

Expand Down
6 changes: 0 additions & 6 deletions src/content/docs/agent-setup.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -115,12 +115,6 @@ Yours is not here? If it accepts an OpenAI base URL and an API key, it works. Co
kind: 'Terminal',
note: 'It configures OpenCode, Codex, Pi, droid and Hermes for you, and shows you your usage.',
},
{
name: 'MCP server',
href: '/docs/mcp',
kind: 'Tools',
note: 'NaN\'s web search inside any MCP-compatible agent.',
},
]}
/>

Expand Down
5 changes: 1 addition & 4 deletions src/content/docs/agents.md
Original file line number Diff line number Diff line change
@@ -1,17 +1,14 @@
---
title: Agents
description: "Deploy AI agents in an isolated microVM with QEMU: Hermes, web terminal, file uploads, and observability."
order: 20
order: 19
group: Guides
---

# Agents.

NaN Cloud lets you deploy AI agents in your own **microVM**: a lightweight virtual machine with QEMU + KVM, its own kernel, its own filesystem, and full root access. Isolated from the host and from other members. The first available agent type is **Hermes**.

> **Using an agent you host yourself?**
> If you run your own MCP-compatible agent elsewhere, you can plug our tools (such as web search) straight into it with the same API key via our remote [MCP server](/docs/api#tag/mcp).

## Architecture

Each agent runs inside its own QEMU microVM. Instead of sharing the host kernel (like a regular container), it starts with its own Linux kernel. The VM mounts a 20 GiB ext4 disk on a block-mode persistent volume. Everything you do inside — `apt install`, `pip install`, edits to `/etc`, files you upload — lives on that disk and survives restarts.
Expand Down
2 changes: 1 addition & 1 deletion src/content/docs/apps.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
---
title: Apps
description: Deploy your apps from GitHub to NaN Cloud in minutes.
order: 21
order: 20
group: Guides
---

Expand Down
4 changes: 0 additions & 4 deletions src/content/docs/claude-code.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -198,7 +198,3 @@ On either path, avoid `glm5.3` for tasks that involve reading screenshots: it do
- **Agent behavior depends on the model.** Claude Code is tuned against Anthropic's models, and an open model may use its tools less well. That is to be expected, and it is not a cluster failure. This only affects the gateway path: when delegating, Claude Code is still Claude Code.
- **Features tied to the Anthropic account do not travel.** Anything that depends on Anthropic's infrastructure does not work against another base URL.
- **Context fills up fast.** An agent session eats tokens far quicker than a chat. If you use `glm5.3`, watch the rolling 4-hour window described in [Choose your model](/docs/choose-a-model).

## NaN's tools, separately

Whichever path you choose, you can give Claude Code the cluster's web search with a single command. It is in [MCP server](/docs/mcp).
Loading
Loading