Foreword

Under DSH’s “everything is a plugin” extension model, a common need is to enable agents to execute code, view graphs, modify based on feedback, and rerun. If scripts, graphs, parameters, and environment information are stored separately, it becomes difficult to determine which cell, inputs, and seed produced a specific graph later.

dsh-science-workbench is a reproducible science workbench plugin for DeepSeek Harness. It organizes agent-driven cells, embedded graphs, feedback reruns, provenance tracking, and environment snapshots into a unified set of plugin capabilities.

What is This

dsh-science-workbench is maintained by poplarity. The repository is located at:

https://github.com/poplarity/dsh-science-workbench

The name declared in package.json is dsh-science-workbench, licensed under MIT. The plugin is positioned as a science workbench for DeepSeek Harness, with its core focus on forming a traceable, replayable loop of code execution, graph preview, feedback modification, reruns, and provenance tracking.

Core Capabilities

Agent-Driven Reproducible Cells

The plugin provides agent-facing bio_* tools that support running code in self-contained cells and displaying generated graphs embedded within the workbench.

To maintain reproducibility, the plugin records SHA-256 input/output hashes and pairs them with a fixed seed. On the environment side, it preserves an environment snapshot via environment.lock.

Feedback and Redraw

When a graph has issues, you can first add structured feedback to an artifact, then use bio_rerun_cell to rerun a derived version.

An example workflow is as follows:

feedback → redraw/rerun
bio_rerun_cell → derived version

For instance, generating cell_0001_v2 from cell_0001, which produces a new graph.

manifest.json as the Single Source of Truth

manifest.json records the project’s cells, artifacts, provenance, and feedback, serving as the main entry point for reviewing the analysis process.

Local Git Version Tracking

Each project automatically initializes a local git init and commits at each step. The plugin does not push these commits; the repository is used solely for local version tracking.

Browser Workbench

The plugin includes nine agent-facing bio_* tools and a browser workbench. The workbench provides embedded graph preview, searchable project selection, cell search, native directory selector, and a mark-as-final badge.

Publication-Grade Graph Skills

The plugin comes with two publication-grade graph skills: figure-style and figure-composer. These skills are adapted from Claude Science, licensed under Apache-2.0.

Cross-Platform Support

The plugin supports shell differences between macOS/Linux and Windows and handles the interpretation of python versus python3.

Installation and Enablement

Before installation, it is recommended to review the source code, dependencies, and license, as it will execute code, access files, and invoke interpreters under the current dsh process permissions.

Install from npm:

dsh plugin --profile web add dsh-science-workbench

Local development installation:

dsh plugin --profile web add file:/path/to/dsh-science-workbench

After installation, restart dsh web. Once enabled, the bio_* tools become globally available, and the plugin will appear under Settings → Plugins.

The dependencies declared in package.json are:

@deepseek-ai/cordis: ^4.0.1
@deepseek-ai/dsh-tools: ^0.1.0-rc.6

The package also declares:

dsh.bundle.patch: ./cordis.patch.yml

Typical Usage

After installation and restart, you can directly use natural language to instruct the agent, for example:

Help me create a heatmap of the signal near the TSS using the demo_tss project.

The equivalent manual workflow is:

1. bio_init_project { name: "demo_tss" }
2. bio_run_cell { title: "TSS profile", code: "..." }   # writes figures/*.png
3. bio_add_feedback { artifactPath, text: "Change the color scheme to Blues" }
4. bio_rerun_cell { cellId: "cell_0001", editedCode: "..." }  # → cell_0001_v2 + new figure

Step 1 creates the project. The project’s provenance and environment snapshot are stored in manifest.json and environment.lock, respectively. Step 2 runs a cell and registers the graph written to figures/ as an artifact. Step 3 adds feedback to an artifact. Step 4 reruns with modified code, generating a derived cell and a new graph.

These steps are written to manifest.json and committed to the project’s local git repository.

Use Cases and Considerations

This plugin is suitable for developers running reproducible analyses, iterating on graphs, and tracking provenance within DSH. Especially when you want the agent not only to execute code but also to preserve feedback history, version lineage, and environment snapshots, this plugin is easier to maintain than scattered scripts.

Please note:

  • The plugin runs with the current dsh process permissions. Its ability to execute code, read/write files, and invoke shells/Python depends on the host environment.
  • Automatic git commits remain local only and are not pushed.
  • The plugin itself is licensed under MIT; the bundled figure-style and figure-composer skills are adapted from Claude Science and licensed under Apache-2.0.
  • Dependencies must satisfy the version ranges specified for @deepseek-ai/cordis and @deepseek-ai/dsh-tools.

Conclusion

The value of dsh-science-workbench lies in integrating cells, graphs, feedback, reruns, manifest.json, and environment.lock into a unified, traceable workbench.

Repository address:

https://github.com/poplarity/dsh-science-workbench