Introduction

When using DeepSeek Harness (DSH), configuration files are usually scattered across the local ~/.dsh directory. When these configurations need to be synchronized across multiple machines, or when you want to centrally manage the settings of multiple AI coding tools (such as OpenCode, Cline, Roo Code, etc.), manually copying files is not only inefficient but can also easily cause conflicts. dsh-git-sync aims to turn the DSH configuration directory into a Git repository, enabling real-time or scheduled synchronization of configurations and supporting bridging configurations from other AI tools.

What It Is

This is a Git configuration sync center plugin for DeepSeek Harness. It is maintained by Yiyang0659 and licensed under the MIT License. The plugin turns DSH configurations into a Git repository and provides adapters for multiple AI tools, allowing the settings of all AI tools to be synchronized into the same private GitHub repository.

Core Features

  • Real-time sync: Watches for changes in the configuration repository and automatically commits and pushes to the remote once changes settle.
  • Daily scheduler: Supports scheduled daily synchronization and performs a catch-up run on startup.
  • Conflict self-healing: Automatically repairs conflict states during pull, avoiding pull failures caused by unmerged files.
  • Multi-Harness adapters: Supports native DeepSeek Harness configurations, as well as configuration bridging for tools such as OpenCode, Cline, Roo Code, Kilo Code, Continue, goose, and Agent Zero.
  • Smart copying: During pull, only files with actual changes are written, protecting newly edited local files.
  • Network retry: Automatically retries when network errors occur during fetch/pull/push.
  • Four-State Badge: Displays sync status in the session header (Synced / Pending upload / Pending pull / Diverged / Conflict) and provides a details panel.
  • Sidebar page: If dsh-better-sidebar is installed, it can register a Git sync center page in the sidebar.
  • Security: Automatically adds credential files to .gitignore. The plugin does not directly touch the GitHub Token; instead, it invokes local git commands.
  • Dual-machine readiness: Supports synchronizing configuration files on two machines to enable configuration sharing.

Installation and Enabling

Add the dependency to the dependencies field in ~/.dsh/profiles/web/package.json, then run pnpm install.

  1. Edit ~/.dsh/profiles/web/package.json and add the following content:
    {
      "dependencies": {
        "dsh-git-sync": "github:Yiyang0659/dsh-git-sync"
      }
    }
  1. Enter the ~/.dsh/profiles/web directory and run the install command:
    pnpm install
  1. Restart the DSH Web service:
    dsh web

Typical Usage

  1. Create a private repository on GitHub (for example, deepseek-harness-sync).
  2. Enter the DSH root directory and initialize a Git repository:
    cd ~/.dsh
    git init
    git branch -M main
    git remote add origin https://github.com/<你>/deepseek-harness-sync.git
  1. Complete a Git authentication step (credentials will be stored in the OS keychain or credential manager):
    git config credential.helper osxkeychain
(On Windows systems, you can use manager)
  1. After restarting DSH Web, open the badge panel in the session header.
  2. Click “⬆️ Local ➔ Git” to perform the first push.
  3. In “⚙️ Settings and Adapters,” enable real-time sync and the daily scheduler, and turn on the adapters for the AI tools you use.

Use Cases and Notes

This plugin is suitable for developers who need to keep configurations consistent across multiple devices, or for users who want to centrally manage the settings of multiple AI coding tools.

  • Permission notes: The daily scheduler and real-time watcher run in the DSH server process, not in the Web page.
  • Conflict handling: When two machines edit the same file at the same time, the plugin has pullFirst mode enabled by default. It first pulls and rebases the remote changes.
  • Ecosystem context: The DSH ecosystem emphasizes “everything is a plugin.” Community directories (such as skillhub.cn) have no affiliation with official DeepSeek.

Conclusion

dsh-git-sync brings Git version-control capabilities to local AI tool configuration management, addressing the pain points of multi-machine collaboration and tool configuration synchronization. By invoking local Git commands instead of manipulating tokens directly, it provides relatively high security while maintaining synchronization capabilities.