Gito를 platformless Git control plane으로 시작할 수 있도록 Go core, Flutter control surface, contracts, ops 규칙, 검증 헬퍼를 함께 구성한다.
52 lines
1.9 KiB
Markdown
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` |
|
|
|