aws-samples / aws-samples/sample-autonomous-cloud-coding-agents
UX: Refactor onboarding into a single post-deploy setup command
- Dominant language
- TypeScript
- Stars
- 143
- Forks
- 46
- Avg merge
- 3d 9h
- Merged PRs (30d)
- 20
Description
Getting from "I cloned the repo" to "I submitted my first task" is honestly painful. I had to follow 4 different doc pages in the right order, bounce between REST and CLI without knowing which to use, manually copy stack outputs, run a dozen AWS CLI commands to wire up Cognito and Secrets Manager, and keep track of 6+ values across terminal sessions. I kept a notepad open just to track ARNs and IDs.
The current flow is roughly:
1. **Installation** - prereqs, `mise run install`, `mise run build`. This part is fine.
2. **Repo preparation** - fork a test repo, edit `agent.ts` to add a Blueprint, create a GitHub PAT, bootstrap, deploy (~10 min), then retrieve 4 stack outputs with a long `aws cloudformation` command.
3. **Authentication** - store the PAT in Secrets Manager, create a Cognito user with `admin-create-user` + `admin-set-user-password` (password rules you discover by trial and error), smoke test with a manual `initiate-auth` + curl.
4. **CLI setup** - build the CLI, run `bgagent configure` with the 4 values from step 2, `bgagent login`, finally submit.
That's ~25 manual steps. If you miss one or get the region wrong, you get errors that you have no idea. Someone evaluating the project will hit this wall before they ever see the agent do anything.
## Ideal flow
```bash
mise run install && mise run build # 1. Install
mise run //cdk:deploy # 2. Deploy
mise run setup # 3. One command: prompts for PAT, email,
# password. Reads stack outputs, stores
# secret, creates user, configures CLI.
bgagent submit --repo fork/repo --issue 42 # 4. Go
```
## Possible approaches
- **`mise run setup` script** that reads stack outputs, prompts for PAT/credentials, stores the secret, creates the Cognito user, configures the CLI, and runs a smoke test. Simplest to build.
- **`bgagent setup` command** doing the same from the CLI itself. Nicer UX but more work.
- **At minimum**, merge the 4 doc pages into one linear "Getting Started" guide and recommend CLI as the default path.
### Acknowledgements
- [x] I may be able to implement this feature
- [ ] This might be a breaking change
Contributor guide
Assessment
This issue has not been assessed yet.