← Files JackARCHIVED FILE
skills/jack/references/profile-schema.json
7.54 KB · Oct 10, 2026 · 06:12 UTC
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"title": "Jack profile (editable fields)",
"description": "The fields update_profile edits. Hiring managers on the Jack network can see the profile. Experience and education entries are addressed by `key`.",
"type": "object",
"properties": {
"headline": {
"default": "",
"description": "Short headline for the candidate (e.g., 'Senior ML Engineer'). Maximum 50 characters. Defaults to current job title. Generated by Jack, used only in presentation.",
"title": "Headline",
"type": "string"
},
"summary": {
"default": "",
"description": "50-100 word background summary.",
"title": "Summary",
"type": "string"
},
"detailed_summary": {
"default": "",
"description": "Jack's comprehensive markdown narrative of the candidate's career. Write as a markdown document with: 1) A professional summary paragraph (200-300 words), 2) A '## Career Timeline' section with structured entries for each role: '**Title at <employer> (From - To)**' followed by bullet points: first bullet describes what the company does, then subsequent bullets cover the candidate's responsibilities, achievements, and context. 3) An '## Education' section summarizing relevant education background. Should be 600-1000 words total. This field feeds ranking, so it must be sanitized: third person with they/them, no candidate name, no protected characteristics. Companies and institutions can be named; only swap a gender-revealing institution name for the degree and field.",
"title": "Detailed Summary",
"type": "string"
},
"looking_for": {
"default": "",
"description": "50-100 word description of what the candidate seeks, in third person. Salary expectations must not be included.",
"title": "Looking For",
"type": "string"
},
"location": {
"default": "",
"description": "Free text describing candidate's location situation: where they live, work authorization, remote/hybrid preferences, visa status, and relocation willingness. Generated by Jack, must be sanitized.",
"title": "Location",
"type": "string"
},
"skills": {
"description": "List of key skills (technical and soft). Generated by Jack, used in embedding and labeler context.",
"items": {
"type": "string"
},
"title": "Skills",
"type": "array"
},
"experiences": {
"description": "Work experience entries with 'key' for timeline_comments.",
"items": {
"$ref": "#/$defs/PackExperience"
},
"title": "Experiences",
"type": "array"
},
"education": {
"description": "Education entries with 'key' for timeline_comments.",
"items": {
"$ref": "#/$defs/PackEducation"
},
"title": "Education",
"type": "array"
},
"links": {
"description": "Optional candidate-evidenced external links shown beside CV and LinkedIn.",
"items": {
"$ref": "#/$defs/PackLink"
},
"maxItems": 12,
"title": "Links",
"type": "array"
}
},
"$defs": {
"CompanyEnrichment": {
"description": "Company data enrichment for experience entries.",
"title": "CompanyEnrichment",
"type": "object",
"properties": {
"name": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Name"
}
}
},
"PackEducation": {
"description": "Education entry with stable key for timeline_comments.",
"title": "PackEducation",
"type": "object",
"properties": {
"date_from_year": {
"anyOf": [
{
"type": "integer"
},
{
"type": "null"
}
],
"default": null,
"title": "Date From Year"
},
"date_to_year": {
"anyOf": [
{
"type": "integer"
},
{
"type": "null"
}
],
"default": null,
"title": "Date To Year"
},
"description": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Description"
},
"institution": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Institution"
},
"program": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Program"
},
"key": {
"default": "",
"description": "Stable key for timeline_comments references",
"title": "Key",
"type": "string"
}
}
},
"PackExperience": {
"description": "Experience entry with stable key for timeline_comments.",
"title": "PackExperience",
"type": "object",
"properties": {
"title": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Title"
},
"location": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Location"
},
"description": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Description"
},
"date_from": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Date From"
},
"date_to": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Date To"
},
"is_current": {
"anyOf": [
{
"type": "integer"
},
{
"type": "null"
}
],
"default": null,
"title": "Is Current"
},
"company": {
"anyOf": [
{
"$ref": "#/$defs/CompanyEnrichment"
},
{
"type": "null"
}
],
"default": null
},
"key": {
"default": "",
"description": "Stable key for timeline_comments references",
"title": "Key",
"type": "string"
}
}
},
"PackLink": {
"additionalProperties": false,
"description": "An optional candidate-owned external resource shown with their pack.",
"required": [
"url",
"name"
],
"title": "PackLink",
"type": "object",
"properties": {
"url": {
"title": "Url",
"type": "string"
},
"name": {
"title": "Name",
"type": "string"
}
}
}
}
}
SHA-256: 478d1edad8a6195682f97dcba7399c0cb63aca52f026015f16fb2033f4d90490