Skip to content
Agentmart
Submit a tool

github

Commit and push repo changes to GitHub using plain git.

Skill by irisworks

IndexedApache-2.0★ 13
Write a review

Install

Works with Claude Code, Claude apps, Codex, Cursor, Gemini CLI, GitHub Copilot, VS Code, OpenCode, Goose, Windsurf. Read the repository before you give any tool access to your data.

npx agentmarket install skill/irisworks-github

Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.

Get the weekly diff

The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.

We use your email only for this newsletter. Privacy

About

Commit and push repo changes to GitHub using plain git.

No reviews yet. Installed it? Reviews come from verified installers only. How reviews work

Permissions

What this skill can do and what it asks for, from its SKILL.md and code. Checked Oct 25, 2026.

Tools
No tools found
Secrets
None asked for
Install scripts
None found

Network hosts it talks to 1

  • codeload.github.com · found in install command

Files it touches

  • ~/.claude/skills/github

What's inside

Skill name
github
Description
Commit and push repo changes to GitHub using plain git.
License
Apache-2.0
Instructions
74 lines in SKILL.md · view on GitHub

Files (1)

  • SKILL.md

SKILL.md (first lines)

# Skill: github

Commit and push changes to GitHub. All skills must be committed before use.
GitHub is Iris's long-term memory. The VM is ephemeral.

## Repo location

The git repo is `/iris/repo` — **not** `/iris`. `/iris` is the install root
(env file, data dirs, skills symlink) and is never itself a git repository.
If a git command fails with "not a git repository", the fix is to target
`/iris/repo`, not to `git init` in `/iris`.

Commit identity (`user.name`/`user.email`) is already configured locally in
`/iris/repo` by bootstrap — plain `git commit` just works, no `-c` flags or
wrapper needed.

## Rules

1. Always commit before deploying or applying
2. Commit message should describe what changed and why
3. Never commit `.env` files, secrets, or `*.tfstate`
4. Push immediately after committing — don't let commits sit local-only
5. If GitHub is unreachable, halt and escalate to the operator
6. Always push to `main` — never invent a feature/test branch
7. Before pushing, confirm `${IRIS_GITHUB_ORG}/${IRIS_GITHUB_REPO}` (lowercased)
   is not `irisworks/iris-core` — that's the public upstream this install was
   forked from, and Iris's own memory/skill commits must never land there. If
   it is, halt and escalate to the operator instead of pushing.

## Usage

```bash
cd /iris/repo
git add <path>
git commit -m "<message describing what changed and why>"
git push "https://x-access-token:$(get-secret GITHUB-TOKEN)@github.com/${IRIS_GITHUB_ORG}/${IRIS_GITHUB_REPO}.git" main
```

The PAT is already configured on any bootstrapped install — fetch it with
`get-secret GITHUB-TOKEN`, never from the `GITHUB_TOKEN` env var or `/iris/.env` (in
store/proxy secrets mode it is not in the environment). `IRIS_GITHUB_ORG` and
`IRIS_GITHUB_REPO` are plain config in the environment. Don't ask the operator
to re-supply a PAT or set up SSH; if `get-secret GITHUB-TOKEN` fails, say so
and ask them to store it with `set-secret`.

Pushing the full remote URL with the token inline (rather than rewriting
`origin`) avoids permanently mutating the repo's remote — `origin` on a fresh
clone points at the public upstream it was cloned from, not this install's
private overlay, so leave it alone. Keep the `x-access-token:` username —
a token-only URL (`https://<token>@…`) can fail with
`could not read Username` after GitHub redirects the push.

## Common operations

```bash
# Commit a new skill
cd /iris/repo && git add skills/my-new-skill/SKILL.md && \
  git commit -m "feat: add my-new-skill"

# Commit terraform changes
cd /iris/repo && git add terraform/ && git commit -m "infra: add digest agent containers"

# Check status
cd /iris/repo && git status && git log --oneline -5
```

## Notes

- Org: configured via `IRIS_GITHUB_ORG`, Repo: configured via `IRIS_GITHUB_REPO`
- If a push fails due to conflicts: `git pull --rebase origin main` then retry
- If GitHub rejects the push over permissions, that's GitHub's own access
  control doing its job — halt and escalate rather than working around it

From irisworks/iris-core, Apache-2.0.

More from irisworks/iris-core

Signals

Stars
13
Forks
3
Open issues
7
Last commit (this folder)
Oct 24, 2026 (4 days ago)
Last release
Oct 14, 2026 (14 days ago)

From GitHub (fetched Oct 24, 2026).

Details

License
Apache-2.0
First seen
Oct 24, 2026
Last checked
Oct 24, 2026

More from irisworks

Cite this page

github skill. Agent Mart. https://agentmart.dev/skills/irisworks-github (last updated 2026-10-24)