Skip to content

Releases: rbcodelabs/threads-orchestrator

v0.2.0 — Threads Orchestrator

Choose a tag to compare

@github-actions github-actions released this 24 Sep 11:28
1a45f9b

What's new

  • Threads Orchestrator is the new host-neutral name for the voice-first plugin in Obsidian and Geode. The repository is now rbcodelabs/threads-orchestrator, and the plugin ID is threads-orchestrator. The wake phrase remains “hey obsidian.” (#5)
  • Archive threads and mark them reviewed by voice on Agent Threads hosts exposing those capabilities. Exact targets, cancellation, and errors remain visible in the transcript; host confirmation rules apply. Older hosts retain their existing tools. Requires the host changes from Agent Threads #590. (#4)
  • Upgrade migration imports legacy settings and enrollment, reuses the shared API-key secret or moves a legacy plaintext key into secret storage, and migrates the previous saved voice pane. Microphone startup is paused while an older voice plugin is enabled. (#5)

Breaking upgrade: plugin ID changed

GitHub redirects do not migrate installed plugin folders, updater entries, enabled-plugin records, or hotkeys.

  1. Back up or retain the old obsidian-orchestrator folder and its data.json until import is verified.
  2. Disable Obsidian Orchestrator.
  3. Remove the old rbcodelabs/obsidian-orchestrator tracking entry from BRAT or the Geode updater.
  4. Add rbcodelabs/threads-orchestrator and enable Threads Orchestrator.
  5. Verify imported settings and that the voice panel opens. If both plugins were enabled, disable the old plugin and reload Threads Orchestrator.
  6. Rebind custom hotkeys under the new command names.
  7. Remove the old plugin folder only after import and voice controls are verified.

Legacy Voice settings are also supported. See the upgrade and migration guide.

Installation and validation

Manual installs need main.js, manifest.json, and styles.css in the threads-orchestrator plugin folder. The release includes three ONNX models; wake-word assets otherwise download on first use as described in the README.

Merged-master verification passed: 132 tests, one intentionally skipped optional cross-repository integration test, TypeScript, and production build. Isolated real-Geode clean-install calibration and legacy migration were verified using synthetic audio. Real Obsidian upgrade, interactive updater migration, physical microphone accuracy, and live OpenAI connectivity remain unverified.

Included PRs: #4, #5.

v0.1.2 — Wake-word calibration compatibility

Choose a tag to compare

@github-actions github-actions released this 24 Sep 03:13
f8d5019

Bug fixes

  • Fix wake-word calibration failing in Geode with “no available backend found” and a blocked blob-module import. ONNX now uses its bundled runtime.
  • Fix the subsequent audio-worklet startup failure with buffered PCM capture on hosts that block worklet modules. Supporting hosts retain AudioWorklet capture. Geode's security policy is unchanged.
  • Calibration startup errors now report the underlying failure without labeling every error as a microphone-access problem. Failed or cancelled startup cleans up audio capture.

Verification and notes

  • 100 tests passed; type-check and production build passed.
  • Verified in installed Geode 0.22.7 with the real runtime/models and synthetic audio: all five samples completed, calibration saved, tracks stopped, and simulated permission denial showed the correct error.
  • Actual voice-recognition accuracy and physical microphone permissions still need a real-user smoke test. Buffered capture runs on the renderer thread and may be affected by heavy UI activity.
  • Update Orchestrator via BRAT, reload it, then try Settings → Orchestrator → Calibrate. No Geode update or security-setting change is required.
  • Includes the wake-word compatibility fix from PR #3. Existing dependency-audit findings are unchanged.

v0.1.1 — Geode compatibility fixes

Choose a tag to compare

@github-actions github-actions released this 24 Sep 02:22
bd0af80

Bug fixes

  • Fix Orchestrator being rejected by Geode with “requires Geode 1.11.4+ (running 1.10.2).” These numbers describe Obsidian API compatibility, not the Geode app release.
  • Fix a second Geode startup crash caused by an unavailable inline file-suggestion API. Context files now use an “Add context file…” search modal on Geode; Obsidian retains inline suggestions.
  • Check required secret-storage APIs before settings migration, with an actionable message on unsupported hosts.

Compatibility and verification

  • Verified loading, panel, settings, context-file selection, key dialog, and unloading in Geode 0.22.7. No Geode upgrade is needed on that version.
  • Obsidian still requires 1.11.4+ for secret-storage support.
  • 95 tests passed; TypeScript and production build passed. Live audio and wake-word recognition were not tested in this patch.
  • Update Orchestrator through BRAT and enable/reload it. Legacy Voice should remain disabled when using Orchestrator voice controls.

Orchestrator v0.1.0

Choose a tag to compare

@github-actions github-actions released this 24 Sep 01:51
62082f6

Orchestrator v0.1.0

Orchestrator is the voice-first successor to Voice, with agent delegation through Agent Threads' public API. Includes PR #1.

Features

  • Retains voice conversation, document tools, wake-word enrollment and silence handling.
  • Delegates to Portfolio and Project orchestrators, waits for results by default, and supports background completion notifications.
  • Imports supported Voice 0.4.3 settings and calibration on first load, reusing the shared OpenAI secret.
  • Uses independent plugin and command IDs, with a guard against competing Voice microphone controllers.

Fixes

  • Ignores notifications whose thread lookup finishes after a voice-session change or unwatch.
  • Handles Agent Threads unload/reload through the public API lifecycle.

Installation and migration

Add rbcodelabs/obsidian-orchestrator in BRAT, or install main.js, manifest.json and styles.css from this release into the obsidian-orchestrator plugin directory. The repository and release assets are public.

Disable legacy Voice before using Orchestrator, then reload Orchestrator. Requires desktop Obsidian 1.11.4+ or a compatible Geode host, and Agent Threads 0.33.0+ for delegation. Verified API compatibility against Agent Threads 0.43.0.

Wake-word models still download from the public obsidian-voice release; WASM downloads from jsDelivr. The release includes the three ONNX model files for manual installation.

Verification and scope

87 unit tests, typecheck, build, actual Agent Threads 0.43.0 API integration with a synthetic host, and real VoiceView browser checks at desktop/narrow widths passed locally. Microphone, OpenAI Realtime service and installed-app behavior still require a smoke test. Seven inherited dependency audit findings remain documented in PR #1.

Portfolio/Project policy, identity and persistence remain in Agent Threads for this first release. Their extraction is a later phase.