add_career_entry
ChatGPTSaves a new career journal entry to the user's GigHQ profile. Use this to document professional achievements, projects, skills acquired, or reflections tied to a specific role. Entry types: 1 = achievement — a concrete win, result, or impact (default) 2 = project — a specific initiative the user owned or contributed to 3 = skill_acquired — a new skill, tool, or capability gained 4 = reflection — a lesson learned or professional observation Tip: if the user hasn't specified a role, call list_experiences first, present the options, and ask which role this entry belongs to. Then pass the confirmed integer ID as experience_id. experience_id is optional — entries without one are valid but less useful for resume generation and interview prep, since they can't be linked to a specific role. Always prompt the user for quantifiable impact (numbers, scale, outcomes) before saving. The metrics field is the right place for that — e.g. 'Reduced page load time by 40%' or 'Managed a team of 8 across 3 time zones'.
add_job_application_note
ChatGPTAdds a note to a job application's timeline. Use this to log any touchpoint or interaction — a call, a LinkedIn message, a referral conversation, a networking event, etc. category is required. Infer the best-fit category from the note content before calling. Use this mapping: • text_message — contact via SMS/text • email_external — contact via email • call — phone or video call • linkedin_connection_request — sent or received a LinkedIn connection request • linkedin_message — direct message on LinkedIn • coffee_chat — informational interview or coffee chat • in_person_meeting — face-to-face meeting • networking_event — conference, meetup, career fair, or similar event • referral — someone referred the user or made an introduction • other — genuinely doesn't fit any of the above If the category is still ambiguous after reading the note, present the options to the user and ask them to confirm before calling this tool. The application_id is the UUID of the job application — use get_recent_applications or search_job_applications to find it.
analyze_skills_gap
ChatGPTEvaluates the user's candidacy, fit, or readiness for a saved job application. Use this when the user asks to analyze their skills gap, assess their fit, evaluate their candidacy, or understand what they're missing for a role. Identifies strong matches between the user's background and the role, highlights explicit gaps, and suggests concrete framing strategies for each gap. If the job description is not yet saved in GigHQ, the tool will tell the user what to update before retrying.
check_stale_applications
ChatGPTReturns job applications that haven't had a status update in a configurable number of days, along with a suggested follow-up action for each. Useful for surfacing applications the user may have forgotten about.
create_job_application
ChatGPTCreates a new job application entry in GigHQ.
delete_career_entry
ChatGPTPermanently deletes a career journal entry by UUID. This action cannot be undone — confirm with the user before calling. Use list_career_entries to find the UUID if you don't have it.
delete_job_application_note
ChatGPTPermanently deletes a note from a job application's timeline. This action cannot be undone — confirm with the user before calling. Use list_job_application_notes to find the note UUID if you don't have it.
get_career_journal_prompts
ChatGPTReturns a set of context-aware reflection questions to guide a career journaling session. Use this at the start of any journaling conversation to orient the discussion. The tool reads the user's GigHQ experience records and existing career entries to tailor the questions — surfacing the most relevant role, estimating tenure, and flagging roles with sparse documentation. Session types: achievement — document a specific win or impact quarterly — end-of-quarter reflection (default) onboarding — first 90 days at a new role wrap-up — leaving a role or wrapping up an internship job-search — actively applying; synthesise story and close gaps
get_company_details
ChatGPTGet detailed information about a company (applicants by status, Community Signal, H1B sponsorship status, employee count, website, etc.) using its UUID. The metrics window defaults to the last 30 days. When the user requests a longer period — e.g. "last 6 months", "last year", "since January" — compute startDate and endDate from that phrase and pass them explicitly. Do not fall back to external sources for date-ranged data; set the parameters and call this tool.
get_job_application
ChatGPTFetches the full details of a single job application by its UUID — status history, correspondence dates, job description, and related metadata. Do NOT use this tool when the user asks about notes ("do I have any notes", "show me my notes", "list notes"). Use list_job_application_notes for that. Tip: if you only have a company name, call search_job_applications first to get the UUID.
get_job_details
ChatGPTGet detailed community metrics for a specific job listing (applicants by status, average days per status, Community Signal) using its UUID. The metrics window defaults to the last 30 days. When the user requests a longer period — e.g. "last 6 months", "last year", "since January" — compute startDate and endDate from that phrase and pass them explicitly.
get_recent_applications
ChatGPTRetrieves a summary of the user's 10 most recent job applications, including status, company name, and correspondence dates.
list_career_entries
ChatGPTReturns the user's career journal entries from GigHQ, newest first. Supports optional filtering by entry type and date range. Use this tool to: - Review what the user has already documented before starting a journaling session - Find entries to update or refine - Identify gaps (roles with few or no entries) - Synthesise entries into resume bullets or interview stories Entry type filter values: 1=achievement, 2=project, 3=skill_acquired, 4=reflection.
list_experiences
ChatGPTReturns the user's work experience records with their integer IDs. Use this tool BEFORE calling add_career_entry or update_career_entry to find the correct experience_id for the role the entry belongs to. Present the role list to the user and confirm which one they mean before saving. This is the tool-based alternative to the gighq://experience resource and works in all contexts including voice mode.
list_job_application_notes
ChatGPTUse this tool when the user asks about notes on a job application — "do I have any notes", "show me my notes", "what notes do I have", etc. Returns all user-authored notes for a job application ordered by date, including UUID, body text, category, and timestamp. Use the returned UUIDs in follow-up update_job_application_note or delete_job_application_note calls.
search_companies
ChatGPTSearch for companies by name to retrieve their unique identifiers (UUIDs).
search_job_applications
ChatGPTSearch the user's job applications by company name. Use this when the user asks about a specific company's application or wants to find a particular application to view or update its status. Returns matching applications with their UUIDs — the UUID is what feeds into update_job_application_status and toggle_job_application_interest. Matching is case-insensitive and substring-based: "stripe" matches "Stripe", "Stripe Inc", etc. If the user applied to the same company more than once (e.g., different roles), all matches are returned; use jobTitle and correspondenceDate to disambiguate.
toggle_job_application_interest
ChatGPTUse this tool when the user says "not interested", "no longer interested", "withdraw interest", "I'm out", "remove from pipeline", or any equivalent phrase. This is the ONLY correct tool for withdrawing interest — do not use update_job_application_status as a proxy. Deactivates an active application (or reactivates a previously deactivated one). Mirrors the "I am no longer interested in this role" button in the GigHQ app. Pass currentIsActive: true to deactivate an active application: - Stamps an end date on the current status stage (appliedEndDate, interviewingEndDate, or offerEndDate) - Resets status to PENDING and sets endDate = now Pass currentIsActive: false to reactivate a previously deactivated application: - Clears endDate and resets status to PENDING Check the current isActive value with get_job_application or search_job_applications before calling.
update_career_entry
ChatGPTUpdates an existing career journal entry. Only the fields provided will be changed — all other fields remain as-is. Use this to refine descriptions, add metrics after the fact, correct the entry date, or re-type an entry.
update_job_application_note
ChatGPTUpdates the body or category of an existing job application note. Both body and category are required — the backend replaces the full note on update. If the user only mentions updating the body and doesn't specify a category, infer the best-fit category from the note content using this mapping: • text_message — contact via SMS/text • email_external — contact via email • call — phone or video call • linkedin_connection_request — sent or received a LinkedIn connection request • linkedin_message — direct message on LinkedIn • coffee_chat — informational interview or coffee chat • in_person_meeting — face-to-face meeting • networking_event — conference, meetup, career fair, or similar event • referral — someone referred the user or made an introduction • other — genuinely doesn't fit any of the above If ambiguous, ask the user to confirm before calling. Use list_job_application_notes to retrieve the note UUID if you don't have it.
update_job_application_status
ChatGPTSTOP — if the user says "not interested", "no longer interested", "withdraw interest", "remove from pipeline", or any equivalent: do NOT call this tool. Call toggle_job_application_interest instead. There is no "not interested" status here; attempting to use REJECTED or any other status as a proxy is wrong. Updates the status of a job application by its UUID to one of the supported pipeline stages. Allowed transitions (invalid transitions are silently ignored by the API — validate before calling): - PROSPECTING → PROSPECTING, APPLIED, INTERVIEWING, OFFER, REJECTED, PENDING - APPLIED → APPLIED, PENDING, INTERVIEWING, OFFER, REJECTED - INTERVIEWING → INTERVIEWING, PENDING, OFFER, REJECTED - OFFER → OFFER, REJECTED, PENDING - REJECTED → REJECTED, PENDING - PENDING → APPLIED, INTERVIEWING, OFFER, REJECTED - UNKNOWN → (nothing — all transitions blocked)
weekly_job_search_summary
ChatGPTGenerates a weekly job search health summary. Aggregates up to 30 active applications and surfaces status distribution, conversion rates, longest-open applications, pipeline clustering insights, and a suggested focus area for the coming week.