By borisbolliet
Google Cloud TPU v6e / v5e helper: create + bootstrap + connect + delete VMs via gcloud. Encodes the recipes and pitfalls from the tpu-2026 workspace (uv-not-PPA python3.12, libtpu for jax, flax install order, IAP-tunnelled SSH, Cloud NAT).
Google Cloud TPU v6e (and v5e) workflow knowledge — VM creation with internal IPs + Cloud NAT + IAP, python3.12 bootstrap via uv (the PPA path is blocked from internal-IP VMs), the jax-from-git / tunix / qwix / flax install order with libtpu, SSH + Jupyter via IAP tunnel, GitHub push from the VM via short-lived PAT. Auto-loads when the conversation is about TPU, gcloud, jax on TPU, tunix, flax, or running cosmology / ML on Google Cloud accelerators.
Create a TPU v6e (or v5e) VM in a given GCP zone. Handles one-time per-region setup (Private Google Access on default subnet, Cloud NAT router for outbound internet from internal-IP VMs, IAP firewall rule for SSH) only if not already present, then runs `gcloud compute tpus tpu-vm create`. Reports VM state and the SSH command to use next.
SSH into an existing TPU VM and install the python3.12 + jax + tunix + flax + libtpu stack. Idempotent — safe to re-run. Uses `uv` to fetch python3.12 (the deadsnakes PPA is unreachable from internal-IP TPU subnets), then runs the install in the order required for tunix to not stomp on flax.
Open an IAP-tunnelled SSH session to a TPU VM, optionally with port-forward for Jupyter (8888) and TensorBoard (6006). Knows the alpha-track command + zone + project flags; can also launch the SSH command for the user to paste into their own terminal (interactive sessions don't survive an MCP tool invocation).
Delete a TPU VM and (optionally) the per-region networking that was set up alongside it. By default deletes ONLY the VM — Cloud NAT, IAP firewall, and Private Google Access stay so the next VM in the same region comes up fast. Reports what stayed so the user can decide whether to clean up further.
Uses power tools
Uses Bash, Write, or Edit tools
Own this plugin?
Verify ownership to unlock analytics, metadata editing, and a verified badge. GitHub access is read-only (username + org membership).
Sign in to claimOwn this plugin?
Verify ownership to unlock analytics, metadata editing, and a verified badge. GitHub access is read-only (username + org membership).
Sign in to claimBased on adoption, maintenance, documentation, and repository signals. Not a security audit or endorsement.
Specialised Claude Code assistance for
working with Google Cloud TPU v6e and v5e VMs. Captures the recipes
and pitfalls learned in
borisbolliet/tpu-2026
— including the ones that don't show up in the official docs
(deadsnakes PPA unreachable from internal-IP subnets, libtpu
required for jax to see the TPU, flax install order, alpha-track
needed for IAP SSH, ...).
/tpu:explain — always-on knowledge skill. Auto-loads when
the conversation is about TPU, gcloud, jax-on-TPU, tunix, flax,
or running cosmology / ML on Google Cloud accelerators. Covers
the full architecture (Cloud NAT + IAP + Private Google Access),
python bootstrap via uv (the PPA path is blocked), the
jax / tunix / qwix / flax / libtpu install order, SSH + Jupyter
via IAP tunnel, GitHub push via short-lived PAT, and quotas /
cost guidance.
/tpu:setup <name> [--zone=...] [--accelerator=v6e-1] —
create a new TPU VM. Idempotently sets up the per-region networking
(Private Google Access, Cloud NAT, IAP firewall) only if not
already present.
/tpu:bootstrap <name> [--zone=...] — SSH into the VM and run
the bootstrap.sh from tpu-2026: install python3.12 via
uv, create ~/venvs/tunix, install jax + tunix + qwix + flax +
libtpu in the required order, smoke-test that
jax.default_backend() == 'tpu'.
/tpu:connect <name> [--jupyter] [--tensorboard] — generate
the IAP-tunnelled SSH command with port-forward for Jupyter
(8888) and / or TensorBoard (6006). The user pastes the command
in their own terminal (interactive SSH doesn't survive a single
tool call).
/tpu:delete <name> [--also-network] — tear down the VM.
By default keeps the per-region networking so the next VM comes
up fast; --also-network does the full clean-up.
tpu-engineer subagent — end-to-end specialist for heavy
multi-step TPU work.
In any Claude Code session, run these three commands:
/plugin marketplace add https://github.com/borisbolliet/tpu-claude-plugin.git
/plugin install tpu@tpu-claude-plugin
/reload-plugins
After /reload-plugins, /tpu:explain, /tpu:setup, /tpu:bootstrap,
/tpu:connect, /tpu:delete show in /help and the tpu-engineer
subagent appears in the Agent picker.
To update later (after I push a new commit):
/plugin uninstall tpu@tpu-claude-plugin
/plugin marketplace remove tpu-claude-plugin
/plugin marketplace add https://github.com/borisbolliet/tpu-claude-plugin.git
/plugin install tpu@tpu-claude-plugin
/reload-plugins
gcloud CLI authenticated (gcloud auth login) with TPU
permissions on your project./tpu:setup boris --zone=europe-west4-a --accelerator=v6e-1
/tpu:bootstrap boris
/tpu:connect boris --jupyter
When done:
/tpu:delete boris
.claude-plugin/marketplace.json # single-plugin marketplace
plugins/tpu/
.claude-plugin/plugin.json # plugin manifest
skills/
explain/SKILL.md # always-on knowledge
explain/reference.md # loaded on demand
setup/SKILL.md # /tpu:setup
bootstrap/SKILL.md # /tpu:bootstrap
connect/SKILL.md # /tpu:connect
delete/SKILL.md # /tpu:delete
agents/
tpu-engineer.md # subagent
MIT
npx claudepluginhub borisbolliet/tpu-claude-plugin --plugin tpuSpecialized Claude assistance for classy_szlite — a pure-JAX cosmology code that covers CMB Cls, matter Pk (linear and nonlinear), distances, derived parameters, and the halo-model tSZ Cl^yy bandpower likelihood. Backed by the v2 CosmoPower emulators used in the ACT DR6 extended-cosmology analyses. Pipelines, gradient probes, NUTS/HMC sampling, and cobaya bandpower likelihood scaffolding.
Cobaya cosmological Bayesian-analysis framework assistant: scaffolding YAML inputs, theory/likelihood wiring (CAMB, CLASS, classy_szlite), MPI MCMC runs, getdist post-processing, debugging convergence (Rminus1) and acceptance issues.
Scientific paper writing in LaTeX (MNRAS, A&A, ApJ, JCAP). Scaffolds repos with the right class file + Makefile + bibtex layout, populates references via valency-mcp, builds + reports errors, bundles a knowledge skill with style rules and recipes learned from real submissions.
classy_szlite assistant: pure-JAX cosmology (CMB Cls, Pk, distances, derived params, halo-model tSZ Cl^yy) backed by v2 CosmoPower emulators. Pipelines, gradient probes, NUTS / SBI / Fisher recipes, cobaya bandpower likelihood scaffolding.
Specialized Claude assistance for the Cobaya cosmological Bayesian analysis framework.
Ultra-compressed communication mode. Cuts ~75% of tokens while keeping full technical accuracy by speaking like a caveman.
Comprehensive UI/UX design plugin for mobile (iOS, Android, React Native) and web applications with design systems, accessibility, and modern patterns
Upstash Context7 MCP server for up-to-date documentation lookup. Pull version-specific documentation and code examples directly from source repositories into your LLM context.
Multi-model consensus engine integrating OpenAI Codex CLI, Gemini CLI, and Claude CLI for collaborative code review and problem-solving.
Comprehensive startup business analysis with market sizing (TAM/SAM/SOM), financial modeling, team planning, and strategic research