docs: document weekly Cloudflare scrape workflow and update changelog

This commit is contained in:
Prad Nukala committed 2026-09-21 16:33:54 -04:00
1 parent c998303348
commit f9daa06aa1
2 files changed
+18

No files matched your search

+16
View File
@@ -11,6 +11,22 @@ prefer updating to a tagged release over pulling raw `master` (see
files a release touched; `python3 tools/check_upstream_updates.py` lists them with files a release touched; `python3 tools/check_upstream_updates.py` lists them with
per-file diff commands. per-file diff commands.
## [Unreleased]
### Added
- **Weekly scrape as a Cloudflare Workflow** (`apps/worker`) - a `weekly-scrape` Workflow
scheduled `0 13 * * MON` runs the `/scrape` → `/rank` → `/sync-twenty` pipeline
headlessly: freehire (API), the `jobs.db` snapshot imported into D1, LinkedIn and
Wellfound through Browser Rendering (the CLIs' own parsers, copied), intra-run and
Twenty-URL-map dedup, a conservative title gate, one Claude scoring call per posting
through the `jobyssey` AI Gateway (forced tool call matching the `/rank` entry shape,
prompt-cached rubric + profile bundled at deploy), then Companies → Opportunities at
`RANKED` → Fit Analysis notes → a weekly report note and the `Weekly job scrape`
task in Twenty. Manual trigger: `POST /run` with a bearer token. The interactive
`/scrape` Step 2 now also dedups against Twenty's Opportunity URL map so the two never
re-present each other's finds.
## [1.6.0] - 2026-08-19 ## [1.6.0] - 2026-08-19
### Added ### Added
+2
View File
@@ -128,6 +128,8 @@ claude
This searches multiple job portals for positions matching your profile, deduplicates results, and presents them sorted by fit. Pick a match to run `/apply` on it directly — or, when a scrape returns more jobs than you want to eyeball, run `/rank` to batch-score them all against the fit framework and get a ranked shortlist first. This searches multiple job portals for positions matching your profile, deduplicates results, and presents them sorted by fit. Pick a match to run `/apply` on it directly — or, when a scrape returns more jobs than you want to eyeball, run `/rank` to batch-score them all against the fit framework and get a ranked shortlist first.
It also runs by itself: a Cloudflare Workflow in [`apps/worker`](apps/worker/) fires every Monday 09:00 EDT, searches the same portals (freehire, the local `jobs.db` snapshot imported into D1, LinkedIn and Wellfound via Browser Rendering), scores each new posting with Claude through an AI Gateway against your bundled profile and rubric, and publishes ranked Opportunities, Fit Analysis notes and a weekly report into Twenty CRM - the pipeline `/scrape` + `/rank` + `/sync-twenty` run by hand, without a keyboard. Operating notes are in the skill's **Weekly Automation** section.
### 5. Apply to a job ### 5. Apply to a job
```bash ```bash