AgentStack
Browse Sign in
Browse Why AgentStack Sell Docs
Sign in
SKILL verified Apache-2.0 Self-run

Gitops

skill-batteryshark-rekit-gitops · by batteryshark

Drive git through plain verbs — clone, status, commit, branch, switch, stash, push, pull, remote-add, merge, cherry-pick, tag, worktree-add/list/remove, undo, discard, reset-hard — for harnesses or smaller models that can't or shouldn't hand-write git commands, refspecs, or worktree plumbing. Every op runs git non-interactively and returns ONE structured JSON result (branch, ahead/behind, staged…

No reviews yet
0 installs
7 views
0.0% view→install

Install

$ agentstack add skill-batteryshark-rekit-gitops

✓ scanned · ✓ verified, works with Claude Code, Cursor, and more.

Security review

✓ Passed

No issues found. Passed automated security review. · v0.1.0 How review works →

  • Prompt-injection patterns
  • Secret / credential exfiltration
  • Dangerous shell & filesystem operations
  • Untrusted network calls
  • Known-malicious package signatures

What it can access

  • Network access No
  • Filesystem access No
  • Shell / process execution No
  • Environment & secrets No
  • Dynamic code execution No

From automated source analysis of v0.1.0. “Used” means the capability is present in the source — more access means more to trust, not that it’s unsafe.

View the full security report →

Verified badge

Passed review? Show it. Paste this badge into your README, it links to the public security report.

AgentStack Verified badge Links to your public security report.
[![AgentStack Verified](https://agentstack.voostack.com/badges/verified.svg)](https://agentstack.voostack.com/security/report/skill-batteryshark-rekit-gitops)

Reliability & compatibility

Security review passed
0 installs to date
no reviews yet
1mo ago

Declared compatibility

Claude CodeClaude Desktop

Compatibility is declared by the source manifest. End-to-end runtime verification is coming, see below.

Preview Execution monitoring

We're building live execution health for every listing: tool-call success rate, median latency, uptime, and last-checked timestamps, measured, not self-reported. It isn't live yet, so we don't show numbers we can't stand behind.

How agent discovery & health will work →
Are you the author of Gitops? Claim this listing to set pricing, connect Stripe payouts, and keep 70% of every sale.
Sign up to claim

About

Git Operations

A safe, structured wrapper over git for harnesses (or smaller models) that need to use version control without knowing git's syntax, refspecs, or worktree plumbing. You call plain verbs; the skill runs git non-interactively and hands back one JSON object describing what happened.

When to use

Reach for this when an agent needs to commit, branch, stash, push, or set up a worktree, but you don't want it improvising raw git — e.g. a model that knows it should "save my work on a new branch" but would fumble git switch -c, git add, git commit, upstream tracking, or git worktree add. It removes whole classes of footguns: no interactive prompts, no accidental --force, structured errors instead of raw git stderr.

It operates on your own trusted repo — it does not analyse or execute samples.

How it works

gitops [args]. Every op prints exactly one line of JSON to stdout:

{"ok": true,  "op": "commit", "commit": "a1b2c3d", "branch": "feature-x", ...}
{"ok": false, "op": "commit", "error": "nothing to commit (no staged changes)", "hint": "..."}

So a caller never parses git's human output — it reads ok, then the fields it needs. Add -C to any op to target a repo other than the current directory.

Operations

| op | what it does | |---|---| | status | branch, upstream, ahead/behind, and staged / unstaged / untracked file lists | | log [-n N] | recent commits (hash, subject, author, when) | | diff [--staged] [paths] | a diff as text, plus a --stat summary | | branches | local branches + which is current | | add [paths] | stage paths (default: everything) | | commit "" [--path ...] [--author ...] | stage (all by default) then commit; returns the new hash | | branch [start] | create a new branch and switch to it | | switch | switch to an existing branch | | stash [-m msg] [-u] | stash uncommitted changes (-u includes untracked) | | stash-pop / stash-list | restore the latest stash / list stashes | | push [--remote origin] [--force] | push the current branch; sets upstream automatically on first push | | pull [--rebase] / fetch [--remote] | sync with the remote | | clone [dir] [--branch B] [--depth N] | clone a remote repo into a new directory | | remote-add [--name origin] | add a remote to the current repo (default name origin) | | remotes | list configured remotes (name → url) | | merge [--no-ff] [-m msg] / merge --abort | merge a branch into the current one; conflicts come back as {conflicts:[...]} | | cherry-pick / cherry-pick --abort | apply one commit onto the current branch | | tag [-m msg] [--ref] [--delete] [--push] | create (annotated if -m), delete, or push a tag | | tags | list tags (newest first) | | worktree-add (--branch B \| --new-branch B [--start]) | check a branch out into another directory | | worktree-list / worktree-remove --force | list / remove worktrees | | undo | undo the last commit but keep its changes (soft reset — safe) | | discard [paths] --force | destructive: drop uncommitted changes | | reset-hard [ref] --force | destructive: move HEAD + working tree to ref | | init [path] [--initial-branch main] | start a new repo |

Safety rails

  • Data-loss ops refuse without --force. discard, reset-hard, and

worktree-remove won't run unless you pass --force; the refusal JSON explains the safer alternative (usually stash). A small model can't nuke work by accident.

  • push --force uses --force-with-lease, so it won't clobber commits it hasn't seen.
  • Non-interactive. Credential, editor, and pager prompts are disabled — git fails

fast with a clear error rather than hanging a headless harness.

  • commit stages everything by default (or just --path targets) and returns a

clean "nothing to commit" instead of a cryptic git error when there's nothing to do.

Examples

rekit run gitops clone https://github.com/you/repo    # into ./repo
rekit run gitops status
rekit run gitops branch feature-x            # new branch, switched
rekit run gitops commit "add parser"         # stage all + commit
rekit run gitops remote-add git@github.com:you/repo.git   # wire up origin
rekit run gitops push                         # sets upstream on first push
rekit run gitops stash -u                     # shelve everything, incl. untracked
rekit run gitops worktree-add ../wt --new-branch experiment
rekit run gitops discard --force              # throw away uncommitted changes

Prerequisites

git on PATH (>= 2.5, for worktree). Pure-Python stdlib runner; nothing to vendor.

Source & license

This open-source skill is cataloged on AgentStack and links to its original source — we do not rehost the code.

Install and usage instructions live in the source repository linked above.

Reviews

No reviews yet, be the first.

Versions

  • v0.1.0 Imported from the upstream source.