gito/agent-ops/rules/project/rules.md
toki e2bc7aa8b6 feat(scaffold): 초기 프로젝트 골격을 구성한다
Gito를 platformless Git control plane으로 시작할 수 있도록 Go core, Flutter control surface, contracts, ops 규칙, 검증 헬퍼를 함께 구성한다.
2026-06-13 08:55:46 +09:00

52 lines
1.9 KiB
Markdown

# Gito Project Rules
## Language
- User-facing final answers default to Korean.
- Code identifiers, paths, commands, and commit scopes stay in the language used
by the project.
## Project Summary
Gito is a platformless Git control plane for agent-driven development. It owns
repo registry, workspace leases, Git operations, agent-shell execution,
provider-neutral change requests, provider adapters, and normalized events.
## Main Structure
- `services/core/` - Go server, worker, shell, core domain, storage, adapters.
- `apps/client/` - Flutter control surface.
- `packages/contracts/` - proto-socket, REST, event, and DTO contract notes.
- `bin/` - root test/lint/build helpers.
- `docs/` - architecture and operation documents.
- `agent-ops/` - agent rules.
- `agent-test/` - local validation rules.
## Stack
- Backend: Go, PostgreSQL, optional Redis.
- Client: Flutter/Dart.
- Internal transport: proto-socket first.
- REST: health/readiness, provider callbacks, smoke/curl, bootstrap.
- gRPC: excluded from the initial design.
## Conventions
- Prefer `bin/test`, `bin/lint`, and `bin/build` from the repository root.
- Keep Git operations platformless unless a provider adapter is explicitly in
scope.
- Provider APIs belong behind adapter boundaries.
- Agent-shell owns local command execution; control plane and core should not
run arbitrary workspace commands directly.
- Credential values must be referenced by `credential_ref` or local secret files,
never stored in tracked docs.
## Domain Map
| Path | Domain | Rules |
| --- | --- | --- |
| `services/core/**` | core | `agent-ops/rules/project/domain/core/rules.md` |
| `apps/client/**` | client | `agent-ops/rules/project/domain/client/rules.md` |
| `packages/contracts/**` | contracts | `agent-ops/rules/project/domain/contracts/rules.md` |
| `bin/**`, `docs/**`, `AGENTS.md`, `README.md`, `agent-ops/**`, `agent-test/**` | workspace-ops | `agent-ops/rules/project/domain/workspace-ops/rules.md` |