TommyFang2077/gh-tea-npm-dsh
GitHub (gh) + Gitea (tea) + npm 命令行工具,用于 DeepSeek Harness (dsh):引导式认证/配置、问题与包管理工具
项目介绍Project Overview
gh-tea-npm-dsh 是一个 DeepSeek Harness 插件,将 GitHub(gh)、Gitea(tea)和 npm 的能力接入代理。它能自动检测并安装 CLI,提供菜单式鉴权引导(环境变量导入、浏览器 OAuth 或手动 token),并支持议题管理与 npm publish 发布,同时附带 90 天令牌到期与轮换提示。需 Node.js ≥ 18;gh/tea 可由插件补装。注意 npm 自动化令牌最长 90 天,发布前应轮换。
gh-tea-npm-dsh is a DeepSeek Harness plugin that brings GitHub (gh), Gitea (tea), and npm into the agent. It auto-detects and installs the CLIs, runs a menu-driven auth flow (env import, browser OAuth device flow, or manual token), and handles issues plus npm publish with a 90-day token expiry reminder. Requires Node.js ≥ 18; gh/tea are installed if missing. Note: npm automation tokens cap at 90 days, so rotate before publishing.
请帮我了解并安装插件:【gh-tea-npm-dsh】【https://github.com/TommyFang2077/gh-tea-npm-dsh】
把上面这条消息直接发给当前会话里的 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
npx -y @deepseek-ai/dsh plugin add @tommyfang/gh-tea-npm-dsh
把 TommyFang2077/gh-tea-npm-dsh 加入你的 DSH 配置(web profile)即可启用。
READMEREADME
gh-tea-npm-dsh
A DeepSeek Harness (dsh) plugin that brings GitHub (gh), Gitea (tea), and npm into the agent. It detects and installs the CLIs, guides the user through authentication with explicit choices, and operates issues and publishes packages.
Features
gh / tea
- detect installation, version, auth status, and token environment variables (values masked)
- one-command install — Homebrew when available, otherwise a no-sudo binary into
~/.local/bin - guided auth: import from env, browser OAuth device flow, or manual token
- issues:
list·view·create·comment·close·reopen
npm
- detect node/npm, login state (
npm whoami), and registry - guided login: browser OAuth device flow (
npm login --auth-type=web) or automation token - publish packages (
npm publish --access public) - 90-day token expiry notice and rotation guidance
Skill
- registers a companion
gh-tea-npmskill that documents the workflows and points at each CLI's own--helpas the authoritative command surface
Requirements
- Node.js ≥ 18 and npm (for the npm tools)
ghandteaare optional — the plugin installs them if missing
Install
npx -y @deepseek-ai/dsh plugin add @tommyfang/gh-tea-npm-dsh
This is a host-only bundle: cordis.patch.yml (referenced by the package's dsh.bundle manifest) inserts the plugin row, and dsh/index.js registers the tools and the skill.
Guided configuration
The plugin never poses open-ended questions. It returns a menu, the agent presents it as options, and the user advances one step at a time.
gh / tea — gitclis_configure:
gitclis_configure method=auto→ current state + next-step menu- install a missing CLI with
gitclis_install, or pick a token source:- env import →
method=env - browser OAuth (GitHub) →
method=web(returns a device code) →method=pollto verify - manual →
gitclis_set_token
- env import →
- verify with
gitclis_status
npm — npm_configure:
npm_configure method=auto→ current state + next-step menu- browser OAuth →
method=web(returns a login URL) →method=pollto verify, or automation token →method=token - publish with
npm_publish(ornpm_publish dry_run=true)
npm token policy (90 days)
npm now caps access tokens — including automation tokens — at a 90-day lifetime. An expired token breaks npm publish, so rotate before it lapses:
- generate a new Automation token at
https://www.npmjs.com/settings/<user>/tokens/new, thennpm_configure method=token; or - re-run
npm_configure method=web.
npm_status surfaces this policy and npm_configure walks through rotation.
Tools
| Tool | Description |
|---|---|
gitclis_status |
detect gh/tea install, version, auth, env tokens (masked) |
gitclis_configure |
guided gh/tea config — auto/env/web/manual/poll |
gitclis_install |
install gh and/or tea |
gitclis_set_token |
store a gh/tea token (never echoed) |
gitclis_token_env |
read/import token environment variables |
gitclis_issue_list |
list issues |
gitclis_issue_view |
view one issue, optionally with comments |
gitclis_issue_create |
create an issue |
gitclis_issue_comment |
comment on an issue |
gitclis_issue_close |
close an issue |
gitclis_issue_reopen |
reopen an issue |
npm_status |
detect node/npm, login state, registry |
npm_configure |
guided npm auth — auto/web/token/poll |
npm_publish |
publish to npm |
Issue tools take a provider argument: github → gh, gitea → tea.
Skill
The companion skill is registered at runtime and shipped on disk at skills/gh-tea-npm/SKILL.md. It documents issue-workflow recipes, the auth flows, and the npm token policy, and defers to gh <cmd> --help, tea <cmd> --help, and npm <cmd> --help for exact flags.
Repository layout
dsh/index.js Host Cordis plugin — registers tools + the gh-tea-npm skill
cordis.patch.yml dsh bundle layer — inserts this package
skills/gh-tea-npm/ companion skill markdown
package.json dsh + exports manifest
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