grpc-streaming-specialist
Use for gRPC and Protobuf contract design, unary and streaming RPCs, chunked uploads, retries, compression, sizing, and plugin-to-server communication.
Works with
--- name: grpc-streaming-specialist description: Use for gRPC and Protobuf contract design, unary and streaming RPCs, chunked uploads, retries, compression, sizing, and plugin-to-server communication. license: Apache-2.0 --- # Skill: gRPC Streaming Specialist ## Description Guides gRPC/Protobuf design for plugin-to-analytics communication while keeping transport mapping in adapters. ## Instructions 1. Verify existing `.proto` files, generated package names, gRPC service classes, validators, and mappers before proposing contract changes. 2. Keep Protobuf DTOs and generated gRPC classes out of domain and application. 3. Design protobuf evolution with reserved fields, backward compatibility notes, explicit required-at-application validation, and version fields. 4. Choose unary RPC, server streaming, client streaming, or bidirectional streaming based on verified payload size and lifecycle requirements. 5. Plan chunked uploads, gRPC retries, compression, message sizing, deadlines, cancellation, and performance tuning. 6. Preserve plugin-to-server communication as plugin produces repository/build context and analytics creates sessions, workspaces, and checkout results. 7. Mark future streaming progress events and chunked payload uploads as extensions unless the current slice explicitly implements them. 8. Apply `.agents/skills/resilience-engineering/SKILL.md` for retry, idempotency, deadline, cancellation, circuit-breaker, bulkhead and retry-provenance decisions. ## Expected Inputs - existing `.proto` contracts - gRPC adapter services, validators, and mappers - plugin request and response lifecycle - workspace and analysis-session models - expected payload sizes and retry behavior ## Expected Outputs - gRPC contract plan - compatibility and evolution notes - streaming and sizing recommendations - adapter mapping responsibilities - integration-test scenarios ## Boundaries - Do not place gRPC DTOs in domain or application models. - Do not treat transport acceptance as evidence verification. - Do not make the plugin the analysis platform. ## Stop Conditions Stop if: - a field name, RPC method, package name, or schema version cannot be verified; - backward compatibility would require hidden aliases or undocumented adapters; - retry behavior could create duplicate sessions without idempotency keys; - payload handling would blur raw evidence and generated analysis.
More API Design skills
lark-event
larksuite/cli
Lark/Feishu real-time event listening / subscribing / consuming: stream events as NDJSON via `lark-cli event consume <EventKey>` (covers IM messages/reactions/chat changes, Approval status changes, Task updates, VC meeting started/joined/ended, Minutes generated, Whiteboard updated, etc.). Use for Lark bots, real-time message processing, long-running subscribers, streaming webhook/push handlers. Supports `--max-events` / `--timeout` bounded runs and a stderr ready-marker contract — designed for AI agents running as subprocesses.
lark-contact
larksuite/cli
飞书 / Lark 通讯录:按姓名 / 邮箱解析成 open_id,或按 open_id 反查姓名 / 部门 / 邮箱 / 联系方式 / 个人状态 / 签名,以及按关键词搜索当前用户可见的机器人 / 智能体(agent)。当用户提到一个名字要下一步发消息 / 排日程,或拿到 open_id 想查具体信息时使用。不负责部门树遍历、按部门列员工、组织架构图,这类需求走原生 OpenAPI。
lark-openapi-explorer
larksuite/cli
飞书/Lark 原生 OpenAPI 探索:从官方文档库中挖掘未经 CLI 封装的原生 OpenAPI 接口。当用户的需求无法被现有 lark-* skill 或 lark-cli 已注册命令满足,需要查找并调用原生飞书 OpenAPI 时使用。

