편집자 노트

hyperMoss/dsh-diary

Diary plugin for DeepSeek Harness: daily markdown journal entries, custom templates, and a web settings section

이것은 DeepSeek Harness(DSH) 플러그인입니다. 이 사이트는 GitHub README, 설치 정보, 유지보수 상태, 공개 보안 시그널을 모아 보여줍니다.

업스트림에서 중국어 README를 제공하지 않아 저장소 원본 내용을 표시합니다.

dsh-diary

A DeepSeek Harness plugin that gives the agent a daily markdown journal: create entries, manage the resulting .md files, use custom templates, and configure it all from a web settings section.

What it adds

Ten model-facing tools, registered on ctx.tools:

ToolPurpose
diary_createCreate a new entry (YYYY-MM-DD[-slug].md) with optional title, tags, body, and a named template
diary_listList entries with metadata, filterable by year/month, tag, or title/filename substring
diary_readRead one entry's frontmatter and full body
diary_updateReplace or append the body, and/or change the title and tags
diary_deleteDelete one entry file
diary_searchFull-text search across entry bodies with line numbers and snippets
diary_template_listList the templates available to diary_create
diary_template_readRead one template's full content
diary_template_setCreate or overwrite a template
diary_template_deleteDelete a template

Custom templates

Templates are markdown files under <diary-directory>/templates/. diary_create accepts a template name and substitutes these placeholders in the template body:

{{date}} {{title}} {{tags}} {{slug}} {{year}} {{month}} {{day}} {{datetime}} {{time}}

When both template and content are given to diary_create, the rendered template body comes first and content is appended after a blank line.

Web GUI

The plugin ships a browser half (lib/client.js, served at /plugins/dsh-diary/client.js) with two surfaces:

  • a 「日记」settings section: shows the diary/templates directory and lists, creates, edits, and deletes templates;
  • a 日记看板 (diary board): a standalone panel (its own floating toggle button, 📓) that lists entries grouped by month, with a 「新建日记」 button and a per-entry delete action.

Both are backed by a diary Typert Remote namespace exposed under /api/diary/*: getDirectory, listTemplates, getTemplate, setTemplate, deleteTemplate, listEntries, getEntry, createEntry, deleteEntry.

Storage

Entries are markdown files with optional YAML frontmatter:

---
title: My day
date: 2026-08-14
tags:
  - work
  - life
---

Today I …

By default they live under $DSH_HOME/diaries (falling back to ~/.dsh/diaries). Override the directory in the profile's cordis.patch.yml:

- insert:
    - id: dsh-diary
      name: 'dsh-diary'
      config:
        directory: '/Users/me/Diary'

One entry per date is the default; pass a slug to diary_create to keep several entries on the same day (the file becomes YYYY-MM-DD-<slug>.md).

Install

Install the published dsh-diary package into the web profile:

dsh plugin --profile web add dsh-diary

Then restart the web server for the new layer (tools + settings section) to take effect.

Develop

pnpm install      # links @deepseek-ai/* host + client packages for typecheck
pnpm run build    # esbuild → lib/index.js (host) + lib/client.js (browser) + declarations
pnpm run typecheck
node smoke.mjs    # functional smoke test of the ten tools
REPOSITORY SIGNALS

보안 및 설치 증거

이 점수는 공개 저장소 메타데이터와 이 사이트에 등록된 설치 증거에만 기반하며, 코드 보안 감사와 다릅니다.

출처 추적 가능

공개 플러그인 카탈로그에서 왔으며, 공개 GitHub 저장소로 연결됩니다.

라이선스

저장소가 MIT 라이선스를 선언했습니다.

유지보수 활동

최근 180일 내 코드 업데이트가 있습니다.

설치 증거

재현 가능한 정확한 설치 메타데이터가 아직 등록되지 않았습니다. 저장소 설명에 따라 직접 확인하세요.

설치 라이프사이클 스크립트

검사한 패키지 메타데이터에 설치 라이프사이클 스크립트가 선언되지 않았습니다.