Skip to content
Back to skills

Grpc And Developer Tools

ASecurity

"Maintain AlpaSim protobuf and gRPC contracts, use generated stubs,

  • 247 stars
  • 0 votes
  • 0 copies
  • 4 views
  • Added September 8, 2026
devopspythondockerapibackend

Works with

  • cli
  • api

Security analysis

A100/100

Pro scans all 6 files and shows the line behind each finding

Scanned September 8, 2026

npx -y skills add VectorSpaceLab/AREX-Skill --skill grpc-and-developer-tools --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Grpc And Developer Tools?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Grpc And Developer Tools
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/vectorspacelab-grpc-and-developer-tools/badge)](https://www.skillsdirectory.com/skills/vectorspacelab-grpc-and-developer-tools)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: grpc-and-developer-tools
description: "Maintain AlpaSim protobuf and gRPC contracts, use generated stubs,
  inspect installed packages and entry points, and perform safe
  contributor/tooling checks without starting simulation or external
  infrastructure."
disable-model-invocation: true
metadata:
  disco-role: operating
license: Apache 2.0
---

# gRPC and developer tools

Use this sub-skill when the task is about the AlpaSim protobuf contract,
generated Python modules, service-client examples, package metadata, plugin
entry points, contributor checks, map-tool boundaries, telemetry inspection,
or deciding whether a helper is safe to run. This is a developer/API skill,
not a simulation operator.

## Route first

- For installation, Hydra composition, local/Docker/Slurm deployment, scene
  caches, or run telemetry operation, use
  [simulation-wizard](../simulation-wizard/SKILL.md).
- For service lifecycle, runtime orchestration, replay, timing, or service
  implementation, use [runtime-services](../runtime-services/SKILL.md).
- For model/plugin behavior or driver configuration, use
  [drivers-and-plugins](../drivers-and-plugins/SKILL.md).
- For ASL inspection, metrics, map/trajectory analysis, or result evaluation,
  use [evaluation-and-logs](../evaluation-and-logs/SKILL.md).

## Fast workflow

1. Identify the installed `alpasim_grpc` version and the exact `.proto` or
   service involved. Do not infer a message name from a nearby service.
2. For a schema change, preserve package names, field numbers, and import
   paths; regenerate all Python artifacts using the package build/compile
   workflow. Never hand-edit generated `*_pb2.py`, `*_pb2_grpc.py`, or `.pyi`
   files.
3. Inspect the diff, import the generated modules, and run a focused native
   test plus formatting/static checks before proposing a service change.
4. For a plugin or package change, inspect its declared entry-point group,
   import target, dependency direction, and optional backend requirements.
5. Keep scheduler submission, SSHFS mounts, Docker launchers, model downloads,
   and full simulations as explicit user-approved operations. This sub-skill
   only supplies safe inspection and generation guidance.

Detailed API facts and service grouping are in
[references/grpc-api.md](references/grpc-api.md). Read
[tools and safety](references/tools-and-safety.md) before a helper; the
[protobuf compiler](scripts/compile_protos.py) is the bundled non-destructive
path for explicit source/output roots. The contributor sequence and
review checklist are in [references/developer-workflows.md](references/developer-workflows.md).
Use [references/tools-and-safety.md](references/tools-and-safety.md) before
running helper commands and [references/troubleshooting.md](references/troubleshooting.md)
for recovery.

## Generated API use

The public generated package is `alpasim_grpc.v0`. Typical client imports are:

```python
import grpc
from alpasim_grpc.v0 import common_pb2, sensorsim_pb2
from alpasim_grpc.v0.sensorsim_pb2_grpc import SensorsimServiceStub

with grpc.insecure_channel("host:port") as channel:
    stub = SensorsimServiceStub(channel)
    request = sensorsim_pb2.RGBRenderRequest(scene_id="scene_id")
    # response = stub.render_rgb(request, timeout=10)
```

Use the actual generated message and stub names; for example, the render
message is `RGBRenderRequest`, not a generic `RenderRequest`. A channel/client
smoke test proves serialization and stub construction, not that a renderer or
other service is running. Route service implementation and health diagnosis to
`runtime-services`.

## Commands and gates

- In an installed package, use `uv run compile-protos` and
  `uv run clean-protos` only from the gRPC package's own project context. The
  bundled helper at [scripts/compile_protos.py](scripts/compile_protos.py) is
  for explicit source and output paths and is non-destructive by default.
- For a proto edit, compile, inspect generated-file changes, run generated
  imports, then run the narrowest relevant test. A successful compile does not
  establish wire compatibility.
- Run `uv run pytest <focused-test>` for safe unit cases and
  `pre-commit run --all-files` for contributor-facing changes when the
  repository environment is available. Do not substitute a broad simulation
  run for these checks.
- `alpasim-info` reports installed model, MPC, scorer, tool, and config entry
  points. It may enumerate optional model imports; treat a timeout or logged
  load warning as an optional-dependency issue, not proof that the registry is
  empty.

## Boundaries and handoff

This skill documents map visualization and telemetry/scheduler helper safety,
but does not launch them. A map helper may require an artifact and optional
geometry/plotting packages; use a disposable output location and route actual
map interpretation to `evaluation-and-logs`. Prometheus/Grafana and Slurm
helpers can mount, chmod, submit, requeue, or create files outside the project;
read their help and obtain explicit approval first. Never copy credentials,
model weights, scene caches, SSH paths, or scheduler allocations into a skill.

When handing off, report: schema/package touched, generated files checked,
commands and tests run, optional dependencies skipped, and whether the
operation contacted a service, scheduler, network, Docker, or filesystem mount.

Files in this skill

  • SKILL.md5.3 KB
  • references/developer-workflows.md4.5 KB
  • references/grpc-api.md4.4 KB
  • references/tools-and-safety.md2.9 KB
  • references/troubleshooting.md4.3 KB
  • scripts/compile_protos.py3.2 KB

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.