Skip to content

[Feature]: Managed Data Source Connectors (Slack, GitHub, Jira, etc.) #85

@zircote

Description

@zircote

Problem Statement

Currently, memory capture requires explicit commands or hook-based automation. Users cannot easily:

  • Auto-import context from team communication (Slack, Discord)
  • Sync project knowledge from issue trackers (Jira, Linear, GitHub Issues)
  • Index documentation from wikis (Notion, Confluence)
  • Monitor relevant external sources

Graphlit provides managed connectors with auto-polling/webhook management, enabling "fastest time-to-value" without pipeline code.

Proposed Solution

Implement managed data source connectors:

Tier 1 (Essential):

  • GitHub (issues, PRs, discussions, wiki)
  • Slack (channels, threads, DMs with consent)
  • Jira (issues, comments, boards)
  • Notion (pages, databases)

Tier 2 (Common):

  • Linear, Asana (project management)
  • Confluence, GitBook (documentation)
  • Discord (community channels)
  • RSS/Atom feeds

Features:

  • OAuth-based secure connection
  • Configurable polling intervals or webhooks
  • Selective sync (specific channels/repos/projects)
  • Automatic entity extraction from synced content
  • Incremental updates (only new/changed content)

Proposed API:

pub struct Connector {
    id: ConnectorId,
    source_type: SourceType,
    config: ConnectorConfig,
    sync_schedule: SyncSchedule,
    filters: Vec<SyncFilter>,
}

pub enum SourceType {
    GitHub { repos: Vec<String>, include: GitHubInclude },
    Slack { channels: Vec<String>, since: DateTime },
    Jira { projects: Vec<String>, issue_types: Vec<String> },
    Notion { databases: Vec<String> },
}

MCP tools:

subcog_connector_add:
  type: github
  repos: ["zircote/subcog"]
  include: ["issues", "prs", "discussions"]
  schedule: "*/15 * * * *"  # Every 15 min

subcog_connector_list: {}

subcog_connector_sync:
  connector_id: "github-subcog"
  full: false  # Incremental

CLI:

subcog connector add github --repo zircote/subcog
subcog connector sync --all

Alternatives Considered

  • Manual copy-paste (current) - tedious, incomplete
  • External sync tools (Zapier, etc.) - lose memory semantics
  • Custom scripts per source - maintenance burden

Additional Context

  • Graphlit connectors: https://www.graphlit.com/
  • Significant effort but high value for team adoption
  • Could be separate optional module

Breaking Change: No
Priority: Important
Contribution: Yes, with guidance

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions