jiay98528-dev/dsh-model-sync
将线上供应商模型列表写入DSH设置。Composer环显示当前会话模型的5小时/7天计划窗口或按量余额。
项目介绍Project Overview
dsh-model-sync 是 DSH 插件,可把各服务商最新模型 ID 写入设置,并在用量页与输入框展示 5 小时、7 天窗口、余额和重置倒计时。适合需要同步模型、查看配额或监控当前会话模型额度时使用。注意环位置绑定 DSH 0.1.0-rc.6,部分服务商无公开额度接口。
dsh-model-sync is a DSH plugin that writes each provider’s latest model IDs into settings and shows 5-hour/7-day quota windows, balance, and reset countdowns in the Usage page and composer ring. Use it to keep model lists current or monitor session-model limits. The ring depends on DSH 0.1.0-rc.6 composer class names, and some providers have no public quota API.
请帮我了解并安装插件:【dsh-model-sync】【https://github.com/jiay98528-dev/dsh-model-sync】
把上面这条消息直接发给当前会话里的 DSH,让它帮你了解并安装。安装命令不一定准确,发给 DSH 更稳。Send this message to DSH in your current session. CLI install commands may not be accurate across systems — DSH will figure it out for you.
或使用命令行安装(适合开发者)Or use CLI install (for developers)
命令行安装CLI Install
dsh plugin --profile web add dsh-model-sync
把 jiay98528-dev/dsh-model-sync 加入你的 DSH 配置(web profile)即可启用。
READMEREADME
dsh-model-sync
English · 中文
Writes each provider's live model list into DeepSeek Harness settings. The composer ring follows the model this session is using. Plan routes read 5h and 7d windows, metered routes read the balance left since the last top-up. With windows and a top-up pack together, the icon draws the windows and keeps the pack in the hover card.
It takes two settings pages, one for fetching model ids per provider and one for per-model usage. Model Sync (sync-arrow icon) writes new model ids from each provider into settings. Usage lists plan windows, cumulative counts, and API balance. Resets show as countdowns such as 2d 3h left. The 5h and 7d windows each get their own row. UI text follows the DSH language setting, English or Chinese.
Screenshots
| 中文 | English | |
|---|---|---|
| Model Sync | ![]() |
![]() |
| Usage | ![]() |
![]() |
| Composer | ![]() |
![]() |
A model with both limits draws two rings, inner 5h, outer 7d. Progress bar colors follow the remaining quota.
Install
On npm.
dsh plugin --profile web add dsh-model-sync
The GitHub source also ships prebuilt lib/, no allowBuilds.
dsh plugin --profile web add github:jiay98528-dev/dsh-model-sync
Restart dsh web, refresh the page, open Settings → Model Sync. The plugin is listed in the awesome-dsh-plugin market list.
The package ships a cordis.patch.yml bundle patch (dsh.bundle) and declares dsh.client.immediately: true, so it takes effect on install with no manual config.
Usage
Model Sync
- Settings → Model Sync.
- Refresh if the list is empty.
- Each card lists the provider id,
baseURL, and model chips. A blue outline marks ids not in settings yet. Apply N new models writes them tollm-pi-ai.providers.<id>.models. - The collapsed Enable plugins block toggles this plugin and the optional
sub-model-access, writing the disabled flag in cordis.patch.yml. Takes effect live.
MiniMax, Kimi Coding, and OpenAI Codex have no OpenAI /models endpoint. The plugin uses the known catalog ids.
Usage
- Settings → Usage.
- Each provider lists its 5-hour and 7-day windows, one row each, with remaining percent, vendor cumulative counts, a reset countdown, and a colored bar.
- Metered rows show
current / baseline. The first sample becomes the baseline. To count spend from before the plugin was enabled, click Use current balance as baseline. The balance row also records when the baseline was set. - The page auto-refreshes every 60 seconds. Refresh pulls immediately.
Composer rings
- Pick a model as usual.
- The ring is right of the model name and left of the context meter. It follows the session model and switches with it.
- Hover the ring for a detail card titled
provider / modelfor this session. Each window gets a row with remaining percent and reset countdown, for example5 hours left 100% · 2h 15m left. - Other providers stay on the Usage page.
Quota sources
| Provider | Icon | Source |
|---|---|---|
openai-codex |
5h / 7d | chatgpt.com/backend-api/wham/usage |
kimi-coding |
5h / 7d, top-up pack in the hover card | api.kimi.com/coding/v1/usages |
zai |
5h / 7d | api.z.ai/api/monitor/usage/quota/limit |
minimax-cn |
5h / 7d | api.minimaxi.com/v1/api/openplatform/coding_plan/remains |
xai |
7d | grok.com gRPC-web, ported from CC Switch |
deepseek-official |
balance vs last top-up | api.deepseek.com/user/balance |
xiaomi |
no data | no public plan API |
The DeepSeek metered baseline lives in $DSH_HOME/profiles/<profile>/model-sync.baseline.json. A reading above the stored baseline counts as a top-up and resets the baseline.
Config
- id: model-sync
name: dsh-model-sync
config:
profile: web
pollMs: 60000
| Field | Default | Meaning |
|---|---|---|
profile |
web |
Which $DSH_HOME/profiles/<name> to read and write |
pollMs |
60000 |
Poll interval parameter, minimum 5000. Pages currently refresh quota every 60 seconds |
Notes
- Host code lives under
node_modules. After changing and rebuilding this package, restartdsh web. Client-only edits need a page refresh. - Quota calls use credentials already stored in DSH. The plugin keeps no keys of its own.
- Ring placement is bound to DSH 0.1.0-rc.6 composer class names.
- Changelog is CHANGELOG.md.
License
MIT






nexu-io/open-design
freestylefly/awesome-gpt-image-2
anywhere-labs/dsh-desktop
walkinglabs/learn-harness-engineering
awesome-dsh-plugin/awesome-dsh-plugin
MemTensor/MemOS