detongz / dsh-client-ui-obsidian-memory

已收录

deepseek harness plugin obsidian memory

main工具会话 查看源代码

安装

npm install dsh-client-ui-obsidian-memory

此命令根据 GitHub 仓库地址生成。运行前请检查上游 README 与源代码;需要可复现安装时,请固定 release 或 commit。

README

维护者编写的文档快照。

在 GitHub 查看 ↗
提交版本 4d3dbde同步于 2026年8月17日

dsh-client-ui-obsidian-memory

🧠 Obsidian Memory for DeepSeek Harness — persistent memory via local Markdown vault

A DSH plugin that gives your AI agent persistent memory backed by a local Obsidian (or plain Markdown) vault. It registers 5 file-system tools (obsidian_memory_*) and renders a sidebar panel showing vault status and tool reference.

Inspired by @Saccc_c's Codex memory techniques.

Obsidian Memory Panel


What it does

  • 5 memory tools — AI can read, list, search, write, and append to your local vault
  • Sidebar panel — renders inside the sidebar.obsidian-memory slot in DSH's left column
  • No external server — talks directly to the file system via DSH's host runtime
  • Codex-compatible — works with the Codex/ directory structure recommended by the community

Available Tools

ToolAction
obsidian_memory_readRead a Markdown or text file
obsidian_memory_listList files and directories
obsidian_memory_searchFull-text search across .md and .txt files
obsidian_memory_writeWrite or overwrite a file
obsidian_memory_appendAppend content to the end of a file

Quick Start

1. Prepare your vault

Create a Codex/ folder anywhere on your machine (e.g. inside an Obsidian vault):

~/Documents/Obsidian Vault/
└── Codex/
    ├── AGENTS.md      ← AI operating instructions
    ├── TODO.md        ← pending tasks / open loops
    ├── people/
    ├── projects/
    ├── notes/
    └── daily/

2. Install the plugin

cd ~/.dsh/profiles/web        # or your DSH profile directory
npm install dsh-client-ui-obsidian-memory

If you installed DSH from source and don't use profiles, install into the DSH workspace root instead.

3. Add to cordis.patch.yml

Edit your profile's cordis.patch.yml (or cordis.yml):

- insert:
    - id: ui-obsidian-memory
      name: dsh-client-ui-obsidian-memory
      config:
        vaultPath: /Users/YOURNAME/Documents/Obsidian Vault/Codex

Replace vaultPath with the absolute path to your Codex/ folder.

Note: insert (not just id + config) is required so DSH loads the host-side tool plugin. If you only add id: ui-obsidian-memory with config, the sidebar UI may load but the tools will not be registered.

4. Restart DSH

dsh web   # or however you launch DSH

After restart:

  • The sidebar panel appears in the left column (🧠 Obsidian Memory)
  • The 5 tools are available to the AI when vaultPath is configured

Configuration

OptionTypeDefaultDescription
vaultPathstringAbsolute path to your Codex/ vault directory

Environment variable fallback (optional):

export OBSIDIAN_VAULT_PATH=/Users/YOURNAME/Documents/Obsidian Vault/Codex

If neither vaultPath in config nor the env var is set, the plugin logs a warning and skips tool registration.


Architecture

┌─────────────────────────────────────────┐
│ DSH Web (browser)                       │
│  ┌─────────────────────────────────┐    │
│  │ sidebar.obsidian-memory          │    │
│  │  ┌─────────────────────────┐    │    │
│  │  │ 🧠 Obsidian Memory      │    │    │
│  │  │  — tool reference       │    │    │
│  │  │  — vault structure      │    │    │
│  │  └─────────────────────────┘    │    │
│  └─────────────────────────────────┘    │
└─────────────────────────────────────────┘
                    │
┌───────────────────▼─────────────────────┐
│ DSH Host (Node.js)                      │
│  • reads / writes local files           │
│  • registers 5 obsidian_memory_* tools  │
└─────────────────────────────────────────┘
                    │
┌───────────────────▼─────────────────────┐
│ Local File System                       │
│  ~/Documents/Obsidian Vault/Codex/      │
└─────────────────────────────────────────┘
ComponentRole
Host (lib/index.js)Node side: registers tools, reads/writes vault files
Client (lib/client.js)Browser side: sidebar panel with static tool reference
VaultData source: local Markdown files

Troubleshooting

SymptomCauseFix
Plugin not in Settings → Pluginsinsert missing in cordis.patch.ymlAdd the insert block (see Quick Start step 3)
Tools not available to AIvaultPath not configuredSet vaultPath in cordis.patch.yml or env var
Sidebar panel not visibleDSH version lacks sidebar.obsidian-memory slotUpgrade DSH to ≥ 0.1.0-rc.5
"Path traversal detected" errorAI tried to access files outside vaultAll paths are sandboxed to vaultPath

Development

git clone https://github.com/detongz/dsh-client-ui-obsidian-memory.git
cd dsh-client-ui-obsidian-memory/plugin
npm install
npm run build        # outputs lib/index.js + lib/client.js
npm run watch        # dev mode with auto-rebuild

Build artifacts:

  • lib/index.js — host entry (tool registration + file I/O)
  • lib/client.js — browser bundle (DSH closure-factory format, CSS inlined)

License

MIT

项目文件与信号

以下项目是目录快照中检测到的公开仓库信号。

贡献指南已检测

仓库信息

开发语言
TypeScript
许可证
MIT
最后更新
2026年8月17日 07:06

谨慎安装

请检查源代码、权限、生命周期脚本、依赖与网络访问;不受信任的插件应先在隔离环境中测试。