SyamStud / dsh-opencode-usage

목록에 있음

OpenCode usage widget for the DeepSeek Harness web sidebar. Live rolling, weekly & monthly plan limits as progress bars.

main기타 소스 보기

설치

npx -y @deepseek-ai/dsh plugin --profile web add github:SyamStud/dsh-opencode-usage

이 설치 명령은 GitHub 저장소 주소에서 생성된 확인되지 않은 시작점입니다.

README

유지 관리자가 작성한 문서 스냅샷입니다.

GitHub에서 보기 ↗
커밋 50b527c동기화 2026. 8. 18.

최근 디렉터리 동기화에서 이 README 스냅샷을 새로 고치지 못했습니다.

dsh-opencode-usage

OpenCode usage widget for the DeepSeek Harness (DSH) web sidebar

Monitor your OpenCode plan limits — rolling, weekly, and monthly — with live progress bars in the DSH web sidebar footer.

DSH


Features

  • Live usage barsRolling, Weekly, and Monthly limits rendered as color-coded progress bars (red at or above 90%, amber at or above 70%, blue otherwise).
  • Human-readable resets — countdowns such as resets in 5d 19h instead of raw ISO timestamps.
  • Sidebar footer widget — a compact OpenCode Usage button that opens an anchored popover with one bar per window and a manual Refresh action.
  • Native look & feel — mirrors the built-in Settings trigger (height, radius, hover states, theme tokens) and collapses to a circular icon in the compact rail.
  • Secure by design — the API key never reaches the browser. A host-side proxy keeps the secret, so there is no CORS exposure and no leaked credentials.

Requirements

  • A DeepSeek Harness (dsh CLI) installation with the web profile enabled — the widget registers into the web sidebar.
  • Node.js ≥ 18 (uses the global fetch API).
  • An OpenCode account, or an existing OpenCode sign-in on the host machine (see API key setup).

Installation

Install the plugin into the web profile. The dsh plugin command forwards to pnpm in the profile directory and appends the package to dsh.profile.bundles automatically:

dsh plugin --profile web add https://github.com/SyamStud/dsh-opencode-usage.git

To use a local checkout instead:

git clone https://github.com/SyamStud/dsh-opencode-usage.git
dsh plugin --profile web add ./dsh-opencode-usage

Then restart the web app:

dsh web

In the browser, hard-refresh with Ctrl+Shift+R so the latest client bundle is served. The OpenCode Usage button appears in the sidebar footer.

API key setup

In most cases no setup is required. If OpenCode is already connected — for example when the DeepSeek Harness is wired to the OpenCode provider and you are signed in — the plugin auto-discovers the key from OpenCode's auth file (~/.local/share/opencode/auth.json) and works immediately.

If the host has no OpenCode sign-in, set the key explicitly:

# Linux / macOS
export OPENCODE_API_KEY="sk-…"
dsh web

# PowerShell (Windows)
$env:OPENCODE_API_KEY = "sk-…"
dsh web

The key is read once on the host and is never exposed to the browser — not in the page, and not in any proxied response.

Usage

  1. Run dsh web and refresh the browser.
  2. In the sidebar footer, click OpenCode Usage (next to Settings).
  3. The popover shows three bars:
    • Rolling — e.g. 29% · resets in 1h 50m
    • Weekly — e.g. 13% · resets in 5d 19h
    • Monthly — e.g. 7% · resets in 28d 0h
  4. Use Refresh to re-fetch on demand, or click outside the popover to close it.

Preview

Sidebar footerPopover with usage bars
Button sits next to Settings at the bottom of the sidebar and collapses to a round icon in the 56px rail.Clicking the button opens an anchored panel showing the three limits and their reset times.

Development

The plugin ships without a build step — source edits are picked up on a page refresh, with no reinstall.

git clone https://github.com/SyamStud/dsh-opencode-usage.git
cd dsh-opencode-usage
dsh plugin --profile web add ./dsh-opencode-usage

Edit:

  • dsh/index.js — host-side proxy, key resolution, routes.
  • dsh/client.js — the sidebar widget and usage popover.

Validate syntax before reloading:

node --check dsh/index.js
node --check dsh/client.js

Project layout

dsh-opencode-usage/
├── package.json        # DSH manifest (dsh.bundle / dsh.client), exports
├── cordis.patch.yml    # bundle patch that mounts the plugin as "opencode-usage"
├── README.md
└── dsh/
    ├── index.js        # host half: key discovery, upstream proxy, routes
    └── client.js       # client half: sidebar widget + usage popover

저장소 정보

언어
JavaScript
라이선스
보고되지 않음
마지막 업데이트
2026. 8. 18. AM 4:55

신중하게 설치하기

소스 코드, 권한, 수명 주기 스크립트, 의존성 및 네트워크 접근을 검토하고 신뢰하지 않는 플러그인은 격리 환경에서 테스트하세요.