SIGN IN SIGN UP

AutoGPT is the vision of accessible AI for everyone, to use and to build on. Our mission is to provide the tools, so that you can focus on what matters.

0 0 73 Python

dx(skills): stop publishing dev test creds in /pr-test SKILL.md (#13201)

## Why

`.claude/skills/pr-test/SKILL.md` had the dev test account's email +
password hardcoded in **8 places** — the "Test user credentials" header,
two Redis rate-limit examples, three signup/login curl snippets, and the
agent-browser login flow. Because the repo is public, anyone on the
internet who read the SKILL could sign in to `dev-builder.agpt.co` as
that test user. The account was disabled on 2026-05-23 via
`banned_until=2126-04-29` once the leak surfaced.

## What

- Every literal `test@test.com` / `testtest123` occurrence replaced with
`$PR_TEST_USER_EMAIL` / `$PR_TEST_USER_PASSWORD` shell variables.
- New "Test user credentials" section mandates two acquisition paths, in
order:
  1. Read env vars when set (CI / preconfigured shells).
2. Otherwise ASK the user interactively at the start of the run; hold
creds only in shell vars for the duration; never echo or persist.
- Inline `: "${PR_TEST_USER_EMAIL:?...}"` / `:
"${PR_TEST_USER_PASSWORD:?...}"` guards force a hard failure if the
agent forgot to acquire creds.
- A "do NOT re-introduce a default" warning calls out the prior leak so
future SKILL edits don't reset progress.

## How

`jq -nc --arg e "$PR_TEST_USER_EMAIL" --arg p "$PR_TEST_USER_PASSWORD"
'{email:$e,password:$p}'` builds the signup payload safely (escapes
whatever the user pastes), then the existing curl/agent-browser flow
reads from the env. No behaviour change for local docker-compose runs
once the vars are set; dev-preview runs now require the agent to ask the
user for creds each session.

## Test plan

- [x] `grep -c "test@test.com\\|testtest123"
.claude/skills/pr-test/SKILL.md` → only the deliberate warning line
remains (`do NOT re-introduce a default`); zero functional references.
- [ ] Manual: re-run `/pr-test` against `dev-builder.agpt.co` with
`PR_TEST_USER_EMAIL` / `PR_TEST_USER_PASSWORD` set in the shell —
confirms the agent-browser login still works after the rewrite.
- [ ] Manual: unset both vars and re-run `/pr-test` — confirms the
guards trip and the agent prompts for creds instead of barreling on.
Z
Zamil Majdy committed
37554accf762bdb6af673ec575000cb301bb3a82
Parent: 205079f
Committed by GitHub <noreply@github.com> on 5/23/2026, 9:21:05 AM