dsh-session-artifacts: Organizing and Renaming Session Artifacts for DeepSeek Harness
feely0208/dsh-session-artifacts
A DSH plugin that keeps every session's artifacts in one dedicated folder, renaming it by actual content at wrap-up and refreshing an index, so scattered outputs stay findable.
dsh-session-artifacts is a workspace organization approach for DeepSeek Harness sessions, giving every session its own folder for screenshots, verification scripts, temporary downloads and intermediate artifacts. It targets two familiar pains: a shared working directory whose granularity spirals out of control so nobody dares to clean it, and folder names that no longer match the content weeks later. The flow has three steps: create a rough temporary folder when work starts, have the agent review what actually happened and rename it while keeping the date prefix, then refresh INDEX.md with date, size, file count and abstract. The three bundled scripts are pure bash with no DSH dependency, so other agent environments can use them too.
How to Install
dsh plugin --profile web add @deepwhale-cn/dsh-session-artifacts- Category
- Sessions & Messages
- Platform
- DSH Plugin
- Author
- feely0208
- Distribution
- Plugin
dsh-session-artifacts Key Features
dsh-session-artifacts Repo Summary
What Does It Do?
Session Artifacts is a DSH plugin for DeepSeek Harness that keeps every AI coding session's output inside its own dedicated folder. It solves two real problems: a shared working directory that turns into hundreds of loose screenshots and temp files nobody dares to delete, and folder names that no longer match what actually happened weeks later. The workflow is simple — create a rough folder when work starts, rename it by real content when the session ends, then refresh the index. Three plain bash scripts ship alongside it and work in any agent environment.
Core Features
- Session consolidation: every session gets its own folder, and screenshots, verification scripts, temporary downloads and intermediate artifacts all go inside instead of the working directory root, /tmp or $HOME.
- Two-stage naming: start with a rough temporary name, then let the agent review what the session actually did and rename it, with the original date prefix preserved automatically.
- Index refresh: generates an INDEX.md summarizing date, session name, size, file count and a short abstract, so months-old work stays searchable by time and topic.
- Idempotent folder creation: repeated calls on the same day reuse the existing folder, while a forced new session gets an automatic numeric suffix.
- Safe renaming: supports fuzzy matching and a dry-run preview, and refuses to overwrite when a name already exists.
- Cross-agent compatibility: the three scripts are pure bash with no DSH dependency, so Claude Code, Codex, Cursor and other agents can use them directly on macOS and Linux.
How to Use This Plugin?
After enabling it in DSH, create the session folder the first time something needs to be saved; the script prints the full path, for example a dated folder ending in the session's rough topic. At the end of the session, have the agent review what was actually accomplished and rename the folder by content, such as changing a rough topic name into a release-and-finalization name, while the original date prefix is kept. Then refresh the index and INDEX.md is regenerated with date, session, size, file count and abstract. Naming works best as a verb plus an object, taking the main thread when a session covers several topics and joining genuinely parallel topics with a plus sign, while avoiding vague words like work, misc or cleanup. Put the full multi-topic list in the session's own README and keep the folder name short as an index key. The default root is a session-artifacts folder in your home directory and can be overridden by an environment variable, with old sessions moved into an archive subfolder.
How to Troubleshoot This Plugin?
Running the scripts directly on Windows may fail because they use bash arrays and double-bracket syntax, so use WSL or Git Bash instead. If a rename reports a duplicate name, the target is already taken; pick a more specific name, since the script refuses to overwrite. If you genuinely need a second session on the same day, a normal folder-creation call reuses the existing one, so follow the official instructions to force a new folder and the script will add a numeric suffix.
This page is an independent rewrite of the plugin's official README — for authoritative documentation and the latest changes, refer to the source: feely0208/dsh-session-artifacts. The plugin is third-party code that runs on your machine once installed; inclusion does not imply endorsement — please review the source before installing.
