/** * opencodeAdapter — EXPERIMENTAL, internal-only prototype `HarnessAdapter`. It * exists to PROVE the kit generalizes to the optional-transport-port shape: a * harness that does pillar 1 AND is mockable (openai-compatible) BUT whose hooks * are in-process JS/TS plugin modules, not shell processes. So it declares * `shellHooks: false`, ships NO `hookProtocol`, and the conformance kit must * accept it without demanding a fake one. This is the pillar-1-only, * no-shell-hooks shape the capability gating was built for. * * 🔴 AND IT IS THE PORT'S THIRD IMPLEMENTATION, which is why two of the port's * illegal states were live HERE and nowhere else: a port validated against two * implementations cannot see a state only the third can reach. The other one * was in its layout (a skill dir outside `surfaceDirs`). * * It is deliberately NOT registered in `src/adapter-registry.ts` and NOT exported * from any `vigiles/*` subpath, so the CLI never auto-detects OpenCode and * consumers can't import it. Promote it (register + `vigiles/opencode` export + * the deferred transport renderers) only when OpenCode support actually ships. */ import type { DetectSignal } from "../../core/adapter.js"; export declare const opencodeAdapter: { readonly name: "opencode"; readonly harnessTesting: false; readonly shellHooks: false; readonly subagents: true; readonly dialect: import("../claude-code/dialect.js").HarnessDialect; readonly layout: import("../../adapter.js").PluginLayout; readonly claims: (path: string) => boolean; readonly detect: (exists: (repoRelative: string) => boolean) => DetectSignal; /** Nothing to say about an opencode install — see the Codex adapter for why * `[]` is the answer rather than an absent capability. */ readonly advisories: () => readonly string[]; }; //# sourceMappingURL=adapter.d.ts.map