Zum Hauptinhalt springen
connic

Agenten an deine Systeme anbinden.
Ereignisse rein. Ergebnisse raus.

Eine Verbindung startet deinen Agenten, wenn eine E-Mail, ein Webhook oder eine Kafka-Nachricht eingeht oder ein Zeitplan fällig ist. Das Ergebnis schickt sie an deine API, in eine Queue oder nach Slack.

Connector Flow
Support inbox
inboundIn code
Helpdesk tickets
inbound
support-triage
LLM Agent
Ticket updates
Automatic outbound connector · All runsIn code
Support escalations
Middleware outbound connector · escalate

Jedes Ticket startet einen Run. Die Antwort geht zurück ans Helpdesk.

Das Helpdesk schickt jedes neue Ticket an eine Webhook-Verbindung. Sie startet den Agenten support-triage.

  1. Die Anfrage wird geprüft

    Bei falschem X-Connic-Secret antwortet connic mit 401, und kein Run startet.

    curl -X POST <webhook-url> \
      -H "Content-Type: application/json" \
      -H "X-Connic-Secret: <your-secret-key>" \
      -d '{"id": "T-4821", "priority": "urgent", "subject": "Card charged twice"}'
  2. Jeder verknüpfte Agent bekommt einen Run

    Im Modus Inbound antwortet connic sofort mit den Run-IDs.

    {
      "status": "ok",
      "dispatched_to": 1,
      "run_ids": ["550e8400-e29b-41d4-a716-446655440000"]
    }
  3. Der Run kennt seine Quelle

    In Agent Runs siehst du, welche Verbindung ihn gestartet hat, und kannst ihn mit derselben Eingabe neu starten.

    Triggered by Helpdesk ticketsInbound connector
  4. Das Ergebnis geht zurück

    Ist der Run fertig, schickt die ausgehende Verbindung das Ergebnis ans Helpdesk, signiert mit X-Connic-Signature.

    Automatic outbound connector · All runsX-Connic-Signature

Ergebnisse nach Slack, an deine API oder in eine Queue schicken.

Jede Verknüpfung mit einer ausgehenden Verbindung legt fest, wer sendet. Ziel, Zugangsdaten und Retries bleiben in der Verbindung.

Automatisch
Sendet einmal nach jedem fertigen Run oder nur nach Runs bestimmter Eingänge.
Agent Tool
Das KI-Modell entscheidet, ob es sie aufruft, und schreibt den Payload.
Middleware
Dein before() oder after() ruft send_connector auf, das KI-Modell hat darauf keinen Einfluss.
middleware/support-triage.py
from typing import Any, Dict
from connic.tools import send_connector

async def after(response: str, context: Dict[str, Any]) -> str:
    ticket = context.get("payload", {})
    if ticket.get("priority") == "urgent":
        await send_connector(
            "escalate",
            {"text": f"Urgent ticket {ticket.get('id')}: {response}"},
        )
    return response
Middleware outbound connector · escalate

Verbindungen stehen im Code und gehen mit jedem Deployment live.

Ein Rollback stellt auch die Verbindungen des älteren Deployments wieder her. Zugangsdaten stehen nicht in den Dateien, sie kommen aus Connections und Variablen.

connectors/support-inbox.yaml
type: email
mode: inbound
name: Support inbox
connection: support-mailbox
config:
  mailbox: INBOX
  filter_unread_only: true
agents:
  - support-triage
environments:
  Staging:
    connection: support-mailbox-staging
  Production: {}
connectors/ticket-updates.yaml
type: webhook
mode: outbound
name: Ticket updates
config:
  outbound_url: ${HELPDESK_WEBHOOK_URL}
agents:
  - support-triage
~/support-desk
$ connic deploy --env Production --yes
→ Validating project files...
✓ Lint passed: 1 agent(s) validated (support-triage), 2 connector(s)
✓ Lint passed
→ Packaging upload...
✓ 7 files, 9,412 bytes
→ Submitting to backend...
✓ Deployment id: 5d1f0c7a-93b2-4e61-a8f4-2c7e9b0d1a36
✓ Deployment created.
Deployment-Log
Found agents: ['support-triage']
✓ Agent limits validated
Connector changes on activation:
create: connectors/support-inbox.yaml (email)
create: connectors/ticket-updates.yaml (http)

Zugangsdaten an einer Stelle ändern.

Verbindungen wie Kafka, SQS, E-Mail und Slack lesen ihre Zugangsdaten aus einer projektweiten Connection. Eine Änderung gilt ohne Deployment für jede Verbindung, die sie nutzt.

Connections

Reusable credentials that connectors in any environment can share.

NameTypeUsed byLast updated
support-mailboxEmail
  • Support inboxProduction
3 days ago
support-mailbox-stagingEmail
  • Support inboxStaging
3 days ago
support-slackSlack
  • Support escalationsProduction
12 days ago

Häufig gestellte Fragen

Unter anderem Webhooks, Kafka, SQS, PostgreSQL LISTEN/NOTIFY, E-Mail, Cron, S3-Events, Stripe, Slack, Telegram, Twilio, Telnyx sowie WebSocket- und MCP-Clients. Den aktuellen Katalog mit Anleitungen zur Einrichtung findest du im Verbindungs-Marketplace. Jedes System, das HTTP-Anfragen schicken kann, kann die Webhook-Verbindung nutzen.

Für Ereignisse aus anderen Systemen nimmst du eine Verbindung. Jede Quelle bekommt damit eine eigene URL oder Subscription, ein Secret, einen Modus und eine Zustellung der Ergebnisse, und jeder Run zeigt, welche Verbindung ihn gestartet hat. Die REST API ist dafür da, ein Projekt aus deinem Code und deinen Tests heraus zu verwalten und zu beobachten.

Jeder Verbindungstyp nutzt das Verfahren seiner Quelle. Webhook-Verbindungen prüfen ein erzeugtes Secret, das als X-Connic-Secret, Bearer Token oder Query-Parameter mitkommt, und Stripe-Events prüft connic per HMAC-SHA256 mit Zeitstempel. Ausgehende Webhooks signieren jede Anfrage mit X-Connic-Signature.

Ja, jeder Verbindungstyp außer Slack lässt sich in connectors/*.yaml deklarieren. Jedes Deployment legt sie für sein Environment an, aktualisiert sie oder legt sie still, und ein Rollback stellt die Verbindungen des aktivierten Deployments wieder her. Deine Secrets kommen aus den Variablen des Environments, und Werte, die connic erzeugt, etwa Webhook-Secrets, stehen nie in der Datei.

Kafka committet einen Offset, sobald die Runs zu einer Nachricht gespeichert sind, und eine erneut zugestellte Nachricht nutzt den gespeicherten Run. Bei SQS bleiben die Nachrichten fehlgeschlagener Runs bis zum Ende des Visibility Timeouts in der Queue, optional mit einer Dead-Letter-Queue in AWS. Jeder fehlgeschlagene Run behält in Agent Runs seine vollständige Eingabe, dort kannst du ihn neu starten.

Ja, über eine Bridge in deinem Netzwerk, die sich nur nach außen verbindet. Kafka und SQS in beide Richtungen, PostgreSQL, E-Mail, S3-Downloads und ausgehende Webhooks können darüber laufen. Du wählst sie unter Network Access › Bridge aus oder setzt bridge in der Verbindungsdatei.