Agent Readiness Dashboard

Generated 2026-05-16 18:46 UTC
Repositories
2
Assessed
2 / 2
Average Score
71.0
Platinum
0
Gold
1
Repository Score Certification Assessed Source Last Updated
agentready 81.0 Gold 22 / 29 github 2026-05-09 09:37
Branch: demo Languages: YAML, JSON, Markdown, Shell, XML, Python, SQL 542 files
Score
81.0
Certification
Gold
Assessed
22 / 29
Tier 1 — Essential
CLAUDE.md Configuration Files pass 100 present
Evidence
  • CLAUDE.md found at /home/bramos/projects/agentready/CLAUDE.md
Threshold
  • present
README Structure pass 100 3/3 sections
Evidence
  • Found 3/3 essential sections
  • Installation: ✓
  • Usage: ✓
  • Development: ✓
Threshold
  • 3/3 sections
Type Annotations fail 37 29.8%
Evidence
  • Typed functions: 685/2299
  • Coverage: 29.8%
Threshold
  • ≥80%
Add type annotations to function signatures
Steps
  • For Python: Add type hints to function parameters and return types
  • For TypeScript: Enable strict mode in tsconfig.json
  • Use mypy or pyright for Python type checking
  • Use tsc --strict for TypeScript
  • Add type annotations gradually to existing code
Commands
# Python pip install mypy mypy --strict src/ # TypeScript npm install --save-dev typescript echo '{"compilerOptions": {"strict": true}}' > tsconfig.json
Standard Project Layouts pass 100 2/2 directories
Evidence
  • Found 2/2 standard directories
  • src/: ✓
  • tests/: ✓
Threshold
  • 2/2 directories
Dependency Pinning for Reproducibility pass 100 uv.lock
Evidence
  • Found lock file(s): uv.lock
Threshold
  • lock file with pinned versions, < 6 months old
Dependency Security & Vulnerability Scanning pass 40 Security tools configured: Dependabot
Evidence
  • ✓ Dependabot configured for dependency updates
  • 1 package ecosystem(s) monitored
  • ✓ SECURITY.md present (vulnerability disclosure policy)
Threshold
  • ≥60 points (Dependabot/Renovate + SAST or multiple scanners)
Add more security scanning tools for comprehensive coverage
Steps
  • Enable Dependabot alerts in GitHub repository settings (or configure Renovate: add renovate.json to repository root)
  • Add CodeQL scanning workflow for SAST
  • Configure secret detection (detect-secrets, gitleaks)
  • Set up language-specific scanners (pip-audit, npm audit, Snyk)
Commands
gh repo edit --enable-security pip install detect-secrets # Python secret detection npm audit # JavaScript dependency audit
Tier 2 — Critical
Test Coverage Requirements pass 100 configured
Evidence
  • Coverage configuration found
  • pytest-cov dependency present
Threshold
  • configured with >80% threshold
Pre-commit Hooks & CI/CD Linting pass 100 configured
Evidence
  • .pre-commit-config.yaml found
Threshold
  • configured
Conventional Commit Messages pass 100 configured
Evidence
  • Commit linting configured
Threshold
  • configured
.gitignore Completeness pass 92 11/12 patterns
Evidence
  • .gitignore found (1140 bytes)
  • Pattern coverage: 11/12 (92%)
  • Missing 1 recommended patterns
Threshold
  • ≥70% of language-specific patterns
One-Command Build/Setup pass 100 pip install
Evidence
  • Setup command found in README: 'pip install'
  • Setup automation found: Makefile, pyproject.toml
  • Setup instructions in prominent location
Threshold
  • single command
File Size Limits fail 55 3 huge, 24 large out of 204
Evidence
  • Found 3 files >1000 lines (1.5% of 204 files)
  • Largest: src/agentready/assessors/documentation.py (1606 lines)
Threshold
  • <5% files >500 lines, 0 files >1000 lines
Refactor large files into smaller, focused modules
Steps
  • Identify files >1000 lines
  • Split into logical submodules
  • Extract classes/functions into separate files
  • Maintain single responsibility principle
Separation of Concerns pass 96 organization:100, cohesion:87, naming:100
Evidence
  • Good directory organization (feature-based or flat)
  • File cohesion: 27/202 files >500 lines
  • No catch-all modules (utils.py, helpers.py) detected
Threshold
  • ≥75 overall
Concise Documentation fail 64 330 lines, 53 headings, 33 bullets
Evidence
  • README length: 330 lines (good)
  • Heading density: 16.1 per 100 lines (target: 3-5)
  • 1 paragraphs exceed 10 lines (walls of text)
Threshold
  • <500 lines, structured format
Make documentation more concise and structured
Steps
  • Break long README into multiple documents (docs/ directory)
  • Add clear Markdown headings (##, ###) for structure
  • Convert prose paragraphs to bullet points where possible
  • Add table of contents for documents >100 lines
  • Use code blocks instead of describing commands in prose
  • Move detailed content to wiki or docs/, keep README focused
Commands
# Check README length wc -l README.md # Count headings grep -c '^#' README.md
Inline Documentation pass 100 92.1%
Evidence
  • Documented items: 2370/2572
  • Coverage: 92.1%
  • Good docstring coverage
Threshold
  • ≥80%
Tier 3 — Important
Cyclomatic Complexity Thresholds pass 100 3.7
Evidence
  • Average cyclomatic complexity: 3.7
Threshold
  • <10.0
Architecture Decision Records (ADRs) fail 0 no ADR directory
Evidence
  • No ADR directory found (checked docs/adr/, .adr/, adr/, docs/decisions/)
Threshold
  • ADR directory with decisions
Create Architecture Decision Records (ADRs) directory and document key decisions
Steps
  • Create docs/adr/ directory in repository root
  • Use Michael Nygard ADR template or MADR format
  • Document each significant architectural decision
  • Number ADRs sequentially (0001-*.md, 0002-*.md)
  • Include Status, Context, Decision, and Consequences sections
  • Update ADR status when decisions are revised (Superseded, Deprecated)
Commands
# Create ADR directory mkdir -p docs/adr # Create first ADR using template cat > docs/adr/0001-use-architecture-decision-records.md << 'EOF' # 1. Use Architecture Decision Records Date: 2025-11-22 ## Status Accepted ## Context We need to record architectural decisions made in this project. ## Decision We will use Architecture Decision Records (ADRs) as described by Michael Nygard. ## Consequences - Decisions are documented with context - Future contributors understand rationale - ADRs are lightweight and version-controlled EOF
Issue & Pull Request Templates pass 100 PR:True, Issues:2
Evidence
  • PR template found
  • Issue templates found: 2 templates
Threshold
  • PR template + ≥2 issue templates
CI/CD Pipeline Visibility pass 80 configured with best practices
Evidence
  • CI config found: .github/workflows/agentready-assessment.yml, .github/workflows/agentready-dev-issue-pr.yml, .github/workflows/agentready-dev.yml, .github/workflows/ci.yml, .github/workflows/container-test.yml, .github/workflows/continuous-learning.yml, .github/workflows/coverage-comment.yml, .github/workflows/dependabot-auto-merge.yml, .github/workflows/docs.yml, .github/workflows/leaderboard.yml, .github/workflows/pr-review.yml, .github/workflows/release.yml, .github/workflows/research-update.yml, .github/workflows/security.yml, .github/workflows/stale-issues.yml, .github/workflows/update-docs.yml
  • Descriptive job/step names found
  • No caching detected
  • No parallelization detected
  • Config includes comments
  • Artifacts uploaded
Threshold
  • CI with best practices
Semantic Naming pass 100 functions:100%, classes:100%
Evidence
  • Functions: 594/594 follow snake_case (100.0%)
  • Classes: 97/97 follow PascalCase (100.0%)
  • No generic names (temp, data, obj) detected
Threshold
  • ≥75% compliance
Structured Logging fail 0 not configured
Evidence
  • No structured logging library found
  • Checked files: pyproject.toml
  • Using built-in logging module (unstructured)
Threshold
  • structured logging library
Add structured logging library for machine-parseable logs
Steps
  • Choose structured logging library (structlog for Python, winston for Node.js)
  • Install library and configure JSON formatter
  • Add standard fields: timestamp, level, message, context
  • Include request context: request_id, user_id, session_id
  • Use consistent field naming (snake_case for Python)
  • Never log sensitive data (passwords, tokens, PII)
  • Configure different formats for dev (pretty) and prod (JSON)
Commands
# Install structlog pip install structlog # Configure structlog # See examples for configuration
Tier 4 — Advanced
Code Smell Elimination pass 83 pylint, ruff, actionlint
Evidence
  • Linters configured: pylint, ruff, actionlint
  • Coverage: 50/60 points (83%)
Threshold
  • ≥60% of applicable linters configured
agentready-fleet 61.0 Silver 16 / 29 github 2026-05-16 14:44
Branch: main Languages: Markdown, YAML 16 files
Score
61.0
Certification
Silver
Assessed
16 / 29
Tier 1 — Essential
CLAUDE.md Configuration Files pass 100 present
Evidence
  • CLAUDE.md found at /home/bramos/projects/agentready-fleet/CLAUDE.md
Threshold
  • present
README Structure pass 100 3/3 sections
Evidence
  • Found 3/3 essential sections
  • Installation: ✓
  • Usage: ✓
  • Development: ✓
Threshold
  • 3/3 sections
Standard Project Layouts fail 0 0/2 directories
Evidence
  • Found 0/2 standard directories
  • source directory: ✗ (no src/ or project-named dir)
  • tests/: ✗
Threshold
  • 2/2 directories
Organize code into standard directories
Steps
  • Create a source directory for your code
  • Option A: Use src/ layout (recommended for packages)
  • Option B: Use project-named directory (e.g., mypackage/)
  • Ensure your package has __init__.py
  • Create tests/ directory for test files
  • Add at least one test file
Commands
# Option A: src layout mkdir -p src/mypackage touch src/mypackage/__init__.py # --- # Option B: flat layout (project-named) mkdir -p mypackage touch mypackage/__init__.py # Create tests directory mkdir -p tests touch tests/__init__.py touch tests/test_example.py
Dependency Pinning for Reproducibility pass 100 requirements.txt
Evidence
  • Found requirements.txt: All 3 dependencies pinned
Threshold
  • lock file with pinned versions, < 6 months old
Dependency Security & Vulnerability Scanning fail 0 No security scanning tools configured
Evidence
  • No security scanning tools detected
Threshold
  • ≥60 points (Dependabot/Renovate + SAST or multiple scanners)
Configure security scanning for dependencies and code
Steps
  • Enable Dependabot in GitHub repository settings
  • Add .github/dependabot.yml configuration file
  • Or configure Renovate: add renovate.json to repository root
  • Set up CodeQL scanning for SAST
  • Add secret detection to pre-commit hooks
  • Configure language-specific security scanners
Commands
gh repo edit --enable-security pip install pre-commit detect-secrets pre-commit install
Tier 2 — Critical
Pre-commit Hooks & CI/CD Linting fail 0 not configured
Evidence
  • .pre-commit-config.yaml not found
Threshold
  • configured
Configure pre-commit hooks for automated code quality checks
Steps
  • Install pre-commit framework
  • Create .pre-commit-config.yaml
  • Add hooks for linting and formatting
  • Install hooks: pre-commit install
  • Run on all files: pre-commit run --all-files
Commands
pip install pre-commit pre-commit install pre-commit run --all-files
Conventional Commit Messages fail 0 not configured
Evidence
  • No commitlint configuration found (.commitlintrc.json, package.json, husky, or pre-commit)
Threshold
  • configured
Configure conventional commits with commitlint
Steps
  • Option A (Python/pre-commit): Add conventional-pre-commit to .pre-commit-config.yaml
  • Option B (JS/commitlint): Install commitlint and configure husky for commit-msg hook
Commands
# Python (pre-commit): pip install pre-commit && pre-commit install --hook-type commit-msg # JS (commitlint + husky): npm install --save-dev @commitlint/cli @commitlint/config-conventional husky
.gitignore Completeness pass 100 5/5 patterns
Evidence
  • .gitignore found (178 bytes)
  • Pattern coverage: 5/5 (100%)
Threshold
  • ≥70% of language-specific patterns
One-Command Build/Setup fail 70 pip install
Evidence
  • Setup command found in README: 'pip install'
  • No Makefile or setup script found
  • Setup instructions in prominent location
Threshold
  • single command
Create single-command setup for development environment
Steps
  • Choose setup automation tool (Makefile, setup script, or package manager)
  • Create setup command that handles all dependencies
  • Document setup command prominently in README (Quick Start section)
  • Ensure setup is idempotent (safe to run multiple times)
  • Test setup on fresh clone to verify it works
Commands
# Example Makefile cat > Makefile << 'EOF' .PHONY: setup setup: python -m venv venv . venv/bin/activate && pip install -r requirements.txt pre-commit install cp .env.example .env @echo 'Setup complete! Run make test to verify.' EOF
File Size Limits pass 100 0 huge, 0 large out of 1
Evidence
  • All 1 source files are <500 lines
Threshold
  • <5% files >500 lines, 0 files >1000 lines
Separation of Concerns pass 100 organization:100, cohesion:100, naming:100
Evidence
  • Good directory organization (feature-based or flat)
  • File cohesion: 0/1 files >500 lines
  • No catch-all modules (utils.py, helpers.py) detected
Threshold
  • ≥75 overall
Concise Documentation fail 70 116 lines, 15 headings, 14 bullets
Evidence
  • README length: 116 lines (excellent)
  • Heading density: 12.9 per 100 lines (target: 3-5)
  • 14 bullet points, 3 code blocks (concise formatting)
Threshold
  • <500 lines, structured format
Make documentation more concise and structured
Steps
  • Break long README into multiple documents (docs/ directory)
  • Add clear Markdown headings (##, ###) for structure
  • Convert prose paragraphs to bullet points where possible
  • Add table of contents for documents >100 lines
  • Use code blocks instead of describing commands in prose
  • Move detailed content to wiki or docs/, keep README focused
Commands
# Check README length wc -l README.md # Count headings grep -c '^#' README.md
Tier 3 — Important
Architecture Decision Records (ADRs) fail 0 no ADR directory
Evidence
  • No ADR directory found (checked docs/adr/, .adr/, adr/, docs/decisions/)
Threshold
  • ADR directory with decisions
Create Architecture Decision Records (ADRs) directory and document key decisions
Steps
  • Create docs/adr/ directory in repository root
  • Use Michael Nygard ADR template or MADR format
  • Document each significant architectural decision
  • Number ADRs sequentially (0001-*.md, 0002-*.md)
  • Include Status, Context, Decision, and Consequences sections
  • Update ADR status when decisions are revised (Superseded, Deprecated)
Commands
# Create ADR directory mkdir -p docs/adr # Create first ADR using template cat > docs/adr/0001-use-architecture-decision-records.md << 'EOF' # 1. Use Architecture Decision Records Date: 2025-11-22 ## Status Accepted ## Context We need to record architectural decisions made in this project. ## Decision We will use Architecture Decision Records (ADRs) as described by Michael Nygard. ## Consequences - Decisions are documented with context - Future contributors understand rationale - ADRs are lightweight and version-controlled EOF
Issue & Pull Request Templates fail 0 PR:False, Issues:0
Evidence
  • No PR template found
  • No issue template directory found
Threshold
  • PR template + ≥2 issue templates
Create GitHub issue and PR templates in .github/ directory
Steps
  • Create .github/ directory if it doesn't exist
  • Add PULL_REQUEST_TEMPLATE.md for PRs
  • Create .github/ISSUE_TEMPLATE/ directory
  • Add bug_report.md for bug reports
  • Add feature_request.md for feature requests
  • Optionally add config.yml to configure template chooser
Commands
# Create directories mkdir -p .github/ISSUE_TEMPLATE # Create PR template cat > .github/PULL_REQUEST_TEMPLATE.md << 'EOF' ## Summary <!-- Describe the changes in this PR --> ## Related Issues Fixes # ## Testing - [ ] Tests added/updated - [ ] All tests pass ## Checklist - [ ] Documentation updated - [ ] CHANGELOG.md updated EOF
CI/CD Pipeline Visibility fail 70 basic config
Evidence
  • CI config found: .github/workflows/pages.yml, .gitlab-ci.yml
  • Descriptive job/step names found
  • No caching detected
  • Parallel job execution detected
Threshold
  • CI with best practices
Add or improve CI/CD pipeline configuration
Steps
  • Create CI config for your platform (GitHub Actions, GitLab CI, etc.)
  • Define jobs: lint, test, build
  • Use descriptive job and step names
  • Configure dependency caching
  • Enable parallel job execution
  • Upload artifacts: test results, coverage reports
  • Add status badge to README
Commands
# Create GitHub Actions workflow mkdir -p .github/workflows touch .github/workflows/ci.yml # Validate workflow gh workflow view ci.yml
Tier 4 — Advanced
Code Smell Elimination fail 0 none
Evidence
  • No linters configured
Threshold
  • ≥60% of applicable linters configured
Configure 2 missing linter(s)
Steps
  • Add actionlint for GitHub Actions workflow validation
  • Configure markdownlint for documentation quality
Commands
npm install --save-dev markdownlint-cli && touch .markdownlint.json