Skip to content
Back to skills

Jobfishing Cover Letter Fast

ASecurity

Generate one truthful, job-specific Cover Letter as a local Word file, fast — no resume selection, no ATS form filling, no browser involvement. Use when the user only wants a Cover Letter for a job, not a full application. Do not use this for submitting an application; hand off to `$jobfishing-apply` or `$jobfishing-apply-fast` for that.

  • 3 stars
  • 0 votes
  • 0 copies
  • 1 view
  • Added October 9, 2026
ai-agentspythonfrontend

Works with

  • cli
  • mcp

Security analysis

A100/100

Pro scans all 2 files and shows the line behind each finding

Scanned October 9, 2026

npx -y skills add leoqingyu/jobfishing-ai --skill jobfishing-cover-letter-fast --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Jobfishing Cover Letter Fast?

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

Security grade badge for Jobfishing Cover Letter Fast
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/leoqingyu-jobfishing-cover-letter-fast/badge)](https://www.skillsdirectory.com/skills/leoqingyu-jobfishing-cover-letter-fast)

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: jobfishing-cover-letter-fast
description: Generate one truthful, job-specific Cover Letter as a local Word file, fast — no resume selection, no ATS form filling, no browser involvement. Use when the user only wants a Cover Letter for a job, not a full application. Do not use this for submitting an application; hand off to `$jobfishing-apply` or `$jobfishing-apply-fast` for that.
---

# jobfishing Cover Letter (Fast)

Some requests are just "I need a cover letter for this job," not a full application pass. This Skill does exactly that and stops — it produces one verified local DOCX and, only on request, uploads it to jobfishing. It does not touch an ATS, does not pick or upload a resume, does not fill any form, and never opens a browser.

Access jobfishing data only through its MCP tools; never navigate, click, upload, or edit through the jobfishing frontend.

## Identify the job

The job does not need to already exist in jobfishing:

- If the user names a jobfishing job (by id, or company + title), call `get_job_detail` for the full description and match details.
- If the user instead pastes a JD directly in the conversation, use that text as the requirements source. Do not search jobfishing for a matching record unless the user asks you to.

Either way, call `get_experience_context()` for `basic_info`, experience, and saved answers — this is the only source of candidate facts. Never invent a skill, date, number, employer, or scope claim that is not in that context or an explicitly supplied resume.

## Draft once, review once

Follow the evidence plan and content contract in [cover-letter-quality.md](../jobfishing-apply/references/cover-letter-quality.md): extract the three to five requirements that matter most, cite verified evidence for each, and leave unsupported requirements visible as gaps rather than papering over them.

Draft the letter and self-review it against that same checklist (factual accuracy, JD coverage, honest gaps, no duplicated evidence, tone/length, consistency with whatever resume the user mentions) in one inline pass, in the same turn. Do not dispatch a separate reviewer subagent — that is what makes this fast. Apply at most one revision pass if the self-review finds a real problem; do not loop.

## Render and hand off

1. Render the final reviewed paragraphs locally to a clean DOCX and verify its visible and extracted text match. Write a small script and run it with `uv run --no-project --with python-docx script.py` (the user may have no Python or `python-docx` installed; `uv` fetches both). Do not use the jobfishing frontend or its renderer.
2. Name the file `<Candidate Name> - Cover Letter - <Company>.docx` (see [outbound-filenames.md](../jobfishing-apply/references/outbound-filenames.md) for the same clean-filename standard used elsewhere).
3. Tell the user where the local file is and show the letter content.
4. Only if the user asks to save it to jobfishing, and only when this is a real jobfishing job: call `upload_tailored_cover_letter` so it becomes that job's current Cover Letter. Do not call this for a job that only exists as a pasted JD.

## Explicitly out of scope

This Skill never selects or uploads a resume, never fills an ATS form, never opens a browser, and never calls `mark_applied`. If the user's next request is to actually submit this application, hand off to `$jobfishing-apply` (deliberate) or `$jobfishing-apply-fast` (quick pass) — either can reuse the Cover Letter this Skill just uploaded instead of generating a new one.

Files in this skill

  • SKILL.md3.5 KB
  • agents/openai.yaml469 B

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.