Jobgru global router — setup, help, check, filter, delete, mcp, and job-search pipeline. Use when the user says /jobgru, Jobgru setup, Jobgru help, Jobgru check, Jobgru filter, Jobgru delete, Jobgru mcp, or asks for a job search. All engine commands run from JOBGRU_HOME (~/.jobgru), not the current workspace.
Scanned 9/5/2026
Install to Claude Code
npx -y skills add ashujha301/jobgru --skill jobgru --agent claude-codeInstalls into .claude/skills of the current project.
Are you the author of Jobgru?
Add the live security badge to your README — it updates automatically with every re-scan.
[](https://www.skillsdirectory.com/skills/ashujha301-jobgru-jobgru)More formats (shields.io, HTML) on the badges page.
---
name: jobgru
description: Jobgru global router — setup, help, check, filter, delete, mcp, and job-search pipeline. Use when the user says /jobgru, Jobgru setup, Jobgru help, Jobgru check, Jobgru filter, Jobgru delete, Jobgru mcp, or asks for a job search. All engine commands run from JOBGRU_HOME (~/.jobgru), not the current workspace.
---
# Jobgru (global router)
**JOBGRU_HOME:** `~/.jobgru` (set by installer). If missing, fall back to repo root when opened as a project.
All shell commands use `$JOBGRU_HOME/.venv/bin/python $JOBGRU_HOME/scripts/...` with `cwd=$JOBGRU_HOME`.
## Route by intent
| User says | Read and follow |
| --- | --- |
| setup, first time, sheet URL, add resume | `$JOBGRU_HOME/.cursor/skills/jobgru-setup/SKILL.md` → **setup** |
| help | Run `$JOBGRU_HOME/.venv/bin/python $JOBGRU_HOME/scripts/jobgru_help.py` |
| check | Run `$JOBGRU_HOME/.venv/bin/python $JOBGRU_HOME/scripts/jobgru_check.py --json` |
| mcp, browser setup, playwright | Run `$JOBGRU_HOME/.venv/bin/python $JOBGRU_HOME/scripts/jobgru_mcp.py status` or `jobgru mcp install` |
| filter, saved filters, job search filters | `$JOBGRU_HOME/.cursor/skills/jobgru-setup/SKILL.md` → **filter** |
| prompts, example prompt, job search prompt | Run `$JOBGRU_HOME/.venv/bin/python $JOBGRU_HOME/scripts/jobgru_prompts.py` or `jobgru prompts` |
| delete rows, remove jobs from sheet | `$JOBGRU_HOME/.cursor/skills/jobgru-setup/SKILL.md` → **delete** |
| job search, find jobs, pipeline | `$JOBGRU_HOME/.cursor/skills/jobgru/SKILL.md` (+ leadgru, atsscore after Phase 1) |
| send add notes, SendGru, send connection notes + row range | `$JOBGRU_HOME/.cursor/skills/sendgru/SKILL.md` (**on-demand only — not in pipeline**) |
Resolve `JOBGRU_HOME`:
```bash
test -d ~/.jobgru/scripts && echo ~/.jobgru || pwd
```
## Browser contract
| Agent | Browser tools |
| --- | --- |
| **Cursor** | Cursor Browser (browser_navigate, browser_snapshot, browser_click, …) |
| **Claude Code / Codex** | **Playwright MCP tools only** (`playwright.browser_navigate`, `browser_snapshot`, `browser_click`) — install once: `jobgru mcp install` |
| **No browser tools** | Run sheet writes + ATS only; report that LeadGru/job-board phases were skipped |
**Codex:** for LinkedIn/job-board browsing, call the **`playwright` MCP server tools directly** (`playwright.browser_navigate` etc.). Do NOT use the bundled browser-control skill / `node_repl` browser runtime — it is a different browser with no LinkedIn session. If `playwright` tools are not listed, tell the user to run `jobgru mcp install` and restart the Codex session.
The Playwright profile lives at `~/.jobgru/browser-profile` — LinkedIn login persists between sessions. Sign in once, reuse forever.
User completes MFA/CAPTCHA manually in the visible browser window.
**LinkedIn pacing is always on** (Jobgru LinkedIn Jobs + LeadGru). Read it in `$JOBGRU_HOME/.cursor/skills/jobgru/SKILL.md` and `leadgru/SKILL.md`. Default: **40s sleep before every LinkedIn navigate** except the first after lock; one LinkedIn tab; stop on CAPTCHA/rate-limit with no retries. LinkedIn has **no job-count cap**; LeadGru writes **at most 5 people + company people page**. Do not skip pacing because the user omitted “go slow”.
**SendGru** (connection + add note send) is **on-demand only** — see `sendgru/SKILL.md`. Sends **2 people per applied row**; **appends** `Sent add note` to column H (does not replace the note). **Never** runs in the pipeline.
## Quick commands
```bash
jobgru help
jobgru check
jobgru mcp install
jobgru filter
jobgru prompts
jobgru delete --rows 42-44
```
## Manual user steps (never automate)
1. Copy Google Sheet template → File → Make a copy (tab: `Job Applications`)
2. `gcloud auth login --enable-gdrive-access --update-adc`
3. Copy resume PDF to `$JOBGRU_HOME/data/resumes/` (global install does not copy PDFs automatically)
Template: https://docs.google.com/spreadsheets/d/18TQRl1dh0Ivdk8YbxkdiWb6__XkpHM32T1ohPTuMJ_4/edit
Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.
No comments yet. Be the first to comment!