Skip to content

Releases: norandom/mvibe

mvibe v2.0.0

mvibe v2.0.0 Pre-release
Pre-release

Choose a tag to compare

@github-actions github-actions released this 03 Nov 16:50

mvibe 2.0.0 — second major release

For students, researchers and educators only. This is untested, experimental
software, not production software. Original mvibe contributions use the Beerware
license; upstream Vibe code retains Apache 2.0 licensing.

Use your normal native Vibe browser login from the Mistral-Vibe OpenCode
provider or a local OpenAI-compatible proxy. Both share the Python authentication
library and default to reading Vibe's existing keyring credential, without manual
API-key entry. Experimental direct ID-token OIDC remains a separate opt-in route;
it counted as API usage on the tested account. The existing-login route consumed
the expected Vibe allowance in user-confirmed OpenCode tests.

Download mvibe-2.0.0.zip and SHA256SUMS, verify the checksum, then extract to a
permanent directory outside a development checkout. Complete normal Vibe browser
sign-in under the same native OS/user first. With uv, Bun 1.4.4 and OpenCode 2 installed:

  • Linux/macOS: bash ./install.sh --interactive
  • Windows PowerShell: ./install.ps1 -Interactive

Installers preserve existing JSONC settings and create backups. They use prebuilt
Python/JavaScript artifacts; uv may download managed Python 3.12 and locked runtime
dependencies. Choose Desktop, CLI or both and the existing Vibe login. Unattended
flags are documented in the bundled README. Keep the extracted directory after
installation. Restart the OpenCode service and fully quit/reopen Desktop, connect
Mistral-Vibe, then select a model. Ctrl+C and opencode -c can reuse the same
service; after an upgrade use opencode service restart. Avoid editing/building
the loaded installation: host SDK caches can retain a disposed helper after reload.

The standalone wheel is also available for Python library consumers. The archive
includes the optional proxy with /openapi.json, Swagger /docs, and opt-in
--log diagnostics. Plugin diagnostics use options.diagnostics: true; the CLI
also needs --print-logs for visible events.

New in 2.0.0

  • Major version bump to 2.0.0. There are no breaking changes and no code changes
    since v1.1.0 beyond version metadata; this release carries the full v1.x
    feature set, including the curated thinking variants from v1.1.0 and the
    host binding, launchers, Docker packaging, observability and endpoint
    adapters from v1.0.0.
  • Version metadata moved 1.1.0 → 2.0.0 in pyproject.toml,
    packages/opencode-vibe-oidc/package.json and uv.lock. Because the
    helper reports its distribution version as the API version, the provider's
    expected helper API major moved 1 → 2 with the release: v2.0.0 installs
    the v2 helper and provider together from the same archive, and v1.x
    helpers are rejected as incompatible. A repository test now enforces that
    the release major and the helper API major stay in lockstep.

New in 1.1.0

  • The OpenCode Mistral-Vibe provider exposes curated thinking variants:
    Large 4 offers low, high, max; Medium 3.5 aliases offer high, off;
    GLM 5.3's exact curated aliases offer low, high, max.
  • Selected variants use the host's settings.reasoningEffort overlay, which
    reaches Mistral as reasoning_effort. Off maps to none. No selection keeps
    the server default. Models without a curated row gain no invented variants.
  • Assistant reasoning history is replayed only for curated reasoning models
    when reasoning is not explicitly off; ordinary content and tool history survive.
  • The proxy maps Anthropic thinking and Ollama think request options.
    Malformed options add no effort. OpenAI passthrough is unchanged. These are
    request mappings, not complete Anthropic/Ollama reasoning-output or history
    compatibility; see the support table in docs/proxy-guide.md.

The native Vibe login and quota policy are unchanged. Upgrade from the published
archive and restart the OpenCode service; v1.0.0 does not contain these variants.

Verification status

The v2.0.0 tree is code-identical to the v1.1.0 candidate, which passed Windows source and extracted-bundle OpenCode 2.2.5
checks for model variants and outgoing reasoning_effort (low, high, max,
off to none, and no selection). Native archive installation, JSONC backup
and rerun checks passed in an isolated path with spaces. These checks use
synthetic accounts and requests; they do not establish live acceptance of each
model/level pair. Quoted paths, backslashes, newlines and Unicode survive the
reasoning/tool-history regression; the earlier reported shell issue has not
been reproduced as a provider escaping defect.

The release pipeline builds/checks with Dagger and gates publication on native Linux, Windows and macOS installation
plus the extracted provider in OpenCode 2.2.5 using synthetic accounts. Live
verification on 2026-11-02 through the local proxy passed for health, model lists
(both dialects), chat (stream and non-stream), Anthropic messages (SSE sequence),
Ollama chat, the adapter 404 shape, and embeddings (mistral-embed, 1024-dim).
Live Large 4 hello-world file-tool continuation was verified on Windows. Still
unverified: native/MCP tool exchange, token refresh, cancellation timing, search
execution, other models, OpenCode 2.2.6 (tested host: 2.2.5), direct-provider
embeddings, and proxy quota attribution. The checks below establish a limited
baseline, not general reliability or production readiness.
No signing/notarization or PyPI/npm publication is included.

See installation
and compatibility checks.

Full Changelog: v1.1.0...v2.0.0

mvibe v1.1.0

mvibe v1.1.0 Pre-release
Pre-release

Choose a tag to compare

@github-actions github-actions released this 03 Nov 13:21

mvibe 1.0.0 — first major release

For students, researchers and educators only. This is untested, experimental
software, not production software. Original mvibe contributions use the Beerware
license; upstream Vibe code retains Apache 2.0 licensing.

Use your normal native Vibe browser login from the Mistral-Vibe OpenCode
provider or a local OpenAI-compatible proxy. Both share the Python authentication
library and default to reading Vibe's existing keyring credential, without manual
API-key entry. Experimental direct ID-token OIDC remains a separate opt-in route;
it counted as API usage on the tested account. The existing-login route consumed
the expected Vibe allowance in user-confirmed OpenCode tests.

Download mvibe-1.1.0.zip and SHA256SUMS, verify the checksum, then extract to a
permanent directory outside a development checkout. Complete normal Vibe browser
sign-in under the same native OS/user first. With uv, Bun 1.4.4 and OpenCode 2 installed:

  • Linux/macOS: bash ./install.sh --interactive
  • Windows PowerShell: ./install.ps1 -Interactive

Installers preserve existing JSONC settings and create backups. They use prebuilt
Python/JavaScript artifacts; uv may download managed Python 3.12 and locked runtime
dependencies. Choose Desktop, CLI or both and the existing Vibe login. Unattended
flags are documented in the bundled README. Keep the extracted directory after
installation. Restart the OpenCode service and fully quit/reopen Desktop, connect
Mistral-Vibe, then select a model. Ctrl+C and opencode -c can reuse the same
service; after an upgrade use opencode service restart. Avoid editing/building
the loaded installation: host SDK caches can retain a disposed helper after reload.

The standalone wheel is also available for Python library consumers. The archive
includes the optional proxy with /openapi.json, Swagger /docs, and opt-in
--log diagnostics. Plugin diagnostics use options.diagnostics: true; the CLI
also needs --print-logs for visible events.

New in 1.1.0

  • The OpenCode Mistral-Vibe provider exposes curated thinking variants:
    Large 4 offers low, high, max; Medium 3.5 aliases offer high, off;
    GLM 5.3's exact curated aliases offer low, high, max.
  • Selected variants use the host's settings.reasoningEffort overlay, which
    reaches Mistral as reasoning_effort. Off maps to none. No selection keeps
    the server default. Models without a curated row gain no invented variants.
  • Assistant reasoning history is replayed only for curated reasoning models
    when reasoning is not explicitly off; ordinary content and tool history survive.
  • The proxy maps Anthropic thinking and Ollama think request options.
    Malformed options add no effort. OpenAI passthrough is unchanged. These are
    request mappings, not complete Anthropic/Ollama reasoning-output or history
    compatibility; see the support table in docs/proxy-guide.md.

The native Vibe login and quota policy are unchanged. Upgrade from the published
archive and restart the OpenCode service; v1.0.0 does not contain these variants.

Verification status

The v1.1.0 candidate passed Windows source and extracted-bundle OpenCode 2.2.5
checks for model variants and outgoing reasoning_effort (low, high, max,
off to none, and no selection). Native archive installation, JSONC backup
and rerun checks passed in an isolated path with spaces. These checks use
synthetic accounts and requests; they do not establish live acceptance of each
model/level pair. Quoted paths, backslashes, newlines and Unicode survive the
reasoning/tool-history regression; the earlier reported shell issue has not
been reproduced as a provider escaping defect.

The release pipeline builds/checks with Dagger and gates publication on native Linux, Windows and macOS installation
plus the extracted provider in OpenCode 2.2.5 using synthetic accounts. Live
verification on 2026-11-02 through the local proxy passed for health, model lists
(both dialects), chat (stream and non-stream), Anthropic messages (SSE sequence),
Ollama chat, the adapter 404 shape, and embeddings (mistral-embed, 1024-dim).
Live Large 4 hello-world file-tool continuation was verified on Windows. Still
unverified: native/MCP tool exchange, token refresh, cancellation timing, search
execution, other models, OpenCode 2.2.6 (tested host: 2.2.5), direct-provider
embeddings, and proxy quota attribution. The checks below establish a limited
baseline, not general reliability or production readiness.
No signing/notarization or PyPI/npm publication is included.

See installation
and compatibility checks.

Full Changelog: v1.0.0...v1.1.0

mvibe v1.0.0

mvibe v1.0.0 Pre-release
Pre-release

Choose a tag to compare

@github-actions github-actions released this 02 Nov 18:26

mvibe 1.0.0 — first major release

For students, researchers and educators only. This is untested, experimental
software, not production software. Original mvibe contributions use the Beerware
license; upstream Vibe code retains Apache 2.0 licensing.

Use your normal native Vibe browser login from the Mistral-Vibe OpenCode
provider or a local OpenAI-compatible proxy. Both share the Python authentication
library and default to reading Vibe's existing keyring credential, without manual
API-key entry. Experimental direct ID-token OIDC remains a separate opt-in route;
it counted as API usage on the tested account. The existing-login route consumed
the expected Vibe allowance in user-confirmed OpenCode tests.

Download mvibe-1.0.0.zip and SHA256SUMS, verify the checksum, then extract to a
permanent directory outside a development checkout. Complete normal Vibe browser
sign-in under the same native OS/user first. With uv, Bun 1.4.4 and OpenCode 2 installed:

  • Linux/macOS: bash ./install.sh --interactive
  • Windows PowerShell: ./install.ps1 -Interactive

Installers preserve existing JSONC settings and create backups. They use prebuilt
Python/JavaScript artifacts; uv may download managed Python 3.12 and locked runtime
dependencies. Choose Desktop, CLI or both and the existing Vibe login. Unattended
flags are documented in the bundled README. Keep the extracted directory after
installation. Restart the OpenCode service and fully quit/reopen Desktop, connect
Mistral-Vibe, then select a model. Ctrl+C and opencode -c can reuse the same
service; after an upgrade use opencode service restart. Avoid editing/building
the loaded installation: host SDK caches can retain a disposed helper after reload.

The standalone wheel is also available for Python library consumers. The archive
includes the optional proxy with /openapi.json, Swagger /docs, and opt-in
--log diagnostics. Plugin diagnostics use options.diagnostics: true; the CLI
also needs --print-logs for visible events.

New in 1.0.0

  • Host binding, launchers and Docker: proxy.py --host (default 127.0.0.1;
    0.0.0.0 allowed with a stderr warning — the proxy has no caller auth),
    start_proxy.sh / start_proxy.ps1, and Dockerfile + docker-compose.yml
    with loopback-published port, non-root container, healthcheck and read-only
    credential mounts.
  • Observability: --observe flag and MVIBE_OBSERVE_* env export batched
    logs to an OpenObserve-style _json endpoint; optional otel extra adds W3C
    trace spans (proxy.request, proxy.stream, auth.resolve, bridge.call).
    See docs/observability.md. Exports are allowlisted: no bodies, headers, tokens
    or URLs — only the model id.
  • Endpoint compatibility adapters: Ollama (/api/version|tags|chat|generate| show|embed, NDJSON streaming) and Anthropic (POST /v1/messages SSE streaming,
    GET /v1/models Anthropic shape when an anthropic-version header is sent).
    Raw /v1/* passthrough is unchanged. See docs/proxy-guide.md.
  • Reusable live smoketests: smoketests/smoke.ps1 (Windows) and
    smoketests/smoke.sh (bash) cover all three dialects plus embeddings and exit
    non-zero on failure.

Verification status

CI builds/checks with Dagger and tests native Linux, Windows and macOS installation
plus the extracted provider in OpenCode 2.2.5 using synthetic accounts. Live
verification on 2026-11-02 through the local proxy passed for health, model lists
(both dialects), chat (stream and non-stream), Anthropic messages (SSE sequence),
Ollama chat, the adapter 404 shape, and embeddings (mistral-embed, 1024-dim).
Live Large 4 hello-world file-tool continuation was verified on Windows. Still
unverified: native/MCP tool exchange, token refresh, cancellation timing, search
execution, other models, OpenCode 2.2.6 (tested host: 2.2.5), direct-provider
embeddings, and proxy quota attribution. The checks below establish a limited
baseline, not general reliability or production readiness.
No signing/notarization or PyPI/npm publication is included.

See installation
and compatibility checks.

Full Changelog: v0.1.0...v1.0.0

mvibe v0.1.0

mvibe v0.1.0 Pre-release
Pre-release

Choose a tag to compare

@github-actions github-actions released this 01 Nov 13:49

mvibe 0.1.0 — experimental educational release

For students, researchers and educators only. This is untested, experimental
software, not production software. Original mvibe contributions use the Beerware
license; upstream Vibe code retains Apache 2.0 licensing.

Use your normal native Vibe browser login from the Mistral-Vibe OpenCode
provider or a local OpenAI-compatible proxy. Both share the Python authentication
library and default to reading Vibe's existing keyring credential, without manual
API-key entry. Experimental direct ID-token OIDC remains a separate opt-in route;
it counted as API usage on the tested account. The existing-login route consumed
the expected Vibe allowance in user-confirmed OpenCode tests.

Download mvibe-0.1.0.zip and SHA256SUMS, verify the checksum, then extract to a
permanent directory outside a development checkout. Complete normal Vibe browser
sign-in under the same native OS/user first. With uv, Bun 1.4.4 and OpenCode 2 installed:

  • Linux/macOS: bash ./install.sh --interactive
  • Windows PowerShell: ./install.ps1 -Interactive

Installers preserve existing JSONC settings and create backups. They use prebuilt
Python/JavaScript artifacts; uv may download managed Python 3.12 and locked runtime
dependencies. Choose Desktop, CLI or both and the existing Vibe login. Unattended
flags are documented in the bundled README. Keep the extracted directory after
installation. Restart the OpenCode service and fully quit/reopen Desktop, connect
Mistral-Vibe, then select a model. Ctrl+C and opencode -c can reuse the same
service; after an upgrade use opencode service restart. Avoid editing/building
the loaded installation: host SDK caches can retain a disposed helper after reload.

The standalone wheel is also available for Python library consumers. The archive
includes the optional proxy with /openapi.json, Swagger /docs, and opt-in
--log diagnostics. Plugin diagnostics use options.diagnostics: true; the CLI
also needs --print-logs for visible events.

CI builds/checks with Dagger and tests native Linux, Windows and macOS installation
plus the extracted provider in OpenCode 2.2.5 using synthetic accounts. Live Large
4 hello-world file-tool continuation was verified on Windows. Live MCP, other
models/tools, refresh, other architectures and future OpenCode updates remain
unverified. Separate live proxy quota acceptance is also unverified. The checks
below establish a limited baseline, not general reliability or production readiness.
No signing/notarization or PyPI/npm publication is included.

See installation
and compatibility checks.

Full Changelog: https://github.com/norandom/mvibe/commits/v0.1.0