본문으로 건너뛰기
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(원문)

설치하기 전에 에이전트에게 전달되는 지시 내용을 확인할 수 있습니다.

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 / 1,000자

이 양식은 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의 스킬 모두 보기

이 스킬의 문제 신고