Adding Personhog Rpc
Skill ActiveGuide for adding a new RPC to personhog-replica and personhog-router. Covers eligibility checks, proto definition, code generation for Python and Node.js clients, Rust implementation (storage trait, postgres queries, service handler, router wiring), and index compatibility validation. Use when adding a new gRPC endpoint to personhog, migrating a Django ORM query to personhog, or extending the personhog service API.
To guide developers through the complex process of adding new gRPC endpoints to the personhog service, ensuring correctness, efficiency, and adherence to established patterns.
Features
- Eligibility checks for data categories and routing
- Guidance on designing SQL queries and validating against database indexes
- Step-by-step instructions for proto definition and code generation
- Detailed implementation steps for Rust services
- Verification checklist for the entire RPC addition process
Use Cases
- When adding a new gRPC endpoint to personhog-replica and personhog-router
- When migrating a Django ORM query to personhog
- When extending the personhog service API with new RPCs
Non-Goals
- Adding RPCs that do not involve person, distinct ID, group, or feature flag data categories
- Designing new database indexes (this skill assumes existing indexes are used or directs to a separate process)
- Implementing general gRPC development best practices outside the context of personhog
Trust
- warning:Issues AttentionThere are 544 open issues and 163 closed issues in the last 90 days, indicating a low closure rate and a significant backlog.
Installation
npx skills add PostHog/posthogRuns the Vercel skills CLI (skills.sh) via npx — needs Node.js locally and at least one installed skills-compatible agent (Claude Code, Cursor, Codex, …). Assumes the repo follows the agentskills.io format.
Quality Score
Trust Signals
Similar Extensions
Senior Backend Engineer
100Designs and implements backend systems including REST APIs, microservices, database architectures, authentication flows, and security hardening. Use when the user asks to "design REST APIs", "optimize database queries", "implement authentication", "build microservices", "review backend code", "set up GraphQL", "handle database migrations", or "load test APIs". Covers Node.js/Express/Fastify development, PostgreSQL optimization, API security, and backend architecture patterns.
Cleanup Cycles
100Detect and untangle circular dependencies. Runs madge/skott (TS), pycycle (Py), or compiler-only checks (Go/Rust). Auto-fixes leaf-extractable cycles; reports core cycles for human review. Use when the user asks to find circular imports, fix dependency cycles, or untangle module graph. Example queries — "find circular imports", "fix dependency cycles", "untangle our module graph", "why is madge complaining".
Create Dockerfile
98Create general-purpose Dockerfiles for Node.js, Python, Go, Rust, and Java projects. Covers base image selection, dependency installation, user permissions, COPY patterns, ENTRYPOINT vs CMD, and .dockerignore. Use when containerizing an application for the first time, creating a consistent build/runtime environment, preparing an app for cloud deployment or Docker Compose, or when no existing Dockerfile is present in the project.
Golang Grpc
77Production gRPC in Go: protobuf layout, codegen, interceptors, deadlines, error codes, streaming, health checks, TLS, and testing with bufconn
Migrate Validate
100Validate pending migrations for foreign key consistency, rollback safety, and best practices
Azure Postgres Ts
100Connect to Azure Database for PostgreSQL Flexible Server from Node.js/TypeScript using the pg (node-postgres) package. Use for PostgreSQL queries, connection pooling, transactions, and Microsoft Entra ID (passwordless) authentication. Triggers: "PostgreSQL", "postgres", "pg client", "node-postgres", "Azure PostgreSQL connection", "PostgreSQL TypeScript", "pg Pool", "passwordless postgres".