hybrid-cloud-rpc
Guide for creating, updating, and deprecating hybrid cloud RPC services in Sentry. Use when asked to "add RPC method", "create RPC service", "hybrid cloud service", "new RPC model", "deprecate RPC method", "remove RPC endpoint", "cross-silo service", "cell RPC", or "control silo service". Covers service scaffolding, method signatures, RPC models, cell resolvers, testing, and safe deprecation workflows.
Install
Install this Claude and Codex skill with the command below. The command stays visible even when copy support is unavailable.
git clone https://github.com/getsentry/sentry /tmp/sentry && ln -s /tmp/sentry/.agents/skills/hybrid-cloud-rpc ~/.claude/skills/hybrid-cloud-rpc
From README
Hybrid Cloud RPC Services This skill guides you through creating, modifying, and deprecating RPC services in Sentry's hybrid cloud architecture. RPC services enable cross-silo communication between the Control silo (user auth, org management) and Cell silos (project data, events, issues, billing). Critical Constraints NEVER use from future import annotations in service.py or model.py files. The RPC framework reflects on type annotations at import time. Forward references break serialization silently. ALL RPC method parameters must be keyword-only (use in the signature). ALL parameters and return types must have full type annotations — no string forward references. ONLY serializable types are allowed: int, str, bool, float, None, Optional[T], list[T], dict[str, T], RpcModel subclasses, Enum subclasses, datetime.datetime. The service MUST live in one of the 12 registered discovery packages (see Step 3).