32 lines
934 B
Markdown
32 lines
934 B
Markdown
---
|
|
name: career-ops-plugin-gmail
|
|
description: How to pull job leads from a Gmail label into the career-ops pipeline.
|
|
license: MIT
|
|
---
|
|
|
|
# gmail plugin
|
|
|
|
Reads a Gmail label, extracts clean job URLs from authentic (DMARC-passing)
|
|
emails, and returns them as leads. The engine writes them to the pipeline.
|
|
|
|
## Command
|
|
|
|
- `node plugins.mjs run gmail` — ingest new leads from the configured label.
|
|
|
|
## Setup
|
|
|
|
Put `GMAIL_CLIENT_ID` + `GMAIL_CLIENT_SECRET` + `GMAIL_REFRESH_TOKEN` in `.env`
|
|
(an OAuth Desktop client + a refresh token from the consent flow). Configure the
|
|
label + lookback in `config/plugins.yml`:
|
|
|
|
```yaml
|
|
plugins:
|
|
gmail: { enabled: true, label: "Job Leads", days_back: 7 }
|
|
```
|
|
|
|
## Data it produces
|
|
|
|
`Job[]` ({ title, url, company, location }) — the engine de-dups against the
|
|
pipeline and appends new ones. It maintains its own processed-message cursor in
|
|
`data/gmail-state.json` to avoid re-reading the same emails.
|