aim-shared-domain
CommunityEnforce shared Go package boundaries in AIM.
System Documentation
What problem does it solve?
It prevents AIM’s process-internal shared Go packages from drifting into service-level coupling, so developers can reuse cross-cutting types and helpers safely without creating reverse dependencies.
Core Features & Use Cases
- Defines shared package scope: documents how
app/sharedis meant to be used byapp/auth,app/core,app/gateway,app/logic, and client modules, while explicitly forbidding reverse dependencies from business services. - Captures cross-cutting capability boundaries: enumerates the key shared domains like
errorx,rpc,nacos,jwt,events,attachment,s3signer, andtracing, and the rules for how they should interact (e.g., tracing propagation in Kafka payloads). - Improves consistency of infrastructure integration: sets expectations for gRPC/Nacos resolver scheme usage, Kafka span/trace injection patterns, and unified error handling across module boundaries.
Use case: when implementing attachment upload/parse or Kafka-driven event flows across multiple services, you can follow these shared-package rules to keep event DTOs, schema/validation, and tracing utilities consistent and correctly wired.
Quick Start
Ask the AI to summarize the allowed and forbidden dependencies for app/shared and extract the exact rules you must follow when adding a new shared package like app/shared/cache.
Dependency Matrix
Required Modules
None requiredComponents
💻 Claude Code Installation
Recommended: Let Claude install automatically. Simply copy and paste the text below to Claude Code.
Please help me install this Skill: Name: aim-shared-domain Download link: https://github.com/hellopoisonx/aim/archive/main.zip#aim-shared-domain Please download this .zip file, extract it, and install it in the .claude/skills/ directory.
Agent Skills Search Helper
Install a tiny helper to your Agent, search and equip skill from 471,000+ vetted skills library on demand.