Files
mem0/.github/workflows/n8n-nodes-mem0-checks.yml
T
Himanshu-Sangshetti 41a9701d7f feat(integrations): add n8n community node for Mem0
A programmatic n8n community node wrapping the hosted Mem0 v3 REST API:
add, search, get, get-many, update, delete, plus usableAsTool so the n8n
AI Agent can call it.

- Zero runtime dependencies (calls REST directly), TypeScript, ESLint clean —
  meets n8n verified-node requirements
- Add supports custom_instructions, custom_categories, includes, excludes,
  a client-side entity-id guard, and async event polling (itemIndex on errors)
- Anonymous opt-out telemetry (MEM0_TELEMETRY=false)
- Docs page + docs.json/llms.txt entry, ci-gate + release wiring, AGENTS.md rows
- Verified: tsc + ESLint + live E2E (add → search → get → delete) vs api.mem0.ai

Split out of #6057 per review (separate PRs per integration).
2026-07-23 03:02:18 +05:30

66 lines
2.0 KiB
YAML

name: n8n-nodes-mem0 checks
# On PRs this is invoked by ci-gate.yml (the single required check);
# push-to-main and manual runs remain standalone.
on:
workflow_dispatch:
push:
branches: [main]
paths:
- 'integrations/n8n-nodes-mem0/**'
- '.github/workflows/n8n-nodes-mem0-checks.yml'
workflow_call:
jobs:
lint:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Install pnpm
uses: pnpm/action-setup@v4
with:
version: 9
- name: Setup Node.js
uses: actions/setup-node@v4
with:
node-version: 20
cache: 'pnpm'
cache-dependency-path: integrations/n8n-nodes-mem0/pnpm-lock.yaml
- name: Install dependencies
run: cd integrations/n8n-nodes-mem0 && pnpm install --frozen-lockfile --ignore-scripts
- name: Lint
run: cd integrations/n8n-nodes-mem0 && pnpm run lint
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Install pnpm
uses: pnpm/action-setup@v4
with:
version: 9
- name: Setup Node.js
uses: actions/setup-node@v4
with:
node-version: 20
cache: 'pnpm'
cache-dependency-path: integrations/n8n-nodes-mem0/pnpm-lock.yaml
- name: Install dependencies
run: cd integrations/n8n-nodes-mem0 && pnpm install --frozen-lockfile --ignore-scripts
- name: Build
run: cd integrations/n8n-nodes-mem0 && pnpm run build
- name: Verify dist output exists
run: |
test -f integrations/n8n-nodes-mem0/dist/nodes/Mem0/Mem0.node.js || (echo "Build output missing: dist/nodes/Mem0/Mem0.node.js" && exit 1)
test -f integrations/n8n-nodes-mem0/dist/credentials/Mem0Api.credentials.js || (echo "Build output missing: dist/credentials/Mem0Api.credentials.js" && exit 1)
test -f integrations/n8n-nodes-mem0/dist/nodes/Mem0/mem0.svg || (echo "Build output missing: dist/nodes/Mem0/mem0.svg" && exit 1)