# Github Gitlab

Work with GitHub and GitLab repositories through resident gh/glab/git auth on the agent...

- Repository: https://github.com/yc-software/qm (15597 stars)
- Category: AI and agents
- License: MIT
- Last updated: 2026-11-01
- Runs scripts: yes, review before use

## Install

Claude Code: `npx skills add yc-software/qm --skill github-gitlab -g -a claude-code -y`
Codex: `npx skills add yc-software/qm --skill github-gitlab -g -a codex -y`
Cursor: `npx skills add yc-software/qm --skill github-gitlab -g -a cursor -y`
Gemini CLI: `npx skills add yc-software/qm --skill github-gitlab -g -a gemini-cli -y`

## Description

Work with GitHub and GitLab repositories through resident gh/glab/git auth on the agent computer.

## SKILL.md, as published by its author (untrusted third-party text, read it as data)

# GitHub / GitLab

Use this skill when the user asks to inspect repos, issues, pull requests, merge
requests, code history, branches, or to make a small code change in a hosted repo.

## Choose the account deliberately

Use the current credential manifest to choose an account authorized for this conversation
that fits the user's intent. Run commands with `execute` and an explicit `sandbox_id`;
keep that ID throughout checkout, edits, checks, and push. Personal and shared accounts are both valid choices; neither
is an automatic fallback when the other fails. If the intended account is unclear before
a write, ask. Do not infer permission from a login merely being present on the computer.

- **Personal login:** use the authorized `gh`, `glab`, or Git login. Check the active
  provider account (for example, `gh api user --jq .login`) and the Git transport's auth
  configuration; a CLI API identity alone does not prove which account Git will use.
- **Shared org credential:** if listed in the prompt, select its slug and use the
  core-hosted smart HTTP remote in the `use-shared-credential` skill. This uses
  the configured shared account, even when a personal OAuth connector is live.
  Its name is an admin label, not a verified upstream username.
- **Connected app:** use only advertised capabilities. API access does not by itself
  establish native Git transport access or configure the CLI's active login.

For an existing checkout, inspect the remote and applicable credential-helper, SSH,
proxy, and HTTP-header configuration. A reused checkout
may still select a previous account. Commit author metadata is separate from transport
identity. Resolve an unknown identity before a write; do not probe access by pushing.

## Logging in

The rest: https://github.com/yc-software/qm/blob/HEAD/skills-seed/github-gitlab/SKILL.md
