Skip to main content

Connectors

Connectors are the bridge between Modulo pipelines and your tools. Each connector wraps an external API in a sandboxed interface that agents can call during a pipeline run.

Supported connectors

GitHub

Connects to GitHub repositories, issues, pull requests, and Actions.

Pipeline config
{
  "type": "github",
  "config": {
    "token": "ghp_...",
    "owner": "my-org",
    "repo": "my-repo",
    "base_branch": "main"
  }
}

Capabilities: Create PRs, comment on issues, read files, trigger Actions workflows, create labels and milestones.

GitLab

Connects to GitLab projects, merge requests, and CI pipelines.

Pipeline config
{
  "type": "gitlab",
  "config": {
    "token": "glpat-...",
    "project_id": 12345,
    "base_branch": "main"
  }
}

Linear

Connects to Linear for issue tracking.

Pipeline config
{
  "type": "linear",
  "config": {
    "api_key": "lin_api_...",
    "team_id": "..."
  }
}

Notion

Reads and writes Notion databases and pages.

Pipeline config
{
  "type": "notion",
  "config": {
    "integration_token": "ntn_...",
    "database_id": "..."
  }
}

Filesystem

Reads and writes files on the server’s filesystem within a restricted base path.

Pipeline config
{
  "type": "filesystem",
  "config": {
    "base_path": "/data/repos"
  }
}

The filesystem connector is chrooted to base_path – agents cannot access files outside this directory.

Custom HTTP

Any REST API can be wrapped as a connector using the HTTP adapter.

Pipeline config
{
  "type": "http",
  "config": {
    "base_url": "https://api.example.com",
    "headers": {
      "Authorization": "Bearer ..."
    },
    "allowed_paths": ["/v1/items", "/v1/search"]
  }
}

Credential security

Modulo encrypts connector credentials at rest with Fernet symmetric encryption. Credentials are decrypted once at run-start into a run-scoped context object and never written to LangGraph state, checkpoint blobs, logs, or OpenTelemetry spans.