Muse Auth
Muse Spark in opencode billed to the Muse Code monthly subscription (Meta device login, no API key)
4
+3 in 30 days
601
247 in 7 days
46.9
Multi-signal model
6 days ago
2026-09-28
Install and configure
opencode.jsonWrites to this project's opencode.json — applies to this repository only.
opencode.json
{
"$schema": "https://opencode.ai/config.json",
"plugin": ["opencode-muse-auth@0.1.2"]
}Writes to ~/.config/opencode/opencode.json — applies to every project.
~/.config/opencode/opencode.json
{
"$schema": "https://opencode.ai/config.json",
"plugin": ["opencode-muse-auth@0.1.2"]
}If you want to modify the plugin locally, install it into the project and reference the local path.
shell
pnpm add -D opencode-muse-authOpenCode loads npm dependencies through its embedded runtime on startup and caches them locally — no manual global install needed.
Use Meta Muse Spark in opencode billed to your Muse Code monthly subscription — no pay-as-you-go API key, no third-party CLI.
Install
// opencode.json
{
"$schema": "https://opencode.ai/config.json",
"plugin": ["opencode-muse-auth"]
}
Then run /connect in opencode, pick the meta provider and the
Muse Code subscription method: it shows a Meta device page URL and a code.
Enter the code in your browser (your own Meta account) and the login
completes by itself.
Verified end-to-end against the published package: isolated project with
only "plugin": ["opencode-muse-auth"], live chat on meta/muse-spark-1.3
billed to subscription.
Requirements
- opencode with plugin support
- A Meta account with an active Muse Code subscription
How it works
The plugin registers an auth hook for the built-in meta provider
(Routes through the Responses API, meta.txt system prompt applies
automatically to muse-* model ids):
- Login — Meta device-code exchange (RFC 8628) inside
/connect, then mints the stable account-bound inference key via the Model API. The key is cached locally (~/.config/opencode/muse-code-sub.json, owner-only permissions where supported) and never printed. The cache stores exactlyapiKey,accountId, andemail— the OAuth access token from the login flow is kept in memory only and never written to disk. - Runtime — an auth
loaderinjects the cached key on every startup. The mint endpoint is aggressively rate-limited, so the plugin never re-mints on its own; re-run/connectonly if access is revoked (401).
Flow parameters are compatible with the published behavior of oh-my-pi (MIT); see NOTICE.
Development
npm install
npm run build
npm test
License
MIT — see LICENSE.
Similar plugins
Kimi Subscription
opencode-kimi-subscription
Use your Kimi Code (Moonshot) subscription in OpenCode via OAuth — sign in with the device flow, no API tokens.
Open Grok Build
open-grok-build
Grok Build provider, OAuth, multi-account rotation, quota tracking and Imagine image generation for OpenCode v2.
Claude Subscription
opencode-claude-subscription
OpenCode v2 plugin: use your Claude Pro/Max subscription with OpenCode's built-in Anthropic provider.