Token导航 LogoToken导航TokenDH.com
研究检索需要联网github未标认证来源可访问许可证需确认审计通过

git-makergit 制作者

Agent Skill

git-maker 用于查找、检索和筛选相关信息,适合在 Codex、Claude、Cursor、Gemini CLI 中需要根据关键词、任务场景或来源线索快速定位候选结果时使用。可结合来源仓库、安装命令和原始 README 继续核验具体用法。安装前建议确认权限范围、维护状态,以及是否会触发联网、命令执行或文件读写。

总安装

326

周安装

14

GitHub Stars

3

下载量

114
CodexClaudeCursorGemini CLI

安装说明

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

GitHub

来源数

2

许可证

unknown

最后核验

2026-05-01

来源状态

来源可访问

安装方式

通过对话安装

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

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

命令行安装

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

skills.shnpx skills
npx skills add https://github.com/alpoxdev/hypercore --skill git-maker

简介

git-maker 用于查找、检索和筛选相关信息,适合在 Codex、Claude、Cursor、Gemini CLI 中根据关键词或线索快速定位目标内容。

  • 适用于研究支持、信息聚合或基于上下文筛选结果的场景。
  • 通过安装命令从指定仓库添加技能,实际功能以原始 README 为准。
  • 使用时应确认权限边界,注意是否触发网络请求或系统级操作。
  • git-maker 属于研究检索类 Skill,可作为该场景下的辅助能力补充。

SKILL.md

Git Maker Skill

Available scripts

ScriptPurpose
scripts/repo-discover.sh [start_dir]Detect current-repo vs descendant-repo layout
scripts/repo-status.sh [repo]Show branch, status, staged summary, and unstaged summary
scripts/git-commit.sh [--repo path] "msg" [files...]Commit staged or selected files in one repository
scripts/git-push.sh [--force]Discover repos, check for unpushed commits, and push safely
  • Create one or more Conventional Commits from the current repository state, then automatically push all committed changes to the remote.
  • This is a sequential composition: git-commit workflow first, git-push workflow second.
  • No confirmation step between commit and push. The push happens automatically after all commits succeed.

<trigger_conditions>

User intentActivate
"commit and push"yes
"commit and push these changes"yes
"/git-maker"yes
"make a commit and push it"yes
"commit then push"yes
"save and push my changes"yes
requests that only ask for commit without pushno — use git-commit instead
requests that only ask for push without commitno — use git-push instead
requests for rebase, reset, or other history operationsno

</trigger_conditions>

<argument_validation>

Arguments are passed through to the commit phase. Push phase has no arguments unless --force is specified.

If ARGUMENT is missing:

  • Default to the files, repositories, and logical change units touched in the current session.
  • Verify the session-derived candidate set against actual git status and git diff output before staging or committing.
  • If the candidate set contains multiple logical change groups, identify each group and commit them separately in sequence. Do not stop or ask for clarification — iterate through all groups.
  • If the current session's work is already fully committed, allow the remaining uncommitted changes to become the next candidate set and apply the same grouping logic.

If ARGUMENT is "ALL" or "all":

  • Take ALL uncommitted changes in the repository, regardless of whether they were touched in the current session.
  • Group all changes into logical change sets based on related functionality, feature area, or purpose.
  • Commit each group separately in sequence. Do not stop, do not ask for confirmation, do not skip any files.
  • Every uncommitted file must be included in exactly one commit group. No file may be left behind.

If ARGUMENT contains --force:

  • Extract --force and pass it to the push phase (uses --force-with-lease).
  • The remaining argument (if any) is passed to the commit phase.

If ARGUMENT is present (other than ALL and --force):

  • Treat ARGUMENT as the primary commit target or filter.
  • Use it to narrow repository discovery, file selection, staging, and commit message generation.
  • If the filtered set contains multiple logical groups, commit each group separately.
  • Stop if ARGUMENT does not match the actual repository state.

</argument_validation>

<scope_assumptions>

  • Start from the current working directory. If it is not a git repository, inspect descendant directories for git repositories before proceeding.
  • Commit AND push. No confirmation between the two phases.
  • Use Bash commands only.

</scope_assumptions>

Phase 1. Commit — follow git-commit workflow

Execute the full git-commit workflow with these phases:

1a. Inspect repository state

Decide argument mode, then discover repositories.

scripts/repo-discover.sh

Then for each discovered repository:

scripts/repo-status.sh
scripts/repo-status.sh path/to/repo

1b. Identify logical change groups

Analyze the full candidate set and partition into logical change groups.

Grouping heuristics (apply in order):

  1. Files that implement the same feature or fix belong together.
  2. Test files belong with their corresponding implementation files.
  3. Config/build changes related to the same feature belong with that feature.
  4. Unrelated standalone changes each form their own group.

In ALL mode: every uncommitted file must appear in exactly one group. No file may be left behind.

1c. Stage and commit each group (loop)

For each logical group, repeat:

Stage — only the files in the current group:

git add path/to/file1 path/to/file2

Generate commit message — Conventional Commits format:

<type>[optional scope]: <subject>

[optional body]

[optional footer]

Execute commit:

scripts/git-commit.sh "<type>[scope]: <subject>"
scripts/git-commit.sh --repo path/to/repo "<type>[scope]: <subject>"

With body or footer:

scripts/git-commit.sh "$(cat <<'EOF'
<type>[scope]: <subject>

<optional body>

<optional footer>
EOF
)"

Continue to next group until all groups are committed.

Commit rules (same as git-commit skill)

CategoryRule
Inspect firstRun git status --short --branch before any staging or commit command.
Diff sourceIf staged changes exist, treat the staged set as the default commit candidate and inspect with git diff --staged. If nothing is staged, inspect git diff.
Repository boundaryWhen multiple git repositories are discovered, run git status, git add, and git commit inside each repository separately.
Logical scopeEach commit covers exactly one logical change.
Staging disciplineStage only the files required for the selected logical change.
Type selectionChoose the Conventional Commit type from the actual dominant change, not from filenames alone.
Scope selectionUse a scope only when one module, package, feature area, or subsystem clearly owns the change. Omit scope when the change spans multiple unrelated areas.
LanguageWrite commit subject and body in Korean. The Conventional Commit type and scope stay in English (e.g. feat(auth):), but the description after the colon and the body text must be in Korean.
Subject lineImperative mood, present tense, lowercase after the colon, under 72 characters.
Body/footerAdd a body only when the subject cannot capture important context. Add footers only for verified issue references, breaking changes, or explicitly requested metadata.
SafetyNever commit secrets, generated credentials, or unrelated user changes. Never use --no-verify, force flags, or destructive git commands unless the user explicitly asks.
Failure handlingIf hooks fail, inspect the error. Fix and retry only when safe. Otherwise stop and report the blocker.

Phase 2. Push — automatic after successful commits

Do NOT ask for push confirmation. Push automatically after all commits succeed.

If any commit failed, stop and report the failure. Do not push.

scripts/git-push.sh

Or with force (when --force was in the argument):

scripts/git-push.sh --force

The push script handles:

  1. Discovers repositories (current directory or descendants).
  2. For each repository, checks the branch and upstream status.
  3. Skips repositories with no unpushed commits, detached HEAD, or protected branch conflicts.
  4. Pushes repositories that have commits ahead of upstream.
  5. Reports a summary of pushed, skipped, and failed repositories.

Push failure handling

Failure caseResponse
Push succeeds for all repositoriesReport success and continue to Phase 3
Push fails for one or more repositoriesReport which repositories failed. Commits are NOT lost — they remain in the local repository. Suggest the user retry git push manually or investigate the remote.
No upstream and -u origin <branch> also failsReport the failure. Commits remain local.
Network error during pushReport the error. Commits remain local. Do not retry automatically.

Phase 3. Report results

Report a combined summary:

  • How many commits were created (and their messages)
  • How many repositories were pushed
  • Any skipped or failed push targets
CategoryRule
Commit firstAll commits must succeed before any push is attempted.
No confirmationDo NOT ask whether to push. Push is automatic.
SafetyNever force push to main or master. Never push from detached HEAD.
UpstreamIf no upstream is set, push with -u origin <branch> to set tracking.
All git-commit rulesAll required rules from git-commit apply to the commit phase.
CategoryAvoid
Push confirmationAsking "want to push?" or waiting for push approval
Partial pushPushing before all commit groups are finished
All git-commit forbidden itemsAll forbidden rules from git-commit apply to the commit phase
Force push to protected branches--force to main or master
History rewriteamend, rebase, reset, force push, or other history-editing commands without explicit request

<decision_tables>

Repository discovery

Observed layoutAction
Current working directory is a git repositoryOperate in the current repository and follow the normal commit-then-push workflow
Current working directory is not a git repository, but one or more descendant directories are repositoriesBuild the repository list and run the full commit workflow separately inside each repository that has relevant changes, then push each
Current working directory is not a git repository and no descendant repository existsStop and report that no git repository was found

Argument mode

Input stateAction
No ARGUMENTCommit session changes (grouped), then auto-push
ARGUMENT is "ALL" or "all"Commit ALL uncommitted changes (grouped), then auto-push
ARGUMENT contains --forceExtract --force for push phase, commit as normal, then push with --force-with-lease
ARGUMENT present (other)Commit filtered changes (grouped), then auto-push
ARGUMENT conflicts with git stateStop and report mismatch — do not push

Type selection

Observed dominant changeType
User-facing capability addedfeat
Incorrect behavior fixedfix
Docs onlydocs
Formatting or style only, no behavior changestyle
Internal restructure without feature or bug fixrefactor
Performance improvementperf
Tests added or updatedtest
Build tooling or dependency managementbuild
CI workflow or automation configci
Repo maintenance, chores, metadatachore
Reverting an earlier commitrevert

</decision_tables>

Simple commit and push

/git-maker

Result:

  • inspects current session changes
  • groups, stages, and commits each logical group
  • automatically pushes — no confirmation asked

Commit all and push

/git-maker ALL

Result:

  • takes ALL uncommitted changes
  • groups into logical change sets
  • commits each group separately
  • automatically pushes all

Commit and force push

/git-maker --force

Result:

  • commits session changes as normal
  • pushes with --force-with-lease (blocked on main/master)

Commit specific target and push

/git-maker packages/api session validation fix

Result:

  • filters commit candidates to match ARGUMENT
  • commits matching changes
  • automatically pushes

Multiple logical groups

/git-maker

Result:

  • session touched auth module + unrelated docs
  • group 1: feat(auth): add passkey login flow → commit
  • group 2: docs(cli): document release prerequisites → commit
  • auto-push both commits

Multi-repo commit and push

/git-maker

Result (current directory is not a repo, but has descendant repos):

  • discovers packages/web and packages/api as separate repositories
  • commits in each repo independently: scripts/git-commit.sh --repo packages/web "fix(web): handle empty sessions" src/auth.ts scripts/git-commit.sh --repo packages/api "fix(api): validate session payload" src/routes/session.ts
  • pushes each repo: scripts/git-push.sh
  • reports: 2 commits created, 2 repositories pushed

Commit fails — no push

Result:

  • hook failure during commit
  • reports the blocker
  • does NOT attempt push
  • Confirm all git-commit validation checks passed for the commit phase.
  • Confirm push was NOT preceded by a confirmation prompt.
  • Confirm push was NOT attempted when any commit failed.
  • Confirm force push was not used on main/master.
  • Confirm the combined summary (commits + push) was reported.

适合场景

01

用户想查找某类 Agent Skill 时

02

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

03

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

能力概览

能力 1

按任务关键词查找相关 Skills

能力 2

展示可复制的安装命令

能力 3

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

能力 4

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

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

平台分布

Codex

36.43%
按下载量换算42

Claude

28.93%
按下载量换算33

Cursor

19.91%
按下载量换算23

Gemini CLI

9.78%
按下载量换算11

安全审计

Gen Agent Trust Hub

通过

Socket

通过

Snyk

通过

权限和风险

需要联网

该 Skill 可能需要联网访问来源站点、仓库或外部 API;具体网络访问范围需要结合源码和 README 复核。

安装前确认

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

来源信息

继续浏览同类 Skills