In the DSH web environment, while an agent is generating content, developers often think of follow-up questions. Sending them immediately would interrupt the current generation flow. Waiting often causes the memory to fade. dsh-park-notes provides an intermediate state for this scenario: park ideas at zero cost without disrupting the current session.

Core Features

The plugin provides a persistent “say it later” strip above the input box. Users can capture an idea quickly (within 3 seconds), later push it to the input box draft with one click (before it is automatically sent), and then remove it from the list.

  • Zero interruption: While capturing, the AI continues generating.
  • Persistence: Data is stored in the browser localStorage, isolated by session and unaffected by server restarts.
  • Flexible handling: Supports text, images (paste, drag, attachment), and Markdown export.
  • History tracking: Tracks which items have been pushed to the draft and their actual sending status.

Installation and Enabling

  1. Ensure dsh web is installed and running.
  2. Run the following command to install the plugin:
dsh plugin --profile web add github:kevin-zx/dsh-park-notes
  1. You must restart dsh web for it to take effect (refreshing the page is not enough; the process must be restarted).

Typical Usage

Basic Capture

  • /note <text>: Type this command directly in the input box and press Enter. The command is executed directly against the agent and does not create a model message.
  • Alt+N: Open and focus the capture box from the keyboard.

Interactions

  • Expand/Collapse: The strip persistently displays the number of pending notes. When expanded, you can see the list, search box, and quick capture area.
  • Capture: Enter text in the expanded area; press Enter to capture (supports Chinese IME; Shift+Enter inserts a line break); press Esc to collapse.
  • Edit and Pin: Click the text to edit it in place (Enter saves, Esc cancels). Click the 📌 icon to pin the entry.
  • Image support:
    • Supports pasting, dragging, or clicking + Image.
    • A thumbnail appears in the entry; click it to enlarge.
    • Dragging the thumbnail into the input box remains a manual option that is always available.
    • If automatically pushing the image to the draft fails, the plugin automatically copies the first image to the clipboard (converted to PNG); then press Ctrl+V to attach it.
  • Export: Supports exporting all notes in the current session to a Markdown file.
  • History management:
    • After a note is pushed to the draft, it enters the “Added to draft” history section.
    • After the draft is submitted and sent, the status automatically changes to “Sent”.
    • Supports “Add all to the input box” or re-adding a single item.

Technical Details and Notes

  • Data storage: Data is stored only in the browser localStorage (the key includes the session ID), and the plugin package itself does not contain data. Notes from the older dsh-idea-note are migrated automatically.
  • Update mechanism: Updating the plugin does not affect existing notes or images. However, after an update, you must restart dsh web.
  • Dependency injection: Plugin code should use ctx.inject rather than ctx.get to obtain service dependencies, ensuring the services are ready.
  • Disclaimer: The plugin runs third-party code on your local machine. Review the source code before installing.
  • GitHub: https://github.com/kevin-zx/dsh-park-notes
  • Directory page: https://www.skillhub.cn/plugins/kevin-zx/dsh-park-notes