mcpField
R
run-self-service

run-self-service

github.com/revitalb-portクラウド・DevOps063 回インストール10 週間前に更新
リポジトリ

run-self-service について

自然言語で Port のセルフサービスアクションを実行するためのスキルです。アクションの検索から入力の収集・検証、実行、状態報告までを案内します。

主な機能

  1. 01意図に合うアクションの検索
  2. 02入力スキーマと承認要件の取得
  3. 03必須入力の収集と検証
  4. 04実行前のユーザー確認
  5. 05非同期実行状態の追跡

活用シーン

  1. 01クラウドインフラのプロビジョニング
  2. 02サービスや環境の作成
  3. 03Port のセルフサービスアクション実行

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/revitalb-port/skills-registry-demo --skill run-self-service

インストール後、Claude Code で/run-self-serviceを入力して読み込まれたか確認します。

同梱ファイルhelpers.py

詳細

セルフサービスアクションの実行スキル

自然言語インターフェースを通じて Port のセルフサービスアクションを実行します。

使用するタイミング

  • ユーザーがクラウドインフラストラクチャの作成を希望している
  • 新しいサービスまたは環境をプロビジョニングする
  • Port のセルフサービスアクションを実行する

実行プロセス

ステップ 1:利用可能なアクションを確認する
list_actions()

ユーザーの意図に合致するアクションを探します。

ステップ 2:アクションのスキーマを取得する
get_action(identifier="action-name")

以下を取得します:

  • 必須入力項目
  • 入力の型と検証ルール
  • 承認要件
ステップ 3:ユーザー入力を収集する

各必須入力項目について、ユーザーに確認します:

  • 入力項目のタイトルと説明を使用する
  • 選択肢がある場合は表示する
  • 形式(メールアドレス、URL など)を検証する

フォームのように提示します:

📝 Create New Service

Service Name: [required]
> 

Team: [required, select one]
  • platform-team
  • payments-team  
  • growth-team

Environment: [required, select one]
  • development
  • staging
  • production

Description: [optional]
> 
ステップ 4:入力を検証する

送信前に:

  • 必須項目を確認する
  • 形式を検証する
  • ユーザーに確認する
ステップ 5:アクションを実行する
run_action(identifier="action-name", properties={
  "service_name": "user-input",
  "team": "selected-team",
  "environment": "selected-env"
})
ステップ 6:実行を監視する

アクションが非同期の場合:

get_action_run(run_id="run-123")

ステータスを報告します:保留中 → 実行中 → 成功/失敗

対話の例

ユーザー:「新しい S3 バケットが必要です」

エージェント:

  1. provision_s3_bucket アクションを見つけます
  2. スキーマを取得します:bucket_name、region、access_level
  3. 次のように確認します:
    📝 Provision S3 Bucket
    
    Bucket Name: [required]
    > 
    
    Region: [required, select one]
      • us-east-1
      • eu-west-1
    
    Access Level: [required, select one]
      • private
      • public-read
    
  4. アクションを実行します
  5. 次のように報告します:「✅ バケットを作成しました:my-bucket.s3.amazonaws.com」

ユーザー:「新しいマイクロサービスを作成して」

エージェント:

  1. scaffold_service アクションを見つけます
  2. 次の情報を収集します:名前、言語、チーム、リポジトリの公開範囲
  3. 実行します
  4. 次のように報告します:「✅ リポジトリ、CI パイプライン、Port エンティティを含むサービスを作成しました」

フォームのような操作性

入力を収集するとき:

  • わかりやすいように、一度に 1 つの入力項目を表示する
  • 利用可能な場合はデフォルト値を提示する
  • 検証エラーを入力欄に表示する
  • 実行前に確認する

品質チェックリスト

  • ユーザーの意図に合ったアクションを見つけた
  • 入力スキーマをすべて取得した
  • 必須入力項目をすべて収集した
  • 入力形式を検証した
  • 実行前に確認した
  • 実行ステータスを報告した

コメント