Dialogflow Cx Conversations

v1.0.0

Manage conversations and sessions in Google Dialogflow CX via REST API. Use for testing intents, handling user interactions, and managing conversation state....

0· 296·0 current·0 all-time
byYash Kavaiya@yash-kavaiya
Security Scan
VirusTotalVirusTotal
Benign
View report →
OpenClawOpenClaw
Benign
high confidence
Purpose & Capability
The name, description, SKILL.md, reference doc, and included CLI script all align: they implement Dialogflow CX session, detectIntent, matchIntent and test case operations. Minor inconsistency: the skill metadata lists no required env vars or primary credential, but the SKILL.md explicitly documents the need for Google credentials (gcloud auth or GOOGLE_APPLICATION_CREDENTIALS). This is expected for Dialogflow usage but the metadata omission is a bookkeeping gap.
Instruction Scope
Runtime instructions are narrowly scoped to Dialogflow CX API calls (curl examples) and using the provided CLI wrapper. The SKILL.md instructs how to obtain a bearer token or use a service account; it does not instruct reading unrelated files, contacting unexpected endpoints, or exfiltrating data.
Install Mechanism
No install spec is included (instruction-only). The Python script recommends installing google-cloud-dialogflow-cx and google-auth via pip, which is appropriate for the functionality. There are no downloads from unknown hosts or archive extraction steps.
Credentials
The skill requires Google authentication (gcloud ADC or a service account JSON). That is proportionate to Dialogflow access. However, the skill metadata does not declare these env vars/credentials (e.g., GOOGLE_APPLICATION_CREDENTIALS or a TOKEN) — the SKILL.md documents them but the registry metadata omitted them, which could confuse non-technical users about what secrets are needed.
Persistence & Privilege
The skill is not always-enabled and does not request elevated or persistent system privileges. It does not modify other skills or agent-wide configs. Autonomous invocation remains allowed (platform default) but that is normal here and not otherwise concerning.
Assessment
This skill appears to do exactly what it claims: call Dialogflow CX APIs and provide a small CLI wrapper. Before installing, ensure you supply appropriate Google credentials (use a service account with least-privilege Dialogflow roles or gcloud ADC). Be aware the registry metadata doesn't list required env vars — follow SKILL.md to authenticate. If you plan to run the included Python script, install the recommended pip packages in a virtual environment and review the script to confirm it fits your usage and permission model. Avoid providing broad Google project credentials; prefer a service account scoped only to Dialogflow. If you require higher assurance, validate the code in scripts/conversations.py and test in a non-production project first.

Like a lobster shell, security has layers — review code before you run it.

latestvk97da3j83539ejw1v11r9cj7ms8210wa
296downloads
0stars
1versions
Updated 1mo ago
v1.0.0
MIT-0

Dialogflow CX Conversations

Manage conversations and sessions in Google Dialogflow CX via REST API for testing and interaction handling.

Prerequisites

  • Google Cloud project with Dialogflow CX API enabled
  • Service account or OAuth credentials with Dialogflow API access
  • gcloud CLI authenticated OR bearer token

Authentication

Option 1: gcloud CLI (recommended)

gcloud auth application-default login
TOKEN=$(gcloud auth print-access-token)

Option 2: Service Account

export GOOGLE_APPLICATION_CREDENTIALS="/path/to/service-account.json"
TOKEN=$(gcloud auth application-default print-access-token)

API Base URL

https://dialogflow.googleapis.com/v3beta1

Regional endpoints available:

  • https://{region}-dialogflow.googleapis.com (e.g., us-central1, europe-west1)

Common Operations

Detect Intent

curl -X POST \
  "https://dialogflow.googleapis.com/v3beta1/projects/${PROJECT_ID}/locations/${LOCATION}/agents/${AGENT_ID}/sessions/${SESSION_ID}:detectIntent" \
  -H "Authorization: Bearer ${TOKEN}" \
  -H "Content-Type: application/json" \
  -d '{
    "queryInput": {
      "text": {
        "text": "Hello"
      },
      "languageCode": "en"
    }
  }'

Match Intent (no state change)

curl -X POST \
  "https://dialogflow.googleapis.com/v3beta1/projects/${PROJECT_ID}/locations/${LOCATION}/agents/${AGENT_ID}/sessions/${SESSION_ID}:matchIntent" \
  -H "Authorization: Bearer ${TOKEN}" \
  -H "Content-Type: application/json" \
  -d '{
    "queryInput": {
      "text": {
        "text": "Hello"
      },
      "languageCode": "en"
    }
  }'

Create Test Case

curl -X POST \
  "https://dialogflow.googleapis.com/v3beta1/projects/${PROJECT_ID}/locations/${LOCATION}/agents/${AGENT_ID}/testCases" \
  -H "Authorization: Bearer ${TOKEN}" \
  -H "Content-Type: application/json" \
  -d '{
    "displayName": "Greeting Test",
    "testCaseConversationTurns": [
      {
        "userInput": {
          "input": {
            "text": {
              "text": "Hi"
            }
          }
        },
        "virtualAgentOutput": {
          "textResponses": [
            {
              "text": ["Hello!"]
            }
          ]
        }
      }
    ]
  }'

Key Resources

ResourceDescription
SessionsConversation instances with state
Detect IntentProcess user input and get responses
Test CasesAutomated conversation testing

Quick Reference

For detailed API reference:

Scripts

  • scripts/conversations.py — CLI wrapper for conversation operations

Usage

python scripts/conversations.py detect-intent --agent AGENT_NAME --text "Hello"
python scripts/conversations.py match-intent --agent AGENT_NAME --text "Hello"

Tips

  • Session IDs can be any unique string (e.g., UUID)
  • Use detectIntent for full conversation flow, matchIntent for testing without state changes
  • Test cases help validate conversation logic before deployment

Comments

Loading comments...