Skip to content

minds: actionable guidance when creating from a private GitHub repo#2425

Open
pseay-imbue wants to merge 2 commits into
mainfrom
preston/minds-inspirations
Open

minds: actionable guidance when creating from a private GitHub repo#2425
pseay-imbue wants to merge 2 commits into
mainfrom
preston/minds-inspirations

Conversation

@pseay-imbue

@pseay-imbue pseay-imbue commented Jul 10, 2026

Copy link
Copy Markdown
Contributor
image

What

Creating a workspace from a private (or nonexistent) github.com URL previously surfaced only raw git stderr on the Creating page — and before that, could hang on a credential prompt. Now:

  • The desktop client's local git clone of the workspace source runs with GIT_TERMINAL_PROMPT=0 — no-credential clones fail fast with git's stable error shape (credential helpers like the macOS keychain still work). Mirrors the earlier FCT bootstrap fix.
  • The backend classifies auth-shaped github.com clone failures (could not read Username/terminal prompts disabled/Authentication failed/Repository not found/403) as a new machine-readable error_kind: GIT_AUTH_REQUIRED on the create-operation status API (additive, optional field).
  • The Creating page reveals a static guidance block for that kind, explaining in plain language: the repo looks private (or doesn't exist) and needs GitHub credentials on this computer; the simplest sign-in is gh auth login (linked to the official GitHub CLI quickstart); or clone/download the repo locally and enter that folder's path in the form instead of the URL.

Guidance is gated to github.com URLs only (the gh advice would be wrong elsewhere); other hosts keep the raw error. The copy is static template content gated on the error class — the backend classifies, it never generates prose.

Testing

uv run pytest over the touched desktop_client modules + minds ratchets: 419 passed, 0 failed (classification matrix, a local 401-server clone test proving fast auth-shaped failure, API round-trip of error_kind, and a page-render test asserting the block exists, is hidden by default, and carries the right copy/link). ty check and ruff clean on touched files.

Context: this is the follow-up UX for minds "inspirations" (published snapshot repos are private by default, so creating a mind from one hits this path for anyone without credentials configured) — see FCT PR #243.

🤖 Generated with Claude Code

Cloning a workspace source happens locally on the user's machine; a
private github.com URL previously surfaced only raw git stderr on the
Creating page (and could hang on a credential prompt). Clones now run
with GIT_TERMINAL_PROMPT=0 (fail fast, credential helpers still work),
the backend classifies auth-shaped github.com clone failures as
GIT_AUTH_REQUIRED (new optional error_kind on the create-operation
status API), and the Creating page reveals a static guidance block for
that kind: you need access to this repo with GitHub credentials on this
computer; sign in via 'gh auth login' (linked GitHub CLI quickstart);
or clone it yourself and enter the local path instead.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Same name and one-line body as the per-file copies in the FCT's
bootstrap.manager and runtime_backup.runner, so the intent (never let
git prompt on a terminal) is carried by the function name instead of an
inline dict at the call site.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
@pseay-imbue pseay-imbue marked this pull request as ready for review July 10, 2026 17:43
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant