# Main Cinc Wrapper Agent Guide

This file applies to `components/main-cinc-wrapper/` and overrides parent guidance for this subtree.

## Scope

- Go CLI wrapper sources, command packages, and integration tests.

## Commands

- Lint: `go vet ./...`
- Unit tests: `go test -tags=unit ./cmd -v -count=1`
- Integration tests (when requested): `go test -tags=integration ./integration -v -count=1`
- For Linux testing when local Go/tooling is unavailable or mismatched, default to `cincproject/omnibus-debian:13`.
- In that container, source `/home/omnibus/load-omnibus-toolchain.sh` before running commands.
- Container lint example: `docker run --rm -v "$PWD":/w -w /w cincproject/omnibus-debian:13 \ bash -lc 'source
  /home/omnibus/load-omnibus-toolchain.sh && cd \ components/main-cinc-wrapper && go vet ./...'`
- Container unit test example: `docker run --rm -v "$PWD":/w -w /w cincproject/omnibus-debian:13 \ bash -lc 'source
  /home/omnibus/load-omnibus-toolchain.sh && cd \ components/main-cinc-wrapper && go test -tags=unit ./cmd -v \
  -count=1'`

## Guardrails

- Do not manually edit generated file `dist/global.go`.
- Preserve module compatibility with Go `1.26` in `go.mod` unless explicitly requested.
- Keep changes scoped to the requested command or package.

## Development Notes

- Habitat/studio helper workflows are documented in `.studiorc`.
- If behavior differs between wrapper and packaged CLI, call out assumptions and limits explicitly.

## References

- Wrapper context: `README.md`
- Project-level guidance: `../../AGENTS.md`
