Agents & Connections

Understanding the difference between Agents and Connections in Junet

What are Connections?

Connections are the authenticated links to external services and APIs. They handle the technical details of connecting to and authenticating with external systems.

Key Characteristics of Connections:

  • Authentication Layer: Stores credentials (API keys, tokens, OAuth configs)
  • Service Configuration: Defines how to connect to external APIs (endpoints, headers, timeouts)
  • Reusable: One connection can be used by multiple agents
  • No Intelligence: Connections don't make decisions or process information
  • Pure Infrastructure: They're just the "plumbing" for accessing external services

Connection Examples:

Example 1: Jira Connection

Example 2: Confluence Connection

Example 3: Custom API Connection

  • Name: "Company CRM System"
  • Type: Generic API
  • Server URL: https://api.company.com
  • Purpose: Access customer data and sales information

What are Agents?

Agents are intelligent assistants that leverage Large Language Models (LLMs) to understand requests, make decisions, and interact with external services through Connections.

Key Characteristics of Agents:

  • Intelligence: Uses LLMs to understand natural language and context
  • Decision Making: Determines when and how to use tools and connections
  • Task-Specific: Configured with specific instructions and knowledge for particular domains
  • Routing: Junet's routing system uses agent names and descriptions to direct queries
  • Tool Usage: Can access multiple connections and tools to complete tasks

Agent Components:

An agent consists of several key parts:

Identity & Purpose:

  • Name: "Confluence DevOps Agent"
  • Description: "Expert in CI/CD documentation from the DevOps Confluence space"

Intelligence Settings:

  • AI Model: GPT-4o (for understanding and generating responses)
  • Behavior Instructions: "You are an expert in DevOps practices..."
  • Creativity Level: Medium (balanced between focused and creative responses)

Access & Tools:

  • Connected Services: Confluence DevOps Space
  • Available Tools: Web search, file analysis
  • Knowledge Sources: Deployment guides, best practices documents

The Relationship Between Agents and Connections

Think of it this way:

  • Connections = Your car's engine and fuel system
  • Agents = The intelligent driver who decides where to go and how to get there

Practical Example:

Scenario: A user asks: "What are the latest deployment guidelines for our production environment?"

  1. Routing System analyzes the query and routes it to the "Confluence DevOps Agent" based on its name and description

  2. Agent (Intelligence Layer):

    • Understands the user wants deployment information
    • Knows it needs to search Confluence
    • Formulates appropriate search queries
    • Decides which documents are relevant
  3. Connection (Infrastructure Layer):

    • Provides authenticated access to Confluence
    • Handles the API communication
    • Returns the raw data
  4. Agent (Intelligence Layer):

    • Processes the retrieved information
    • Synthesizes a coherent answer
    • Presents it to the user

Multiple Connections Per Agent

An agent can use multiple connections to provide comprehensive answers:

Example: Comprehensive DevOps Knowledge Agent

  • Name: "DevOps Knowledge Agent"
  • Purpose: Provides complete DevOps information across all systems
  • Uses Multiple Connections:
    • Confluence → For accessing documentation and guides
    • Jira → For checking current work and ticket status
    • GitHub → For reviewing code and recent changes
    • Monitoring System → For checking system health and alerts

Example Query: "What's the deployment status of the auth service?"

The agent might:

  1. Check Jira for related tickets → "Are there any open deployment tasks?"
  2. Query Confluence for deployment docs → "What's the deployment procedure?"
  3. Check GitHub for recent commits → "What code changes were made recently?"
  4. Verify Monitoring for system health → "Is the service running properly?"
  5. Synthesize Answer → Combine all information into a clear, complete response

Best Practices

For Connections:

Name Connections Descriptively: Use names that indicate the service and purpose (e.g., confluence-devops, jira-support, api-production)

  • Test connections after creation
  • Use environment-specific connections (dev, staging, production)
  • Rotate credentials regularly
  • Monitor connection health

For Agents:

Descriptive Names and Descriptions: The router uses these to make decisions. Be specific about what the agent knows and does.

  • Name: Clear, concise, and descriptive

    • Good: "Confluence DevOps Documentation Agent"
    • Bad: "Agent 1"
  • Description: Detailed and specific

    • Good: "Expert in CI/CD deployment procedures, infrastructure documentation, and DevOps best practices from the DevOps Confluence space"
    • Bad: "Helps with docs"
  • Keep agents focused on specific domains

  • Provide clear instructions in system prompts

  • Test with representative queries

Summary

AspectConnectionsAgents
PurposeAuthentication & AccessIntelligence & Decision Making
ContainsCredentials, URLs, API configsLLM model, instructions, context
IntelligenceNoneHigh (LLM-powered)
ReusabilityUsed by multiple agentsUses multiple connections
Decision MakingNoYes
User InteractionNone (infrastructure)Direct (via queries)

Think of it this way: Connections are your keys to various buildings, and Agents are the intelligent assistants who know which building to visit, what to ask for, and how to use the information they find.

Agents & Connections | Junet.io Documentation