Token导航 LogoToken导航TokenDH.com
开发可写文件github未标认证来源可访问许可证需确认审计提醒

ghdGHD 命令行

Agent Skill

ghd 用于处理 GitHub 仓库、Issue、Pull Request 和代码协作信息,适合在 Codex、Claude、Cursor、Gemini CLI 中需要围绕仓库状态、代码变更或协作事项进行整理时使用。可结合来源仓库、安装命令和原始 README 继续核验具体用法。安装前建议确认权限范围、维护状态,以及是否会触发联网、命令执行或文件读写。

总安装

339

周安装

14

GitHub Stars

公开资料未说明

下载量

111
CodexClaudeCursorGemini CLI

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

GitHub

来源数

2

许可证

unknown

最后核验

2026-05-01

来源状态

来源可访问

安装方式

通过对话安装

复制提示词发给支持本地命令或 Skills 的 AI 助手,先确认命令和权限,再让它执行。

请帮我安装这个 Agent Skill:ghd(GHD 命令行)
来源仓库:https://github.com/ethan-huo/ghd
仓库路径:skills/ghd
安装命令:
npx skills add https://github.com/ethan-huo/ghd --skill ghd
安装前请先检查当前环境是否支持对应 CLI,并向我确认将要执行的命令、安装目录、联网范围和文件读写权限;确认后再执行。

命令行安装

复制命令到本机终端执行。该命令会通过 npx skills 从第三方来源获取 Skill;本站只展示命令,不托管安装包,也不自动执行。

skills.shnpx skills
npx skills add https://github.com/ethan-huo/ghd --skill ghd

简介

用于处理 GitHub 仓库、Issue、Pull Request 和代码协作信息。

  • 适合在需要围绕仓库状态、代码变更或协作事项进行整理时使用。
  • 安装命令:npx skills add https://github.com/ethan-huo/ghd --skill ghd
  • 建议确认权限范围、维护状态及是否会触发联网、命令执行或文件读写。
  • 可结合原始 README 继续核验具体用法。

SKILL.md

ghd

Local-first CLI for AI agents to conduct turn-based discussions on GitHub issues.

Repo Detection

ghd start 42 --as codex          # auto-detects owner/repo from git remote
ghd send 42 --as codex --message "..."

Fully qualified owner/repo/issue still works and takes priority. Override with GHD_REPO=owner/repo env var.

Command Reference

CommandWhat it doesContext costWhen to use
startFetches issue + ALL comments from GitHub, dumps full historyHIGH — full dump into your contextOnce at conversation entry. Never mid-conversation.
sendWrites 1 message locally, syncs to GitHubLow — no output unless --waitEvery time you reply
send --waitSend + block for replyLow — returns only new messagesSend and wait in one step
recvReturns only NEW messages (after your cursor)Low — incrementalCheck for messages without blocking
waitBlocks until another agent repliesLow — returns only new messagesWhen you need to pause for a reply
logDumps all messages (no cursor interaction)HIGH — full dumpDebug only. Never in normal flow.
statusShows session info + cursorsMinimal — metadata onlyCheck who's in the session

Conversation Lifecycle

┌─────────────────────────────────────────────────────────┐
│ Phase 1: ENTER (once)                                   │
│   ghd start <N> --as <you> --role "..."                 │
│   → Full context dump. Read carefully. NEVER repeat.    │
├─────────────────────────────────────────────────────────┤
│ Phase 2: CONVERSATION LOOP (repeat)                     │
│   ghd send <N> --as <you> --message "..." --wait        │
│   → Sends your reply, blocks until other agent replies. │
│   → When it returns, read the reply and loop.           │
├─────────────────────────────────────────────────────────┤
│ Phase 3: EXIT                                           │
│   ghd send <N> --as <you> --message "Final summary."    │
│   → No --wait. Conversation ends.                       │
└─────────────────────────────────────────────────────────┘

Rules

  1. start is an entry point, not a refresh. It dumps the ENTIRE issue + all messages into your context. Calling it mid-conversation destroys your working memory. Use recv to check for new messages instead.
  2. recv is your incremental read. It returns only messages after your cursor. Zero context cost if nothing is new. Use this when you need to poll without blocking.
  3. wait and send --wait are blocking calls — trust the block, do not poll. wait uses fs.watch internally and returns the instant a new message file appears. There is zero benefit to polling, checking, or setting short timeouts. Run the command and let it block. If you need to cancel, the user can kill it trivially (Ctrl-C / Esc). If you must set a timeout, match it to the --timeout value (default 600s) — do not use shorter intervals to "check" on it.
  4. send --wait is the default loop primitive. It sends your message and blocks until a reply arrives. This is the most common pattern.
  5. Never call log in normal flow. It dumps all messages without cursor interaction — same context cost as start but without updating your cursor. Only use for debugging.

Commands

# Enter a conversation (ONCE per session)
ghd start <N> --as <name> [--role "<role>"]

# Create a new issue
ghd start <owner/repo> --as <name> --title "..." [--body "..."]

# Send a message
ghd send <N> --as <name> --message "..."
ghd send <N> --as <name> --message @file.md           # read from file
ghd send <N> --as <name> --message "..." --wait        # send + block for reply
ghd send <N> --as <name> --message "..." --wait --timeout 120

# Check for new messages (non-blocking, cursor-based)
ghd recv <N> --as <name>

# Block until another agent replies
ghd wait <N> --as <name> [--timeout 600]

# Debug only
ghd log <N> [--last N]
ghd status <N>

Example: Claude + Codex

Codex is assigned to implement a feature. Claude is the architect.

# 1. Enter the conversation (ONCE)
ghd start 42 --as codex --role "Implementer"
# → Outputs full issue body + all prior messages. Read them.

# 2. Reply and wait for feedback
ghd send 42 --as codex --message "Understood. Starting with the gateway middleware." --wait
# → Blocks until claude replies...
# → Returns claude's reply. Read it.

# 3. Do the work, then reply
#    ... (implement the feature) ...
ghd send 42 --as codex --message @./summary.md --wait
# → Sends summary, waits for claude's review...

# 4. Final message (no --wait, conversation done)
ghd send 42 --as codex --message "All feedback addressed. PR ready."

Anti-Patterns

Don't do thisDo this insteadWhy
ghd start mid-conversation to "refresh"ghd recvstart dumps ALL messages, recv returns only new ones
ghd log to read messagesghd recvlog dumps ALL messages without advancing cursor
ghd send then ghd wait separatelyghd send --waitOne command, same effect
Poll/check on a running waitJust let it blockwait uses fs.watch — returns instantly on new message, polling adds nothing
Inline long messages in --message "..."--message @file.mdAvoids shell escaping issues

Sending Long Messages

Write your message to a file, then reference it with @:

ghd send 42 --as codex --message @./reply.md
ghd send 42 --as codex --message @~/notes/update.txt

Paths resolve relative to cwd. ~/ expands to home. Always prefer @file for messages longer than one sentence.

适合场景

01

用户想查找某类 Agent Skill 时

02

需要根据任务场景推荐可安装能力包时

03

需要对比不同来源的安装命令和来源信息时

能力概览

能力 1

按任务关键词查找相关 Skills

能力 2

展示可复制的安装命令

能力 3

保留来源站点、仓库和原始说明,方便继续核验

能力 4

展示第三方安全扫描或审计结果

安装后应在对应宿主中按原始 README 的触发条件使用;具体调用方式请以来源页面和 README 为准。

平台分布

Codex

34.51%
按下载量换算38

Claude

31.4%
按下载量换算35

Cursor

18.94%
按下载量换算21

Gemini CLI

8.9%
按下载量换算10

安全审计

Gen Agent Trust Hub

通过

Socket

通过

Snyk

可疑

权限和风险

可写文件

该 Skill 可能写入或修改本地文件,使用前需要确认目标目录和修改范围。

安装前确认

本站仅展示第三方公开信息,不托管安装包,不提供自动安装或运行环境。安装前应自行审查源码、依赖和命令行为。来源安全扫描存在 warning/failed 结果,不能写成本站确认安全。当前只有一个来源,正式发布前建议补源仓库或其他目录站核验。

来源信息

继续浏览同类 Skills