Communitygithub.com

SongGithub/personal-skills

How to file a job opportunity as a Jira issue — summary format, required fields, duplicate check, description formatting and attachments. Applies when tracker_backend is jira. Use when a job posting becomes a tracker record, and when creating or updating job records on a Jira board.

¿Qué es personal-skills?

personal-skills is a Claude Code agent skill that how to file a job opportunity as a Jira issue — summary format, required fields, duplicate check, description formatting and attachments. Applies when tracker_backend is jira. Use when a job posting becomes a tracker record, and when creating or updating job records on a Jira board.

Compatible con~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/SongGithub/personal-skills/tree/HEAD/job-search/skills/jira-job-records

Preguntar en tu IA favorita

Abre un nuevo chat con esta habilidad de agente ya precargada.

Documentación

Jira Job Records

Applies only when tracker_backend: jira in $JOB_SEARCH_HOME/integrations.yaml. If the backend is trello, use the trello-card-rules skill instead.

Identify the site, project and field ids from integrations.yaml under jira.*. Never hardcode a site URL, project key, field id, email address or token — not from memory, not from an older copy of this skill, and never print a credential.

Fields to set when creating a record

FieldValue
Summary<Role Title> — <Company>
Start datethe date the record is created
Sourcewhere the opportunity came from, e.g. seek or linkedin
Priorityset from the screening result
Descriptionthe job link as a hyperlink on the first line, then the complete job description

Lane. Create the record in the Backlog lane. Never create directly in To Do: promotion to To Do is a triage decision for the candidate, not the intake step.

Summary. Use <Role Title> — <Company> with no prefix. A prefix such as Job Hunt: adds nothing: every record in the project is a job record, and the prefix only widens the title and breaks title-based searches.

Start date. Set it to the day the record is created, so the date the opportunity entered the pipeline is recorded rather than inferred from ticket history. This is the record's start date, not the role's start date. Field id comes from jira.fields.start_date.

Source. Record where the opportunity came from in the Source field, whose id is jira.fields.source. Accepted values come from jira.source_values: seek, linkedin, recruiter, referral, company-site, or direct. Never leave it blank — a record with no source cannot be filtered by channel later, which is the whole point of the field.

Note that on a team-managed (next-gen) project a custom field is project-scoped and may not appear in the create-metadata API. Read the id from the issue's expand=names output, or from /rest/api/3/field, rather than concluding the field does not exist.

People count. Where the project tracks company size, record the head count with its source and as-of date, for example ~3,090 (Jun 2026 annual report) or 501-1,000 (LinkedIn band). An unsourced number is worse than no number.

The job link

Keep the link to the original posting at the top of the description, as a hyperlink with readable text, so it is the first thing visible when the record is opened. Never bury it among other metadata, and never leave a bare URL mid-paragraph.

Format it as the first line of the description:

[<Role Title> — <Company>](<posting url>)

If the project has a dedicated URL or link field, set that as well — but the description link is the one that must always be present, because it survives field-configuration changes and is exported with the description.

Set the source label (seek, linkedin) in the same step, so the record can be filtered by channel later.

Duplicate check — do this before creating anything

Search the project for the company and the role title before writing:

project = <key> AND summary ~ "<company>"
project = <key> AND summary ~ "<role title keywords>"

Two failure modes recur:

  1. Casing and punctuation. Senior DevOps Engineer - AWS and Senior DevOps Engineer — AWS are the same role. Normalise case, spacing and dashes before comparing.
  2. Title-only confidence. A title is a screening cue, never proof of level or fit. Do not open a record on the strength of the title alone.

If a record already exists, update it rather than creating a second one.

Description formatting

The description carries the job description and the screening result. Keep it readable in one pass:

  • ## headings with content beneath them; never two headings back to back
  • key values as bold labels (**Role:**, **Location:**), not a bullet list of colons
  • blank line between sections
  • links as [descriptive text](url), never a bare "See: url"
  • code, filenames and commands in backticks
  • no wall-of-text paragraphs; break them up
  • no nested numbered lists

Copy the complete job description through its final paragraph. A truncated description is an incomplete record.

Attachments

  • Store both the HTML source and the rendered PDF.
  • The PDF filename must match the HTML filename, for example cv_<KEY>_<company-slug>.pdf alongside cv_<KEY>_<company-slug>.html.
  • Upload the replacement first, verify it landed with the expected name and size, then delete the superseded copy. Do not leave two versions attached.

Verdicts must follow from the reasons

A verdict is only useful if the reasons stated support it. Before writing one:

  • A positive reason (a stable employer, a familiar domain, overlapping stack) can never support a Deprioritise or Dead-lead verdict. If every reason listed is positive, then either the verdict is wrong or the real reason is missing.
  • State the actual ground: stack or discipline mismatch, location, salary below the floor, or a named exclusion rule. A verdict with no stated ground is a placeholder, not an assessment.
  • Never inherit a verdict from a criterion that has since changed. If the original objection no longer applies, the verdict must be re-derived, not left standing.

Re-validate when criteria change

Records are written once and then rot. When preferences.yaml changes (title levels, salary floor, excluded stacks) or profile.md gains a material new fact:

  • Re-read the fit rationale and gaps of every record in the active lanes: To Do, Applied, Interview and Backlog.
  • Flag any record that cites a criterion which no longer applies, for example a level objection after that level became acceptable, or that asserts a skill the profile does not contain.
  • Fix the reasoning. Do not simply delete the stale objection: removing it can leave the verdict unsupported, which is worse than the original error.
  • Leave Dead-leads alone. They are inert.
  • Ask before deleting. If a note or CV claim looks unverified, confirm with the candidate rather than removing it. A profile summary omits real experience, so absence there is not evidence that the claim is false. Record confirmed facts back into the profile.

Related skills

  • job-search-quality — screening, salary and title criteria, and the evidence gate that determines whether a record is complete
  • cv-attach-workflow — generating the tailored CV and attaching it
  • jira-job-records is the Jira counterpart to trello-card-rules

Individual skills in this repo

This repo contains 10 individual skills — each has its own dedicated page.

SongGithub/personal-skills

Applies a direct, plain-spoken, Australian-English communication style to any text drafted — chat replies, emails, Slack/Teams messages, tickets, PR and commit descriptions, docs. Use whenever drafting prose, not just visual or code artifacts. Skip when the user explicitly asks for a different tone or voice.

SongGithub/personal-skills

A reusable HTML document design system for CVs, one-pagers and short reports — design tokens, layout, typography, print-to-PDF rules and accessibility. Use when generating or restyling a self-contained HTML document meant to be read on screen or printed to PDF.

SongGithub/personal-skills

End-to-end job application workflow. Screen a posting, tailor the HTML CV from the master template, print it to PDF, archive the artifact, and file the result against the configured tracker. Triggers on apply, apply to jobs, submit application, tailor and send CV.

SongGithub/personal-skills

CV attach workflow. Generate a tailored HTML CV for a tracked role, attach the rendered artifact back to its tracker item, then verify the attachment actually landed. Covers template selection, tailoring order, upload headers, and read-back verification.

SongGithub/personal-skills

First-principles reasoning for a startup or a job search, in the spirit of Elon Musk's "zero restart" framing: survival cashflow, the idiot index, and the physical first step. 第一性原理创业与求职法 — 从马斯克「归零重启」思维出发,用生存现金流、白痴指数、长期物理第一步三个步骤,指导创业和求职

SongGithub/personal-skills

Assistant for job applications: evaluating job postings, tailoring CVs, writing cover letters, and preparing for interviews. Triggers on keywords like: job posting, job application, CV, cover letter, resume, interview prep, job fit, career, application, apply, SEEK

SongGithub/personal-skills

Job scraper. Searches job boards for new positions matching the candidate profile, deduplicates against previously seen jobs and the tracker file, then presents new matches with a quick fit assessment. Triggers on: job scrape, find jobs, search jobs, new jobs, /scrape.

SongGithub/personal-skills

Screen job opportunities, prepare job records and tailored CVs, and verify the result against current salary, title, source, and document-quality preferences. Applies to job boards and scheduled searches.

SongGithub/personal-skills

Trello card rules for the job-search tracker. Enforces case-insensitive and fuzzy duplicate detection before any card is created, title formatting, lane placement from config, and logging each card to the tracker database. Applies whenever a job posting becomes a card.

SongGithub/personal-skills

Compares tracked job postings against the candidate profile to find skill gaps, then builds a prioritised gap heatmap and a learning plan with searched study resources and a study order. Triggers on: upskill, skill gaps, what should I learn, learning plan, upskill report.

Skills relacionados