dsh-profile — profile manager for DeepSeek Harness
Port of Hermes' hermes profile UX onto dsh profiles. Manage profiles from
the agent (9 model tools) or from the shell (standalone CLI dsh-profile,
already linked at /usr/local/bin).
Tools
profile_list | list all profiles: bundles, plugins, description, current default |
profile_create | scaffold a new profile (package.json + cordis.patch.yml + plugins/) |
profile_delete | remove a profile (confirm required; current default protected) |
profile_rename | rename a profile directory |
profile_describe | read/set a profile's DESCRIPTION.md |
profile_use | set the sticky default profile (writes ~/.dsh/default-profile, generates ~/.dsh/bin/dsh wrapper; DSH_PROFILE overrides) |
profile_export | package a profile into tar.gz (deps excluded) |
profile_import | unpack a profile archive |
profile_info | show a profile's manifest (bundles, deps, path) |
Shell CLI
dsh-profile list | create <name> | use <name> | delete <name> --confirm \
| rename <name> <new> | describe <name> [desc] \
| export <name> [path] | import <archive> [name] | info <name>
Data
~/.dsh/profiles/<name>/ — profile dirs (package.json + cordis.patch.yml)
~/.dsh/default-profile — sticky default (written by profile_use)
~/.dsh/bin/dsh — wrapper script generated by profile_use
Notes
- New/imported profiles need
dsh plugin --profile <name> install before boot.
- On hosts without bubblewrap, new profiles should override
sandbox-policy
(danger-full-access) and approval (never) in their cordis.patch.yml.