improve-codebase-architecture

Inspect codebases for coupling and testability issues using domain language and ADR history.

779|80|Updated Jun 20, 2025
One-click install
npx skills add https://github.com/Haohao-end/openagent --skill improve-codebase-architecture-haohao-end
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: improve-codebase-architecture
Source: https://github.com/Haohao-end/openagent/tree/main/api/internal/core/skills/catalog/improve-codebase-architecture
Command: npx skills add https://github.com/Haohao-end/openagent --skill improve-codebase-architecture-haohao-end

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

It helps teams reduce architectural friction by identifying what parts of a codebase are tightly coupled, hard to test, or merely shifting complexity around.

Core Features & Use Cases

  • Domain-language guided analysis: Reads the project's domain vocabulary and ADRs to ground refactoring suggestions in shared terminology.
  • Coupling and locality diagnosis: Detects places where developers must jump across many small modules and where boundaries feel unclear.
  • Testability and “complexity sink” detection: Uses a deletion test mindset to judge whether a module adds real value or just propagates complexity.
  • Deep-module recommendations: Proposes refactors that consolidate complexity into stable, locally testable modules.

Quick Start

Ask the agent to review the project's domain vocabulary and ADRs, then identify the most tightly coupled areas and propose refactors that improve testability and module locality.

Frequently Asked Questions about improve-codebase-architecture

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I find refactoring opportunities for reducing tight coupling in my codebase?

To find refactoring opportunities, analyze domain vocabulary and ADR history to detect architectural friction. This identifies tightly coupled modules and proposes evidence-based refactors that improve testability and module locality.

Why does splitting files not improve codebase testability?

Splitting files superficially shifts complexity rather than reducing it. True testability requires an inspection workflow that prioritizes locality, using a deletion test mindset to judge if a module adds real value or just propagates complexity.

What is the best way to use domain-driven language for architecture refactoring?

Domain-driven language grounds refactoring suggestions in shared project terminology. By reading domain vocabulary and ADRs, you can detect unclear boundaries where developers jump across many small modules and consolidate complexity into deep modules.

How do I detect complexity sinks and architectural friction in my codebase?

Detect complexity sinks by applying a deletion test mindset to evaluate whether a module adds real value. This identifies architectural friction where boundaries feel unclear and developers must jump across many small modules.

Can I use ADR history to avoid resurrecting outdated architectural decisions?

Yes, ADR history provides evidence to prevent resurrecting outdated architectural decisions. Analyzing ADRs alongside domain vocabulary ensures refactoring suggestions are grounded in documented, validated decisions rather than arbitrary file splitting.