Profile plugins for DeepSeek Harness (the dsh web GUI). Written for my own use, published in case anyone else finds them handy.
- dsh-filebox — a paperclip button next to the composer's + button. Upload a batch of files or a whole folder; the absolute path of every uploaded file is inserted into the input box automatically.
- dsh-permwatch — a shield icon in the session header. The dot color shows the current sandbox/permission mode; click it to see which files the agent touched in the current session.
- dsh-computer-history — a local activity recorder (
actrec, a small Swift daemon) with an "🕘 Activity" timeline panel and acomputer_historyagent tool. Records app switches, window titles, selected text, and optionally keystrokes and mouse clicks; everything stays in~/.dsh/computer-history/. See dsh-computer-history/README.md for macOS permission setup. - dsh-desktop — native desktop control ("computer use") via
actctl(AX + CGEvent + AppleScript) with a "🖱 Desktop" authorization panel. Off by default with per-action grants. See dsh-desktop/README.md. - dsh-schedule-ui — a read-only "⏰ Reminders" panel aggregating every
schedule_createreminder across sessions. See dsh-schedule-ui/README.md.
-
Copy the plugin folders into
~/.dsh/profiles/web/plugins/:cp -R dsh-filebox dsh-permwatch dsh-computer-history dsh-desktop dsh-schedule-ui ~/.dsh/profiles/web/plugins/ -
Build the native helpers (requires Xcode Command Line Tools):
~/.dsh/profiles/web/plugins/dsh-computer-history/scripts/build.sh ~/.dsh/profiles/web/plugins/dsh-desktop/scripts/build.sh
-
Create the symlinks:
for p in dsh-filebox dsh-permwatch dsh-computer-history dsh-desktop dsh-schedule-ui; do ln -sfn ~/.dsh/profiles/web/plugins/$p ~/.dsh/profiles/node_modules/$p done
-
Add the insert blocks at the end of
~/.dsh/profiles/web/cordis.patch.yml(each plugin's README / the repo'scordis.patch.ymlexamples show the snippet). -
Restart
dsh web(host plugins with routes and the actrec daemon need it), then refresh the page.
Add disabled: true to the corresponding insert block and refresh/restart. To remove completely, delete the insert block, the plugin folder, and the symlink.
Everything is local-only: activity data lives under ~/.dsh/computer-history/, desktop-control config under ~/.dsh/storages/. Nothing is uploaded anywhere.