No gut feeling, no black box. We show you exactly which 8 dimensions we assess, why each of them determines the success of AI in your software and how objective metrics and AI analysis become a reproducible score from 0–100.
Each dimension on a scale from 0 (not present) to 5 (exemplary)
The underlying question is the same for every dimension: How reliably can an AI assistant like Claude Code, Cursor or GitHub Copilot work on your code?
Why it matters for AI: AI assistants work most reliably when they can operate on an isolated, manageable unit of code. In a tightly coupled monolith, the AI changes something in one place and unknowingly breaks three others — just like a human, only faster.
What we check: logical directory structure, separation of business logic / data access / presentation, defined interfaces between modules, file size (< 300 lines), function length (< 50 lines) and complexity.
index.php — 2,400 lines, SQL + HTML + business logic mixedController → Service → Repository — each file < 150 lines, clear boundariesWhy it matters for AI: The AI learns the existing style and reproduces it. If the codebase is inconsistent, it produces inconsistent results — the sprawl compounds with every feature.
What we check: linters (ESLint, Pylint, PHP_CodeSniffer), formatters (Prettier, Black), consistent naming conventions, dead/commented-out code, magic numbers, pre-commit hooks.
$x = $d * 0.19; — cryptic name, magic number$mwst = $netto * MWST_SATZ; — + linter + formatter + pre-commitWhy it matters for AI: Types are the single most important context there is. Without them, the AI has to guess which data structure a function expects — and guessing leads to runtime errors that only your customer notices.
What we check: typed parameters and return values, defined models/DTOs, strict type mode (strict, strict_types), ORM/Prisma schemas, API schemas (OpenAPI, GraphQL).
function save($data) { ... } — what's inside $data?function save(user: User): Result<User> — the AI knows every fieldWhy it matters for AI: Tests are the safety net for AI-generated changes. Without tests, no one — neither human nor AI — can verify whether a change is correct. Only with tests does the AI go from "dangerously fast" to "fast and safe".
What we check: existing test framework (Jest, PHPUnit, pytest, Playwright), level of coverage, mix of unit and integration tests, single-command execution, determinism (no flaky tests), CI integration.
*.test.ts, no CI — every change is flying blindnpm test → 340 tests, 87% coverage, in CI/CDWhy it matters for AI: The AI needs domain context to make meaningful changes. Machine-readable context files (CLAUDE.md, .cursorrules) are the most direct way to hand this knowledge to the AI — it reads them automatically on every task.
What we check: README with setup instructions, documented architecture, API documentation, AI context files, glossary for domain terms.
README: "npm install" — nothing elseCLAUDE.md + OpenAPI schemaWhy it matters for AI: The AI must be able to run, test and validate code. A reproducible environment is the prerequisite for the AI to verify its own work instead of delivering it untested.
What we check: Git with a sensible branching strategy, CI/CD pipeline, containerized setup (Docker), environment variables instead of hardcoding, one-command setup.
docker compose up + GitHub Actions + branch previewsWhy it matters for AI: AI models know current frameworks far better than outdated ones. On an old stack, the AI suggests patterns that no longer fit — and outdated packages additionally introduce security risks.
What we check: currency of the language/runtime version, presence of a lock file, currency of dependencies, known security vulnerabilities (npm audit, composer audit), automated updates.
Why it matters for AI: The AI can accidentally expose credentials or reproduce insecure patterns from the codebase. A clean security architecture limits the damage an AI mistake can cause.
What we check: credentials exclusively in environment variables/secret managers, correct .gitignore, input validation, parameterized database queries (prepared statements), security headers, security scans in CI.
$pass = "root123"; in the code, SQL via string concatenationTwo tracks, one transparent result
The score for each dimension comes from two tracks. Objective metrics provide the measurable foundation, the AI judgement provides the qualitative understanding — because "a linter is set up" does not yet mean "the code is really clean".
Pure analysis tools, no AI — deterministic and 100% reproducible. Two identical runs yield the same number.
CLAUDE.md, CI, Docker, .gitignoreAn AI assistant reads your codebase like a senior developer: at least 20 representative files (the largest, the most frequently changed, the central entry points).
file:line — verifiable, no hallucinationExample calculation for Dimension 1 (Architecture): The metric measures a score of 4 (files are small), but the AI only assigns 3 — it detects hidden coupling that no metric sees.
| Dimension | Metric (40%) | AI (60%) | Combined | Weight | Points |
|---|---|---|---|---|---|
| 1 · Architecture | 4 | 3 | 3,4 | 20% | 13,6 |
| 2 · Code Quality | 3 | 3 | 3,0 | 15% | 9,0 |
| 3 · Typing | 2 | 2 | 2,0 | 15% | 6,0 |
| 4 · Testing | 1 | 1 | 1,0 | 15% | 3,0 |
| 5 · Documentation | 2 | 3 | 2,6 | 15% | 7,8 |
| 6 · DevOps | 3 | 3 | 3,0 | 10% | 6,0 |
| 7 · Dependencies | 3 | 2 | 2,4 | 5% | 2,4 |
| 8 · Security | 2 | 2 | 2,0 | 5% | 2,0 |
| Overall score | 49,8 → 50 | ||||
First row: (4 × 0,4 + 3 × 0,6) = 3,4, then 3,4 ÷ 5 × 20 = 13,6 points out of 20 possible.
Result: 50/100 — Yellow, conditionally AI-capable.
Fictional example project for illustration, not a real customer case.
Optionally, an AI practical test validates the score against real behaviour: The AI solves three real tasks on your code — a small feature, a bug fix and a refactoring. That way you see in black and white how productively AI already works on your software today.
The Quick Check delivers your AI-Readiness Score within 24 hours, a radar chart of all 8 dimensions and the three most impactful actions — at a fixed price of €990.
Book Quick Check — €990