How 849879772/recruitops-agent works
RecruitOps is a local-first campus-recruiting workbench, presented mainly as a Windows desktop app with a FastAPI/Web UI. The central workflow configures a candidate profile, discovers company openings, crawls and filters jobs, completes missing descriptions, scores matches, and supports user-controlled applications and progress tracking. Separate branches handle recruiting email, schedules, assistant tools, and automation. The README documents the workflow and capabilities; sampled source confirms selected API, browser-bridge, mail-storage, MCP, and filler behavior, so uncertain internal wiring is omitted.
Main entry points: main.py FastAPI application · daily.py Daily job pipeline · run_service.py Recruiting mail · server.py Assistant tools
Components 24
Desktop and API
- Desktop workbench
apps/desktop/src/main.ts - Web workbench
apps/web/app.js - FastAPI application
apps/api/main.py
Job discovery and matching
- Profile parsing
packages/candidate_profile/loader.py - Company sources
packages/discovery/company_registry.py - Source discovery
packages/discovery/offerbiu_refresh.py - Job crawling
packages/recruitment_core/runner.py - Daily job pipeline
packages/pipeline/daily.py - Job matching
packages/matching/service.py - Recruitment database
packages/repositories/postgres.py
Applications and browser
- Embedded browser
apps/desktop/src/browser-service.ts - Resume autofill
packages/desktop_filler/index.cjs - Progress review
packages/tools/application_review_run.py - Browser bridge
packages/browser_bridge/server.py
Mail and schedule
- Recruiting mail
packages/recruitment_mail/run_service.py - Mail records
packages/recruitment_mail/storage.py - Schedule and tasks
packages/repositories/job_browse.py
Assistant and automation
- Assistant tools
packages/mcp/server.py - Assistant runtime
packages/codex_runtime/client.py - Automation worker
packages/automation/worker.py
Other components
- Candidate
- Model API
- Recruitment sites
- IMAP mailbox
Connections 35
- Candidate → Desktop workbench: uses
- Candidate → Web workbench: uses
- Desktop workbench → FastAPI application: requests
- Web workbench → FastAPI application: requests
- FastAPI application → Profile parsing: loads profile
- Profile parsing → Model API: analyzes resume
- FastAPI application → Daily job pipeline: starts tasks
- Daily job pipeline → Source discovery: refreshes sources
- Source discovery → Company sources: updates registry
- Daily job pipeline → Job crawling: runs crawl
- Job crawling → Recruitment sites: fetches listings
- Daily job pipeline → Job matching: scores jobs
- Job matching → Model API: analyzes match
- Daily job pipeline → Recruitment database: saves results
- FastAPI application → Recruitment database: reads and writes
- Desktop workbench → Embedded browser: opens sites
- Embedded browser → Recruitment sites: navigates
- Desktop workbench → Resume autofill: fills fields
- FastAPI application → Progress review: requests review
- Progress review → Browser bridge: observes pages
- Browser bridge → Recruitment database: records evidence
- FastAPI application → Recruiting mail: syncs and processes
- Recruiting mail → IMAP mailbox: reads messages
- Recruiting mail → Model API: interprets messages
- Recruiting mail → Mail records: persists records
- FastAPI application → Schedule and tasks: manages schedule
- FastAPI application → Assistant runtime: serves assistant
- Assistant runtime → Assistant tools: invokes tools
- Assistant tools → Daily job pipeline: runs recruitment
- Assistant tools → Recruiting mail: handles mail
- Assistant tools → Progress review: reviews progress
- Assistant tools → Schedule and tasks: manages tasks
- Automation worker → Daily job pipeline: runs scheduled
- Automation worker → Recruiting mail: processes scheduled
- Automation worker → Progress review: reviews scheduled