tg-show-flows

Shows configured flows with their interfaces and queue information.

Synopsis

tg-show-flows [options]

Description

The tg-show-flows command displays all currently configured flow instances, including their identifiers, class names, descriptions, and available service interfaces with corresponding Pulsar queue names.

This command is essential for understanding what flows are available, discovering service endpoints, and finding Pulsar queue names for direct API integration.

Options

  • -u, --api-url URL: TrustGraph API URL (default: $TRUSTGRAPH_URL or http://localhost:8088/)

Examples

Show All Flows

tg-show-flows

Using Custom API URL

tg-show-flows -u http://production:8088/

Output Format

The command displays each flow in a formatted table with the following information:

+-------+---------------------------+
| id    | research-flow             |
| class | document-rag+graph-rag    |
| desc  | Research document pipeline |
| queue | agent request: non-persistent://tg/request/agent:default |
|       | agent response: non-persistent://tg/request/agent:default |
|       | graph-rag request: non-persistent://tg/request/graph-rag:document-rag+graph-rag |
|       | graph-rag response: non-persistent://tg/request/graph-rag:document-rag+graph-rag |
|       | text-load: persistent://tg/flow/text-document-load:default |
+-------+---------------------------+

+-------+---------------------------+
| id    | medical-analysis          |
| class | medical-nlp               |
| desc  | Medical document analysis |
| queue | embeddings request: non-persistent://tg/request/embeddings:medical-nlp |
|       | embeddings response: non-persistent://tg/request/embeddings:medical-nlp |
|       | document-load: persistent://tg/flow/document-load:medical-analysis |
+-------+---------------------------+

No Flows Available

No flows.

Interface Types

The queue information shows two types of service interfaces:

Request/Response Services

Services that accept requests and return responses:

agent request: non-persistent://tg/request/agent:default
agent response: non-persistent://tg/response/agent:default

Fire-and-Forget Services

Services that accept data without returning responses:

text-load: persistent://tg/flow/text-document-load:default

Service Interface Discovery

Use this command to discover available services and their queue names:

Common Request/Response Services

  • agent: Interactive Q&A service
  • graph-rag: Graph-based retrieval augmented generation
  • document-rag: Document-based retrieval augmented generation
  • text-completion: LLM text completion service
  • prompt: Prompt-based text generation
  • embeddings: Text embedding generation
  • graph-embeddings: Graph entity embeddings
  • triples: Knowledge graph triple queries

Common Fire-and-Forget Services

  • text-load: Text document loading
  • document-load: Document file loading
  • triples-store: Knowledge graph storage
  • graph-embeddings-store: Graph embedding storage
  • document-embeddings-store: Document embedding storage
  • entity-contexts-load: Entity context loading

Queue Name Patterns

Flow-Hosted Request/Response

non-persistent://tg/request/{service}:{flow-class}
non-persistent://tg/response/{service}:{flow-class}

Flow-Hosted Fire-and-Forget

persistent://tg/flow/{service}:{flow-id}

Error Handling

Connection Errors

Exception: Connection refused

Solution: Verify the API URL and ensure TrustGraph is running.

Authentication Errors

Exception: Unauthorized

Solution: Check authentication credentials and permissions.

Environment Variables

  • TRUSTGRAPH_URL: Default API URL

API Integration

This command uses the Flow API to list flows and the Config API to retrieve interface descriptions.

Use Cases

Service Discovery

Find available services and their endpoints:

# List all flows and their services
tg-show-flows

# Use discovered queue names for direct Pulsar integration

System Monitoring

Monitor active flows and their configurations:

# Check what flows are running
tg-show-flows

# Verify flow services are properly configured

Development and Debugging

Understand flow configurations during development:

# Check if flow started correctly
tg-start-flow -n "my-class" -i "test-flow" -d "Test"
tg-show-flows

# Verify service interfaces are available

Integration Planning

Plan API integrations by understanding available services:

# Discover queue names for Pulsar clients
tg-show-flows | grep "graph-rag request"

# Find WebSocket endpoints for real-time services

Output Interpretation

Flow Information

  • id: Unique flow instance identifier
  • class: Flow class name used to create the instance
  • desc: Human-readable flow description
  • queue: Service interfaces and their Pulsar queue names

Queue Names

Queue names indicate:

  • Persistence: persistent:// vs non-persistent://
  • Tenant: Usually tg
  • Namespace: request, response, or flow
  • Service: The specific service name
  • Flow Identifier: Either flow class or flow ID

Best Practices

  1. Regular Monitoring: Check flows regularly to ensure they’re running correctly
  2. Queue Documentation: Save queue names for API integration documentation
  3. Flow Lifecycle: Use in conjunction with flow start/stop commands
  4. Capacity Planning: Monitor number of active flows for resource planning
  5. Service Discovery: Use output to understand available capabilities