프로젝트 소개

stepstone은 프로젝트 로드맵을 리포지토리 자체에 커밋된 파일로 저장하는 CLI 도구입니다. 목표는 터미널에서 추가되어 리포지토리 루트의 `.worklist/worklist.json`에 기록되며, 사람과 코딩 에이전트 모두 동일한 명령어를 통해 이를 읽고 변경할 수 있습니다. npm을 통해 배포되며 `npx -y stepstone@latest`를 통해 설치 없이 실행 가능합니다. 각 프로젝트 목표(Project Goal)는 제목, 선택적 설명, 상태 및 제목에서 생성되어 이후 고정되는 슬러그 ID를 가집니다. 이를 통해 커밋 메시지나 풀 리퀘스트의 참조가 나중에 제목이 변경되어도 유지됩니다. 상태는 `open`, `active`, `done`, `archived`로 구분되며, 최대 하나의 목표만 active 상태가 될 수 있고 `set_active` 실행 시 이전의 active 목표는 강등됩니다. 목표의 완료, 재오픈, 아카이브 또는 삭제 시에는 `--confirm` 플래그나 키 입력으로 명시적인 확인이 필요합니다. 의존성 엣지는 어떤 목표가 먼저 완료되어야 하는지를 기록합니다. 차단(Blocked) 상태는 저장되는 것이 아니라 읽기 때마다 해당 엣지를 통해 도출됩니다. `ready` 명령어는 전체 병렬 프런티어를 보고하고, `next`는 시작해야 할 첫 번째 목표를 지정하며, `waves`는 파일 순서가 아닌 의존성에 기반하여 미완료 목표들이 시작될 수 있는 가장 빠른 레이어별로 배치합니다. 모든 명령어는 산문 형태 대신 에이전트와 스크립트를 위한 결정론적 결과 엔벨로프를 제공하는 `--json` 플래그를 지원합니다. README에 따르면 모든 인터페이스 뒤에는 단일 애플리케이션 서비스, 하나의 프로세스 간 락(lock), 그리고 하나의 원자적 파일 교체 메커니즘이 작동하여 CLI 호출, 오픈된 터미널 보드, 라이브 세션이 파일 손상 없이 리포지토리를 공유할 수 있습니다. 선택적 전제 조건, 파일 전체 리비전 및 목표의 `updatedAt`을 통해 오래된 읽기 작업은 무음 덮어쓰기가 아닌 충돌 보고로 처리됩니다. `project ui`는 동일한 목표들을 관리하는 전체 화면 터미널 보드를 엽니다. 에이전트 사용을 위해 `skills` CLI로 독립형 Agent Skill을 설치할 수 있으며, 이는 에이전트에게 워크플로우를 학습시키고 필요에 따라 npm CLI를 호출하게 합니다. Pi 확장은 세션 작업(로드맵과 별개로 유지되는 브랜치 인식 구체적 세션 청크 큐), 두 리스트를 모두 보여주는 `/tasks` 대시보드, 활성 목표와 다음 미완료 작업을 표시하는 위젯, 그리고 모델용 `worklist` 도구를 추가합니다. 준비된 체크아웃은 무시된 루트의 `STEPSTONE_GOAL.md`에 목표를 포함하므로, Stepstone이 하네스를 실행하지 않고도 작업을 이어갈 수 있습니다. 프로젝트 측은 로드된 CLI 코드가 Pi 패키지를 임포트하지 않으며, CI가 타르볼을 팩킹하고 Pi가 없는 상태에서 설치된 바이너리를 구동한다고 명시합니다. 문서에는 CLI 사용법, 목표 모델, 의존성, 디스패치 및 워크스페이스 점유, 저장 스키마 및 마이그레이션, 터미널 보드, Agent Skill 및 Pi 확장이 포함되어 있습니다. 이 프로젝트는 0.17.0 버전까지 `pi-worklist`라는 이름으로 게시되었으며 현재 이름으로 계속 이어지고 있습니다. 라이선스는 MIT입니다.