{ "apiVersion": "v1", "kind": "List", "items": [ { "apiVersion": "v1", "kind": "PersistentVolumeClaim", "metadata": { "labels": { "app.kubernetes.io/name": "hwlab-code-agent-workspace", "hwlab.pikastech.local/service-id": "hwlab-code-agent-workspace" }, "name": "hwlab-code-agent-workspace", "namespace": "hwlab-dev" }, "spec": { "accessModes": [ "ReadWriteOnce" ], "resources": { "requests": { "storage": "8Gi" } } } }, { "apiVersion": "apps/v1", "kind": "Deployment", "metadata": { "name": "hwlab-cloud-api", "namespace": "hwlab-dev", "labels": { "app.kubernetes.io/name": "hwlab-cloud-api", "hwlab.pikastech.local/service-id": "hwlab-cloud-api" } }, "spec": { "replicas": 1, "strategy": { "type": "Recreate" }, "selector": { "matchLabels": { "app.kubernetes.io/name": "hwlab-cloud-api" } }, "template": { "metadata": { "labels": { "app.kubernetes.io/name": "hwlab-cloud-api", "hwlab.pikastech.local/service-id": "hwlab-cloud-api" } }, "spec": { "initContainers": [ { "command": [ "sh", "-ceu", "target=/workspace/hwlab\nmarker=\"$target/.hwlab-workspace-initialized\"\nmkdir -p \"$target\"\nif [ ! -e \"$marker\" ]; then\n if [ -z \"$(find \"$target\" -mindepth 1 -maxdepth 1 ! -name lost+found -print -quit)\" ]; then\n cp -a /app/. \"$target\"/\n mode=copied-from-image\n else\n mode=adopted-existing-workspace\n fi\n printf '%s\\n' \"$mode\" > \"$marker\"\n printf '%s\\n' \"${HWLAB_WORKSPACE_SOURCE_COMMIT:-unknown}\" > \"$target/.hwlab-workspace-base-revision\"\nfi\nprintf '%s\\n' \"${HWLAB_WORKSPACE_SOURCE_COMMIT:-unknown}\" > \"$target/.hwlab-workspace-current-image-revision\"\n" ], "env": [ { "name": "HWLAB_WORKSPACE_SOURCE_COMMIT", "value": "af46386" } ], "image": "127.0.0.1:5000/hwlab/hwlab-cloud-api:af46386", "imagePullPolicy": "IfNotPresent", "name": "hwlab-code-agent-workspace-init", "volumeMounts": [ { "mountPath": "/workspace", "name": "hwlab-code-agent-workspace" } ] } ], "containers": [ { "name": "hwlab-cloud-api", "image": "127.0.0.1:5000/hwlab/hwlab-cloud-api:af46386", "ports": [ { "name": "http", "containerPort": 6667 } ], "env": [ { "name": "HWLAB_ENVIRONMENT", "value": "dev" }, { "name": "HWLAB_PUBLIC_ENDPOINT", "value": "http://74.48.78.17:16667" }, { "name": "HWLAB_CLOUD_API_PORT", "value": "6667" }, { "name": "HWLAB_COMMIT_ID", "value": "af46386" }, { "name": "HWLAB_IMAGE", "value": "127.0.0.1:5000/hwlab/hwlab-cloud-api:af46386" }, { "name": "HWLAB_IMAGE_TAG", "value": "af46386" }, { "name": "HWLAB_RUNTIME_SUBSTITUTE_FORBIDDEN", "value": "unidesk-backend,provider-gateway,microservice-proxy" }, { "name": "HWLAB_CLOUD_DB_URL", "valueFrom": { "secretKeyRef": { "name": "hwlab-cloud-api-dev-db", "key": "database-url", "optional": true } } }, { "name": "HWLAB_CLOUD_DB_SSL_MODE", "value": "disable" }, { "name": "HWLAB_CLOUD_DB_CONTRACT", "value": "dev-redacted-presence-only" }, { "name": "HWLAB_CLOUD_RUNTIME_ADAPTER", "value": "postgres" }, { "name": "HWLAB_CLOUD_RUNTIME_DURABLE", "value": "true" }, { "name": "HWLAB_M3_IO_CONTROL_ENABLED", "value": "false" }, { "name": "HWLAB_CODE_AGENT_PROVIDER", "value": "codex-stdio" }, { "name": "HWLAB_CODE_AGENT_MODEL", "value": "gpt-5.5" }, { "name": "HWLAB_CODE_AGENT_TIMEOUT_MS", "value": "1200000" }, { "name": "HWLAB_CODE_AGENT_OPENAI_BASE_URL", "value": "http://127.0.0.1:49280/responses" }, { "name": "HWLAB_CODE_AGENT_CODEX_STDIO_ENABLED", "value": "1" }, { "name": "HWLAB_CODE_AGENT_CODEX_STDIO_SUPERVISOR", "value": "repo-owned" }, { "name": "HWLAB_CODE_AGENT_WORKSPACE", "value": "/workspace/hwlab" }, { "name": "HWLAB_CODE_AGENT_CODEX_WORKSPACE", "value": "/workspace/hwlab" }, { "name": "HWLAB_CODE_AGENT_CODEX_SANDBOX", "value": "danger-full-access" }, { "name": "HWLAB_CODE_AGENT_CODEX_COMMAND", "value": "/app/node_modules/.bin/codex" }, { "name": "CODEX_HOME", "value": "/codex-home" }, { "name": "NO_PROXY", "value": "hyueapi.com,.hyueapi.com,hyui.com,.hyui.com,127.0.0.1,localhost,::1,api.minimaxi.com,.minimaxi.com" }, { "name": "no_proxy", "value": "hyueapi.com,.hyueapi.com,hyui.com,.hyui.com,127.0.0.1,localhost,::1,api.minimaxi.com,.minimaxi.com" }, { "name": "HWLAB_CODE_AGENT_SKILLS_DIRS", "value": "/app/skills" }, { "name": "OPENAI_API_KEY", "valueFrom": { "secretKeyRef": { "name": "hwlab-code-agent-provider", "key": "openai-api-key", "optional": true } } }, { "name": "HWLAB_CODE_AGENT_DEFAULT_PROVIDER_PROFILE", "value": "deepseek" }, { "name": "HWLAB_CODE_AGENT_DEEPSEEK_MODEL", "value": "deepseek-chat" }, { "name": "HWLAB_CODE_AGENT_DEEPSEEK_BASE_URL", "value": "http://hwlab-deepseek-proxy.hwlab-dev.svc.cluster.local:4000/v1/responses" }, { "name": "HWLAB_CODE_AGENT_CODEX_API_MODEL", "value": "gpt-5.5" }, { "name": "HWLAB_CODE_AGENT_CODEX_API_BASE_URL", "value": "http://127.0.0.1:49280/responses" }, { "name": "HWLAB_CODE_AGENT_CODEX_API_UPSTREAM_BASE_URL", "value": "https://hyueapi.com" }, { "name": "HWLAB_CODE_AGENT_CODEX_API_FORWARDER_PORT", "value": "49280" }, { "name": "HWLAB_DEVICE_POD_URL", "value": "http://hwlab-device-pod.hwlab-dev.svc.cluster.local:7601" } ], "readinessProbe": { "httpGet": { "path": "/health/live", "port": "http" } }, "livenessProbe": { "httpGet": { "path": "/health/live", "port": "http" } }, "volumeMounts": [ { "name": "hwlab-code-agent-workspace", "mountPath": "/workspace" }, { "name": "hwlab-code-agent-codex-home", "mountPath": "/codex-home" }, { "name": "hwlab-code-agent-codex-config", "mountPath": "/codex-home/config.toml", "subPath": "config.toml", "readOnly": true }, { "name": "hwlab-code-agent-codex-auth", "mountPath": "/codex-home/auth.json", "subPath": "auth.json", "readOnly": true } ] }, { "name": "hwlab-codex-api-forwarder", "image": "127.0.0.1:5000/hwlab/hwlab-cloud-api:af46386", "command": [ "/usr/local/bin/bun", "run", "/app/cmd/hwlab-codex-api-responses-forwarder/main.ts" ], "ports": [ { "name": "codex-api", "containerPort": 49280 } ], "env": [ { "name": "HWLAB_CODE_AGENT_CODEX_API_FORWARDER_HOST", "value": "127.0.0.1" }, { "name": "HWLAB_CODE_AGENT_CODEX_API_FORWARDER_PORT", "value": "49280" }, { "name": "HWLAB_CODE_AGENT_CODEX_API_UPSTREAM_BASE_URL", "value": "https://hyueapi.com" }, { "name": "NO_PROXY", "value": "hyueapi.com,.hyueapi.com,hyui.com,.hyui.com,127.0.0.1,localhost,::1,api.minimaxi.com,.minimaxi.com" }, { "name": "no_proxy", "value": "hyueapi.com,.hyueapi.com,hyui.com,.hyui.com,127.0.0.1,localhost,::1,api.minimaxi.com,.minimaxi.com" }, { "name": "HWLAB_M3_IO_CONTROL_ENABLED", "value": "false" } ], "readinessProbe": { "exec": { "command": [ "node", "-e", "fetch('http://127.0.0.1:49280/health/readiness').then((response) => process.exit(response.ok ? 0 : 1)).catch(() => process.exit(1))" ] }, "timeoutSeconds": 2 }, "livenessProbe": { "exec": { "command": [ "node", "-e", "fetch('http://127.0.0.1:49280/health/live').then((response) => process.exit(response.ok ? 0 : 1)).catch(() => process.exit(1))" ] }, "timeoutSeconds": 2 } } ], "volumes": [ { "name": "hwlab-code-agent-workspace", "persistentVolumeClaim": { "claimName": "hwlab-code-agent-workspace" } }, { "name": "hwlab-code-agent-codex-home", "emptyDir": {} }, { "name": "hwlab-code-agent-codex-config", "configMap": { "name": "hwlab-code-agent-codex-config", "items": [ { "key": "config.toml", "path": "config.toml" } ] } }, { "name": "hwlab-code-agent-codex-auth", "secret": { "secretName": "hwlab-code-agent-codex-auth", "items": [ { "key": "auth.json", "path": "auth.json" } ] } } ] } } } }, { "apiVersion": "apps/v1", "kind": "Deployment", "metadata": { "name": "hwlab-cloud-web", "namespace": "hwlab-dev", "labels": { "app.kubernetes.io/name": "hwlab-cloud-web", "hwlab.pikastech.local/service-id": "hwlab-cloud-web" } }, "spec": { "replicas": 1, "selector": { "matchLabels": { "app.kubernetes.io/name": "hwlab-cloud-web" } }, "template": { "metadata": { "labels": { "app.kubernetes.io/name": "hwlab-cloud-web", "hwlab.pikastech.local/service-id": "hwlab-cloud-web" } }, "spec": { "containers": [ { "name": "hwlab-cloud-web", "image": "127.0.0.1:5000/hwlab/hwlab-cloud-web:af46386", "ports": [ { "name": "http", "containerPort": 8080 } ], "env": [ { "name": "HWLAB_API_BASE_URL", "value": "http://hwlab-cloud-api.hwlab-dev.svc.cluster.local:6667" }, { "name": "HWLAB_CLOUD_WEB_PROXY_TIMEOUT_MS", "value": "1260000" }, { "name": "HWLAB_COMMIT_ID", "value": "af46386" }, { "name": "HWLAB_IMAGE", "value": "127.0.0.1:5000/hwlab/hwlab-cloud-web:af46386" }, { "name": "HWLAB_IMAGE_TAG", "value": "af46386" } ], "readinessProbe": { "httpGet": { "path": "/health/live", "port": "http" } }, "livenessProbe": { "httpGet": { "path": "/health/live", "port": "http" } } } ] } } } }, { "apiVersion": "apps/v1", "kind": "Deployment", "metadata": { "name": "hwlab-agent-mgr", "namespace": "hwlab-dev", "labels": { "app.kubernetes.io/name": "hwlab-agent-mgr", "hwlab.pikastech.local/service-id": "hwlab-agent-mgr" } }, "spec": { "replicas": 1, "selector": { "matchLabels": { "app.kubernetes.io/name": "hwlab-agent-mgr" } }, "template": { "metadata": { "labels": { "app.kubernetes.io/name": "hwlab-agent-mgr", "hwlab.pikastech.local/service-id": "hwlab-agent-mgr" } }, "spec": { "containers": [ { "name": "hwlab-agent-mgr", "image": "127.0.0.1:5000/hwlab/hwlab-agent-mgr:af46386", "ports": [ { "name": "http", "containerPort": 7410 } ], "env": [ { "name": "HWLAB_AGENT_SESSION_MODE", "value": "control-plane" } ], "readinessProbe": { "httpGet": { "path": "/health/live", "port": "http" } }, "livenessProbe": { "httpGet": { "path": "/health/live", "port": "http" } } } ] } } } }, { "apiVersion": "batch/v1", "kind": "Job", "metadata": { "name": "hwlab-agent-worker-template", "namespace": "hwlab-dev", "labels": { "app.kubernetes.io/name": "hwlab-agent-worker", "hwlab.pikastech.local/service-id": "hwlab-agent-worker" } }, "spec": { "suspend": true, "template": { "metadata": { "labels": { "app.kubernetes.io/name": "hwlab-agent-worker", "hwlab.pikastech.local/service-id": "hwlab-agent-worker" } }, "spec": { "restartPolicy": "Never", "containers": [ { "name": "hwlab-agent-worker", "image": "127.0.0.1:5000/hwlab/hwlab-agent-worker:af46386", "env": [ { "name": "HWLAB_AGENT_SESSION_MODE", "value": "session-scoped" } ] } ] } } } }, { "apiVersion": "apps/v1", "kind": "Deployment", "metadata": { "name": "hwlab-device-pod", "namespace": "hwlab-dev", "labels": { "app.kubernetes.io/name": "hwlab-device-pod", "hwlab.pikastech.local/service-id": "hwlab-device-pod" } }, "spec": { "replicas": 1, "selector": { "matchLabels": { "app.kubernetes.io/name": "hwlab-device-pod" } }, "template": { "metadata": { "labels": { "app.kubernetes.io/name": "hwlab-device-pod", "hwlab.pikastech.local/service-id": "hwlab-device-pod" } }, "spec": { "containers": [ { "name": "hwlab-device-pod", "image": "127.0.0.1:5000/hwlab/hwlab-device-pod:af46386", "ports": [ { "name": "http", "containerPort": 7601 } ], "env": [ { "name": "HWLAB_ENVIRONMENT", "value": "dev" }, { "name": "HWLAB_DEVICE_POD_ID", "value": "device-pod-71-freq" }, { "name": "HWLAB_DEVICE_POD_PORT", "value": "7601" } ], "readinessProbe": { "httpGet": { "path": "/health/live", "port": "http" } }, "livenessProbe": { "httpGet": { "path": "/health/live", "port": "http" } } } ] } } } }, { "apiVersion": "apps/v1", "kind": "Deployment", "metadata": { "name": "hwlab-gateway", "namespace": "hwlab-dev", "labels": { "app.kubernetes.io/name": "hwlab-gateway", "hwlab.pikastech.local/service-id": "hwlab-gateway", "hwlab.pikastech.local/activation": "manual" } }, "spec": { "replicas": 0, "selector": { "matchLabels": { "app.kubernetes.io/name": "hwlab-gateway" } }, "template": { "metadata": { "labels": { "app.kubernetes.io/name": "hwlab-gateway", "hwlab.pikastech.local/service-id": "hwlab-gateway" } }, "spec": { "containers": [ { "name": "hwlab-gateway", "image": "127.0.0.1:5000/hwlab/hwlab-gateway:af46386", "ports": [ { "name": "http", "containerPort": 7001 } ], "env": [ { "name": "HWLAB_GATEWAY_MODE", "value": "hardware-boundary" } ], "readinessProbe": { "httpGet": { "path": "/health/live", "port": "http" } }, "livenessProbe": { "httpGet": { "path": "/health/live", "port": "http" } } } ] } } } }, { "apiVersion": "apps/v1", "kind": "Deployment", "metadata": { "name": "hwlab-edge-proxy", "namespace": "hwlab-dev", "labels": { "app.kubernetes.io/name": "hwlab-edge-proxy", "hwlab.pikastech.local/service-id": "hwlab-edge-proxy" } }, "spec": { "replicas": 1, "selector": { "matchLabels": { "app.kubernetes.io/name": "hwlab-edge-proxy" } }, "template": { "metadata": { "labels": { "app.kubernetes.io/name": "hwlab-edge-proxy", "hwlab.pikastech.local/service-id": "hwlab-edge-proxy" } }, "spec": { "containers": [ { "name": "hwlab-edge-proxy", "image": "127.0.0.1:5000/hwlab/hwlab-edge-proxy:af46386", "ports": [ { "name": "http", "containerPort": 6667 } ], "env": [ { "name": "HWLAB_EDGE_LISTEN", "value": "0.0.0.0:6667" }, { "name": "HWLAB_EDGE_UPSTREAM", "value": "http://hwlab-cloud-api.hwlab-dev.svc.cluster.local:6667" }, { "name": "HWLAB_EDGE_PROXY_TIMEOUT_MS", "value": "1260000" } ], "readinessProbe": { "httpGet": { "path": "/health/live", "port": "http" } }, "livenessProbe": { "httpGet": { "path": "/health/live", "port": "http" } } } ] } } } }, { "apiVersion": "apps/v1", "kind": "Deployment", "metadata": { "name": "hwlab-agent-skills", "namespace": "hwlab-dev", "labels": { "app.kubernetes.io/name": "hwlab-agent-skills", "hwlab.pikastech.local/service-id": "hwlab-agent-skills" } }, "spec": { "replicas": 1, "selector": { "matchLabels": { "app.kubernetes.io/name": "hwlab-agent-skills" } }, "template": { "metadata": { "labels": { "app.kubernetes.io/name": "hwlab-agent-skills", "hwlab.pikastech.local/service-id": "hwlab-agent-skills" } }, "spec": { "containers": [ { "name": "hwlab-agent-skills", "image": "127.0.0.1:5000/hwlab/hwlab-agent-skills:af46386", "ports": [ { "name": "http", "containerPort": 7430 } ], "env": [ { "name": "HWLAB_SKILLS_COMMIT_ID", "value": "af46386" } ], "readinessProbe": { "httpGet": { "path": "/health/live", "port": "http" } }, "livenessProbe": { "httpGet": { "path": "/health/live", "port": "http" } } } ] } } } } ] }