🔧output-services-check
- プラグイン
- outputai
- ソース
- GitHub で見る ↗
説明
Output SDK の開発サービスが稼働中であることを確認します。 次のような場合に使用: - ワークフローのデバッグ時 - 開発の開始時 - 接続エラーが発生した時 - サービスがダウンしている可能性がある時 - 「ECONNREFUSED」またはタイムアウトエラーが表示された時
原文を表示
Verify Output SDK development services are running. Use when debugging workflows, starting development, encountering connection errors, services may be down, or when you see "ECONNREFUSED" or timeout errors.
ユースケース
- ✓ワークフローのデバッグ時
- ✓開発の開始時
- ✓接続エラーが発生した時
- ✓サービスがダウンしている可能性がある時
- ✓タイムアウトエラーが表示された時
本文(日本語訳)
Output Services ヘルスチェック
概要
このスキルは、Output SDK の開発に必要なすべてのサービスが正常に稼働しているかを確認します。 Output SDK のローカル開発環境には、以下の3つのサービスが必要です:
- Docker コンテナ
- API サーバー
- Temporal サーバー(UI を含む)
次のような場合に使用
- デバッグセッションを開始するとき
- 接続拒否エラー(ECONNREFUSED)が発生しているとき
- ワークフローの起動または接続に失敗しているとき
- ワークフロー実行中にタイムアウトエラーが発生しているとき
- ワークフロー系のコマンドを実行する前
- 開発環境が応答していないと思われるとき
手順
ステップ 1: Docker コンテナの確認
docker ps | grep output
期待される結果: output に関連するコンテナが実行中として表示されること。
コンテナが何も表示されない場合は、Docker が起動していないか、サービスが開始されていない可能性があります。
ステップ 2: API サーバーのヘルスチェック
curl -s http://localhost:3001/health
期待される結果: ヘルスステータスのレスポンスが返ること。 「Connection refused」で失敗する場合は、API サーバーが起動していません。
ステップ 3: Temporal UI のアクセス確認
curl -s http://localhost:8080 > /dev/null && echo "Temporal UI accessible" || echo "Temporal UI not accessible"
期待される結果: "Temporal UI accessible" と表示されること。
アクセスできない場合は、Temporal サーバーが起動していない可能性があります。
対処手順
Docker が起動していない場合
- Docker Desktop(macOS / Windows)または Docker デーモン(Linux)を起動する
- Docker が完全に初期化されるまで待機する
- 再度チェックを実行する
サービスが起動していない場合
# すべての開発サービスを起動
npx output dev
すべてのサービスが初期化されるまで 30〜60 秒待機してから、再度チェックを実行してください。
一部のサービスのみ停止している場合
# Docker Compose を使ってすべてのサービスを再起動
docker compose down
docker compose up -d
サービスの起動に失敗する場合
- ポートの競合を確認する:
lsof -i :3001およびlsof -i :8080 - Docker のログを確認する:
docker compose logs - システムリソース(メモリ、ディスク容量)が十分かを確認する
デシジョンツリー
IF docker_not_running:
ACTION: Docker Desktop / デーモンを起動する
WAIT: Docker の初期化完了まで待機
IF no_output_containers:
RUN: npx output dev
WAIT: サービスが起動するまで 30〜60 秒待機
IF api_not_responding:
CHECK: ポート 3001 の競合を確認
RUN: output dev(未起動の場合)
IF temporal_not_accessible:
CHECK: ポート 8080 の競合を確認
CHECK: docker compose logs で Temporal のエラーを確認
IF all_services_healthy:
PROCEED: ワークフローのデバッグを進める
使用例
シナリオ: ワークフロー実行時に「connection refused」が報告された場合
# まず、サービスが起動しているか確認
docker ps | grep output
# 出力: (空 — コンテナなし)
# サービスを起動
npx output dev
# 待機して確認
sleep 60
curl -s http://localhost:3001/health
# 出力: {"status":"healthy"}
シナリオ: 一部サービスの障害
# API は応答するが、Temporal は応答しない
curl -s http://localhost:3001/health # 成功
curl -s http://localhost:8080 # 失敗
# Temporal のログを確認
docker compose logs temporal
# Temporal のみ再起動
docker compose restart temporal
原文(English)を表示
Output Services Health Check
Overview
This skill verifies that all required Output SDK development services are running and healthy. The Output SDK requires three services for local development: Docker containers, the API server, and the Temporal server with its UI.
When to Use This Skill
- Starting a debugging session
- Encountering connection refused errors (ECONNREFUSED)
- Workflows failing to start or connect
- Timeout errors when running workflows
- Before running any workflow commands
- When the development environment seems unresponsive
Instructions
Step 1: Check Docker Containers
docker ps | grep output
Expected: You should see containers related to output running. If no containers appear, Docker may not be running or the services haven't been started.
Step 2: Check API Server Health
curl -s http://localhost:3001/health
Expected: Returns a health status response. If this fails with "Connection refused", the API server is not running.
Step 3: Check Temporal UI Accessibility
curl -s http://localhost:8080 > /dev/null && echo "Temporal UI accessible" || echo "Temporal UI not accessible"
Expected: "Temporal UI accessible". If not accessible, Temporal server may not be running.
Remediation Steps
If Docker is not running:
- Start Docker Desktop (macOS/Windows) or the Docker daemon (Linux)
- Wait for Docker to fully initialize
- Re-run the checks
If services are not running:
# Start all development services
npx output dev
Wait 30-60 seconds for all services to initialize, then re-run the checks.
If only some services are down:
# Restart all services using Docker Compose
docker compose down
docker compose up -d
If services fail to start:
- Check for port conflicts:
lsof -i :3001andlsof -i :8080 - Check Docker logs:
docker compose logs - Ensure you have sufficient system resources (memory, disk space)
Decision Tree
IF docker_not_running:
ACTION: Start Docker Desktop/daemon
WAIT: for Docker to initialize
IF no_output_containers:
RUN: npx output dev
WAIT: 30-60 seconds for services
IF api_not_responding:
CHECK: port 3001 for conflicts
RUN: output dev (if not already running)
IF temporal_not_accessible:
CHECK: port 8080 for conflicts
CHECK: docker compose logs for Temporal errors
IF all_services_healthy:
PROCEED: with workflow debugging
Examples
Scenario: User reports "connection refused" when running a workflow
# First, check if services are running
docker ps | grep output
# Output: (empty - no containers)
# Start services
npx output dev
# Wait and verify
sleep 60
curl -s http://localhost:3001/health
# Output: {"status":"healthy"}
Scenario: Partial service failure
# API responds but Temporal doesn't
curl -s http://localhost:3001/health # Works
curl -s http://localhost:8080 # Fails
# Check Temporal logs
docker compose logs temporal
# Restart just Temporal
docker compose restart temporal
原文・著作権は Anthropic および各プラグイン作者に帰属します。日本語訳は Claude API による自動翻訳です。