Introduction

When using DeepSeek Harness (DSH) or similar AI development tools, context window limitations and session interruptions can often cause the AI to forget previous constraints or decisions, revisit known solutions, or overturn previously established technical choices partway through development. The dsh-decision-log plugin aims to solve this problem by providing a persistent, traceable decision-recording mechanism for AI workflows.

Plugin Overview

The plugin is maintained by the developer yuyolin and is released under the MIT License. It is not a task list or chat history, but rather the project’s “decision memory.” By recording key decisions in a local Markdown file, it ensures that the rationale behind decisions—“why this was done”—can be traced in any new conversation.

Installation and Activation

Installing the plugin requires specifying the web profile.

dsh plugin --profile web add github:yuyolin/dsh-decision-log

After installation, the Web UI must be restarted for the plugin to take effect. The startup command must include the --patch parameter.

npx @deepseek-ai/dsh web --patch

Core Features and Usage

1. Recording Decisions

The plugin supports two invocation methods:

  • Natural language invocation: Directly describe the decision.
    > Note: Use JWT for login instead of session cookie
  • Command-line invocation: Use the /log-decision command, which supports parameters.
    > /log-decision Use Redis, not Memcached –context Cache layer selection –reason Stronger persistence

The supported statuses include accepted (Accepted), pending (Pending Confirmation), and superseded (Superseded).

2. Automatic Summary Injection

At the start of each new conversation, the plugin automatically injects a summary of recorded decisions to the AI. This prevents the AI from re-discussing already finalized solutions in a new session or arbitrarily overturning previous decisions.

3. Data Management

  • Storage location: Decision records are saved in the .dsh/DECISIONS.md file in the project root directory.
  • Format: Plain Markdown format, readable by any AI tool that supports Markdown (such as Claude or Cursor).
  • Status management: Decisions automatically recorded by the AI default to the pending (Pending Confirmation) status and must be manually confirmed or rejected by the user; decisions recorded via the command line default to the accepted status.

Notes

  • Silent operation: The plugin runs in silent mode by default and only performs recording operations when invoked by instruction or command.
  • Local storage: Data is stored locally only; it is not uploaded to the cloud, does not pass through any server, and has read/write access only to the current workspace.
  • Manual confirmation: For security reasons, decision records automatically generated by the AI default to the “Pending Confirmation” status and only become effective after user confirmation.

Summary

By combining localized decision logs with an automatic injection mechanism, the plugin helps developers build a traceable decision history within their AI development workflow. It is well suited for scenarios involving long-term project maintenance or frequent switching between AI tools.