1. claude-code-devcontainer를 쓰면 도커 컨테이너 안에서 bypass permissions가 켜진 상태로 claude가 실행되기 때문에 최고의 자유도와 안전을 보장할 수 있음. Ralph와 좋은 시너지를 낸다고 볼 수 있음.
2. ralph는 기획된 기능들이 완성될 때까지 Claude를 loop으로 돌리는 shell script임.
- 유저가 PRD를 적어줌
- 확실하지 않은 부분에 대해 ralph가 질문을 하고, 정보를 보충함
- 정보가 충분해지면 기능별로 user story에 대한 계획을 세우고 마크다운 파일에 저장함
- 그 마크다운 파일에 있는 user story가 `acceptanceCriteria`, `description`,` title`, `priority` 등의 정보로 분류되어 `prd.json` 으로 저장됨
- 마지막으로, `ralph.sh` 를 실행시키면 `prd.json` 에 있는 모든 요구사항이 충족될 때까지 계속 claude를 실행시킴.
3. subagents는 claude 내장 기능. .claude/agents/*.md 에 작성하면 됨. 따로 관리할 필요는 없고, claude가 description을 읽고 필요할때마다 불러옴. 현재 나는 docs-writer.md, security-auditor.md, test-runner.md, types-checker.md 등이 있음. test-runner subagent가 특히 좀 중요한 이유가 ralph가 지시사항을 완료했는지 알아서 확인하려면 보통 unit/E2E test를 통해 확인하기 때문.
4. CLAUDE.md 에선 프로젝트에 대한 기본적인 배경과 이러이러할땐 이런 subagent를 써라 등의 지시사항이 있음.
5. 이렇게 셋업해놓고 ralph 돌리니까 코드 규모가 커져도 척척 해낸다. 보기 좋음. git commit도 유저 스토리당 하나씩 알아서 해줌
*이거 셋업하는데 몇시간 안걸림. 귀찮다고 대충 Claude 쓰지 말고 셋업 제대로 해서 효과 제대로 보시길
