Sanyuan Context Router

by yu
5
4
3
2
1
Score: 50/100

Description

Reviews

No reviews yet.

Stats

0
stars
14
downloads
0
forks
7
days
7
days
7
days
0
total PRs
0
open PRs
0
closed PRs
0
merged PRs
0
total issues
0
open issues
0
closed issues
3
commits

Latest Version

8 days ago

Changelog

Sanyuan Context Router 0.1.1. See README.md for sidecar requirements and network disclosure.

README file from

Github

Sanyuan Context Router

Sanyuan Context Router is a desktop Obsidian client for an independently run Sanyuan retrieval sidecar. It sends an explicit query or editor selection to a user-configured endpoint, previews the returned read-injection block, and lets the user copy or insert it into the active note.

External sidecar required

This repository contains only the Obsidian thin client. Retrieval, embeddings, reranking, database access, and Sanyuan topology processing run in a separate Python sidecar. The plugin is not useful until that sidecar is installed and running.

The current reference sidecar and its setup instructions live in the upstream Sanyuan Obsidian integration. That sidecar, the Sanyuan project, and its cognitive rules are separate works with separate licensing; they are not included in or licensed by this repository's MIT License.

Privacy and network disclosure

  • No telemetry, analytics, advertising, or background vault scan.
  • No request is made merely by loading the plugin.
  • The default endpoint is http://127.0.0.1:8765.
  • A non-loopback endpoint requires an explicit setting opt-in.
  • When a retrieval command is invoked, the plugin sends the query text, current note path, and optional sanyuan_axes frontmatter to the configured endpoint.
  • If a remote endpoint is enabled, that data leaves the device and is handled under the remote endpoint operator's policies.
  • Embedding-provider credentials stay in the sidecar environment and are never stored by this plugin.
  • An optional sidecar bearer token is stored in Obsidian's local plugin data.
  • The plugin never reads the clipboard. Clicking Copy writes only the currently displayed injection block to the clipboard.

Commands

  • Retrieve context always runs retrieval.
  • Smart retrieve context runs only when the sidecar's conservative trigger recognizes an explicit retrieval intent.
  • Check sidecar verifies connectivity and displays the detected status.

If the current editor selection is empty, the plugin asks for a query. Optional query axes can be declared in note frontmatter:

sanyuan_axes:
  - periodontitis
  - PNPLA8
  - fibroblast

Installation

After the plugin is accepted into the Obsidian Community directory, install it from Settings → Community plugins.

For manual installation, download main.js, manifest.json, and styles.css from the release whose tag matches the version in manifest.json. Put the three files in:

<vault>/.obsidian/plugins/sanyuan-context-router/

Restart Obsidian, enable the plugin, and configure the sidecar endpoint under Settings → Sanyuan Context Router.

Development

npm ci
npm run build

The production build creates main.js. The release workflow verifies that the manifest, package, and compatibility-map versions match, generates GitHub artifact attestations, then publishes main.js, manifest.json, and styles.css as release assets.

License scope

The source code and assets in this standalone repository are available under the MIT License. The Python sidecar, the upstream Sanyuan repository, and Sanyuan ontology or cognitive-rule materials are not part of this license.