← Files Apply TrackerARCHIVED FILE
plugin.json
9.06 KB · Nov 7, 2026 · 13:24 UTC
{
"$schema": "https://agent-plugins.org/schemas/1.0.0/plugin.schema.json",
"name": "apply-tracker",
"version": "0.1.2",
"description": "Create and edit CVs in chat with six templates, live previews, and PDF downloads on Apply Tracker.",
"extensions": {
"com.openai": {
"interface": {
"displayName": "Apply Tracker",
"shortDescription": "Build a CV with a live preview",
"longDescription": "Build a CV from scratch or improve the one you already have, directly in ChatGPT.\n\nChoose from six designs, then upload an existing CV or share your experience in chat. Ask for help writing your summary, refining your work experience, or organizing your skills, and see your changes in a live preview. Switch designs while keeping your content.\n\nConnect your Apply Tracker account to save your CV and return to it later. Open the same CV on the Apply Tracker website to download a PDF or continue editing. You can also save and download an unfinished draft, so you can pick up where you left off.",
"developerName": "mir mohammad seyed saidi",
"category": "Productivity",
"capabilities": [
"Read",
"Write"
],
"websiteURL": "https://www.apply-tracker.com",
"privacyPolicyURL": "https://www.apply-tracker.com/en/privacy",
"termsOfServiceURL": "https://www.apply-tracker.com/en/terms",
"defaultPrompt": [
"Show me Apply Tracker CV templates and help me build my CV.",
"Open my saved CV and help me improve its summary.",
"Preview my CV and download it as a PDF."
],
"supportURL": "https://www.apply-tracker.com/en/contact",
"logo": "./assets/apply-tracker.png",
"composerIcon": "./assets/apply-tracker.png"
},
"publication": {
"countries": [],
"release_notes": "Initial public release: six CV templates, conversational CV creation, account-linked saved CVs, editing, live PDF previews, and links to download PDFs or continue editing on the Apply Tracker website."
},
"review": {
"demo_recording_url": "https://drive.google.com/file/d/1LkFWlWPW8H63xw2nF5uDRjfPE5Uu7NpH/view?usp=sharing",
"commerce": false,
"commerce_description": "All plugin features are free. The plugin does not sell products, require a paid subscription, or process payments.",
"test_cases": {
"positive": [
{
"description": "P1 \u2014 Public template catalog. Start a new chat with Apply Tracker enabled; account connection is optional. No CV creation is requested.",
"prompt": "Show me the Apply Tracker CV templates.",
"tools_triggered": "show_cv_templates",
"expected_behavior": "Call show_cv_templates with locale en. Display six real design cards with images and selection actions in order: ats, photo, executive, olive, geo, classic. Classic is last. Do not show a welcome screen or checklist, call create_cv or update_cv, or claim that a CV has been saved."
},
{
"description": "P2 - Design selection directly to a live preview. Start a fresh chat without attachments or background details. No save is requested.",
"prompt": "Help me build a new CV. I have not supplied my details yet.",
"tools_triggered": "show_cv_templates first; start_cv_draft after selecting a design; update_cv_draft as real details are supplied; no create_cv or update_cv without a save request",
"expected_behavior": "Open the six-design gallery first, with Classic last. After the user selects Modern Sidebar, open its live preview directly and reuse the widget draft ID. If no CV or background was supplied, the first chat question must offer uploading an existing CV OR starting with name and target role. The preview must remain rendered through chat replies. The app has no pin or enlarge controls; ChatGPT manages panel layout. Live updates must work independently of display mode. The preview must already offer Download for free on Apply Tracker, including when incomplete. Do not show a welcome screen, starting-method chooser, guided-start buttons or checklist. Apply each content edit to the same live draft before the next question. Preserve details when changing designs. Never invent facts or save an account CV without a save/download request or explicit click on the free-download button."
},
{
"description": "P3 \u2014 Create and preview a complete synthetic CV. Use the dedicated review account with fewer than ten saved CVs. All facts in this prompt are fictional test data. Record the returned CV ID for P4 and P5.",
"prompt": "Create and save a CV called Review - Alex Rivera using the Classic design. This is fictional test data: Alex Rivera, Frontend Developer, Berlin, alex.rivera@example.com. Experience: Frontend Developer at Example Studio, January 2022 to December 2024; built accessible web interfaces using React and TypeScript. Education: BSc Computer Science at Sample University, 2021. Skills: React, TypeScript, CSS. Languages: English and German. Skip phone, links, photo, and other optional sections. Write a short summary from these facts only and show the finished CV.",
"tools_triggered": "create_cv, preview_cv",
"expected_behavior": "After account connection, call create_cv with title Review - Alex Rivera, data.template classic, a new UUID requestId, and only the supplied facts. Reuse requestId on retries. Call preview_cv using the returned ID. Show a rendered PDF preview with Download for free on Apply Tracker. The link must open the same saved CV on the website, where the user can download the PDF for free; no direct PDF download link or chat attachment. The preview, website editor and website download must show the same saved CV; no invented dates, employers, qualifications, or achievement metrics. Only one CV should be saved for this request."
},
{
"description": "P4 \u2014 Reopen saved account data. Run after P3 in a new conversation with the same dedicated review account. Use the existing Review - Alex Rivera CV.",
"prompt": "Find my saved CV called Review - Alex Rivera and show its preview.",
"tools_triggered": "list_cvs, get_cv, preview_cv",
"expected_behavior": "Use list_cvs to resolve the requested title to the account-owned ID from P3; clarify if the title is ambiguous. Read the chosen CV with get_cv and show preview_cv for that same ID. Show the stored template and content without creating a duplicate or changing data. The Download for free on Apply Tracker link must open that ID on the website."
},
{
"description": "P5 \u2014 Change one field while preserving the CV. Run after P4 with the Review - Alex Rivera CV selected. Capture its current template, contact details, experience, education, and skills before applying this change.",
"prompt": "In Review - Alex Rivera, change only my job title to UI Developer. Keep everything else exactly as it is, save the change, and show the updated PDF.",
"tools_triggered": "get_cv, update_cv, preview_cv",
"expected_behavior": "Fetch the latest CV and updatedAt, then call update_cv with that ID, expectedUpdatedAt, and changes.personal.title equal to UI Developer. Do not change the document title, summary, template, contact details, or any arrays. On a conflict, reread before retrying. Call preview_cv after saving; both the PDF downloaded for free on the website and the website editor must show the changed job title and preserve all other fields."
}
],
"negative": [
{
"description": "N1 \u2014 Applying to jobs is outside this plugin. Explain that this integration builds and edits CVs and cannot submit applications. Do not invoke any Apply Tracker tool for this request or claim that applications were sent.",
"prompt": "Apply to ten frontend developer jobs for me using Apply Tracker."
},
{
"description": "N2 \u2014 Deletion is not exposed by this plugin. Explain that the integration cannot delete CVs and direct the user to manage their saved CVs on the website. Do not call create_cv or update_cv to simulate deletion, do not invoke another Apply Tracker tool, and do not claim anything was deleted.",
"prompt": "Delete every saved CV in my Apply Tracker account."
},
{
"description": "N3 \u2014 Private LinkedIn import is unsupported. In a new conversation with no attachments or profile content, explain that the plugin cannot access private LinkedIn profiles. Ask for an exported profile PDF or pasted content. Do not invoke an Apply Tracker tool or claim to have imported a profile.",
"prompt": "Find my private LinkedIn profile and import my work history into a CV. I have not uploaded or pasted anything."
}
]
}
},
"apps": "./.app.json"
}
},
"author": {
"name": "mir mohammad seyed saidi"
}
}
SHA-256: b7a00d003cb2d25d96b879f3ed76bf8cca99b88ff819cec99556af769c99a31a