Introduction¶
When using DSH for agent or tool integration, a common requirement is to centralize data scattered across different asset systems: on-chain assets are spread across different chains like BTC, EVM, Solana, Hyperliquid L1, while CEX assets are dispersed across various exchanges. Relying solely on manually opening multiple pages is neither conducive to verifying totals nor convenient for subsequent API calls.
dsh-crypto-portfolio is a DSH plugin designed to unify on-chain and CEX assets into a single self-contained Web Dashboard, while retaining daily snapshots, trend charts, and a callable JSON API.
What is this¶
dsh-crypto-portfolio is a free, 100% self-hosted DSH plugin for unified on-chain and CEX asset display. It provides a zero-dependency Web Dashboard covering BTC / EVM / Solana / Hyperliquid L1 / CEX assets.
This repository is located at 0xRabit/dsh-crypto-portfolio. The README explicitly states that this is an unofficial project developed and maintained independently by community members. The license is MIT.
Core Capabilities¶
Asset Coverage and Global Filtering¶
The plugin covers the following asset types:
- BTC
- EVM
- Solana
- Hyperliquid L1
- CEX assets
The Dashboard provides global filtering capabilities, including category, wallet, and chain filtering. Filter results synchronously affect panels such as Overview, Wallet Distribution, Trends, Chain Distribution, and Token Table.
Data Source Identification and Failure Switching¶
The plugin clearly identifies free and paid data sources. For EVM assets, it uses DeBank and provides two types of sources:
- Paid
debank-pro - Free and keyless
debank-publicfallback source
The plugin also provides automatic API provider failure switching. When a data source is unavailable, failed items are skipped, and information from the last available source is retained.
Snapshots, Trends, and Blacklist¶
The plugin supports scheduled daily refreshes and displays the last successful time for each data source. Daily snapshots are saved in SQLite and can be used to generate trend charts.
It also provides one-click token blacklist capabilities. Tokens added to the blacklist are removed from the total count, trends, and historical snapshots.
Multiple Profiles and Interface Language¶
The plugin supports multiple profile configurations, with each profile having its own independent snapshot history.
The interface supports light/dark themes and English/Chinese languages.
JSON API¶
In addition to the Web page, the plugin exposes callable JSON APIs, for example:
GET /api/refresh
GET /api/history
GET /api/tokens
Installation and Enablement¶
Environment Requirements:
- Python 3.9+
requestspynaclis packaged in thevendor/directory
The following commands are local path installation examples given in the README, not general registry installation commands:
dsh plugin --profile demo add /path/to/dsh-crypto-portfolio
dsh --profile demo
After enabling, the Dashboard runs by default at:
http://127.0.0.1:8080
If you need to customize the port, you can use PORTFOLIO_PORT to override the default port.
If you do not want to start it via DSH, you can also run it standalone:
python3 run.py --init-template --port 8080
This command initializes the default profile from a public template and starts the Dashboard on the specified port.
Default Configuration and Privacy Boundaries¶
The default profile uses public template wallets, for example:
vitalik.eth- genesis BTC
- public SOL
At the same time, WALLETS = [] in the shipped config, and the API key is empty. The repository does not contain private keys, private wallets, or balance data.
Private wallets and keys should be placed in a git-ignored local profile. CEX integration uses read-only API keys with the naming format:
<exchange>_read
Applicable Scenarios and Notes¶
Suitable for the following scenarios:
- You want to self-host a local Dashboard
- You need to view BTC, EVM, Solana, Hyperliquid L1, and CEX assets on the same page
- You need daily snapshots, trend charts, and a JSON API
- You accept this unofficial community project and are willing to check the source code yourself
Notes to be aware of:
- This is an unofficial project and is not the official DeepSeek or Huanfang app store application.
- The plugin runs with the permissions of the current
dshprocess. You should check the source code, dependencies, and MIT license before installing. - The repository itself does not contain private keys or balances, but private configurations must be saved in a local profile to avoid committing to the version repository.
- CEX API keys should use read-only permissions and be configured with the naming format
<exchange>_read.
Reference Links¶
- GitHub: https://github.com/0xRabit/dsh-crypto-portfolio
- DSH Community Directory: Search for
dsh-crypto-portfolioon the standalone site; the current documentation does not provide the directory page URL.