# Firstmate Self Repo

Load before dispatching, promoting, relaunching, or delivering any task whose project...

- Repository: https://github.com/kunchenguid/firstmate (8480 stars)
- Category: Git and review
- License: MIT
- Last updated: 2026-11-01
- Runs scripts: no, instructions only

## Install

Claude Code: `npx skills add kunchenguid/firstmate --skill firstmate-self-repo -g -a claude-code -y`
Codex: `npx skills add kunchenguid/firstmate --skill firstmate-self-repo -g -a codex -y`
Cursor: `npx skills add kunchenguid/firstmate --skill firstmate-self-repo -g -a cursor -y`
Gemini CLI: `npx skills add kunchenguid/firstmate --skill firstmate-self-repo -g -a gemini-cli -y`

## Description

Load before dispatching, promoting, relaunching, or delivering any task whose project is the firstmate repository itself, when a firstmate bug or improvement idea surfaces in ordinary use, before granting or revoking upstream publication authority, and before deciding whether any push, pull request, issue, comment, or fork may reach firstmate's own upstream.

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

# firstmate-self-repo

Every firstmate home clones the same public repository and runs from it, which makes firstmate's own upstream the one repository a running home can always reach.
Most homes belong to people who simply use firstmate, not to the people who maintain it, and a running agent that treats "I can see the repo" as "I may publish to it" is how a user's firstmate opens surprise pull requests upstream.
This skill owns the boundary between the two relationships.

## The default: user/operator

Absent any explicit grant, a home runs as firstmate **user/operator**.
It may install, run, update, reconfigure, and locally repair firstmate, and its ordinary project work flows through the registered delivery modes unchanged.
What it may never do on its own is publish to firstmate's upstream: no pushed branch, no pull request, no issue, no comment, no fork, no review.

Role is **never inferred**.
GitHub identity, forge permissions, the name or URL of `origin` or any other remote, repository ownership, authentication state, environment variables, and CI context all say nothing about role; the only inputs are the explicit local grants below.

## When a firstmate bug surfaces in ordinary use

A user/operator home that hits a firstmate bug does local work only:

1. Diagnose privately - reproduce, isolate, and root-cause inside the home and its task records.
2. Apply a local workaround when one exists - a config change, a pinned local edit, a different invocation.
3. Optionally prepare a sanitized local issue draft or a proposed local patch under the task's data directory, for the operator to review and submit by hand.
4. Report to the captain what happened and what was produced.

The rest: https://github.com/kunchenguid/firstmate/blob/HEAD/.agents/skills/firstmate-self-repo/SKILL.md
