Skip to content

v0.9.28 — configure-UI extensibility + multi-account OAuth & RuntimeContext fixes

Latest

Choose a tag to compare

@hyoshi hyoshi released this 10 Jun 08:01
2efb25f

Configure-UI extensibility plus multi-account / RuntimeContext polish. As with 0.9.27, none of these change the MCP tool surface — every change is in the mureo configure local-only web UI, its OAuth wizard, or the RuntimeContext extension contract third-party backends plug into. Standalone OSS behavior is unchanged across the board.

Added

  • Skippable OAuth account-picker for multi-account backends (#198) — a SecretStore can advertise an optional multi_account_auth: bool capability. When set, the OAuth flow persists only the operator-shared credentials (Google developer_token + OAuth client, or the Meta app creds/token) and skips the per-account picker, going straight to /done; the per-client customer_id / account_id are supplied out of band. Default (standalone OSS): picker shown exactly as before. Resolved behind a home is None gate so a sandboxed wizard never inherits a real backend's behavior.
  • Skippable platform-selection wizard step (#193) — the platform-selection step in mureo configure can now be skipped.
  • WebExtension surface overrides (#189) — a registered web extension can declare hidden_builtin_tabs and replaces_landing, letting a third-party surface hide built-in configure tabs and substitute its own landing view.

Fixed

  • configure-UI credentials path follows the active RuntimeContext (#194, #195, #196) — the configure web layer hard-coded ~/.mureo/credentials.json while the MCP runtime reads through the pluggable SecretStore, so a runtime_context_factory that relocated the store produced a silent split-brain (wizard wrote one place, runtime read another). The wizard now resolves its credentials path from the active RuntimeContext (protocol-based via an optional credentials_write_path, not type-sniffing), gated so an explicitly-injected home stays sandboxed and can never clobber the operator's real credentials.
  • Terminal state restored around the TerminalMenu picker (#190)TerminalMenu.show() could leave the terminal in an altered state on some exits; the CLI now saves and restores terminal state around the menu.

Full changelog: https://github.com/logly/mureo/blob/main/CHANGELOG.md