一键导入
architecture-quality-assess
Converted Claude skill for architecture-quality-assess. Use when Codex should run the converted architecture-quality-assess workflow.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
菜单
Converted Claude skill for architecture-quality-assess. Use when Codex should run the converted architecture-quality-assess workflow.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
基于 SOC 职业分类
| name | architecture-quality-assess |
| description | Converted Claude skill for architecture-quality-assess. Use when Codex should run the converted architecture-quality-assess workflow. |
Converted Claude skill workflow for Codex/OpenAI use.
Converted from skills/architecture-quality-assess/SKILL.md.
Supporting files copied from the Claude source:
assets/.architecture-assess-cachereferences/README.mdreferences/USAGE_GUIDE.mdreferences/architecture-assessment.mdassets/examplesassets/libreferences/phases-4-5-6-complete.mdscriptsassets/testsThe content below was adapted from the Claude source. Rewrite tool and runtime assumptions as needed when they refer to Claude-only features.
Version: 1.0.0 Status: Active Category: Code Analysis & Quality
The Architecture Quality Assessment skill performs deep static analysis of codebases to detect architecture quality issues, measure technical debt, identify drift from intended patterns, and generate actionable refactoring recommendations.
This skill fills the gap between documentation analysis (handled by document-hub-analyze) and code architecture quality analysis. It provides automated assessment of:
✅ Multi-Language Support - Detects and analyzes Python, JavaScript/TypeScript, Next.js, React, Vue, Node.js projects ✅ Framework Detection - Identifies FastAPI, Django, Flask, Express, NestJS, and more ✅ SOLID Analysis - Checks all 5 principles with violation detection ✅ Coupling Metrics - Calculates FAN-IN/FAN-OUT scores for modules ✅ Circular Dependencies - Detects and reports dependency cycles ✅ Actionable Output - Generates markdown reports and refactoring task lists ✅ Memory Bank Integration - Reads systemPatterns.md to detect drift from documented architecture
This skill is installed by default in the Claude CLI skills directory:
~/.codex/skills$architecture-quality-assess/
Core Dependencies (No installation required):
ast, pathlib, json, re, dataclassesOptional Dependencies (Recommended):
networkx - Enhanced graph algorithms for circular dependency detectiontree-sitter - Advanced multi-language parsing (fallback available)Install optional dependencies:
pip install networkx tree-sitter
# Analyze current project
$architecture-quality-assess
# Analyze specific project
$architecture-quality-assess /path/to/project
# Analyze with verbose output
$architecture-quality-assess /path/to/project --verbose
# JSON output for CI/CD
$architecture-quality-assess /path/to/project --format json
| Option | Description | Default |
|---|---|---|
path | Project root directory to analyze | Current directory |
--verbose | Enable detailed progress output | Off |
--format | Output format: markdown or json | markdown |
--output | Output file path | architecture-assessment.md |
--incremental | Only analyze changed files (git-based) | Off |
--cache | Enable file parsing cache | On |
--severity | Minimum severity to report: critical, high, medium, low | low |
Basic Project Assessment:
# Analyze current project and generate report
$architecture-quality-assess
# View report
cat architecture-assessment.md
CI/CD Integration:
# Run analysis and fail build if critical issues found
$architecture-quality-assess --format json --severity critical > assessment.json
# Check exit code
if [ $? -ne 0 ]; then
echo "Critical architecture violations detected"
exit 1
fi
Incremental Analysis:
# Only analyze files changed since last commit
$architecture-quality-assess --incremental
# Review violations in changed code only
Automatically detects project type and framework:
Supported Project Types:
Detection Strategy:
Example Output:
## Project Detection
**Project Type**: Next.js (App Router)
**Framework Version**: 14.0.3
**Architecture Pattern**: Three-tier (Route Handlers → Service Layer → Data Layer)
Validates Clean Architecture layer separation:
Three-Tier Architecture:
Violation Detection:
Example Violations:
### Layer Separation Violations (3)
**CRITICAL**: SQL in API Route
- File: `src/app/api/users/route.ts`
- Line: 12
- Issue: Direct SQL query in route handler
- Recommendation: Move to service layer
**HIGH**: Business Logic in Database Layer
- File: `src/lib/db/user-repository.ts`
- Line: 45
- Issue: User validation logic in repository
- Recommendation: Move to service layer
Checks compliance with all 5 SOLID principles:
Detects classes/modules with multiple responsibilities.
Violations:
Detects hardcoded conditional logic that should use polymorphism.
Violations:
Detects inheritance violations.
Violations:
Detects overly large interfaces.
Violations:
Detects direct dependencies on concrete implementations.
Violations:
Example Output:
### SOLID Principles Compliance
**Overall Score**: 72/100 (Medium)
**Single Responsibility**: 65/100 (4 violations)
**Open/Closed**: 80/100 (2 violations)
**Liskov Substitution**: 90/100 (1 violation)
**Interface Segregation**: 75/100 (3 violations)
**Dependency Inversion**: 50/100 (6 violations) ⚠️
Identifies common design patterns and anti-patterns:
Recognized Patterns:
Anti-Patterns Detected:
Example Output:
### Design Patterns
**Detected Patterns (5)**:
✅ Repository Pattern - `lib/repositories/*`
✅ Factory Pattern - `lib/factories/user-factory.ts`
✅ Strategy Pattern - `lib/strategies/auth-strategy.ts`
✅ Dependency Injection - Constructor-based DI throughout
**Anti-Patterns (3)**:
❌ God Object - `src/lib/user-manager.ts` (1,200 LOC, 25 methods)
❌ Tight Coupling - `src/api/orders.ts` → 15 direct dependencies
❌ Magic Numbers - `src/lib/pricing.ts` (8 hardcoded constants)
Analyzes module dependencies and coupling:
Coupling Metrics:
Circular Dependencies: Uses graph algorithms to detect dependency cycles.
Example Output:
### Coupling Metrics
**Most Coupled Modules** (FAN-OUT > 10):
1. `src/lib/auth-service.ts` - FAN-OUT: 18 (❌ too high)
2. `src/lib/user-service.ts` - FAN-OUT: 15 (⚠️ high)
3. `src/lib/order-service.ts` - FAN-OUT: 12 (⚠️ high)
**Circular Dependencies (2)**:
1. `src/lib/user-service.ts` ↔️ `src/lib/auth-service.ts`
2. `src/lib/order-service.ts` → `src/lib/product-service.ts` → `src/lib/inventory-service.ts` → `src/lib/order-service.ts`
**Recommendation**: Break cycles using interface abstractions or event-driven patterns.
Validates file structure and naming conventions:
Checks:
Example Output:
### Code Organization
**File Structure**: ✅ Follows Next.js App Router conventions
**Naming Consistency**: ⚠️ Mixed (kebab-case and camelCase)
**Module Sizes**: ⚠️ 3 files > 500 LOC
**Recommendations**:
- Standardize on kebab-case for file names
- Split large modules:
- `src/lib/user-service.ts` (842 LOC)
- `src/lib/order-service.ts` (654 LOC)
- `src/lib/product-service.ts` (521 LOC)
Compares actual architecture vs documented architecture:
Reads from Memory Bank:
memory-bank/systemPatterns.md - Documented architecture patternsmemory-bank/systemArchitecture.md - System design decisionsDetects:
Example Output:
### Drift from Documented Architecture
**Drift Score**: 23/100 (Low drift = good)
**New Components (Undocumented)**:
- `src/lib/notification-service.ts` (added 2 weeks ago)
- `src/api/webhooks/` (new feature)
**Pattern Deviations**:
- Documentation specifies Repository Pattern
- Found: 8 files with direct database access (bypassing repositories)
**Recommendations**:
1. Document new notification service in systemPatterns.md
2. Update 8 files to use repository pattern
3. Archive deprecated patterns from documentation
# Architecture Quality Assessment Report
**Generated**: 2026-02-07 15:45:32
**Project**: my-nextjs-app
**Path**: /home/user/projects/my-nextjs-app
---
## Executive Summary
**Overall Score**: 76/100 (Good)
**Critical Issues**: 2
**High Priority**: 8
**Medium Priority**: 15
**Low Priority**: 23
---
## 1. Project Overview
[Project type, framework, version]
## 2. Layer Separation Analysis
[Violations, recommendations]
## 3. SOLID Principles
[Per-principle scores, violations]
## 4. Design Patterns
[Patterns found, anti-patterns]
## 5. Dependency Management
[Coupling metrics, circular dependencies]
## 6. Code Organization
[File structure, naming, module sizes]
## 7. Drift Detection
[Comparison with documented architecture]
## 8. Recommended Actions
[Prioritized refactoring task list]
---
## Appendix: Detailed Violations
[Full list with file paths, line numbers]
{
"metadata": {
"generated_at": "2026-02-07T15:45:32Z",
"project_name": "my-nextjs-app",
"project_path": "/home/user/projects/my-nextjs-app",
"analysis_duration_seconds": 42.3
},
"summary": {
"overall_score": 76,
"critical_count": 2,
"high_count": 8,
"medium_count": 15,
"low_count": 23
},
"project_detection": {
"type": "nextjs",
"framework_version": "14.0.3",
"architecture_pattern": "three-tier"
},
"violations": [
{
"id": "LSV-001",
"category": "layer_separation",
"severity": "critical",
"title": "SQL in API Route",
"file": "src/app/api/users/route.ts",
"line": 12,
"description": "Direct SQL query in route handler",
"recommendation": "Move database access to service layer",
"code_snippet": "const users = await db.query('SELECT * FROM users');"
}
],
"metrics": {
"solid_compliance": {
"overall": 72,
"srp": 65,
"ocp": 80,
"lsp": 90,
"isp": 75,
"dip": 50
},
"coupling": {
"highest_fan_out": {
"module": "src/lib/auth-service.ts",
"fan_out": 18
},
"circular_dependencies_count": 2
}
},
"recommended_actions": [
{
"priority": "P0",
"category": "layer_separation",
"title": "Move SQL to Service Layer",
"files": ["src/app/api/users/route.ts"],
"estimated_effort": "1 hour"
}
]
}
Automatically generates refactoring task list compatible with $start-phase-execute:
Output File: architecture-refactoring-tasks.md
Structure:
# Architecture Refactoring Tasks
## Phase 1: Critical Fixes (Priority P0)
### Task 1: Move SQL to Service Layer
**File**: src/app/api/users/route.ts
**Issue**: Direct database access in route handler
**Action**: Create UserService with getUserList() method
**Verification**: Route handler only calls service method
**Estimated Time**: 1 hour
### Task 2: Break Circular Dependency
**Files**: src/lib/user-service.ts ↔️ src/lib/auth-service.ts
**Issue**: Circular dependency prevents clean testing
**Action**: Extract shared interface to src/types/auth-types.ts
**Verification**: No circular imports remain
**Estimated Time**: 2 hours
## Phase 2: High Priority Refactoring (Priority P1)
[...]
## Phase 3: Medium Priority Improvements (Priority P2)
[...]
Integration:
# Generate assessment and task list
$architecture-quality-assess
# Execute refactoring tasks
/start-phase execute architecture-refactoring-tasks.md
Reads:
memory-bank/systemPatterns.md - Expected architecture patternsmemory-bank/systemArchitecture.md - System designWrites (optional):
Workflow:
# Run assessment
$architecture-quality-assess
# Sync findings to Memory Bank
$memorybank-sync
Complementary Analysis:
document-hub-analyze - Documentation ↔️ Code driftarchitecture-quality-assess - Code quality & architectureCombined Workflow:
# Check documentation alignment
$document-hub-analyze
# Check architecture quality
$architecture-quality-assess
# Fix both documentation AND code quality issues
Tracking:
Workflow:
# Run assessment and track in PM-DB
$architecture-quality-assess
# Import generated task list
$pm-db import architecture-refactoring-tasks.md
# Execute with tracking
/start-phase execute architecture-refactoring-tasks.md
Small Project (<100 files):
Medium Project (100-1000 files):
Large Project (1000-5000 files):
Caching:
Incremental Analysis:
Parallel Processing:
Location: .architecture-assess.json (project root)
Example:
{
"exclude_paths": [
"node_modules/",
"dist/",
"build/",
".next/",
"__pycache__/",
"*.test.ts",
"*.spec.js"
],
"severity_thresholds": {
"critical": 0,
"high": 5,
"medium": 20
},
"rules": {
"max_fan_out": 15,
"max_file_loc": 500,
"max_method_count": 10,
"allow_sql_in_routes": false,
"require_repository_pattern": true
},
"output": {
"format": "markdown",
"path": "docs/architecture-assessment.md",
"generate_task_list": true
},
"integrations": {
"memory_bank": {
"enabled": true,
"check_drift": true
},
"ci_cd": {
"fail_on_critical": true,
"comment_on_pr": true
}
}
}
name: Architecture Quality Gate
on: [pull_request]
jobs:
architecture-check:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- name: Install Claude CLI
run: |
curl -sS https://claude.ai/cli/install.sh | bash
claude auth ${{ secrets.CLAUDE_API_KEY }}
- name: Run Architecture Assessment
run: |
claude $architecture-quality-assess --format json --severity critical > assessment.json
- name: Check Results
run: |
CRITICAL_COUNT=$(jq '.summary.critical_count' assessment.json)
if [ "$CRITICAL_COUNT" -gt 0 ]; then
echo "Critical architecture violations detected"
exit 1
fi
- name: Upload Report
uses: actions/upload-artifact@v2
with:
name: architecture-assessment
path: assessment.json
1. "No project type detected"
2. "Parser error on file X"
3. "Analysis too slow"
4. "Memory Bank integration failed"
✅ Recommended:
❌ Not Recommended:
Score Interpretation:
Priority Guidance:
Q: Does this modify my code? A: No, this is analysis-only. It generates reports and task lists, but never edits code.
Q: What languages are supported? A: Python, JavaScript, TypeScript, JSX, TSX. More languages planned.
Q: How accurate is the SOLID analysis? A: ~85% accuracy. Manual review recommended for borderline cases.
Q: Can I customize rules?
A: Yes, via .architecture-assess.json configuration file.
Q: Does it work with monorepos? A: Yes, run analysis per sub-project or use --path to target specific packages.
Q: How does it compare to SonarQube? A: Complements SonarQube. SonarQube focuses on bugs/security, this focuses on architecture patterns.
MIT License - Part of Claude CLI Skills
Documentation: ~/.codex/skills$architecture-quality-assess/README.md
Issues: Report via /help in Claude CLI
Contributing: This is a built-in skill, customization via configuration files recommended
Last Updated: 2026-02-07 Maintainer: Codex Team
Project management database for tracking specs, jobs, tasks, and execution. Use when Codex should run the converted pm-db workflow. Inputs: command.
Mode 2 - Structured execution with quality gates (Part 1-5) with pm-db tracking. Use when Codex should run the converted start-phase-execute workflow. Inputs: task_list_file, extra_instructions, spec_id.
Complete feature workflow - from planning to execution with PM-DB tracking. Use when Codex should run the converted feature-new workflow. Inputs: feature_description.
Use this agent when you need to design API contracts BEFORE implementation. This agent enforces contract-first API design, creates OpenAPI specifications, and defines three-tier architecture for Next.js backend APIs. Invoke in these scenarios:. Use when Codex needs this specialist perspective or review style.
Deep analysis of codebase for code duplication. Detects exact, structural, and pattern-level duplicates, generates comprehensive reports with refactoring suggestions and metrics.. Use when Codex should run the converted code-duplication workflow.
Deep analysis of codebase vs documentation alignment. Detects drift, identifies undocumented code, extracts missing glossary terms, and provides actionable recommendations without making changes.. Use when Codex should run the converted document-hub-analyze workflow.