ark deploy

Apply resources from a YAML file to a Kubernetes cluster in the correct dependency order.

ark deploy <team.yaml> [flags]

ark deploy is a thin wrapper around kubectl apply that ensures resources are applied in the order their dependencies require:

  1. ConfigMaps
  2. ArkSettings
  3. ArkMemory
  4. ArkAgents
  5. ArkTeams
  6. ArkServices
  7. ArkEvents

This prevents “not found” errors when an ArkAgent references an ArkSettings that hasn’t been created yet.


Flags

Flag Default Description
-n, --namespace (from file metadata) Target namespace. Overrides metadata.namespace in the YAML.
--dry-run false Print the resources that would be applied without applying them.
--kubeconfig ~/.kube/config Path to kubeconfig.

Examples

# Deploy all resources in a YAML file
ark deploy content-team.yaml -n my-org

# Dry run — see what would be applied
ark deploy content-team.yaml -n my-org --dry-run

# Multi-doc YAML with all resources
ark deploy my-team.yaml

Multi-doc YAML

ark deploy supports multi-document YAML files (separated by ---). A single file can contain ConfigMaps, ArkAgents, ArkTeams, and ArkEvents — ark deploy sorts and applies them in the correct order:

apiVersion: v1
kind: ConfigMap
metadata:
  name: researcher-prompt
  namespace: my-org
data:
  system.txt: "You are a researcher..."
---
apiVersion: arkonis.dev/v1alpha1
kind: ArkAgent
metadata:
  name: researcher-agent
  namespace: my-org
spec:
  model: llama3.2
  systemPromptRef:
    configMapKeyRef:
      name: researcher-prompt
      key: system.txt
---
apiVersion: arkonis.dev/v1alpha1
kind: ArkTeam
metadata:
  name: research-pipeline
  namespace: my-org
spec:
  roles:
    - name: research
      arkAgent: researcher-agent
  pipeline:
    - role: research
      inputs:
        prompt: ""
  output: ""

See also


Apache 2.0 · ARKONIS