# nomadcode-core project rules ## 응답 언어 - 기본 응답은 한국어로 작성한다. ## 프로젝트 개요 `nomadcode-core`는 사용자 요청을 task로 저장하고, 비동기 agent 작업 흐름을 관리하기 위한 Go 서버다. HTTP API, PostgreSQL 저장소, sqlc 생성 코드, River job 실행, Plane/Mattermost adapter stub을 포함한다. ## 기술 스택 - Go `1.25.0` - `chi` HTTP router - PostgreSQL, `pgx`, `sqlc`, `goose` - `riverqueue/river` 기반 비동기 job - Docker Compose 선택 실행 환경 ## 프로젝트 특화 컨벤션 - `internal/db/db.go`, `internal/db/models.go`, `internal/db/tasks.sql.go`는 sqlc 생성 파일이므로 직접 수정하지 않는다. - DB 스키마 변경은 `migrations/`와 `queries/`를 먼저 수정하고 `./bin/sqlc`로 생성 코드를 갱신한다. - 실행/검증 명령은 가능한 한 `bin/` 스크립트 또는 Makefile alias를 사용한다. - 외부 연동은 현재 adapter stub 단계이므로 실제 API 호출 추가 시 설정, 에러 처리, 테스트 경계를 함께 정한다. ## 도메인 매핑 | 경로 패턴 | 도메인 | rules.md | |----------|--------|----------| | `internal/workflow/**` | workflow | `agent-ops/rules/project/domain/workflow/rules.md` | | `internal/storage/**`, `internal/db/**`, `migrations/**`, `queries/**`, `sqlc.yaml` | persistence | `agent-ops/rules/project/domain/persistence/rules.md` | | `internal/http/**`, `cmd/server/**` | http-api | `agent-ops/rules/project/domain/http-api/rules.md` | | `internal/scheduler/**`, `internal/notification/**` | scheduler | `agent-ops/rules/project/domain/scheduler/rules.md` | | `internal/adapters/**` | adapters | `agent-ops/rules/project/domain/adapters/rules.md` | ## 스킬 라우팅 현재 프로젝트 전용 스킬은 없다. 반복 작업이 안정적으로 드러난 뒤 `agent-ops/skills/project/`에 추가한다.