Borrowing it
Nothing to install: this file belongs to galiprandi/job-seeker. Take a copy, put it at the same path in your own repository, and replace the rules that are about this project with yours.
curl -O https://raw.githubusercontent.com/galiprandi/job-seeker/main/.agents/skills/news/SKILL.mdgit clone --depth 1 https://github.com/galiprandi/job-seekerWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/galiprandi/job-seeker/news)<a href="https://agentmods.dev/skills/galiprandi/job-seeker/news"><img src="https://agentmods.dev/badge/skills/galiprandi/job-seeker/news/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/skills/galiprandi/job-seeker/news"><img src="https://agentmods.dev/badge/skills/galiprandi/job-seeker/news.svg" alt="Reviewed on agentmods" width="80" height="20"></a>- NVIDIA SkillSpector warn
SkillSpector: 1 finding, up to medium
These are SkillSpector’s own severities. On a checked sample its high-severity flags on skills were ~96% false positives — a documented command, a public API, a “never do X” rule — so we show them as a caution to read, not a verdict. Why →
- medium Excessive Agency · line 136 Skill enables autonomous high-impact decisions without human-in-the-loop verification. Critical operations (destructive commands, financial transactions, data deletion) should require explicit user confirmation.Fix: Add human-in-the-loop confirmation for destructive, irreversible, or high-impact operations. Never auto-execute commands that modify files, send data, or alter system state.
What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00032 | $0.07696 |
| Opus 5.5 | $0.00013 | $0.03078 |
| Sonnet 5.5 | $0.00006 | $0.01539 |
| Haiku 4.5 | $0.00003 | $0.00770 |
Grade A, and why
news scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 2d ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 521 lines — stays where its author put it; the contents beside it link to each section on GitHub.
News
Trigger
Keyword: news
The user says news (or variants: "updates", "check", "any updates") and the full review routine is automatically triggered. No further instructions needed — the agent executes the entire flow from start to finish.
Also runs in parallel when the user launches an application.
Flow
0. Pre-flight
- Verify active LinkedIn and Gmail sessions. If session closed → open browser with wrapper (see AGENTS.md "Browser session"):
node .agents/skills/browser-automation/scripts/browser.js open <url> --headed(Gold Rule 5) → notify user → wait for confirmation - Browser: always use
node .agents/skills/browser-automation/scripts/browser.jsfor open/close/goto. See AGENTS.md "Browser session" for details. Never callagent-browser opendirectly, never open Chrome directly - Load active preferences (see
memoryskill):node scripts/db.js "SELECT category, key, value, confidence, source FROM preferences WHERE user_id = <user_id> AND status = 'active' ORDER BY category, key" - Load strategy (see AGENTS.md "Strategy levels"):
Respect:node scripts/db.js "SELECT data->'strategy' AS strategy FROM users WHERE id = <user_id>"follow_up_days(days before sending follow-up),cold_outreach(whether to send cold messages to recruiters). Ifnewsnot insources_active, warn the user
1. Collect updates (in parallel)
Parallelization strategy: when subagents are available, dispatch background subagents (subagent_general) per source to collect updates simultaneously. Each subagent returns a structured list of items (sender, subject, snippet, category guess, action items, scheduling links if any). The main agent then merges and classifies. If subagents are not available (e.g: single-session constraint), fall back to sequential collection.
Subagent dispatch pattern:
┌─────────────────────────────────────────────────────┐
│ Main agent (orchestrator) │
│ - Loads preferences, strategy, availability │
│ - Dispatches subagents in parallel │
│ - Merges results, classifies, presents summary │
├─────────────────────────────────────────────────────┤
│ Subagent A (Gmail) Subagent B (LinkedIn) │
│ - Inbox unread - Messages unread │
│ - Job Alerts folder - Notifications │
│ - Extract sched links - Saved Jobs │
│ - Returns JSON list - Returns JSON list │
├─────────────────────────────────────────────────────┤
│ Subagent C (DB) Subagent D (Sched links) │
│ - Pending follow-ups - Opens each Calendly/SR │
│ - Pipeline stages - Filters by availability │
│ - Returns JSON list - Returns slot table │
└─────────────────────────────────────────────────────┘
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 2d ago Changed c5b0cf5eea48
- 1mo ago Changed 0aec54653235
- 1mo ago First seen · 521 lines · 32 tokens per session scan A 05b27ae1579c
news is a skill published in the GitHub repository galiprandi/job-seeker (58 stars, last pushed 2d ago), licensed MIT. It adds 32 tokens to every session and 7,696 once invoked, about $0.0001 per session on Opus 5.5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.
Other skills, from other repositories
interviewing
Use when the user gets an interview invitation, moves into an interview process, wants to track interview stages, capture post-interview notes, draft follow-up messages, or update an application to interviewing.
career-compass
Use for any job-search or career task, even a short casual ask that never names Career Compass. Triggers include a pasted job posting or JD, a résumé or CV, "should I apply", "do I fit this", "help me apply", tailoring a résumé or cover letter, a LinkedIn headline or About section, tracking applications, a recruiter…
vitaecontext-build
Build, normalize, and maintain the user's Career Context file so downstream platform outputs stay factual and consistent. Use when the user wants an agent to consolidate CV data, LinkedIn exports, GitHub history, project summaries, bio facts, achievements, or positioning into one professional source of truth before…
get-started
Use when the user is new to Job Hunt Skills and wants to see what it does or set up their workspace — including "I'm new to Job Hunt Skills", "help me get started", "set me up", "first time using this", "here's my resume, tailor it for this job", "can you look at my resume", pasting a resume and a job posting…
today
See what needs attention in your job search today, such as follow-ups due, upcoming interviews, and stale applications, in priority order.
week
Review your job-search week. What moved, stalled or closed, the patterns in your notes, your pace against your goal, and one focus for next week.