Skip to content
Development
Skill

/git-platform

Detects git forge (GitHub/GitLab/Bitbucket) and maps CLI commands cross-platform. Use when writing skills that must run on any git hosting provider.

From plugin
claude-night-market
337200 skills59 agents162 commands1 MCP
Install
$ npx -y skills add athola/claude-night-market --skill git-platform --agent claude-code

How it fires

How this skill gets triggered: by you, by Claude, or both.

  • Fires itselfAuto-invocation. Claude auto-loads it when your prompt matches the work.Auto-invocation is when the right skill fires by itself at the right moment, driven by a FLOW.md router and a hook, instead of you invoking it by name. It is the difference between a skill being installed and a skill actually getting used.Read the full definition →
  • You can call itInvoke it directly when you want it.
  • Slash command/git-platform

Context preview

The summary Claude sees to decide when to auto-load this skill.

Detects git forge (GitHub/GitLab/Bitbucket) and maps CLI commands cross-platform. Use when writing skills that must run on any git hosting provider.

SKILL.md

git-platform.SKILL.md
name: git-platform
description: Detects git forge (GitHub/GitLab/Bitbucket) and maps CLI commands cross-platform. Use when writing skills that must run on any git hosting provider.
alwaysApply: false
category: infrastructure
tags:
- git
- platform
- github
- gitlab
- bitbucket
- cross-platform
- forge
dependencies:
- authentication-patterns
provides:
  infrastructure:
  - platform-detection
  - command-mapping
  - forge-abstraction
  patterns:
  - cross-platform-git
  - cli-selection
  - terminology-mapping
usage_patterns:
- platform-detection
- command-translation
- cross-platform-workflows
complexity: beginner
model_hint: fast
estimated_tokens: 400
progressive_loading: true
modules:
- modules/command-mapping.md
role: library

Table of Contents

  • [Overview](#overview)
  • [When to Use](#when-to-use)
  • [Platform Detection](#platform-detection)
  • [Quick Command Reference](#quick-command-reference)
  • [Terminology](#terminology)
  • [Integration Pattern](#integration-pattern)
  • [Detailed Resources](#detailed-resources)
  • [Exit Criteria](#exit-criteria)

Git Platform Detection & Command Mapping

Overview

Cross-platform abstraction for git forge operations. Detects whether the current project uses GitHub, GitLab, or Bitbucket, and provides equivalent CLI commands for each platform.

The SessionStart hook (`detect-git-platform.sh`) automatically injects the detected platform into session context. This skill provides the command reference for translating operations across platforms.

When To Use

  • Before running `gh`, `glab`, or forge API commands
  • When a skill or command needs to create issues, PRs/MRs, or post comments
  • When writing CI/CD configuration
  • Any time forge-specific CLI commands appear in a workflow

When NOT To Use

  • Local-only git operations (`git commit`, `git branch`, etc.)
  • Projects without a hosted git remote

Platform Detection

Detection is automatic via the SessionStart hook. The session context will contain:

git_platform: github|gitlab|bitbucket, cli: gh|glab, mr_term: pull request|merge request

If you need to re-detect manually:

# Check remote URL
git remote get-url origin 2>/dev/null

# Check file markers
ls -d .github/ .gitlab-ci.yml bitbucket-pipelines.yml 2>/dev/null

# Check CLI availability
command -v gh && echo "GitHub CLI available"
command -v glab && echo "GitLab CLI available"

Quick Command Reference

| Operation | GitHub (`gh`) | GitLab (`glab`) | |-----------|---------------|-----------------| | View issue | `gh issue view N --json title,body,labels` | `glab issue view N` | | List issues | `gh issue list --json number,title` | `glab issue list` | | Create issue | `gh issue create --title "T" --body "B"` | `glab issue create --title "T" --description "B"` | | Close issue | `gh issue close N` | `glab issue close N` | | Comment on issue | `gh issue comment N --body "msg"` | `glab issue note N --message "msg"` | | View PR/MR | `gh pr view N` | `glab mr view N` | | Create PR/MR | `gh pr create --title "T" --body "B"` | `glab mr create --title "T" --description "B"` | | List PR/MR comments | `gh api repos/O/R/pulls/N/comments` | `glab mr note list N` | | Current PR/MR | `gh pr view --json number` | `glab mr view --json iid` | | Resolve threads | `gh api graphql` | `glab api graphql` | | Repo info | `gh repo view --json owner,name` | `glab repo view` |

For Bitbucket: No standard CLI exists. Use REST API (`curl`) or the web interface. See [command-mapping module](modules/command-mapping.md) for API equivalents.

Terminology

| Concept | GitHub | GitLab | Bitbucket | |---------|--------|--------|-----------| | Code review unit | Pull Request (PR) | Merge Request (MR) | Pull Request (PR) | | CI configuration | `.github/workflows/*.yml` | `.gitlab-ci.yml` | `bitbucket-pipelines.yml` | | Default branch | `main` | `main` | `main` | | Review comments | PR review comments | MR discussion notes | PR comments |

**Important**: When the platform is GitLab, always say "merge request" (not "pull request") in user-facing output, commit messages, and comments.

Integration Pattern

Skills that perform forge operations should:

1. Declare `dependencies: [leyline:git-platform]` 2. Check the session context for `git_platform:` 3. Use the command mapping table above 4. Fall back gracefully if CLI is unavailable

# Example skill instruction pattern:

## Step N: Create PR/MR

Use the detected platform CLI (check session context for `git_platform`):
- **GitHub**: `gh pr create --title "..." --body "..."`
- **GitLab**: `glab mr create --title "..." --description "..."`
- **Bitbucket**: Create via web interface

Detailed Resources

  • **Full command mapping**: See [modules/command-mapping.md](modules/command-mapping.md) for complete API equivalents, GraphQL queries, and Bitbucket REST API patterns
  • **Authentication**: See `Skill(leyline:authentication-patterns)` for `ensure_auth github|gitlab`

Exit Criteria

  • Platform detected (or explicitly unknown)
  • Correct CLI tool used for all forge operations
  • Platform-appropriate terminology in user-facing output
Read more
Ships withclaude-night-market

A plugin marketplace for Claude Code. Install only the plugins you need to run git workflows, code review, spec-driven development, and autonomous agents from inside your Claude Code session.

Get the whole plugin

Other skills on claude-night-market.