agentsclimarketplace

Speq git operations

Skill marconae/speq-skill/.claude/skills/speq-git-operations

A light-weight and straightforward system for spec-driven development with Claude Code or OpenAI Codex. Written in Rust πŸ¦€

Install
npx -y skills add marconae/speq-skill --skill speq-git-operations

Assembled from the repository path, not quoted from the project. Check it against their README if it does not work.

What its author says it does

Copied from the file, not written here

The git/gh operation-to-command mapping and return formats for git-agent β€” the sole write-permitted actor in this system. Triggered by git-agent.

SKILL.md

2.9 KB, as published. Nobody here has run it

Git Operations

Unlike other skills in this system, this one documents write commands β€” that's intentional. git-agent is the sole component permitted to write git history or touch a remote; this skill is its exclusive execution reference and does not apply to any other agent.

create-branch

Params: branch (exact name), base (optional; default: repository default branch). git fetch, then create branch off base and check it out. Returns:

Branch: <branch> (created off <base>)

checkout

Params: target (a branch name, a PR number, #N, or a PR URL). Resolve and check out: PR number/URL β†’ gh pr checkout <target>; a branch that exists locally or remotely β†’ check it out (git fetch first if remote-only). If target matches nothing, report not-found β€” create nothing. Returns:

Branch: <branch> (checked out)
PR: <none | #N (draft|ready) β€” <url>>

commit

Params: paths (files/globs to stage), message (exact commit message). git add <paths>, git commit -m "<message>". Nothing staged or nothing changed is a no-op, not an error. Returns:

Committed: <sha> "<subject>"

or

Nothing to commit

push

Params: none β€” pushes the current branch (-u origin <branch> on first push). Returns:

Pushed: <branch>

create-pr

Params: title, body, draft (bool), base (optional; default: default branch), head (optional; default: current branch). If a PR already exists for head, do not recreate it β€” return it unchanged. Otherwise gh pr create with the given title and body, adding --draft when draft is true. Returns:

PR: #N (draft|ready) β€” <url> (created | already existed)

ready-pr

Params: pr (optional; default: PR for current branch). gh pr ready <pr> when it is a draft; no-op if already ready. Returns:

PR: #N (ready) β€” <url>

comment-pr

Params: pr (optional; default: PR for current branch), body (exact comment text). gh pr comment <pr> --body "<body>". Returns:

Comment: <url>

create-issue

Params: title, body, labels (optional). gh issue create with the given fields. Returns:

Issue: #N β€” <url>

comment-issue

Params: issue (number or URL), body (exact comment text). gh issue comment <issue> --body "<body>". Returns:

Comment: <url>

read-comments

Params: target (PR or issue number/URL; default: PR for current branch), since (optional ISO timestamp β€” return only comments and reviews posted at or after it). gh pr view --json comments,reviews or gh issue view --json comments (or gh api). Concatenate each body as plain text with author and timestamp. An empty result is valid. Returns:

Comments found: N
<author> @ <timestamp>:
<body>
...

or

Comments found: 0

Keep looking

Skills are one crate of 328,083. Ordering is by how many stacks a row turns up in, so the top of any crate is what has actually been picked rather than what has the most stars.