Skip to content
Back to skills

New Job

ASecurity

This skill should be used when the user wants to add a new company or job to their Excel tracker (List.xlsx). Triggers on phrases like "add [company] to tracker", "I applied to [company]", "track [company]", "save [company] for later", "add [company] [role]", "new application at [company]".

  • 9 stars
  • 0 votes
  • 0 copies
  • 5 views
  • Added May 28, 2026
toolspythonapi

Works with

  • api

Security analysis

A100/100

Scanned September 26, 2026

npx -y skills add Mahashwetha/Job-search-email-system-claude --skill new-job --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of New Job?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for New Job
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/mahashwetha-new-job/badge)](https://www.skillsdirectory.com/skills/mahashwetha-new-job)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: new-job
description: This skill should be used when the user wants to add a new company or job to their Excel tracker (List.xlsx). Triggers on phrases like "add [company] to tracker", "I applied to [company]", "track [company]", "save [company] for later", "add [company] [role]", "new application at [company]".
---

# Add New Job to Tracker

Add a new row to `List.xlsx` (Sheet1) with the bundled script. Do not write ad hoc openpyxl code.

## Column layout
- A: Company name
- B: Role title
- C: Role link (job posting URL, without tracking redirects; `/thanks` pages are fine)
- D: Status
- E: HR contact (leave empty; use the update-hr skill)
- F: Comments (optional)

## Status values
- `done` = applied (default)
- `In progress` = ONLY when a callback/response was received
- `Rejected` = only when logging a rejection for a job that was never tracked

## Steps
1. Get the company name (required), role title and job URL. If the user only pasted a link, fetch the page (or the ATS public API: Ashby/Lever/Greenhouse) to get company and role.
2. Run from the project root (`C:/Users/mahas/Learnings/claude-job-agent`):
   ```
   python .claude/skills/new-job/scripts/add_job.py --company "Company" --role "Role" --url "https://..." [--status done] [--comment "..."]
   ```
3. Handle the result:
   - `ADDED: row N` (exit 0) → confirm company, role, status and row to the user.
   - `DUPLICATE` (exit 2) → the same job URL is already tracked; tell the user the existing row, do not add.
   - `COMPANY EXISTS` (exit 3) → show the existing rows. If it's a different role, re-run with `--force`.
   - `ERROR` (exit 1) → e.g. Excel has the file open; ask the user to close it and retry.

The script takes the shared tracker lock, backs up List.xlsx to `backups/` before writing, and matches URLs ignoring `www`, query strings, trailing slashes and `/thanks` or `/application` suffixes.

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.