HarperFast / HarperFast/Cortex

Webhook Ingestion Sources — Roadmap

Open
#22 0 comments 0 reactions 0 assignees View on GitHub
enhancement roadmap
Dominant language
JavaScript
Stars
4
Forks
0
PR merge metrics
No merged PRs in 30d

Description

## Overview

Cortex ships with a Slack Events API webhook (`/SlackWebhook`) that automatically classifies, embeds, and stores messages. The same pattern — receive → classify → embed → store — can be extended to any platform that pushes events via HTTP.

This issue tracks which ingestion sources are live, which are planned, and how to add your own.

---

### Live

- [x] **Slack** — `SlackWebhook` Resource · Events API · messages + threads · [setup guide](packages/cortex/docs/slack-app-setup.md)

### Planned

- [ ] **GitHub** — issue comments, PR reviews, discussion posts
- [ ] **Linear** — issue updates, comments, project changes
- [ ] **Discord** — guild messages via Gateway or webhook relay
- [ ] **Jira** — issue events, comments, sprint changes
- [ ] **Notion** — page / database change webhooks (when available)
- [ ] **Email (IMAP / SendGrid Inbound Parse)** — inbound email → memory

---

### Adding a custom source

Any HTTP service that can POST JSON can feed Cortex. Create a new Resource class:

```js
import { Resource } from 'harperdb';
export class MyWebhook extends Resource {
async post(data) {
// 1. Verify authenticity
// 2. Extract text + metadata
// 3. classifyMessage(text) → category, entities, summary
// 4. generateEmbedding(text) → 384-dim vector
// 5. Memory.put(record)
}
}
```

See `SlackWebhook` in `packages/cortex/resources/slack-webhook.js` for a complete reference implementation.

---

**Want a specific source prioritized? Comment below or open a PR.**

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.