One-click install
npx skills add https://github.com/hellopoisonx/aim --skill aim-core-domain
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: aim-core-domain
Source: https://github.com/hellopoisonx/aim/tree/main/skills/aim-core-domain
Command: npx skills add https://github.com/hellopoisonx/aim --skill aim-core-domain

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes references (resource) components.

What problem does it solve?

This skill centralizes the core domain logic required to route and deliver chat messages to the correct gateway nodes, including presence/typing/read-receipt propagation and system updates.

Core Features & Use Cases

  • Transfer hot path: validate inputs, enforce idempotency, check message permissions via logic RPC, generate message_id, and publish ordered Kafka events per conversation_id.
  • Delivery consumer fan-out: consume Kafka delivery events, resolve target gateway nodes, and push messages to all relevant online members to avoid missing recipients.
  • Presence, typing, and read receipts: consume respective Kafka topics and push state updates to the correct target users by routing with node_id and target_user_id semantics.
  • Conversation and attachment system events: consume conversation/group event streams and attachment-parsed events, then push system messages to all session members with is_system=true.

Quick Start

Use the aim-core-domain skill to design and verify the end-to-end message transfer and delivery pipeline for a core service that consumes Kafka topics and pushes real-time updates to gateways.

Frequently Asked Questions about aim-core-domain

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

FAQPage Schema
How do I ensure idempotency in real-time chat message delivery?

Idempotency in real-time chat message delivery is enforced during the transfer hot path by validating inputs, checking permissions via logic RPC, and generating message IDs before publishing ordered Kafka events per conversation_id.

How do Kafka consumers handle delivery fan-out for online chat members?

Kafka consumers handle delivery fan-out by consuming Kafka delivery events, resolving target gateway nodes, and invoking gateway push RPCs to distribute messages to all relevant online members, preventing missing recipients.

How does presence routing push typing and read receipts to target users?

Presence routing pushes typing and read receipts to target users by consuming respective Kafka topics and routing state updates to the correct target users using node_id and target_user_id semantics via gateway RPCs.

How do I handle conversation and attachment system events in a messaging pipeline?

Conversation and attachment system events are handled by consuming conversation/group event streams and attachment-parsed events, then pushing system messages to all session members with the is_system flag set to true.

How do I maintain ordering and trace context propagation across gateway nodes?

Ordering and trace context propagation across gateway nodes are maintained by enforcing deterministic behavior around ordering by conversation_id and propagating trace context through gRPC RPCs during message delivery and state updates.