track
The track skill manages a job application tracker stored in `data/applications.md`, allowing users to view all applications, filter by status or company, update application progress with validation, and retrieve search statistics including response rates and top opportunities. Use this when someone requests to see their applications, check job search progress, update an application status, or get tracker statistics.
git clone --depth 1 https://github.com/andrew-shwetzer/career-ops-plugin /tmp/track && cp -r /tmp/track/skills/track ~/.claude/skills/trackSKILL.md
# Application Tracker
View and manage your job applications in one place.
## Step 0: Load Tracker
Read `data/applications.md`. If it doesn't exist, create it with the header:
```markdown
# Job Applications
| Date Added | Date Applied | Company | Role | Score | Status | Evaluation | Notes |
|---|---|---|---|---|---|---|---|
```
Then tell the user:
> "Your tracker is empty. Evaluate a job posting to get started, or
> paste a JD and I'll score it for you."
## Step 1: Parse User Intent
- **No argument / "show tracker" / "my applications":** Display full table + stats
- **Status filter ("show applied" / "what's in interview"):** Filter by status
- **Company filter ("show Stripe"):** Filter by company name
- **Update ("update Acme PM to Interview"):** Change status of matching row
- **Stats ("how's my search going" / "search stats"):** Show summary statistics
- **Delete ("remove the Acme entry"):** Confirm, then remove row
## Step 2: Display
### Full View
Show the table as-is from applications.md, then show stats below it.
### Filtered View
Show only matching rows, then summary:
> "Showing {n} applications with status '{status}'."
### Update Flow
1. Find the matching row (by company + role, fuzzy match OK)
2. Show current status and proposed new status
3. Ask for confirmation:
> "Update **{Company} - {Role}** from **{old status}** to **{new status}**?"
4. On confirmation, update the row
5. If transitioning to "Applied", set Date Applied to today
6. If transitioning to "Accepted", congratulate them!
Validate transitions against references/states.md. If invalid:
> "Can't move from {old} to {new}. Valid next steps: {list}."
## Step 3: Statistics
```
## Your Job Search Dashboard
| Metric | Count |
|---|---|
| Total evaluated | {n} |
| Resumes tailored | {n with status >= Resume Ready} |
| Applied | {n} |
| Response rate | {responses / applied}% |
| Interviews | {n} |
| Offers | {n} |
| Average score (applied) | {avg}/5.0 |
| Active (not resolved) | {n non-terminal} |
**Top scoring opportunities:**
1. {Company} - {Role} ({score}/5.0) - {status}
2. ...
3. ...
**Needs attention (applied but no response > 7 days):**
- {Company} - {Role} - applied {date}
```
If there are evaluations without resumes tailored:
> "You have {n} evaluations scoring 3.5+ without a tailored resume.
> Want me to create one? Say 'tailor my resume for {top company}'."
## Step 4: Suggest Next Actions
Based on current state:
- Mostly "Evaluated": "You've got evaluations but haven't applied to many.
Want me to tailor resumes for your top-scored roles?"
- Several "Applied" with no updates: "Time for follow-ups? I can draft
outreach messages to check in on your applications."
- Has "Interview": "Great, you have interviews! Want me to research
{company} to help you prepare?"
- Everything terminal: "Your current batch is wrapped up. Ready to scan
for new opportunities?"|
Quick job evaluation. Paste a JD and get a score plus one-paragraph summary. Faster than a full evaluate. Use when someone says 'quick eval', 'quick score', or 'just give me a number'.
Set up your job search profile. Paste your resume or answer a few questions. Takes 5 minutes. Needed before evaluating jobs.
Help fill out a job application form. Generates personalized answers for every field using your profile and evaluation. Never auto-submits. Use when someone says 'help me apply', 'fill out this application', or 'application for'.
Compare multiple job opportunities side by side. See scores, compensation, pros/cons, and a recommendation. Use when someone says 'compare my options', 'which job should I take', 'rank my opportunities', or 'compare these roles'.
Evaluate how well a job posting matches your background. Paste a JD or URL and get an honest A-F scored assessment with match analysis, compensation research, positioning strategy, and interview prep. Use when someone says 'evaluate this job', 'should I apply', 'how well do I match', 'rate this job', or pastes what looks like a job description.
See all available career-ops skills, what they do, and which one to use next based on where you are in your job search. Use when someone says 'help', 'what can you do', 'how does this work', or seems unsure what to do next.
Draft personalized outreach messages for LinkedIn connections, hiring managers, or recruiters. Creates targeted messages using a hook + proof + proposal structure. Under 300 characters for connection requests. Use when someone says 'draft outreach', 'message the recruiter', 'reach out to', or 'write a LinkedIn message'.