Deeperian

August 21, 2026 · View on GitHub

An Obsidian plugin that embeds a DeepSeek Harness (DSH) agent in your vault. Your vault becomes the agent's working directory — file read/write, search, bash, and multi-step workflows all work in place.

⚠️ Work in progress — not installable yet

Deeperian is a fork of Qoderian in the middle of having its agent backend replaced. The DSH runtime is not written yet. The tree still contains Qoderian's Qoder-facing adapter layer under src/qoder/, and still declares @qoder-ai/qoder-agent-sdk as a dependency.

There is no release, and there will not be one until that swap is finished — the Qoder Agent SDK is not MIT-licensed and must not be redistributed in a build. See NOTICE.

This repository is public so the work and its attribution are visible from the start, not because it is ready to use.

Why a fork instead of a fresh plugin

Two DSH plugins already exist in the Obsidian community directory, both written from scratch. Qoderian brings ~23,000 lines of mature chat UI that neither has: multiple conversation tabs, inline-rendered subagent runs, inline-edit with diff preview, MCP server management, five permission modes, and resume / fork / rewind. Rewriting that is months of work. Replacing the agent backend underneath it is not.

Current state of the port

The vendor coupling in Qoderian is unusually clean, which is what makes this viable. Measured on the imported tree:

LayerSizePlan
src/app core shared i18n~6,300 linesKeep as-is — host-neutral
src/features (chat, settings, inline-edit)23,241 linesKeep — 26 files need import/type re-pointing
src/qoder/**92 files, 12,843 linesReplace with src/deepseek/**

All 20 files that import @qoder-ai/qoder-agent-sdk live inside src/qoder/. Nothing in the UI layer touches the SDK directly.

src/qoder/runtime/ (4,634 lines) and src/qoder/stream/ (980 lines) carry the SDK coupling and are never imported from outside src/qoder/ — they are reached only through the qoder-services.ts facade (141 lines). Keep that facade's shape and the entire chat UI works unchanged.

The 18 modules the UI actually imports are the portable ones — tool-name mapping, tool result rendering, config paths, MCP management, model lists, slash commands.

Roadmap

The full mapping — architecture decision, service-by-service table, session event vocabulary, and known gaps — is in docs/PORT-CONTRACT.md.

  • Define the DSH-side service contract against qoder-services.ts
  • [~] Spike: boot Cordis + dsh-base and reach ctx.agentsproven in Node, Electron half still untested
  • Implement src/deepseek/ services and src/deepseek/stream/
  • Re-point the 26 UI files, drop src/qoder/
  • Remove @qoder-ai/qoder-agent-sdk from dependencies
  • Replace the inherited test suite's SDK mock
  • First release build + Obsidian community directory submission

DSH has no embeddable agent SDK, so this is not an import swap: Deeperian composes DSH bundles in-process and drives ctx.agents directly, following the pattern @deepseek-ai/dsh-headless establishes. See §1 of the contract.

Attribution and licensing

Deeperian is a fork of Qoderian, an MIT-licensed Obsidian plugin by Qoder. Qoderian in turn derives from Claudian, also MIT. All three upstream copyright notices are retained verbatim in LICENSE, and the derivation chain is documented in NOTICE.

Deeperian is an independent community project. It is not affiliated with, endorsed by, or sponsored by either Qoder or DeepSeek. "DeepSeek", "DeepSeek Harness", "Qoder", and "Qoderian" are referenced for compatibility and attribution only.

Licensed under the MIT License.