{"registry_version":"2026.1025.387","generated_at":"2026-10-25T06:27:00Z","content_sha256":"089d16f627d9365e3d0663cc8069203706d7cb23a76c332226e29686968811a5","signed":true,"signature":{"key_id":"ed25519:74ca19268e364242","algorithm":"ed25519","expires_at":"2026-11-24T06:27:09Z","expired":false,"manifest":"/registry/manifest.json"},"id":"github/private-repo","name":"GitHub private repository (from an existing local project)","vendor":"GitHub","status":"verified","last_verified":"2026-10-24","last_researched":"2026-10-24","summary":"Create a private repository under your account or organisation and push the current project with the GitHub CLI.","account_model":{"accounts":[{"name":"GitHub account","kind":"personal","owned_by":"the person","required":true},{"name":"GitHub organisation","kind":"organisation","parent":"GitHub account","required":false,"note":"Optional; the repo can live under the personal account instead."}]},"prerequisites":[{"need":"GitHub CLI (gh) installed and a local git repository with at least one commit"}],"identity_requires":[],"have_ready":[],"steps":[{"id":"gh-login","title":"Sign in with the GitHub CLI","summary":"Run `gh auth login` and sign in in the browser yourself.","route":"guided","gate":"human_login","human_only":true,"gate_label":"You sign in","depends_on":[],"optional":false,"url":null,"lead_time":null,"preflight":[],"captures":null},{"id":"pick-account","title":"Make sure gh uses the right account","summary":"If you have more than one gh account, check `gh auth status` and switch to the account that owns the target organisation (`gh auth switch`), or pass that account's token, before creating the repo.","route":"guided","gate":"none","human_only":false,"gate_label":null,"depends_on":["gh-login"],"optional":false,"url":null,"lead_time":null,"preflight":[],"captures":null},{"id":"create-repo","title":"Create the private repo and push","summary":"From the project folder run `gh repo create <owner>/<name> --private --source . --push`. This creates the private repository, adds it as the origin remote and pushes the current branch.","route":"api","gate":"human_submit","human_only":true,"gate_label":"You press submit","depends_on":["pick-account"],"optional":false,"url":null,"lead_time":null,"preflight":[],"captures":null}],"gates":[{"step":"gh-login","gate":"human_login","label":"You sign in"},{"step":"create-repo","gate":"human_submit","label":"You press submit"}],"lead_times":[],"outputs":[],"renewals":[],"estimated_minutes":null,"guide_url":"https://verapli.com/guides/github/private-repo"}