Skip to content
CAI
Software that uses CAICheck a score

modu-ai/moai-adk

49.2

Weak · 21 September 2026

179.4k

lines of production code

Go

primary language

3

measurements over time

CAI band scale
CAI trend line
CAI lens gauges

What this system is

This system is a local AI agent orchestration platform, known as MoAI, designed to manage and enhance software development workflows through Claude Code integration. It provides a self-evolving infrastructure that automatically learns from agent interactions, enforces strict security and quality gates via pre-commit hooks, and manages complex multi-agent sessions with safety constraints. The platform also includes tooling for architectural analysis, multi-locale documentation generation, and comprehensive CI/CD audit pipelines to ensure codebase integrity.

Features

Added placeholder for Plan Audit Gate reports

A .gitkeep file has been added to the .moai/reports/plan-audit directory to preserve the folder structure in version control. This directory is designated for storing local plan-auditor verdict reports (generated by the Plan Audit Gate) as Markdown files, which are intentionally excluded from git tracking to keep the repository clean while maintaining the directory hierarchy.

.moai/reports/plan-audit · high confidence

Docs site restructured as a 4-locale Hugo monorepo with Vercel Edge locale detection

The documentation site has been rebuilt as a Hugo-based monorepo, introducing a new directory structure and configuration for \docs-site\. It now supports four locales (Korean, English, Japanese, Chinese) with a dedicated Vercel Edge Function (\api/i18n-detect.ts\) that handles automatic locale detection and redirection based on URL path, cookies, or the \Accept-Language\ header. The site includes a new \.locale-parity-baseline\ to track translation divergence, a \.markdownlint.json\ for content linting, and a comprehensive \.gitignore\ for Hugo build artifacts and runtime files. This change replaces the previous site architecture with a static-site generator approach, centralizing content management and build configuration.

docs-site · high confidence

Initial structure for skill evolution tracking

This change introduces the foundational directory structure and configuration files for the MoAI skill evolution system. It adds a changelog template to document skill evolutions and learning graduations, a manifest file to track evolved skills, new skills, and rate limits, and placeholder directories for learnings, new skills, and telemetry. This sets the stage for future features related to skill evolution infrastructure.

.moai/evolution · high confidence

Introduce .claudeignore to exclude non-essential files from agent context

A new .claudeignore file has been added to the repository root to define path patterns that Claude Code should exclude when loading the project context. This prevents build artifacts, dependencies, and IDE configurations from consuming token budgets and cluttering the agent's view, ensuring it focuses on source code and configuration files relevant to development tasks.

(repo-wide) · high confidence

Introduction of the Harness Learning Subsystem with CLI and Configuration

The \.moai/harness\ area now documents and supports a new Learning Subsystem that automatically improves SKILL.md frontmatter by observing agent calls and tool usage. This feature introduces a new \moai harness\ CLI interface with commands to check status (\status\), apply approved pattern updates (\apply\), revert changes via date-based snapshots (\rollback\), and disable the feature (\disable\). The subsystem is controlled via the \learning:\ section in \.moai/config/sections/harness.yaml\, allowing users to toggle the feature, enable auto-apply to skip user approval, and configure safety thresholds, rate limits, and log retention. The implementation includes a 5-Layer Safety Architecture and a tiered evolution model (observation to auto\_update) to ensure changes are validated before being applied to skill definitions.

.moai/harness · high confidence

Local Self-Evolution Loop (LSEL) APPLY and CURATOR skills introduced

Added the \hns-lsel-applier\ and \hns-lsel-curator\ skills to enable a user-owned, local self-evolution workflow. The curator skill drains and clusters tool-failure logs from \.moai/lessons-inbox.jsonl\, filtering out noise and staging candidates. The applier skill executes approved proposals by applying diffs to evolvable surfaces (like \CLAUDE.local.md\ and \memory/\) while strictly protecting frozen doctrine and the core Go applier via a frozen allowlist. Both skills include comprehensive bash test suites (\apply\_test.sh\, \verify\_test.sh\, \rollback\_rehearsal\_test.sh\) to verify safety, idempotency, and correct rollback behavior.

.claude/skills · high confidence

MoAI hook wrapper infrastructure for Claude Code integration

The .claude/hooks/moai directory now contains a comprehensive set of Bash wrapper scripts that bridge Claude Code events to the MoAI backend. These thin forwarders (e.g., handle-pre-tool.sh, handle-post-tool.sh, handle-security-scan.sh) capture stdin JSON payloads and dispatch them to the corresponding 'moai hook' commands, resolving the binary via project-local, PATH, or Go bin locations. The wrappers include standardized error logging with 10MB rotation, fail-open safety exits, and specific logic for security gates (like the Bash Risk-Amplifier warning in pre-tool) and opt-in review gates (codex and multi-review).

.claude/hooks · high confidence

Modernized CLI interface with charmbracelet/huh and glamour

The command-line interface has been redesigned to use the charmbracelet/huh library for interactive wizards and glamour for terminal styling, replacing the previous UI implementation. This change introduces a modern visual aesthetic with lipgloss rounded boxes and adaptive color themes, improving the overall user experience for configuration and status displays.

internal · high confidence

New CI and workflow audit scripts for drift detection, terminology, and integrity validation

The scripts directory now includes several new shell scripts to enforce workflow and specification integrity. \audit-spec-sync-drift.sh\ detects status mismatches between \spec.md\ and \progress.md\ files, classifying drift by specification era (V3R6, V3R5, or legacy). \audit-workflow-split.sh\ validates cross-references within workflow documentation to ensure no broken links exist. \audit-workflow-terminology.sh\ checks documentation files for ambiguous 'worktree' references, ensuring they are properly disambiguated with L1/L2/L3 prefixes. Additionally, \benchmark-overhead-check.sh\ acts as a gate for performance benchmarks, failing if atomic write overhead exceeds 5% with statistical significance. The \ci-mirror\ suite now includes \validate-required-checks.sh\ to ensure single-source-of-truth integrity for CI checks, verifying that auxiliary checks are not incorrectly listed as required in main or release branches. These scripts support the broader CI autonomy and workflow split initiatives.

scripts · high confidence

New \`moai graph build\` command generates a unified dependency graph

Users can now run \moai graph build\ to generate a single, byte-stable JSONL artifact (\.moai/project/graph/edges.jsonl\) that unifies three existing analysis layers: import adjacency (derived from the codemaps markdown artifact), MX-spec references, and spec dependencies. The command aggregates these into a sorted, diff-friendly format where each line represents one edge, providing a consolidated view of the project's structural and specification relationships without requiring manual combination of separate tools.

.moai/reports/t99 · high confidence

New chain lineage tracking, constitution rule validation, harness event observer, and unified settings schema

This change introduces four new internal packages that establish foundational capabilities for the platform. The \chain\ package adds a \Populator\ to create and manage a monotonically-sortable node ID system, enabling worktree lineage tracking and session ID backfilling. The \constitution\ package introduces a \Rule\ struct and strict ID pattern validation (supporting V3R2, V3R5, and V3R6 namespaces) to enforce constitution integrity. The \harness\ package adds an \Observer\ to record usage events to a JSONL log with optional retention pruning and context-weight estimation. Finally, the \settings\ package defines a unified schema (SSOT) for the web console and TUI, standardizing 6 core sections plus 15 new seam-specific sections (e.g., LLM, MCP, CrossSession) with consistent field definitions, persistence targets, and i18n keys.

github.com/modu-ai/moai-adk · high confidence

New internal audit and design reports added to .moai/reports

Added four new HTML report files to the .moai/reports directory: an agent architecture redesign plan (v1 and v2) detailing catalog changes and token policies, a comprehensive CLI code audit identifying critical and major defects in the codebase, and a multi-language diagram demo showcasing font and layout styles.

.moai/reports · high confidence

New lsel-apply hook enforces frozen-path and execution-meta safety gates

A new shell script, .moai/hooks/lsel-apply.sh, has been added to handle the application of approved self-evolution proposals. This hook acts as a playback-only consumer that reads approved decision.json files and applies associated diffs via git apply. It introduces strict safety controls: it validates target paths against a frozen allowlist to prevent modifications to protected areas, and it enforces a synchronous-approval gate for execution-meta targets. Additionally, it performs pre-apply validation of all destination paths within the diff patch itself to ensure no frozen paths are written, even if the declared target surface appears safe. Applied changes are logged to an apply ledger and committed as conventional commits.

.moai/hooks · high confidence

New workflow runners and fan-out scripts for documentation, release updates, and code analysis

The \.claude/workflows\ directory now includes several new execution scripts: \hns-oss-docs-run.js\ orchestrates a 4-locale (Korean canonical, deriving English, Japanese, and Chinese) documentation pipeline with scope, author, translate, and verify phases; \hns-release-update-run.js\ performs a parallel, read-only research sweep of Claude Code version deltas (2.1.228 through 2.1.233) to assess impact; \codemaps-extract.js\ provides a read-only, per-package architectural synthesis fan-out for Go packages; \plan-research-fanout.js\ enables parallel, multi-lens plan-phase research with a synthesizer; \sync-audit-4dim.js\ implements a 4-dimension (Functionality, Security, Craft, Consistency) quality audit with a harmonic-mean verdict; and \lsel-drain-loop.js\ acts as a read-only reminder to print backlog-check and drain commands. Additionally, \tests/sync-audit-4dim.test.js\ adds unit tests for the pure verdict logic within \sync-audit-4dim.js\.

.claude/workflows · high confidence

ci-mirror: new language-specific smoke test pipelines

The ci-mirror script now includes dedicated smoke-test pipelines for a wide range of languages (Go, C++, C\#, Elixir, Flutter, Java, Kotlin, Node.js, PHP, Python, R, Ruby, Rust, Scala, and Swift). Each pipeline detects the presence of the language's toolchain and runs its standard test command (e.g., go test, npm test, pytest, cargo test), exiting silently if the tool is not installed. The Go pipeline is more comprehensive, adding templ code generation, go vet, optional golangci-lint, race detection, cross-compilation, and an i18n-validator step that checks translation budgets against changed files. A shared helper library (\_common.sh) provides POSIX-compatible logging, abort, and language-detection utilities used by these pipelines.

scripts/ci-mirror · high confidence

Behavioural changes

Absorbed diagram-design quality rules and evidence for journey diagrams

This location now contains the audit report, upstream analysis, and sample artifacts for the absorption of the diagram-design v2.6.1 quality layer. The plan-audit.md confirms the SPEC-SVG-QUALITY-ABSORB-001 passed with a 0.857 score, while the upstream/absorption-verdict.md details the specific rules absorbed (A-1 through A-6) and those rejected (C). Additionally, the samples/ directory provides the concrete evidence for the mermaid bypass list, including the journey.mmd source, the original mermaid SVG, and the new absorbed SVG that demonstrates the enforced styling and accessibility contracts.

.moai/reports/t165 · high confidence

Added bulk-cleanup scripts for SPEC metadata normalization

Two new Go scripts have been added to .moai/scripts to automate the cleanup of SPEC metadata. lint-skip-cleanup.go removes the lint.skip StatusGitConsistency entries from 55 SPECs, bumps their versions, and updates the HISTORY table. status-drift-cleanup.go resolves status drift by downgrading status fields (e.g., completed to implemented or in-progress) across 77 SPECs, also bumping versions and updating timestamps. Both scripts are idempotent and operate on SPEC spec.md files.

.moai/scripts · high confidence

CI flake stabilization for session, timing, and hook tests

Resolves three CI flaky tests by fixing their underlying mechanisms: the \TestConcurrentSendPoll\ exit rule is corrected to prevent premature termination (TOCTOU), the \TestAssertPairedHealthyEndToEnd\ estimator is hardened against alternation-locked asymmetry using an AND-gate logic, and the \TestConfigChange\_RT005ReloadIntegration\ latency check is rebuilt as a p95 assertion over multiple samples. The change also introduces a reusable authoring rule for timing-sensitive tests and establishes a post-merge observation window to verify the fixes.

.moai/reports/t278 · high confidence

Clarified semantics for worktree locks, env rejection, and goal directives

Updated three documentation files to replace stale or inaccurate rationales with verified semantics: clarified that Claude Code session worktree locks are designed behavior (auto-releasing on dead sessions in v2.1.210+) rather than defects; explained that the rejection of \env -u\ is due to static analysis limitations rather than an argument-boundary misparse; and corrected the rationale for prohibiting native \/goal\ from 'human-only' to the fact that the native evaluator cannot make tool calls, making machine-verifiable condition judgment impossible.

.moai/reports/t95 · high confidence

Codex hook adapter SPEC audit passed with resolved defects

The plan audit for the Codex hook adapter (SPEC-CODEX-HOOK-ADAPTER-001) has passed iteration 2 with a score of 0.92, resolving all nine blocking and optional defects from the initial FAIL. The audit confirms that the adapter's specification correctly maps 11 Codex events to dispatcher arguments, includes byte-identical golden fixtures for testing, and adheres to the project's linting conventions for scope definitions. Key behavioral clarifications in the spec include the requirement to handle exit-2 events differently based on the event type (blocking reason vs. continuation prompt), the prohibition of the top-level \version\ key in hook configs, and the explicit scope boundary that the adapter must not modify existing files under \internal/hook/\.

.moai/reports/t83 · high confidence

Enforced pre-commit and pre-push quality gates

Developers now have automated checks running before commits and pushes. The new pre-commit hook validates Go code formatting (gofmt) and static analysis (go vet) for staged files, and invokes the 'moai gate' tool for broader language and linting checks if available. The pre-push hook runs the local CI suite (make ci-local) to catch integration issues early, and validates commit message conventions via the moai engine. Both hooks can be bypassed using environment variables (SKIP\_MOAI\_PRECOMMIT=1 or SKIP\_MOAI\_PREPUSH=1), with bypasses logged for the pre-push hook.

_.git\hooks · high confidence

Graph freshness report triage and remediation for t279

This change introduces the t279 triage report and its associated verification artifacts (finding-index, thread-disposition, and verify-\*.md files) to resolve 69 findings from the previous t250 code review round. The triage confirms that 33 findings were already fixed, 2 were invalid, 1 was deferred by design, and 29 were adopted for immediate execution. The adopted changes include test policy updates (e.g., adding CGO build tags, fixing JSON serialization in tests), code polish (e.g., improving error wrapping, validating provenance roots, sanitizing CLI filesystem errors), SPEC corrections (e.g., clarifying language-specific behaviors, resolving SHOULD/MUST conflicts), and documentation fixes (e.g., correcting tool counts, fixing Korean phrasing). It also records a structural defect where squash merges orphan stamp commits, proposing future CI guards to prevent this.

.moai/reports/t279 · high confidence

Improved CLI exit code handling for subprocess failures

The CLI now distinguishes between intentional exit codes and raw subprocess errors. When a command fails, the entry point attempts to resolve a specific exit code via \cli.ResolveExitCode\; if the error is a raw \\*exec.ExitError\ (which previously caused silent failures or incorrect codes), it now defaults to exit code 1 instead of adopting the subprocess's potentially misleading code. This ensures that orchestrators receive predictable exit statuses (0, 1, 2, or 3) as required by the worktree state guard specification.

cmd · high confidence

MoAI orchestration rules and workflow protocols updated

The MoAI system's core orchestration rules and workflow protocols have been updated to enforce stricter operational standards. Key changes include: subagents are now strictly prohibited from prompting users or invoking AskUserQuestion, reserving all user-facing questions for the orchestrator; the orchestrator must now execute read-only verification batches as single-turn multi-Bash calls to reduce latency; and a new parallel pre-edit sync check is required before spawning implementation agents or making direct edits to shared working-tree files to prevent multi-session race conditions. Additionally, git staging is now restricted to explicit pathspecs (no \git add -A\), and the orchestrator must emit structured, paste-ready resume messages with cut-line markers when context thresholds are crossed or sessions end, ensuring seamless handoffs. The rules also clarify that Opus 4.7+ / 4.8 models prefer reasoning over tool invocation by default, and that heavy non-English artifacts must pass through a humanization skill before delivery.

.moai/reports/t82 · high confidence

MoAI working directory structure and status-line wrapper restored

The \.moai/\ project-local working directory has been re-established with its standard subdirectories (config, project, design, docs, decisions, branches, evolution, learning, reports) and a new \status\_line.sh\ wrapper script. The wrapper resolves a previous issue where the status-line rendering leaked temporary files by removing the \mktemp\ buffer and using \exec\ to pass stdin directly to the \moai statusline\ command, while also sourcing GLM environment variables for Agent Teams tmux mode. A \manifest.json\ file tracks the provenance and integrity of managed agent and hook templates, and volatile runtime paths (logs, state, cache, temp) are now explicitly gitignored.

.moai · high confidence

MoAI-ADK v3.1.3 release with simplified development modes and expanded quality gates

This release sets the default version to v3.1.3 and introduces several structural changes to the configuration and model packages. The previously available 'Hybrid' development mode has been removed, leaving only DDD (Domain-Driven Development) and TDD (Test-Driven Development) as valid options, which simplifies the methodology selection for users. The configuration model has been significantly expanded to support a more granular quality assurance system, adding new settings for LSP (Language Server Protocol) integration, TRUST 5 framework mapping, regression detection thresholds, and test quality requirements. Additionally, the UserConfig now allows an empty 'name' field, enabling initialization and updates to proceed without requiring a user identity upfront. Utility functions for logging and path resolution have been removed from the utils package, and new packages for language support and versioning have been added to centralize these concerns.

pkg · high confidence

Orchestration mode catalog renamed from numeric (1-6) to semantic names (direct, serial, fanout, sweep)

The internal orchestration mode catalog has been re-axised from a 6-mode numeric system to a 4-mode semantic system based on spawn count. Mode 1 is now 'direct', Mode 2 is 'background', Mode 3 is 'agent-team', Mode 4 is 'fanout', Mode 5 is 'serial', and Mode 6 is 'sweep'. This change updates documentation, configuration catalogs, and template mirrors to reflect the new naming convention while maintaining backward compatibility for legacy enum tokens (e.g., 'parallel' maps to 'fanout'). The change is doctrine-only with no runtime code modifications, ensuring existing workflows continue to function via read-side mapping.

.moai/reports/t108 · high confidence

Placeholder for branch origin decision protocol

A placeholder file has been added to the branch decisions directory to support the T8 Branch Origin Decision Protocol.

.moai/branches · low confidence

Recorded investigation and verdict for GLM reasoning effort mapping (t175)

Added measurement records, a probe script, and a final verdict for card t175, which investigates how GLM reasoning effort is handled. The investigation confirms that the z.ai Anthropic-compat shim accepts the \thinking\ parameter (allowing depth control via budget tokens) but ignores the top-level \reasoning\_effort\ field. The current code hardcodes the session default to \high\, and while the \llm.yaml\ configuration stores \reason-max\ labels, they are not actively used by the code overlay. The verdict records that the plan to map medium/high effort to \max\ has passed audit, pending final end-to-end verification in a release binary.

.moai/reports/t175 · high confidence

Reduced always-loaded token budget to stay within limits

The system's always-loaded instruction surface has been trimmed from 76,680 to 75,026 tokens (a net reduction of 1,654 tokens), bringing it under the 76,000-token budget. This was achieved by splitting large rule files like \kanban-dispatch.md\ and \agent-common-protocol.md\ into smaller stubs (always loaded) and companion files (loaded only when relevant paths are matched), while also tightening prose in \session-handoff-examples.md\. A test (\TestAlwaysLoadedTokenBudget\) now verifies that the total token count remains within the configured limit, ensuring that future changes do not inadvertently exceed the budget.

.moai/reports/t114 · high confidence

Removal of empty placeholder directories in templates/.claude

The empty placeholder files (.gitkeep) in the templates/.claude subdirectories (agents, hooks, output-styles, rules, skills) have been removed. This cleanup eliminates unused directory structures that previously served only as placeholders, resulting in a cleaner template layout without affecting any functional template content.

templates · high confidence

Review workflow now supports cross-model convergence with fail-open fallback

The review workflow has been extended with a new Phase 3.5 that integrates verdicts from multiple AI backends (Codex and GLM) alongside the primary Claude verdict using the \mcp\_\moai\\_audit\_multi\ tool. This convergence runs only when the \audit\_model\ setting selects cross-backend mode; if the backends are unavailable or return inconclusive results, the system safely falls back to the single-model Claude verdict without blocking the review. The change updates the review documentation in both the source and template trees to reflect this new gating logic, mode carve-outs (skipping for \--lean\ or \--deep\), and report formatting, and includes tests to verify the wiring and fail-open behavior.

.moai/reports/t78, .moai/reports/webredesign · high confidence

Verified 1M context window display for GLM-5.3 in t64 report

The t64 report confirms that the GLM-5.3 model correctly reports a 1,000,000-token context window across four distinct surfaces: the raw Claude Code statusline payload, the MoAI statusline snapshot, the session TUI /context panel, and the session result JSON. This measurement validates that the fix from t65 (CLAUDE\_CODE\_MAX\_CONTEXT\_TOKENS declaration) is active in release v3.1.0, resolving the previous issue where the window was incorrectly displayed as 200K for custom model IDs.

.moai/reports/t64 · high confidence

Worktree cleanup audit and disposal script for t145

Added a disposal script and recovery list to audit and clean up 98 registered git worktrees. The script identifies 52 merged worktrees safe for removal, flags 12 requiring artifact recovery, and protects 14 orphaned trees and 4 active session anchors from deletion. A separate recovery list documents 81 files needing retrieval from worktrees with uncommitted or untracked changes.

.moai/reports/t145 · high confidence

Zone-registry clause and anchor drift detected and analyzed

The \moai constitution validate\ command now reports 67 errors in a freshly initialized project because the zone-registry entries contain paraphrased summaries instead of verbatim text substrings required by the drift checker, and 17 entries point to stale heading anchors. This location provides the analysis tooling (\analyze.py\, \cmp.py\, \divergence.py\) and evidence reports that reproduce the failure, compare it against the template mirror, and document the direction of the drift.

.moai/reports/t232 · high confidence

Fixes

Fixes Codex verdict synthesis to prevent unrecognized formats from passing

The \synthesizeReviewOutput\ function in \internal/cli/mcp\_codex.go\ has been updated to ensure that unrecognized review formats no longer default to a \pass\ verdict. Previously, if the input text did not match specific patterns (such as finding bullets or stated verdicts), the function would incorrectly synthesize a \pass\ result. This fix introduces a mode-aware default: while native review mode retains \pass\ for clean, bullet-less inputs, adversarial and other modes now default to \inconclusive\ when no signals are detected, preventing false positives in audit contexts. The change also refactors the synthesis logic to collect multiple verdict signals (stated, scored, and bullet-based) and adopt the most conservative value from the set, ensuring that conflicting signals (e.g., a stated \pass\ alongside a scored \fail\) result in the stricter outcome.

.moai/reports/t229 · high confidence

Fixes flaky CI timing regressions and test cleanup failures

Resolves two sources of non-deterministic CI failures: the timing calibration logic now computes the median of per-round ratios instead of dividing overall medians, preventing false-positive latency regressions when background load steps occur between reference and function measurements; and test fixtures now disable Git's automatic maintenance and garbage collection (\gc.auto=0\, \maintenance.auto=false\) to prevent detached background processes from interfering with temporary directory cleanup.

.moai/reports/t222 · high confidence

Restores pre-write ast-grep security deny capability

This change re-enables the security scan's ability to deny writes when ast-grep detects error-severity findings. The investigation revealed that the deny capability had been structurally broken: the Go pipeline was merging ast-grep's stderr error banners with its JSON output, causing JSON parsing to fail and resulting in zero findings being reported. The fix ensures that error findings correctly trigger a deny decision, restoring the intended security gate for pre-write content scanning.

.moai/reports/t217 · high confidence

Test coverage

Added TUX v3 CLI E2E journey test script; Added empty main entry points for test cases; Added test coverage for date-neutrality SPEC-TEMPLATE-DATE-NEUTRALITY-002; Added test coverage for template date-neutrality remediation; Integration tests for the self-learning dynamic harness.

Dependencies

Upgrade to Go 1.26 and modernize TUI dependencies

The project has upgraded its Go toolchain from 1.25.6 to 1.26.4 and significantly updated its dependency tree to support a modernized TUI. Key changes include adopting the v2 versions of the Charm ecosystem (bubbles, bubbletea, lipgloss, huh, and fang), integrating the a-h/templ template engine, and adding the mark3labs/mcp-go library for MCP server capabilities. Additionally, core libraries like golang.org/x/net, golang.org/x/text, and golang.org/x/tools have been updated to their latest stable versions.

(dependencies) · high confidence

Housekeeping

Internal documentation audit reports for v3.1.1 added

Added internal audit and planning documents for the v3.1.1 release, including a four-locale surface map, a Korean README inventory, and a detailed remediation plan. These reports identify specific documentation gaps (such as missing pages for \moai clean --home\, \moai memory\, and \moai tokens\), correct stale claims (e.g., \cache.yaml\ configuration behavior, skill counts, and CLI command totals), and outline a plan to synchronize the four locale READMEs and the Hugo-based docs site.

.moai/reports/v311-docs · 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

Baseline

  • First survey — no prior run to compare against. CAI 49.

Lenses

  • Code Health 38
  • Architecture 95
  • Maturity 82
  • Readiness 68
  • Security 49
  • Domain Modelling 100
  • Accessibility 52

Changes since last survey

  • 300 commits — 258 feature/other, 42 fixes

By area

  • .moai/specs — 99 commits
  • .moai/reports — 42 commits
  • internal/cli — 35 commits
  • (repo) — 32 commits
  • internal/template — 26 commits
  • docs-site/content — 11 commits
  • (root) — 9 commits
  • internal/hook — 9 commits
  • .claude/rules — 6 commits
  • internal/web — 6 commits
  • .claude/skills — 5 commits
  • internal/config — 4 commits
  • internal/core — 3 commits
  • internal/feedback — 3 commits
  • internal/statusline — 2 commits
  • .claude/workflows — 1 commit
  • .github/workflows — 1 commit
  • docs-site/vercel.json — 1 commit
  • internal/codexadapter — 1 commit
  • internal/codexwiring — 1 commit

Notable commits

  • fix: chore(release-update): fix child SPEC stub lint findings (id format, tags, out-of-scope) (#1599)
  • fix: fix(SPEC-CLI-CLEAN-SYMLINK-001): apply audit iter-1 fixes (D1-D4) + audit report
  • fix: fix(SPEC-CLI-STATE-DIR-BOUND-001): M1 stop state resolution at the project root
  • fix: fix(SPEC-CLI-STATE-DIR-BOUND-001): M2 give the chain ledger one location
  • fix: fix(SPEC-CLI-STATE-DIR-BOUND-001): M3 keep deletion off the environment variable
  • fix: fix(SPEC-CODEX-DUAL-AGENTS-001): M3b mcp_servers map shape (run-phase measured correction)
  • fix: fix(SPEC-CODEX-DUAL-AGENTS-001): R-009 mcp_servers shape errata (run-phase measured)
  • fix: fix(SPEC-DIAGRAM-PROFILE-IMPORT-001): apply audit D1-D5 (v0.2.0)
  • fix: fix(SPEC-GLM-EFFORT-MAX-001): apply audit D1-D6 + lead ratifications (v0.1.1)
  • fix: fix(SPEC-MCP-WORKTREE-ROOT-001): M5 post-repair check, and the defect it found in the repair
  • fix: fix(SPEC-MCP-WORKTREE-ROOT-001): apply iter-2 R1 and the two queued self-sweep items
  • fix: fix(SPEC-MCP-WORKTREE-ROOT-001): apply iter-3's optional R2 and R3 rather than deferring
  • fix: fix(SPEC-MCP-WORKTREE-ROOT-001): apply plan-audit iter-1 findings D1-D5
  • fix: fix(cli): canonicalize project_root so a symlink cannot outlive a boundary (card t183)
  • fix: fix(constitution): let validate retire an entry instead of deleting it (#1611)
  • fix: fix(doctor): make the exit code and the constitution row tell the truth (t200) (#1612)
  • fix: fix(gate): stop the gate failing a project for having no code yet (t193) (#1604)
  • fix: fix(hook): blame the budget that actually ran out on a gate timeout (t218) (#1634)
  • fix: fix(hook): run the goal evaluator once per turn, not once per resolution tier (t220) (#1629)
  • fix: fix(hook): stop the registry walk at the home directory (t168) (#1609)
  • …and 280 more

Architecture

  • 0 containers · 1 bounded contexts · 0 dependency edges (baseline)

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

Survey your own repository

modu-ai/moai-adk 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 21 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 2213871afb7d655f411c46a34fd38bb8153278fc — 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-fa71c66cabd8.