dsh-config-sync

Export and restore DSH user configuration across devices with SHA-256 verification and credential exclusion.

3|Updated Feb 13, 2026
One-click install
npx skills add https://github.com/ooooooooooooooooooop/personal-ai --skill dsh-config-sync-ooooooooooooooooooop
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: dsh-config-sync
Source: https://github.com/ooooooooooooooooooop/personal-ai/tree/main/skills/dsh-config-sync
Command: npx skills add https://github.com/ooooooooooooooooooop/personal-ai --skill dsh-config-sync-ooooooooooooooooooop

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes scripts (resource) and references (resource) components.

What problem does it solve? Moving DSH (DeepSeek Harness) preferences and model routing settings between machines is risky: credentials can leak into public repositories, runtime state pollutes archives, and device-specific absolute paths break portability. This Skill packages ~/.dsh configuration into a sanitized skeleton and restores it safely on another device. ## Core Features & Use Cases - Sanitized export: Copies AGENTS.md and optional profiles/presets into a skeleton directory, hard-excludes .credentials.yaml, sessions/, and storages/, then runs a sensitive-data scan that fails the package on any inline secret. - Cross-device templating: Replaces device paths with {{DSH_HOME}}, {{DESKTOP}}, and {{HOME}} placeholders on export and renders them back on apply, so one archive works on any machine. - Verified restore: Performs a read-only check listing missing/different/extra files, applies only on explicit request, and validates results with newline-normalized SHA-256 digests while never deleting destination-only files. - Use Case: You get a new laptop and want your DSH model routing and global agent preferences replicated. Export the config skeleton to your repository, clone it on the new device, run check then apply, set the API key environment variables, and confirm a PASS verification report. ## Quick Start Use the dsh-config-sync skill to export my current DSH configuration from ~/.dsh into a sanitized skeleton package with templated paths, excluding all credentials and runtime state.

Frequently Asked Questions about dsh-config-sync

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I sync DSH configuration between two computers?

Export the ~/.dsh config into a skeleton directory with the sync script, commit it to your repository, then clone on the target device and run check followed by apply. The tool verifies every file with SHA-256 digests and reports PASS when the restore matches.

How do I migrate config files without leaking API keys?

Keep secrets out of the package by storing only environment variable names like apiKeyEnv in settings.yaml and setting the actual keys on each device. The exporter hard-excludes .credentials.yaml and fails the package if its sensitive scan finds inline apiKey or secret values.

Can config files with absolute paths work on a different machine?

Yes, when paths are templated. Export with the template option to replace device paths with {{DSH_HOME}}, {{DESKTOP}}, and {{HOME}} placeholders, and apply renders them back to the target device's actual paths, skipping SHA checks for those rendered files.

Does restoring config delete extra files on the destination?

No, the apply mode never deletes destination-only files. Extra files found on the target are preserved and listed in the report, and rollback is done by re-copying from a known stable archive rather than recursive deletion.

Why does config verification fail after checking out on another OS?

Line-ending differences from Git autocrlf cause digest mismatches in naive tools. This script normalizes CRLF and CR to LF before hashing, so SHA-256 digests stay stable across Windows and Unix checkouts.