cofounder-repo-setup
This skill should be used when the user asks to "set up a repo", "create a GitHub repo", "initialize git", "create a remote repository", "push to GitHub", "log in to GitHub", "gh auth", "set up GitHub", or asks about initializing a local and remote repository and pushing it to GitHub.
How do I install this agent skill?
npx skills add https://github.com/locaweb/cofounder --skill cofounder-repo-setupIs this agent skill safe to install?
- Gen Agent Trust Hubpass
The skill automates GitHub repository initialization and authentication using the GitHub CLI. It is generally safe for its intended purpose, but carries a minor risk of command injection if user-provided repository names are not properly sanitized by the agent before being passed to shell commands.
- Socketpass
No alerts
- Snykpass
Risk: LOW · No issues
What does this agent skill do?
Repository Setup
Initialize a local git repository and create a matching remote on GitHub using the GH CLI, with device-code authentication that works reliably in all environments.
Prerequisites
The computer-setup skill must have been run first — it installs gh and git.
A GitHub account is required before proceeding. If the user does not have one, guide them through account creation:
- Navigate to https://github.com/.
- Click Sign up (or Continue with Google for social login).
- Follow the prompts and verify the email address — without a verified email, repository creation will fail.
Recommend enabling two-factor authentication after sign-up. For more details, see Creating an account on GitHub.
Authentication
Device Code Flow
Run gh auth status — interpret whether it shows the user as authenticated.
If not authenticated, run:
GH_FORCE_TTY=1 NO_COLOR=1 GH_PROMPT_DISABLED=1 gh auth login --hostname github.com --git-protocol https --scopes "repo,read:org,workflow" > /tmp/gh-auth.log 2>&1 & sleep 3 && cat /tmp/gh-auth.log
Show the user the raw output from the log file and guide them to locate the
device code (a short alphanumeric string like XXXX-XXXX) in it. This is a
temporary single-use device code for the GitHub OAuth device flow — not a
long-lived credential. The user reads it directly from their terminal output
and enters it themselves at https://github.com/login/device. For example:
GitHub login required!
Look for a one-time code in the output above (format:
XXXX-XXXX). Open https://github.com/login/device in your browser and enter the code.
Ask the user to complete the browser authorization and confirm when done.
Verifying Authentication
After the user confirms, verify:
gh auth status
Repository Initialization
Full Setup
Before running the init script, check if a remote is already configured:
git remote get-url origin 2>/dev/null
If origin is already set, the repo is fully configured — do not ask the
user for a name or visibility, and skip the init script entirely.
If no remote is configured, ask the user for:
- Repository name — default: the current folder name.
- Visibility —
private(default) orpublic.
Then run the init script. It is bundled with this skill at scripts/repo-init.sh,
relative to the directory this SKILL.md lives in — locate it from the skill's own
directory (not your current working directory) and run it with bash:
bash <this-skill-dir>/scripts/repo-init.sh <repo-name> [private|public]
The script will:
- Initialize a local git repo if
.git/does not exist - Create an initial empty commit if the repo has no commits
- Skip remote creation if
originis already configured locally - If the repo already exists on GitHub, add it as
originand push - Otherwise, create the GitHub repository with the given name and visibility (default:
private), add it asorigin, and push
Manual Steps
If finer control is needed, run each step individually:
# Initialize local repo
git init
# Create remote and link it (from the project directory)
gh repo create <repo-name> --private --source=. --remote=origin --push
Important Notes
- Authentication must happen before repo creation. Run the auth flow first
if
gh auth statusfails. - Do not use
--webflag forgh auth login— it attempts to open a browser which may not work. The device code flow (default when--webis omitted) is more reliable. - Default visibility is private. Always confirm with the user before creating a public repository.
Bundled Resources
Scripts
scripts/repo-init.sh— Initializes local git repo and creates the matching GitHub remote in one step
How can the creator link this skill?
Add the canonical catalog link to the repository README so users can inspect current installs and available audits. The publishing guide covers the complete discovery path.
<a href="https://skillzs.dev/skills/locaweb/cofounder/cofounder-repo-setup">View cofounder-repo-setup on skillZs</a>