Skip to content
CAI
Software that uses CAICheck a score

sazardev/goca

65.8

Adequate · 20 September 2026

24.3k

lines of production code

Go

primary language

4

measurements over time

CAI band scale
CAI trend line
CAI lens gauges

What this system is

This system is a Go-based command-line interface and scaffolding tool designed to generate and maintain projects following Clean Architecture principles. It provides infrastructure for initializing new Go applications with domain models, RESTful APIs, and database repositories, while offering a self-analysis command to audit code quality, security, and architectural compliance. The project also includes tooling for automated releases, development environment setup, and marketing asset generation.

Features

Add domain models with validation for User, Product, and Order

The application now includes structured domain entities for Users, Products, and Orders, each equipped with validation logic to enforce data integrity. Users can now be managed with soft-delete capabilities, while Products and Orders include specific validation rules for their respective fields, ensuring that invalid data is caught early in the process.

github.com/sazardev/goca · high confidence

Added Golang-specific skills for patterns and testing

New symbolic links for Golang skills have been added to the .claude directory, pointing to the golang-patterns and golang-testing skill definitions located in the .agents/skills directory. This enables the assistant to apply specific Go best practices and testing strategies when working with Golang projects.

.claude · high confidence

Added Windows and Unix hook installation scripts

New PowerShell (install-hooks.ps1) and Bash (install-hooks.sh) scripts have been added to the scripts directory to automate the setup of development tooling. These scripts detect prerequisites (Go 1.25+, Node.js 18+, npm), install specific Go-based linting and security tools (lefthook, gofumpt, gosec, nilaway, staticcheck, golangci-lint), install documentation dependencies, and configure git hooks via lefthook for pre-commit and pre-push stages.

scripts · high confidence

Initial implementation of User, Product, and Order domain entities with full CRUD infrastructure

This change introduces the core domain models for Users, Products, and Orders, including validation logic, error definitions, and seed data for database initialization. It establishes a complete layered architecture for these entities: HTTP handlers and route configurations expose RESTful endpoints (CRUD operations) via Gorilla Mux, while GORM-based PostgreSQL repositories handle data persistence. A dependency injection container wires these components together, and comprehensive mock implementations are provided to support unit testing of the use cases and handlers.

internal · high confidence

Initial project scaffolding with configuration and tooling

The repository now includes essential configuration files for development and release workflows. A \.goca.yaml\ file defines default project settings for Clean Architecture generation, including database types, validation rules, and quality gates. A \.golangci.yml\ file configures the linter with specific rules and disabled checks. A \.goreleaser.yml\ file sets up automated binary releases for Linux, Windows, and macOS, including Homebrew tap integration. Additionally, a \.gitattributes\ file ensures consistent line endings across different file types, and a \Makefile\ provides standard commands for building, testing, linting, and releasing the CLI tool.

(repo-wide) · high confidence

New CLI tool for project initialization and entity scaffolding

A new command-line utility has been added to the tools directory that automates the setup of a GoCA project structure. This tool creates a temporary directory, initializes a new project with a specified module path, generates a sample entity (such as a User with defined fields), and displays the resulting source code, providing a quick way to scaffold and verify project generation logic.

cmd/tools · high confidence

New \`goca analyze\` command for deep project self-analysis

The CLI now includes an \analyze\ command that performs a comprehensive audit of the generated Go project. It checks six categories—Architecture, Quality, Security, Standards, Tests, and Dependencies—verifying Clean Architecture layer boundaries, domain purity, OWASP A03 security patterns, Go conventions, test coverage, and dependency health. The command supports filtering by category, outputting results in text or JSON format, and failing on warnings via \--fail-on-warn\, providing actionable suggestions for any rule violations.

cmd · high confidence

New marketing asset generation system and brand kit

The marketing folder now includes a complete, script-driven system for generating and rendering Goca's marketing assets. This introduces a shared brand token library (colors, fonts, icons) and Node.js scripts to automatically generate static SVG/PNG cards for all 21 CLI commands in multiple formats and themes, as well as animated SVG frames for a 23-second vertical explainer video and per-command command videos. Bash scripts (\generate.sh\, \render-video.sh\, \render-command-videos.sh\) orchestrate the rasterization and encoding pipeline, while the \README\ documents the brand guidelines and asset structure.

marketing · high confidence

Dependencies

Upgrades Go runtime and core dependencies; adds VitePress documentation tooling

The main Go module now targets Go 1.25.1 and significantly expands its dependency graph, adding direct dependencies for the new CLI UX and AI features (charmbracelet/huh, charmbracelet/lipgloss, mark3labs/mcp-go, gorilla/mux, gorm.io/gorm) while upgrading core libraries like spf13/cobra to v1.10.1 and spf13/pflag to v1.0.10. Concurrently, the project introduces a new VitePress-based documentation site in the docs folder, establishing a new package.json and package-lock.json that install VitePress v1.0.0-rc.31, mermaid v11.14.0, and Vercel OG image generation tools.

(dependencies) · high confidence

Written by watchdog.canine.dev from the codebase's own history, inside the signed delivery this page is composed from.

How this codebase got here

Score

  • CAI 57 → 66 (+9.0)
  • Rubric changed (rubric-2026.08.17 → rubric-2026.09.15) — scores are not directly comparable.

Lenses

  • Code Health 76 → 64 (-11.4)
  • Architecture 100 → 95 (-4.8)
  • Maturity 76 → 80 (+4.2)
  • Readiness 50 → 63 (+13.1)
  • Security 56 → 71 (+15.0)
  • Domain Modelling 58 → 65 (+7.7)

Resolved (180)

  • Coverage not included — suite not readable by the collector
  • Dependency hygiene not measured — no supported dependency manifest was read
  • Duplicated block (10 lines × 2) (cmd/handler_other.go)
  • Duplicated block (10 lines × 2) (internal/testing/scenarios.go)
  • Duplicated block (10 lines × 2) (internal/testing/scenarios.go)
  • Duplicated block (10 lines × 3) (cmd/entity_test_generator.go)
  • Duplicated block (10 lines × 3) (cmd/mcp_tools_util.go)
  • Duplicated block (10 lines × 3) (internal/testing/scenarios.go)
  • Duplicated block (10–11 lines × 2) (cmd/repository_impl.go)
  • Duplicated block (10–11 lines × 4) (cmd/handler.go)
  • Duplicated block (10–14 lines × 3) (cmd/cache_decorator.go)
  • Duplicated block (10–14 lines × 3) (cmd/handler_other.go)
  • Duplicated block (11 lines × 2) (cmd/entity.go)
  • Duplicated block (11 lines × 2) (cmd/handler.go)
  • Duplicated block (11 lines × 2) (cmd/mocks.go)
  • Duplicated block (11 lines × 2) (cmd/repository_other_db.go)
  • Duplicated block (11 lines × 2) (cmd/usecase.go)
  • Duplicated block (11 lines × 2) (internal/testing/scenarios.go)
  • Duplicated block (11 lines × 3) (internal/handler/http/order_handler.go)
  • Duplicated block (11–12 lines × 2) (cmd/safety.go)
  • …and 160 more

New (127)

  • Documentation: no usage examples (README.md)
  • Duplicated block (10 lines × 2) (cmd/field_validator.go)
  • Duplicated block (10 lines × 2) (cmd/handler_other.go)
  • Duplicated block (10 lines × 2) (cmd/upgrade.go)
  • Duplicated block (10 lines × 2) (internal/testing/suite.go)
  • Duplicated block (10 lines × 3) (internal/handler/http/order_handler.go)
  • Duplicated block (10 lines × 3) (internal/testing/architecture.go)
  • Duplicated block (11 lines × 2) (cmd/handler.go)
  • Duplicated block (11 lines × 2) (cmd/repository.go)
  • Duplicated block (11 lines × 2) (cmd/repository_impl.go)
  • Duplicated block (11 lines × 2) (cmd/usecase.go)
  • Duplicated block (11 lines × 3) (internal/handler/http/order_handler.go)
  • Duplicated block (12 lines × 2) (cmd/handler_other.go)
  • Duplicated block (12 lines × 3) (internal/handler/http/order_handler.go)
  • Duplicated block (12 lines × 3) (internal/handler/http/order_handler.go)
  • Duplicated block (13 lines × 2) (cmd/repository_fields.go)
  • Duplicated block (13 lines × 2) (internal/testing/validator.go)
  • Duplicated block (15 lines × 3) (internal/handler/http/order_handler.go)
  • Duplicated block (18 lines × 2) (cmd/messages.go)
  • Duplicated block (18–19 lines × 2) (cmd/repository.go)
  • …and 107 more

Architecture

  • Containers 0 added · 0 removed · contexts 0 added · 1 removed · edges 0 added · 0 removed

Removed bounded contexts (1)

  • testvalidation

Written by watchdog.canine.dev from the codebase's own history, inside the signed delivery this page is composed from.

Survey your own repository

sazardev/goca was measured the same way every project in this corpus was: the same rubric, at a pinned commit, with the result published in full. Point a surveyor at a repository you know and see whether you agree with it.

About this page

  • The score is its most recent published measurement, taken on 20 September 2026 at a pinned commit. It is not a live figure and does not change until the project is measured again.
  • Measured at commit 6e7138e16a4ac101db701e49416f90fa102727c3 — the exact code this score is about.
  • Scored under rubric-2026.09.15 — the same rubric and the same method as every other entry in this index.
  • Measured by watchdog.canine.dev using codehealth-analyzer preprod-28e75b8e3254.