跳到正文
cccskills
免费在 GitHub 公开

rossoctl:weather-demo

Deploy the weather agent and MCP tool demo via CLI (no UI required). Uses pre-built ghcr.io images, deploys to team1. Optimized for speed (~15s).

中文简介正在准备中。当前显示原文说明。

rossoctl/rossoctl星标 303(GitHub 303 + cccskills 0)

实测评分 未实测

查看安装方法

包含的文件(1)

  • SKILL.md5.4 KB

SKILL.md(原文)

安装前可以查看交给 AI 代理的指令内容。

Weather Agent Demo (CLI)

Deploy the Weather Service agent and Weather Tool without the Rossoctl UI. Uses existing CI scripts and Kubernetes manifests for a fully CLI-driven workflow. Optimized for speed: pre-built images from ghcr.io, all commands in parallel, no waits.

When to Use

  • User wants to run the weather agent demo without the UI
  • User asks "deploy weather demo", "deploy weather agent", or "run weather demo via CLI"
  • User wants a quick end-to-end test of agent + tool deployment

Prerequisites

  • Rossoctl platform deployed (via scripts/kind/setup-rossoctl.sh or equivalent)
  • kubectl configured and pointing at the target cluster
  • Ollama running locally with llama3.2:3b-instruct-fp16 model, OR an OpenAI API key

Context-Safe Execution (MANDATORY)

Deploy/build commands produce large output. Use run_in_background: true on the Bash tool to keep output out of context. Do NOT use shell redirects (> file 2>&1) as they break permission matching.

Before running any commands, record the start time:

date +%s

Remember this value as the start timestamp. Do NOT redirect to a file.

Workflow

flowchart TD
    START(["/rossoctl:weather-demo"]) --> ALL["Step 1: Deploy all in parallel"]:::build
    ALL --> PATCH["Step 2: Fix Ollama connectivity"]:::debug
    PATCH --> DONE([Demo Running])

    classDef build fill:#795548,stroke:#333,color:white
    classDef debug fill:#FF9800,stroke:#333,color:white

Follow this diagram as the workflow. Do NOT add verification or testing steps beyond Step 2.

Step 1: Deploy All in Parallel

Both images are pre-built on ghcr.io/rossoctl/examples/. The namespace setup is a no-op if team1 already exists. Launch all three as parallel Bash tool calls:

Bash call 1 — Setup team1 namespace:

./.github/scripts/operator/70-setup-team1-namespace.sh

Bash call 2 — Deploy weather-service agent:

./.github/scripts/operator/74-deploy-weather-agent.sh

Bash call 3 — Deploy weather-tool:

./.github/scripts/operator/72-deploy-weather-tool.sh

IMPORTANT: All three commands MUST be run as parallel Bash tool calls with run_in_background: true and timeout: 600000 (three separate Bash invocations in the same response). Then wait for all to complete using TaskOutput.

Step 2: Fix Ollama Connectivity (REQUIRED on Kind)

The deployment manifest defaults to LLM_API_BASE=http://dockerhost:11434/v1 which does not resolve inside Kind. Patch directly with host.docker.internal:

kubectl patch deployment weather-service -n team1 --type=strategic -p '{"spec":{"template":{"spec":{"containers":[{"name":"agent","env":[{"name":"LLM_API_BASE","value":"http://host.docker.internal:11434/v1"},{"name":"LLM_MODEL","value":"llama3.2:3b-instruct-fp16"}]}]}}}}'

On Docker Desktop (macOS/Windows), use host.docker.internal. On Podman, use host.containers.internal. Do NOT wait for rollout — skip kubectl rollout status to save time.

Then report elapsed time:

date +%s

Compute elapsed seconds by subtracting this value from the start timestamp recorded earlier. Report the difference in the completion message.

Done

Report the elapsed time. Do NOT run any additional verification, pod checks, log checks, or end-to-end curl tests.

LLM Configuration

Switch to OpenAI

kubectl create secret generic openai-secret -n team1 \
  --from-literal=apikey="<YOUR_OPENAI_API_KEY>"

kubectl set env deployment/weather-service -n team1 -c agent \
  LLM_API_BASE="https://api.openai.com/v1" \
  LLM_MODEL="gpt-4o-mini-2024-07-18"

kubectl patch deployment weather-service -n team1 --type=json -p='[
  {"op":"add","path":"/spec/template/spec/containers/0/env/-","value":{
    "name":"LLM_API_KEY",
    "valueFrom":{"secretKeyRef":{"name":"openai-secret","key":"apikey"}}
  }},
  {"op":"add","path":"/spec/template/spec/containers/0/env/-","value":{
    "name":"OPENAI_API_KEY",
    "valueFrom":{"secretKeyRef":{"name":"openai-secret","key":"apikey"}}
  }}
]'

Cleanup

Since both images are pulled from ghcr.io (no Shipwright builds), cleanup is just deleting the deployments and services:

kubectl delete deployment weather-service weather-tool -n team1 --ignore-not-found
kubectl delete svc weather-service weather-tool-mcp -n team1 --ignore-not-found

Or delete the entire namespace:

kubectl delete namespace team1

Troubleshooting

Agent Can't Reach Ollama

See Step 2: Fix Ollama Connectivity above.

Container runtimeHostname
Docker Desktophost.docker.internal
Podman (macOS)host.containers.internal
Kind defaultdockerhost (usually doesn't resolve)

Agent Can't Reach Weather Tool

kubectl get svc -n team1 | grep weather-tool
# Should show: weather-tool-mcp   ClusterIP   ...   8000/TCP

The default MCP_URL is http://weather-tool-mcp.team1.svc.cluster.local:8000/mcp.

Related Skills

  • rossoctl:agent - Create custom A2A agents from scratch
  • rossoctl:operator - Deploy Rossoctl platform and demo agents
  • rossoctl:deploy - Deploy Kind cluster
  • k8s:pods - Debug pod issues
  • k8s:logs - Query component logs

评价

还没有评价。欢迎分享你的使用感受。

评论

无需登录即可发表。欢迎分享使用感受、提问,或说明在哪些环境下无法运行。

还没有评论。来写第一条吧。

提交后会立即公开。请勿填写邮箱、电话等个人信息。URL 最多 2 个。

0 / 1000 字

此表单受 reCAPTCHA 保护,适用 Google 的隐私权政策和服务条款。

同一仓库的技能

auth

免费

Authentication and authorization patterns for Rossoctl services

中文简介正在准备中。当前显示原文说明。

rossoctl/rossoctl3032026年10月25日 更新

Create confidential OAuth2 clients in Keycloak for server-to-service authentication

中文简介正在准备中。当前显示原文说明。

rossoctl/rossoctl3032026年10月25日 更新

Configure MLflow with mlflow-oidc-auth plugin for Keycloak OIDC authentication

中文简介正在准备中。当前显示原文说明。

rossoctl/rossoctl3032026年10月25日 更新

Configure OpenTelemetry Collector with OAuth2 authentication for trace export

中文简介正在准备中。当前显示原文说明。

rossoctl/rossoctl3032026年10月25日 更新

ci

免费

CI pipeline monitoring, status checks, and PR validation workflows

中文简介正在准备中。当前显示原文说明。

rossoctl/rossoctl3032026年10月25日 更新

Monitor running CI jobs, wait for completion, create tasks for results

中文简介正在准备中。当前显示原文说明。

rossoctl/rossoctl3032026年10月25日 更新

查看 rossoctl 的全部技能

报告此技能的问题