원클릭으로
geekbot-setup
Install, authenticate, and verify the geekbot CLI end to end. User-triggered via /geekbot:geekbot-setup.
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
메뉴
Install, authenticate, and verify the geekbot CLI end to end. User-triggered via /geekbot:geekbot-setup.
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
SOC 직업 분류 기준
Use when the user mentions Geekbot, standups, daily check-ins, async reports, polls, team engagement, response rates, or participation tracking. Triggers on: "standup", "check-in", "report", "poll", "Geekbot", "who hasn't posted", "draft my standup", "team analytics".
Report the install + auth state of the geekbot CLI. Safe for Claude to invoke proactively before running Geekbot actions.
| name | geekbot-setup |
| description | Install, authenticate, and verify the geekbot CLI end to end. User-triggered via /geekbot:geekbot-setup. |
| disable-model-invocation | true |
| allowed-tools | Bash |
Goal: get the user fully ready — CLI installed, CLI authenticated, and a clear "you're ready" or "here's what to do next" message at the end.
Check the CLI is on $PATH:
command -v geekbot
Install if missing:
npm install -g geekbot-cli
If npm isn't available, mention bun install -g geekbot-cli as an alternative and let the user run it themselves.
Verify the install:
geekbot --version
Check auth (does not prompt):
geekbot auth status
data.authenticated == true → skip to step 6.Authenticate via OAuth — you drive geekbot auth login yourself.
Do NOT tell the user to run anything in their shell. Do NOT ask for an
API key. The CLI's loopback flow only exposes a public authorize URL
(no secrets), and writes the resulting cli_* token to the user's OS
keychain on their own machine when the flow completes.
Procedure:
a. Start the login command in the background. Use Bash with
run_in_background: true so you can read the verification URL while
the CLI waits on its loopback listener. Always pass --no-browser —
you can't pick the user's browser for them, especially on WSL where
xdg-open would launch the Linux default rather than the browser
that holds the user's Geekbot dashboard session.
geekbot auth login --no-browser --ttl-days 30
b. Capture the authorize URL. Call BashOutput on the background
shell once, then again a second later if needed, until stderr
contains a line that starts with https:// and a URL pointing at
/v2/authorize?.... The CLI prints a block like:
Listening on http://127.0.0.1:<port>/callback for the OAuth callback…
Open this URL in a browser to sign in:
https://oauth.geekbot.com/v2/authorize?...&state=...&code_challenge=...
Only open it ONCE — the state is single-use.
c. Show the URL to the user, exactly once. Reply with something like:
To finish signing in to Geekbot, open this URL in any browser you're already logged into your dashboard with:
<URL>Only open it once — the OAuth
stateis single-use, so a second browser will fail.
d. Wait for the command to exit. Continue calling BashOutput
periodically until the background shell completes. Don't pre-empt
with a timeout shorter than the CLI's own (~5 min).
e. Parse the outcome:
{"ok": true, "data": {"authenticated": true, "method": "oauth_loopback", "username": ..., "email": ...}}.
Proceed to step 6.oauth_callback_timeout — user didn't click in time. Offer to
retry from step 5a.oauth_access_denied — user clicked "Cancel" at the IdP.oauth_state_mismatch / oauth_invalid_request — they opened
the URL twice; retry, remind them once is enough.oauth_invalid_client — the CLI's client_id isn't registered
on the auth server; this is an environment issue, not a user
one — report it and stop.Fallback only — do NOT suggest unless OAuth login fails twice in a row or the user explicitly asks for it. Long-lived dashboard API keys still work via:
! geekbot auth setup --api-key <YOUR_KEY>Report final state. Example:
geekbot CLI: installed (v0.2.4)
Auth: authenticated as sabpap@geekbot.com (oauth_loopback)
Next: you're ready — try "fetch my standups"
If auth is still missing, end with "run /geekbot:geekbot-setup again after completing the geekbot auth login step."
API keys and CLI tokens are secrets. Pasting one into the conversation puts it
in the transcript and any logs/exports derived from it. The CLI's auth login
flow keeps the token on the user's machine end-to-end: the auth server hands
it to the local CLI, which writes it straight to the OS keychain. Once stored,
every later geekbot … call authenticates silently.