Introduction¶
In the philosophy of “everything is a plugin” within DSH, a common requirement for agent developers is: having a data file and wanting the agent to do more than just “read it,” but to continue completing tasks such as recommending charts, generating visualization pages, and outputting interactive HTML. When manually completing this task, one usually has to handle details such as encoding, file formats, merging multiple files, cleaning and transformation, ECharts configuration, and offline dependencies.
dsh-smart-charts turns this process into a Smart Charts skill plugin for DeepSeek Harness: the agent parses data following the skill flow, recommends chart types, and generates interactive ECharts HTML.
What is this¶
dsh-smart-charts is a Smart Charts skill plugin for DeepSeek Harness, maintained by hherosoul, with a license of MIT.
It targets table data such as CSV / Excel / JSON. The core problem it solves is: one-click conversion of data files into interactive ECharts HTML, supporting automatic data shape recognition, chart recommendation, batch generation, offline rendering, and structured error output.
GitHub address: https://github.com/hherosoul/dsh-smart-charts
Core Features¶
Chart Types and Themes¶
- Supports 26 chart types, covering scenarios such as trends, comparisons, proportions, distributions, correlations, flows, conversions, word frequency, set overlaps, and hierarchical structures.
- Provides 3 theme presets:
default/classic/dark.
Data Parsing and Merging¶
- Multi-format parsing: CSV, TSV, TXT, Excel, JSON.
- Automatic detection of
UTF-8/GBK/GB2312encoding. - Multi-file automatic merging: Up to about 10 files; if column structures are identical, it performs vertical concatenation; if about 50% or more columns overlap, it performs horizontal joins; if there is no common structure, it clearly reports an error.
- Single file limit is ≤ 100 MB, recommended ≤ 50 MB.
- Does not support direct database connections, real-time streams, geographic maps, nested JSON > 1 layer, or non-tabular data like images / audio / video.
Data Transformation and Batch Generation¶
--transform-code: Use pandas code to complete column renaming, reshaping, aggregation, and other cleaning tasks.- Three-layer security sandbox: blacklist + AST whitelist + safe builtins.
- When a violation occurs, it returns a structured error containing
suggestion, making it easy for the agent to parse and retry. --charts-file: Declare multiple charts using JSON and generate the entire set of charts at once.- Outputs
plot_statsstatistical summary and supports--dry-runand--annotation.
Output and Errors¶
- Fully offline: ECharts JS is packaged in
assets/and inlined into each HTML file, with no CDN and no external dependencies. - Interactive output: Hover to view data,
dataZoomfor zooming, automatic horizontal scrolling when exceeding thresholds, inline editing of titles by double-clicking, and saving charts as images. - Structured error:
SmartChartsErroris output as unified JSON, including fields likecode/code_name/suggestion.
Installation and Enablement¶
GitHub Direct Install¶
The installation command provided in the documentation is:
dsh plugin --profile web add github:hherosoul/dsh-smart-charts
The first installation might fail due to pnpm≥10 refusing to run prepare build scripts dependent on git. Follow the prompt to allow allowBuilds in the profile’s pnpm-workspace.yaml:
allowBuilds:
dsh-smart-charts: true
Then re-execute the installation:
dsh plugin --profile web add github:hherosoul/dsh-smart-charts
Allowing allowBuilds is equivalent to authorizing the package to execute code during the installation phase. The documentation suggests only trusting source code you have verified and pinning the commit:
github:hherosoul/dsh-smart-charts#<sha>
Local tarball¶
If you already have a local tarball, for example dsh-smart-charts-8.0.1.tgz in the documentation example, you can use:
dsh plugin --profile web add ./dsh-smart-charts-8.0.1.tgz
Note: The documentation only provided this local installation command and did not provide an official download address or method to obtain the tarball; please confirm the package source before using.
Verify Loading¶
After installation, you can use dump config to check if the plugin is loaded into the profile:
dsh --profile web --dump-config
Seeing the # == dsh-smart-charts section in the output indicates successful loading.
Runtime Dependencies¶
Python dependencies need to be installed before the first run. The documentation requires Python 3.11+, including dependencies pandas, numpy, openpyxl, xlrd:
pip install -r requirements.txt
package.json declares engines node >=20.19.0 and includes a peer dependency:
"@deepseek-ai/dsh-skill-filesystem": "^0.1.0-rc.6"
Typical Usage¶
- Put the data file in the workspace directory and start a DSH session.
- Tell the agent “Analyze
sales.csvand generate a bar chart”, or enter/smart-chartsto trigger it directly. - The agent parses the data, recommends the chart type, and generates the ECharts HTML to the workspace’s
output/. - If you want to experience it quickly, you can use the built-in example
examples/sales_data.csvin the repository.
Suitable Scenarios and Notes¶
Suitable for:
- Having CSV / Excel / JSON tabular data and wanting the agent to automatically complete chart recommendation and generation.
- Needing to output ECharts HTML that can be opened offline and interacted with.
- Needing to add data cleaning, batch generation of multiple charts, statistical summaries, and structured error handling to the agent workflow.
Not suitable for:
- Direct database connections.
- Real-time stream data.
- Geographic maps.
- Nested JSON > 1 layer.
- Non-tabular data such as images and audio/video.
Limitations and Notes:
- Single file ≤ 100 MB, recommended ≤ 50 MB.
- Multi-file merging up to about 10 files.
- The plugin runs with the permissions of the current
dshprocess; source code, license, and build scripts should be checked before installation. allowBuildsauthorizes the package to execute code during the installation phase; it is recommended to only allow it for source code you trust and try to pin the commit.
The documentation also mentions that this skill is published on Tencent SkillHub (WorkBuddy ecosystem), accessible at https://skillhub.cn/skills, search for smart-charts. The README states that as of 2026-08-19, SkillHub has accumulated 68,000 downloads and ranks first in the data analysis category. This description follows the documentation’s wording and does not imply it is the DeepSeek official app store.
Links and Entry Points¶
- GitHub:
https://github.com/hherosoul/dsh-smart-charts - SkillHub Entry:
https://skillhub.cn/skills