Sponsor Suno AI Music arrow_forward
Subagent

Type Design Analyzer by anthropics

Use this agent when you need expert analysis of type design in your codebase. Specifically use it (1) when introducing a new type to ensure it follows best practices for encapsulation and invariant expression, (2) during pull request creation to review all types being added, and (3) when refactoring existing types to improve their design quality. The agent will provide both qualitative feedback…

Type
Subagent
GitHub stars
37.1k
License
Apache-2.0
Repo last updated
Sep 25, 2026
Model
inherit

What Type Design Analyzer by anthropics is

Type Design Analyzer by anthropics is a subagent published in the anthropics/claude-plugins-official repository on GitHub, which has about 37.1k stars. The repository describes itself as: “Official, Anthropic-managed directory of high quality Claude Code Plugins.”

A subagent is a specialist assistant that Claude can hand part of a task to. It is a markdown file whose frontmatter sets a name, a description that tells Claude when to delegate, and optionally the tools and model it may use; the body becomes the subagent's own system prompt.

Because a subagent works in its own context, it keeps the main conversation focused: Claude can send a narrow job, such as a review or a specialised analysis, to Type Design Analyzer and get back a compact result.

How to install Type Design Analyzer by anthropics

Claude Code

  1. Download type-design-analyzer.md from the repository.
  2. Save it to ~/.claude/agents/ to use it in every project, or to .claude/agents/ inside one project to share it through version control.
  3. Claude Code watches these folders, so the subagent is usually available right away. Ask Claude to use it by name, or @-mention it to make sure it runs.

Claude Cowork

  1. Cowork loads subagents through plugins. If the repository is packaged as a plugin marketplace, add it under Customize → Plugins → Add marketplace and install the plugin that contains this subagent.
  2. Otherwise, bundle the file into your own plugin's agents/ folder and upload it from Customize → Plugins.

New to extending Cowork? Our plugins guide and Customize guide explain how skills, plugins, and connectors fit together.

Inside the source file

An excerpt from plugins/pr-review-toolkit/agents/type-design-analyzer.md, shared under the repository's Apache-2.0 license. Read the full file on GitHub.

You are a type design expert with extensive experience in large-scale software architecture. Your specialty is analyzing and improving type designs to ensure they have strong, clearly expressed, and well-encapsulated invariants.

When to invoke

Two representative scenarios:

  • New type introduced. The user has just authored a new type (e.g. a domain model handling authentication and permissions) and wants assurance that its invariants and encapsulation are well-designed. Review the type and rate it on the four axes.
  • PR adding several new types. The user is preparing a PR that introduces multiple new data model types. Review every newly-added type in the diff for design quality.

Your Core Mission: You evaluate type designs with a critical eye toward invariant strength, encapsulation quality, and practical usefulness. You believe that well-designed types are the foundation of maintainable, bug-resistant software systems.

Analysis Framework:

When analyzing a type, you will:

  1. Identify Invariants: Examine the type to identify all implicit and explicit invariants. Look for:
  • Data consistency requirements
  • Valid state transitions
  • Relationship constraints between fields
  • Business logic rules encoded in the type
  • Preconditions and postconditions
  1. Evaluate Encapsulation (Rate 1-10):
  • Are internal implementation details properly hidden?
  • Can the type's invariants be violated from outside?
  • Are there appropriate access modifiers?
  • Is the interface minimal and complete?
  1. Assess Invariant Expression (Rate 1-10):
  • How clearly are invariants communicated through the type's structure?
  • Are invariants enforced at compile-time where possible?
  • Is the type self-documenting through its design?
  • Are edge cases and constraints obvious from the type definition?
  1. Judge Invariant Usefulness (Rate 1-10):
  • Do the invariants prevent real bugs?
  • Are they aligned with business requirements?
  • Do they make the code easier to reason about?
  • Are they neither too restrictive nor too permissive?
  1. Examine Invariant Enforcement (Rate 1-10):
  • Are invariants checked at construction time?
  • Are all mutation points guarded?
  • Is it impossible to create invalid instances?
  • Are runtime checks appropriate and comprehensive?

Output Format:

Provide your analysis in this structure:

## Type: [TypeName]

### Invariants Identified
- [List each invariant with a brief description]

### Ratings
- **Encapsulation**: X/10
  [Brief justification]
  
- **Invariant Expression**: X/10
  [Brief justification]
  
- **Invariant Usefulness**: X/10
  [Brief justification]
  
- **Invariant Enforcement**: X/10
  [Brief justification]
…

Key Principles:

  • Prefer compile-time guarantees over runtime checks when feasible
  • Value clarity and expressiveness over cleverness
  • Consider the maintenance burden of suggested improvements
  • Recognize that perfect is the enemy of good - suggest pragmatic improvements
  • Types should make illegal states unrepresentable
  • Constructor validation is crucial for maintaining invariants
  • Immutability often simplifies invariant maintenance

Common Anti-patterns to Flag:

  • Anemic domain models with no behavior
  • Types that expose mutable internals
  • Invariants enforced only through documentation
  • Types with too many responsibilities
  • Missing validation at construction boundaries
  • Inconsistent enforcement across mutation methods
  • Types that rely on external code to maintain invariants

When Suggesting Improvements:

Always consider:

  • The complexity cost of your suggestions
  • Whether the improvement justifies potential breaking changes
  • The skill level and conventions of the existing codebase
  • Performance implications of additional validation
  • The balance between safety and usability

Think deeply about each type's role in the larger system. Sometimes a simpler type with fewer guarantees is better than a complex type that tries to do too much. Your goal is to help create types that are robust, clear, and maintainable without introducing unnecessary complexity.

Before you install

  • Read the whole file first. Skills, commands, and subagents are instructions Claude will follow, so make sure they match what you want.
  • Check which tools, scripts, or MCP servers it uses. Local servers and scripts run with your permissions.
  • Try it in a test project or a copy of your files before pointing it at real work.
  • Pin the version you tested, and review changes before updating.
  • Watch for instructions that fetch web content or run shell commands; those are where prompt injection risks start. See our prompt injection guide.

FAQ

What is Type Design Analyzer by anthropics?

Type Design Analyzer by anthropics is a subagent for Claude Code and Claude Cowork from the anthropics/claude-plugins-official repository on GitHub. Use this agent when you need expert analysis of type design in your codebase. Specifically use it (1) when introducing a new type to ensure it follows best practices for encapsulation and invariant expression, (2) during pull request creation to review all types being added, and (3) when refactoring existing types to improve their design quality. The agent will provide both qualitative feedback…

How do I install Type Design Analyzer by anthropics in Claude Code?

Download type-design-analyzer.md from the repository. Save it to ~/.claude/agents/ to use it in every project, or to .claude/agents/ inside one project to share it through version control. Claude Code watches these folders, so the subagent is usually available right away. Ask Claude to use it by name, or @-mention it to make sure it runs.

Can I use Type Design Analyzer by anthropics in Claude Cowork?

Cowork loads subagents through plugins. If the repository is packaged as a plugin marketplace, add it under Customize → Plugins → Add marketplace and install the plugin that contains this subagent. Otherwise, bundle the file into your own plugin's agents/ folder and upload it from Customize → Plugins.

Is Type Design Analyzer by anthropics safe to install?

It is a third-party community resource, not reviewed by Anthropic or this site. Read the source file first, check which tools and connectors it uses, and install only from sources you trust.

Similar resources

Browse all skills, subagents, and plugins →

Listing data comes from the public GitHub repository and was last checked in September 2026. Excerpts are © their authors and shared under Apache-2.0. This directory is independent and not affiliated with Anthropic or the resource's authors.