Skip to content

Build from a prompt

cascade prompt is the simplest entry point. No meeting, no ticket. Just type what you want and Cascade builds it.

  • Small features that don’t justify a ticket
  • Refactors and cleanup
  • Adding tests to existing code
  • Documentation updates
  • Quick experiments

For larger work that needs collaborative refinement, use a tracker ticket or a meeting instead.

Terminal window
cascade prompt "Add a /health endpoint that returns {'status': 'ok', 'version': version}"

Cascade treats the prompt as an approved story and runs the full pipeline. Output:

==> [story-prompt-20260925-103045] Add a /health endpoint...
branch: cascade/story-prompt-20260925-103045/add-a-health-endpoint
commit: e4f8a2b1...
install: ok
tests: passed (43 passed in 0.19s)
PR: #48 https://github.com/myorg/myrepo/pull/48

Use a heredoc for longer prompts:

Terminal window
cascade prompt "$(cat <<'EOF'
Add rate limiting to /api/users.
Requirements:
- 60 requests per minute per IP
- Return 429 with Retry-After header when exceeded
- Use the existing redis client from src/clients/redis.py
- Add tests covering: under limit, at limit, over limit, header presence
EOF
)"

More detail in the prompt produces better output. Vague prompts (“make X better”) produce vague code.

Bad promptBetter prompt
”Add auth""Add JWT auth to /api/*: middleware checks Bearer token, returns 401 on missing or invalid, attaches user_id to request context"
"Make it faster""Cache the /api/dashboard response in Redis for 60 seconds, keyed by user_id"
"Add a button""Add an ‘Export CSV’ button in the toolbar of the UserList page that calls GET /api/users/export and triggers a download"
"Fix the bug""Fix: User.save throws on duplicate email instead of returning a clean validation error. Should raise DuplicateEmailError with the conflicting email in the message.”

The pattern: name the thing, describe the behavior, mention any constraints, hint at what success looks like.

To see what Cascade would do without pushing or opening a PR:

Terminal window
cascade prompt "Refactor User.save" --no-pr

This generates the code, runs the tests, and commits locally. Inspect the diff with git diff main, then either keep going or git reset --hard origin/main to discard.

If you find yourself writing very long prompts, consider:

  1. Add the detail to team memory so it persists for future runs. If you keep specifying “use the redis client from src/clients/redis.py”, that belongs in team-memory/conventions.md.
  2. Start from a tracker ticket instead, so the work is captured in your team’s existing workflow.
  3. Capture it as a meeting if it involves multiple stories from one design conversation.