Strictly follow ./skills/planning-with-files/. This is non-negotiable.
Before writing code for complex tasks, you MUST start with a task_plan.md.
CDNS is a Go-based CLI tool (Cobra + Bubble Tea) for managing DNS settings on Linux.
- Root: Application source code, configuration, and governance.
- internal/: Core logic (DNS backends, models, features).
- main.go: Application entry point.
- Scope: Modify only what is requested.
- Verification: Always verify changes.
- Run:
mise test
- Run:
- Naming: The project is named CDNS. Avoid "avtoolz" or "go-cli".
- Task Runner:
misehandles all dev tasks. - Linting:
golangci-lint(viamise lint). - Formatting: Standard
gofmt.
- Code changes affecting user behavior MUST have corresponding documentation updates.
- Keep
AGENTS.mdin subdirectories (apps/cli/AGENTS.md) updated if specific rules change.
- No Secrets: Never output or commit secrets.
- No Force Push: Respect git history.
- No Unplanned Refactoring: Stick to the task plan.