Saltar al contenido

SDK

Controla OpenCode desde tus scripts, jobs de CI y herramientas. El SDK ejecuta OpenCode dentro de tu proceso, con tu configuración y tus modelos, y su cliente tipado crea sesiones, envía prompts y transmite cada evento.

Funciones

Arregla la CI

Un script corto pide a OpenCode corregir los tests fallidos y los repite.

Sigue cada paso

Transmite eventos para ver cada herramienta que llama el agente, al momento.

Crea tus herramientas

Integra OpenCode en bots, paneles y flujos de trabajo con unas pocas líneas.

En tu proceso

Ejecuta OpenCode dentro de tu proceso, con tu configuración y modelos.

  • Cliente TypeScriptPeticiones y eventos tipados, con los mismos valores que @opencode/client.
  • Sesiones con códigoCrea sesiones y envía prompts desde cualquier script.
  • Todo modeloUsa los modelos que tenga configurados tu OpenCode.
  • npm o bunInstálalo con npm i @opencode/sdk o bun add @opencode/sdk.
  • Host en procesoEjecuta OpenCode en memoria, sin pasar por la red.
  • Tus pluginsPasa tus propios plugins al crear el host en proceso.
  • Promise o EffectUna API de Promise y una API de Effect con los mismos valores.
  • Cloudflare WorkersEjecuta OpenCode dentro de un Durable Object de Cloudflare en Workers.

  • npmnpm i @opencode/sdk
  • bunbun add @opencode/sdk
Lee la documentación del SDK

Novedades

  1. v2.2.4

    Publish Interactive Artifacts

    Enable "experimental": { "artifacts": true } in opencode.json to let agents publish, update, and serve HTML or static artifacts through the built-in local provider or plugin-provided storage.#60351

    Mejoras

    • SDKExtended client.experimental.persistentPty.update to rename terminals or clear a user title, and exposed userTitle plus persistent-pty.updated events.#60329
  2. v2.2.3

    Added lazy loading for stored image references when experimental.media_blob is enabled

    Added lazy loading for stored image references when experimental.media_blob is enabled. Images are downloaded only for previews, while undo, revert, fork, and prompt recall restore referenced attachments safely.#60116

    Mejoras

    • SDKPreserved partial LLMResponse output on AIError.partial when generation, object generation, or a tool loop fails.#60477
    • SDKUnified Effect and Promise tool declarations around tool(...), with optional output schemas and executable or declaration-only tools.#60407
    • SDKAdded typed OpenRouter debug, models, plugins, provider, and user options to the Responses route.#60044

    Correcciones

    • SDKMatched the Promise AI client more closely to the Effect API and accepted typed tools in loops.#60465#60390
    • SDKKept tools whose execute handler can throw available to the AI client.#60431
    • SDKContinued polling queued media generations when providers return unknown intermediate statuses.#59988
    • SDKStopped sending an incompatible filename alongside file_url on OpenAI Responses requests.#60382
  3. v2.2.2

    Exposed SessionInfo.time.busy for the latest execution’s start time

    Mejoras

    • SDKAdded if and until inputs for client.experimental.schedule.create, plus schedule check results and output fields.#60137
    • SDKAdded optional source metadata to prompt file attachments.
Ver todas las novedades