Foreword¶
When running agents in the DSH web GUI, users often want to quickly see how much time is left in the current session, how many tokens have been consumed, and approximately how much it costs by model. Existing approaches often rely on session logs or scattered statistics, lacking a centralized entry point in the title bar. dsh-task-estimator places estimated remaining time, token usage, and cost estimation by model into the session title bar, and supports intelligent LLM estimation. Below, we introduce its features, installation, and usage.
What is it¶
dsh-task-estimator is a DSH plugin maintained by 0x250-t and is licensed under MIT. It targets the DeepSeek Harness web GUI and provides a task estimation window in the session title bar, allowing users to view estimated remaining time, token usage, cost estimation by model (approx. CNY), and optional LLM estimation.
Core Features¶
Heuristic Estimation¶
Real-time calculation based on session projections (sessionStats, tokenUsage, goal):
- Completed rounds
- Token usage
- Time elapsed
- Average per round
- Estimated remaining time, using a 5-round trend extrapolation with a confidence interval
- Estimated completion time
Cost Estimation¶
Replay token usage based on session logs and charge incrementally based on “Model × Time Period”. Time periods include legacy, peak, offPeak, using Beijing Time.
Output includes:
- Total cost
- Breakdown by model: Model, Tokens, Cost
The price table is a built-in reference value that can be modified in settings. Under the legacy tier, peak/off-peak multipliers are derived automatically.
AI Estimation¶
Use the current session model for a lightweight completion to output:
- PERT three-point estimation: Optimistic, Most Likely, and Pessimistic remaining minutes, as well as the expected value
- Remaining rounds
- Remaining tokens
- Task complexity tiering:
XS~XL - METR reliability warning
Current Round Estimation¶
When the agent is thinking, i.e., when the “Deep diving…” status line appears, “Current Round Estimation ≈ X” will be displayed to the right of that line.
This estimation is based on the LLM time trend of the last 5 rounds; if the trend is unavailable, it takes the average of the entire session to estimate the duration of the current round of dialogue.
Interactions¶
The window supports the following interactions:
- Hover to display
- Linear fade-out after moving away for 0.3s
- Click to pin the panel
- Close by clicking anywhere again
- Toggle with
Alt+E - Automatic downgrade for touchscreens
- Clicking inside the panel does not exit
- Scrollable when content is too tall
Settings¶
The settings area includes:
- Price table editing
- Customizable refresh interval, in minutes, supports decimals
- Restore defaults
- Pinned state management
- Pricing schedule (when prices take effect)
Regarding whether the pinned state is written to local storage, different statements exist in verified materials: the settings item mentioned localStorage, while the privacy statement claims all state is process memory with no persistence. Before use, please refer to the current version’s implementation and documentation.
Installation and Enablement¶
It is a bundle plugin and requires restarting the web interface after installation. The verified installation command is:
dsh plugin --profile web add github:0x250-t/dsh-task-estimator#v1.1.0
If installing from a local directory, you need to build first, then add:
cd dsh-task-estimator
npm run build
dsh plugin --profile web add .
In verified materials, the installation command uses #v1.1.0, while the package.json version is 1.1.1. Before installation, please refer to the current README and available tags of the repository.
Typical Usage¶
- Hover over the estimation button on the right side of the session title bar to view details of remaining time, tokens, and approximate cost.
- Click the button to pin the panel; close it by clicking anywhere again.
- Expand the “AI Estimation” section and click “Start Estimation”; you can also set the automatic refresh interval.
- Expand the “Settings” section, edit the price or refresh interval, and save; click “Restore Defaults” when needed.
- While the agent is thinking and the “Deep diving…” status line appears, “Current Round Estimation ≈ X” will be displayed on the right to estimate the duration of the current round.
Use Cases and Notes¶
- Suitable for developers and users of the DSH web GUI, especially scenarios where quick access to session ETA, token usage, and model cost estimation is desired.
- The plugin runs with the permissions of the current dsh process. Check the source code, dependencies, license, and release notes before installation; this project is licensed under MIT.
- The privacy statement claims: all state is process memory, no API keys, secrets, or passwords are hardcoded, and no data is sent out over the network; this excludes AI estimation, which will make a call to the configured model.
- Cost estimation is based on the price table and time period rules; it is an estimate, not a bill. The price table is a built-in reference value and can be modified according to settings.
- AI estimation will call the current session model and may incur model usage costs.
Conclusion¶
dsh-task-estimator centralizes remaining time, token usage, and cost estimation by model into the DSH session title bar, making it suitable for users who need to quickly assess task progress and costs.
GitHub URL: https://github.com/0x250-t/dsh-task-estimator
Verified materials do not provide a directory page URL. If installing via a community directory, please refer to the command provided on the directory page.