모든 bash 명령어 실행 시 프로젝트 루트로 cd 되는 거 어떻게 막음?
How to prevent cd to project root on any bash command?
핵심 요약
Pi coding agent가 모든 명령어마다 프로젝트 루트로 cd를 강제하는 문제를 해결하는 방법 논의.
- Pi coding agent — 모든 도구 호출 시마다 프로젝트 루트로 cd를 강제함.
- 문제 해결 시도 — 로컬 모델로 원인 분석 및 수정 시도했으나 실패함.
- 커스텀 확장 프로그램 — 내장 bash를 대체하고 cwd 파라미터를 사용하는 해결책 제시됨.
- 버그 수정 완료 — 작성자가 커스텀 bash 도구의 버그를 찾아내어 문제 해결함.
Pi coding agent에서 제일 짜증 나는 점임. grep이나 find를 쓸 때마다 먼저 프로젝트 루트로 cd를 함. 다른 디렉토리로 이동하지도 않는데, 도구 호출할 때마다 cd <project path> && find/grep을 실행함. 내 소스 코드로 pi를 돌려봤는데, 로컬 모델 그 어떤 것도 원인을 찾거나 고치지 못했음. cwd를 설정한 커스텀 bash 도구도 소용없음. 이런 체인 명령어 때문에 bash 권한을 설정할 수도 없음.
추신: 해결책은 내장 bash를 커스텀 bash와 선택적 cwd 파라미터로 대체하는 커스텀 확장 프로그램을 작성하는 것임. 이 문제에서 핵심인 커스텀 promptSnippet을 사용하는 걸 잊지 마셈.


