Back to home@zhengjy01

dsh-cubox

Cubox sync plugin for DeepSeek Harness: scheduled sync, AI daily brief from your prompt template into Obsidian, per-card markdown export — via the /c/api/cli endpoints

Stars
0
Language
TypeScript
Created
Aug 23, 2026
Updated
Aug 23, 2026
GitHub repo

Introduction

dsh-cubox

English | 中文

Cubox sync for DeepSeek Harness: scheduled sync of your Cubox collection, with an AI daily brief generated from your own prompt template and written straight into Obsidian — via the same /c/api/cli endpoints the official cubox-cli uses. Agent tools plus a web settings panel.

Features

  • Scheduled sync — a timer pulls your latest bookmarks into a local cache (~/.dsh/dsh-cubox-cache.json) every N minutes (default 60, configurable; 0 disables the timer). Manual sync anytime with cubox_sync.
  • AI daily brief — write your own prompt template (e.g. "今日收藏简报", {collection} is replaced with the formatted collection for the sync window: title / source / summary / annotations). When an LLM key is configured, every sync generates a brief into the output dir — 今日收藏简报-YYYY-MM-DD.md for a 1-day sync, 最近N日收藏简报-YYYY-MM-DD.md for wider windows (each window gets its own file).
  • Markdown export — set outputDir and optionally keep one markdown file per card (frontmatter + title + description + Cubox/original links + annotations, same layout as the official Cubox Obsidian plugin). Toggle exportCards off to write only the AI brief.
  • Querycubox_cards filters by keyword, time window, annotated/starred/read status.
  • Config & statuscubox_config / cubox_status; credentials persist to ~/.dsh/dsh-cubox.json (mode 0600), secrets never echoed.
  • Settings panel — Settings → Cubox: paste the API-extension link, set the sync interval, pick the local export folder (OS folder chooser), toggle per-card export, edit the AI brief prompt and LLM settings (OpenAI-compatible, defaults to DeepSeek).

Install

# after publishing to GitHub (repo tagged with the `dsh-plugin` topic)
dsh plugin --profile web add github:zhengjy01/dsh-cubox

# local development
dsh plugin --profile web add link:/path/to/dsh-cubox

Restart dsh web. The plugin ships pre-built — lib/index.js is plain ESM.

Configure

  1. Open Cubox preferences → Extensions & Automation → API Extension → enable it and copy your unique link (e.g. https://cubox.pro/c/api/save/abcd12345).

  2. Give the link to the plugin — either in the settings panel (Settings → Cubox), or just ask the agent:

    帮我配置 Cubox,API 链接是 https://cubox.pro/c/api/save/abcd12345
    

    The agent calls cubox_config to persist it. cubox.pro is the default server; cubox.cc is the international instance (auto-detected from the link).

  3. (Optional) Set the export dir + AI brief: choose the local folder, paste an OpenAI-compatible API key (DeepSeek by default), and edit the prompt template. {collection} is replaced with today's collection list.

Then:

同步一下今天的收藏                → cubox_sync (days=1)
查一下收藏里关于 LLM 的文章       → cubox_cards (keyword="LLM")

The API link and the LLM key are credentials — anyone holding them can read (and modify) your Cubox data or spend your LLM quota. They are stored in ~/.dsh/dsh-cubox.json (mode 0600). To rotate, refresh in the Cubox API-extension page, then re-configure.

Tools

ToolPurpose
cubox_statusConnection & cache status
cubox_configSet / clear apiLink, server, token, syncMinutes, outputDir, exportCards, llmBaseUrl, llmApiKey, llmModel, llmPrompt
cubox_syncPull the last N days (default today) into the local cache + export markdown + AI brief
cubox_cardsQuery the collection (keyword / days / annotated / starred / read)

Notes

  • The public Cubox "open API" only accepts saves; reads go through the internal /c/api/cli/* family (same endpoints as the official cubox-cli).
  • The sync cache is a plain JSON snapshot (cards + today's annotations, deduped by id, newest first) — agents can answer "what did I save" without extra round trips.
  • License: MIT