A Source in Catalio is an external data feed connected to a Capability to enable automated requirements discovery. Sources represent the places where institutional knowledge actually lives — Slack conversations, GitHub commit messages, MS Teams meeting transcripts — and make that knowledge accessible to Catalio’s AI analysis pipeline.
The Discovery Problem Sources Solve
Most requirements are never formally documented. They exist in:
- Slack threads where engineers debate edge cases
- MS Teams meeting recordings where stakeholders describe pain points
- GitHub pull request comments where reviewers surface business logic
- Zoom call transcripts where subject matter experts explain tribal knowledge
Sources bridge the gap between these informal knowledge stores and Catalio’s structured requirements catalog. By connecting a Slack channel to a Capability, you enable Catalio to passively harvest requirements-relevant signals from real-world conversations.
Source Types
Catalio supports multiple source types. Today the active integrations are GitHub repositories and internal journey sources. Other types are planned and accept configuration but do not yet ingest signals automatically.
| Type | Status | What It Connects |
|---|---|---|
| github | Available | A GitHub repository within a connected GitHub account |
| journey | Available | A Journey session (internal source for traceability) |
| slack | Planned | A Slack channel within a connected Slack workspace |
| ms_teams | Planned | A Microsoft Teams channel within a connected Teams tenant |
| zoom | Planned | A Zoom meeting recording |
Key Fields
| Field | Purpose |
|---|---|
| name (source_name) | Human-readable label for this source |
| source_type | Type of source: slack, github, ms_teams, journey, etc. |
| source_id | External identifier (e.g., Slack channel ID, GitHub repo ID) |
| status | enabled or disabled — whether Catalio is actively monitoring |
| capability_id | The Capability this source feeds knowledge into |
| organization_id | Tenant scope |
Source-to-Channel Mappings
Sources connect to specific channels or repositories via mapping resources:
- SourceToSlackChannelMapping — Links a Source to one Slack channel; enforces 1:1 to prevent duplicate ingestion
- SourceToGithubRepoMapping — Links a Source to one GitHub repository with optional branch filter
- SourceToMsTeamsChannelMapping — Links a Source to one Teams channel with Azure tenant ID
These mappings have their own enable and disable actions, letting you temporarily pause a data feed without deleting the source.
Enabling and Disabling Sources
Each Source can be paused and resumed from the Sources list without losing its configuration. Paused Sources stop ingesting new signals until you re-enable them. This is useful during discovery sprints when you want to control the volume of incoming signals from a specific channel.
How Sources Feed Requirements
When a Source is enabled and connected:
- Catalio monitors the channel or repository for new activity
- Incoming content (messages, commits, transcripts) is processed by the AI pipeline
- The AI identifies requirements-relevant signals
- Signals are surfaced as potential Requirements or Change Proposals linked to the associated Capability
This pipeline runs asynchronously — Sources do not block your team’s workflow in the connected tools.
Journey Sources
When a Journey is captured, Catalio creates an internal Source record of type journey to maintain traceability. This allows requirements discovered through journey analysis to be traced back to the specific journey session that surfaced them.
MS Teams Meeting Transcripts
For Teams Sources, Catalio processes meeting transcripts through a dedicated pipeline:
- A meeting in the connected channel is recorded
- The transcript is ingested via
TeamsMeetingTranscriptMetadata - The AI extracts requirements signals from stakeholder dialogue
- Extracted content appears as Change Proposals linked to the relevant Capability
Meeting transcript processing goes through statuses: pending → processing → complete (or failed if errors occur).
Slack Huddle Support
Catalio also supports Slack Huddle transcripts via SlackHuddleTranscriptMetadata. Huddle recordings from monitored channels are processed the same way as formal meeting transcripts.
Best Practices
Connect Sources at the Capability level, not the requirement level.
Sources feed knowledge into business capabilities. As the AI identifies specific requirements from that knowledge, they get linked appropriately.
Be selective about which channels you connect.
High-noise channels (e.g., #random) will produce low-quality signals. Prefer channels where substantive business conversations happen: #ap-module-redesign, #finance-requirements, #customer-portal-feedback.
Enable Sources incrementally.
Start with 2-3 high-value Sources. Review the output quality before expanding. Too many Sources too quickly can overwhelm your team with proposals to review.
Review and curate regularly.
Sources generate Change Proposals. Assign a team member to review proposals weekly — approving accurate ones and dismissing noise.
Relationships at a Glance
| Related Concept | Relationship |
|---|---|
| Capabilities | Sources feed knowledge into a Capability |
| Change Proposals | AI-processed Source content surfaces as proposals |
| Requirements | Approved proposals become Requirements |
| Journeys | Journeys create internal Sources for traceability |
Next Steps
- Connect a Slack Integration — Set up the Slack workspace connection
- Connect GitHub — Link your repositories
- Understand Capabilities — Learn how Sources and Capabilities work together
- Review Change Proposals — Curate AI-surfaced discoveries
Pro Tip: The highest-value Sources are the communication channels where subject matter experts and engineers debate edge cases. That’s where the most valuable institutional knowledge lives — and where formal documentation almost never reaches.
Support
- Documentation: Continue reading about Capabilities and Change Proposals
- Email: support@catalio.ai
- Community: Share data feed configurations with other Catalio users