Skip to content

ObsidiAI 0.1.7

Choose a tag to compare

@github-actions github-actions released this 20 Sep 08:28
· 4 commits to main since this release

ObsidiAI 0.1.7

Configure other community plugins with review

  • inspect_plugin_settings opens a local review of an installed plugin's saved JSON. Nothing is selected automatically. Only explicitly selected and approved values reach the model and saved chat history.
  • propose_plugin_settings_change proposes exact JSON-pointer changes with a separate before/after review and Save settings approval. Existing fields must have been disclosed; new keys can be proposed under existing object parents without sharing existing values.
  • Read-only allows reviewed disclosure but blocks writes. Auto-approve notes never bypasses settings disclosure or write approvals. Stop disables pending controls and stale approval callbacks.
  • Unrelated settings are preserved. Changed files, versions, or loaded instances invalidate review; writes compare the approved bytes inside Obsidian's atomic adapter operation.
  • Approved changes preserve configured-enabled, session-only, and disabled intent. Required restarts are disclosed. If unloading saves different settings, the patch is refused and prior runtime intent is restored when safe.

Scope and safety

  • Supports an installed community plugin's existing <configDir>/plugins/<plugin-id>/data.json, not core plugins, ObsidiAI itself, or other storage formats. The target plugin must create a missing settings file first.
  • Limits: 256 KiB JSON object, 500 leaf fields, 16,000 characters per shared/proposed JSON value or path, 32,000 characters of selected-field payloads, and 20 non-overlapping changes. Arrays are atomic values, not individually editable indexes.
  • Other plugins may store passwords, tokens, or API keys in their settings. Approved values are sent to your provider and persisted in unencrypted chat history, which sync and backups may copy. Unselected values stay local.
  • Valid JSON is not plugin-specific schema validation or proof of effective runtime behavior. No backup or automatic rollback is provided. Once mutation starts, approved restoration finishes even after Stop; failures may leave partial state and report actual persistence and observed runtime state.

Install or update

  1. Download obsidiai-0.1.7.zip, not GitHub's automatic source archive.
  2. Replace main.js, manifest.json, and styles.css in <vault>/.obsidian/plugins/obsidiai/. Preserve data.json and history.json if present.
  3. Reload Obsidian or disable/re-enable ObsidiAI after the current run settles.

Requirements remain Obsidian desktop 1.11.4+ and embedded Node 22.19.0+. The three individual plugin files are also attached.

Verification

  • 163 tests cover the integrated implementation, including selected-only disclosure, stale approvals, sharing limits, exact-byte commit conflicts, unload-time saves, restart failures, state restoration, and cancellation.
  • Native Obsidian 1.13.7, a local scripted provider, and a harmless fixture plugin verified actual settings writes and restart loading, session-only and disabled states, unselected-token exclusion from model requests/history, rejection, Stop/stale controls, permission modes, stale files, unload-time conflicts, and disclosure limits.
  • Approval cards were visually checked in light and narrow dark layouts. No universal third-party schema compatibility, new remote-provider/OAuth verification, or native installation/update/uninstallation verification is claimed.