Aller au contenu

SDK

Pilotez OpenCode depuis vos scripts, jobs CI et outils. Le SDK exécute OpenCode dans votre processus, avec votre configuration et vos modèles, et son client typé crée des sessions, envoie des prompts et diffuse chaque événement.

Fonctionnalités

Réparer la CI en code

Un court script demande à OpenCode de corriger les tests en échec, puis les relance.

Suivre chaque étape

Diffusez les événements pour voir chaque outil appelé par l'agent, en temps réel.

Créez vos outils

Intégrez OpenCode à des bots, tableaux de bord et workflows en quelques lignes.

Dans votre processus

Exécute OpenCode dans votre processus, avec votre config et vos modèles.

  • Client TypeScriptRequêtes et événements typés, avec les mêmes valeurs que @opencode/client.
  • Sessions par le codeCréez des sessions et envoyez des prompts depuis n'importe quel script.
  • Tout modèleUtilise les modèles configurés dans votre OpenCode.
  • npm ou bunInstallez-le avec npm i @opencode/sdk ou bun add @opencode/sdk.
  • Hôte in-processExécute OpenCode en mémoire, sans passer par le réseau.
  • Vos pluginsPassez vos propres plugins à la création de l'hôte in-process.
  • Promise ou EffectUne API Promise et une API Effect, avec les mêmes valeurs.
  • Cloudflare WorkersExécutez OpenCode dans un Durable Object Cloudflare sur Workers.

  • npmnpm i @opencode/sdk
  • bunbun add @opencode/sdk
Lire la doc du SDK

Changelog

  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

    Améliorations

    • 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

    Améliorations

    • 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

    Correctifs

    • 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

    Améliorations

    • 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.
Voir toutes les mises à jour