Installs and configures the Ark platform in local Kubernetes environments.

Install

mkdir -p .claude/skills/ark-setup && curl -L -o skill.zip "https://agentskills.codes/api/skills/download/4367" && unzip -o skill.zip -d .claude/skills/ark-setup && rm skill.zip

Installs to .claude/skills/ark-setup

Activation

This is the description your AI agent reads to decide when to run this skill — the better it matches your request, the more reliably it fires.

Set up and install the Ark platform in a Kubernetes cluster. Supports default mode (existing cluster) and isolated e2e testing mode (dedicated Kind cluster). Use when the user wants to install, deploy, test, or configure Ark.
225 chars✓ has a “when” trigger
Intermediate

Key capabilities

  • Deploy Ark to existing clusters
  • Create isolated Kind clusters for testing
  • Build ark-cli from source
  • Verify pod and service status
  • Perform cluster cleanup

How it works

The tool uses ark-cli to manage Ark lifecycle, supporting both existing cluster deployment and isolated Kind cluster creation for testing.

Inputs & outputs

You give it
Kubernetes cluster context and Ark source code
You get back
Deployed and verified Ark platform

When to use ark-setup

  • Deploying Ark to local cluster
  • Configuring Ark environment variables
  • Verifying Ark installation

About this skill

Ark Setup Cluster

Set up and install the Ark platform using ark-cli. Supports two modes:

  • Default: Deploy Ark to an existing cluster
  • Isolated e2e: Create a dedicated Kind cluster for testing without affecting existing clusters

When to use this skill

  • User wants to install or set up Ark
  • Build manager needs an isolated cluster for e2e testing
  • User needs to deploy Ark to their local cluster
  • User needs to troubleshoot Ark installation issues

Prerequisites

  1. Docker - Required for Kind cluster creation
  2. kubectl - Kubernetes CLI
  3. Helm - For installing Ark components
  4. Node.js - For building the ark-cli tool
  5. Kind - For creating local clusters (which kind)

Step 0: Check existing cluster state

CRITICAL: Always check before creating or modifying clusters.

kubectl cluster-info 2>/dev/null
kubectl get pods -n default 2>/dev/null | head -10
kind get clusters 2>/dev/null

If a cluster is already running

Never silently destroy an existing cluster. It may have user data, demos, or in-progress work. Present options:

  • Option A: Reuse existing cluster — deploy Ark into it. Fastest, but overwrites current Ark state.
  • Option B: Create isolated cluster (recommended for e2e testing) — kind create cluster --name ark-e2e-test. Fully isolated, preserves existing cluster.
  • Option C: Replace existing cluster — delete and recreate. Only if user explicitly confirms.

Wait for user to choose, or if called by the build manager for e2e testing, default to Option B.

Step 1: Create cluster

Default mode (existing cluster or new ark-cluster)

kind create cluster --name ark-cluster

Isolated e2e testing mode

kind create cluster --name ark-e2e-test
kubectl config use-context kind-ark-e2e-test

Configure kubeconfig (if running inside Docker/DinD)

CONTROL_PLANE_IP=$(docker inspect -f '{{range.NetworkSettings.Networks}}{{.IPAddress}}{{end}}' <cluster-name>-control-plane)
kind get kubeconfig --name <cluster-name> --internal | sed "s/<cluster-name>-control-plane/$CONTROL_PLANE_IP/g" > ~/.kube/config
kubectl cluster-info

On Mac with Docker Desktop, the default kubeconfig works without IP replacement.

Step 2: Build ark-cli from source

cd agents-at-scale-ark
npm install
cd tools/ark-cli
npm install
npm run build

Step 3: Install Ark

node tools/ark-cli/dist/index.js install --yes --wait-for-ready 5m

If specific chart versions aren't published yet (e.g., on a feature branch), install components individually:

helm install ark-controller oci://mckinsey-ark-helm.jfrog.io/ark-helm/ark-controller --version <version>
helm install ark-tenant oci://mckinsey-ark-helm.jfrog.io/ark-helm/ark-tenant --version <version>
helm install ark-api oci://mckinsey-ark-helm.jfrog.io/ark-helm/ark-api --version <version>
helm install ark-dashboard oci://mckinsey-ark-helm.jfrog.io/ark-helm/ark-dashboard --version <version>

Step 4: Verify installation

kubectl get pods -n default
kubectl get services -n default

Wait until all pods show Running and Ready.

Step 5: Cleanup (e2e testing mode)

After testing is complete:

kind delete cluster --name ark-e2e-test

Restore original kubectl context if needed:

kubectl config use-context <original-context>

Troubleshooting

Docker not available

If docker info fails, Kind cannot create clusters. Report to user.

Check pod status

kubectl get pods -A -o wide | grep -E '(ark|cert-manager)'
kubectl describe pod <pod-name>

View logs

kubectl logs deployment/ark-api
kubectl logs -n ark-system deployment/ark-controller

Important

  • DO NOT use scripts/quickstart.sh — deprecated. Use ark-cli.
  • DO NOT use npm install -g @agents-at-scale/ark — build from source to match the branch being tested.
  • CI uses K3s (Linux-only). Local Mac testing uses Kind. Generally compatible but minor differences possible.

When not to use it

  • Do not use deprecated quickstart scripts
  • Do not use global npm installations for testing

Prerequisites

DockerkubectlHelmNode.js

Limitations

  • Requires Docker for Kind cluster creation
  • CI uses K3s while local testing uses Kind, which may cause minor compatibility differences

How it compares

This workflow automates the build and deployment process from source, whereas manual installation requires individual Helm chart management and manual configuration.

Compared to similar skills

ark-setup side by side with the closest alternatives in the catalog.

SkillInstallsUpdatedSafetyDifficulty
ark-setup (this skill)14moReviewIntermediate
storage-networking67moReviewAdvanced
kubernetes-architect64moNo flagsAdvanced
gitops-workflow52moReviewAdvanced

Try saying

Example prompts that trigger this skill in your AI assistant.

You might also like

storage-networking

pluginagentmarketplace

Master Kubernetes storage management and networking architecture. Learn persistent storage, network policies, service discovery, and ingress routing.

663

kubernetes-architect

sickn33

Expert Kubernetes architect specializing in cloud-native infrastructure, advanced GitOps workflows (ArgoCD/Flux), and enterprise container orchestration. Masters EKS/AKS/GKE, service mesh (Istio/Linkerd), progressive delivery, multi-tenancy, and platform engineering. Handles security, observability, cost optimization, and developer experience. Use PROACTIVELY for K8s architecture, GitOps implementation, or cloud-native platform design.

636

gitops-workflow

sickn33

Implement GitOps workflows with ArgoCD and Flux for automated, declarative Kubernetes deployments with continuous reconciliation. Use when implementing GitOps practices, automating Kubernetes deployments, or setting up declarative infrastructure management.

521

deployment-engineer

sickn33

Expert deployment engineer specializing in modern CI/CD pipelines, GitOps workflows, and advanced deployment automation. Masters GitHub Actions, ArgoCD/Flux, progressive delivery, container security, and platform engineering. Handles zero-downtime deployments, security scanning, and developer experience optimization. Use PROACTIVELY for CI/CD design, GitOps implementation, or deployment automation.

418

k8s-manifest-generator

wshobson

Create production-ready Kubernetes manifests for Deployments, Services, ConfigMaps, and Secrets following best practices and security standards. Use when generating Kubernetes YAML manifests, creating K8s resources, or implementing production-grade Kubernetes configurations.

319

devops

mrgoonie

Deploy to Cloudflare (Workers, R2, D1), Docker, GCP (Cloud Run, GKE), Kubernetes (kubectl, Helm). Use for serverless, containers, CI/CD, GitOps, security audit.

216

Search skills

Search the agent skills registry