# Devops Dx

> GitHub/Railway housekeeping for CI env/secret management and DX maintenance. Use when setting or auditing GitHub Actions variables/secrets, syncing Railway env → GitHub, or fixing CI failures due to missing env.

- Skill: `aibot88/devops-dx` (Agent Skill, multi-file: 2 files)
- Install (CLI): `npx skillmds@latest add aibot88/devops-dx`
- Raw SKILL.md: https://api.skillmd.com/api/skills/aibot88/devops-dx/raw
- Safety review: pending (external: skill-scanner PASS, skillspector PASS)
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Security
- Author: aibot88 (https://skillmd.com/u/aibot88)
- Updated: 2026-09-09
- Page: https://skillmd.com/skills/aibot88/devops-dx

---


# DevOps DX Helper

Lightweight playbook for CI/Railway env hygiene. Examples use this repo's Beads prefix (bd-); swap for your repo.

## Common Tasks

- **Set GitHub Actions variables** (non-secret paths, stub fixtures):
  - `gh variable set CLERK_TEST_JWKS_PATH --body "frontend/e2e-smoke/fixtures/clerk-test-jwks.json"`
  - `gh variable set CLERK_TEST_PRIVATE_KEY_PATH --body "frontend/e2e-smoke/fixtures/clerk-test-private.pem"`

- **Set GitHub Actions secrets** (API keys, tokens):
  - `gh secret set ZAI_API_KEY <<<"…"`
  - `gh secret set OPENAI_API_KEY <<<"…"`

- **Sync Railway → GitHub secrets** (if already stored in Railway):
  - `scripts/sync_env_to_github.sh <environment> [service]`
    - Copies Railway env vars to GitHub repo secrets (keys sanitized for GH).

## When CI Fails for Missing Env

1) Identify missing var from logs (e.g., `CLERK_TEST_JWKS_PATH missing`).
2) Decide scope:
   - CI-only → set via `gh variable/secret set`.
   - Runtime (Railway) → set in Railway dashboard or `railway variables set`.
3) Re-run the affected workflow: `gh workflow run CI --ref master`.

## Notes

- Keep stub/test fixtures in GH Actions vars, not Railway.
- Use Railway for production secrets; keep CI-only secrets separate.
- For multi-repo, reuse this skill and adjust variable names/prefixes per repo.

