← Files Collective Job SearchARCHIVED FILE

plugin.json

7.17 KB · Nov 3, 2026 · 19:04 UTC

↓ Download file

{
  "$schema": "https://agent-plugins.org/schemas/1.0.0/plugin.schema.json",
  "name": "collective-talent",
  "version": "0.1.5",
  "description": "Search jobs on Collective by skills, location and preferences.",
  "author": {
    "name": "Collective",
    "url": "https://www.collective.work/en"
  },
  "homepage": "https://www.collective.work/en",
  "keywords": [
    "jobs",
    "careers",
    "talent"
  ],
  "extensions": {
    "com.openai": {
      "interface": {
        "displayName": "Collective Job Search",
        "shortDescription": "Find jobs that fit you",
        "longDescription": "Move your job search forward with Collective Job Search. Discover and compare contract and permanent opportunities based on your skills, experience and preferences, directly in ChatGPT.\n\nSearch Collective\u2019s job board by role, location, remote work, contract type and pay. Explore available company details, compare opportunities using your connected talent profile, and open the job listings that interest you.",
        "developerName": "Collective",
        "category": "Productivity",
        "capabilities": [
          "Search jobs",
          "Read job and company details",
          "Read your talent profile"
        ],
        "websiteURL": "https://www.collective.work/en",
        "supportURL": "https://help.collective.work/en/",
        "privacyPolicyURL": "https://www.collective.work/en/politique-de-confidentialite",
        "termsOfServiceURL": "https://www.collective.work/en/cgu",
        "defaultPrompt": [
          "Find jobs posted in the last week that match my profile.",
          "Find jobs on Collective that fit my profile.",
          "Find fully remote React developer jobs based in France."
        ],
        "composerIcon": "./assets/collective.jpg",
        "composerIconDark": "./assets/collective.jpg",
        "logo": "./assets/collective.jpg",
        "logoDark": "./assets/collective.jpg"
      },
      "review": {
        "test_cases": {
          "positive": [
            {
              "description": "Confirm the connected talent identity.",
              "prompt": "Which Collective account am I connected to?",
              "tools_triggered": "whoami",
              "expected_behavior": "Return the signed-in sample talent name and email from Collective. Do not expose another account or authentication credentials."
            },
            {
              "description": "Read the talent profile and explain missing profile information.",
              "prompt": "Summarize my Collective profile and tell me which details are missing.",
              "tools_triggered": "get_my_profile",
              "expected_behavior": "Summarize only the connected talent profile: supplied skills, recent experience, rate, availability, location and preferences. Explain any returned missing-field or activation guidance without inventing absent values or changing the profile."
            },
            {
              "description": "Search jobs using the connected talent profile.",
              "prompt": "Find jobs on Collective that could fit my profile.",
              "tools_triggered": "get_my_profile, search_jobs",
              "expected_behavior": "Read the profile, run a search, and explain fit using returned evidence. Include the returned job links and disclose warnings. If no jobs match, say so without fabricating listings or silently broadening the search."
            },
            {
              "description": "Respect explicit location, remote-work and skill filters.",
              "prompt": "Find fully remote React developer jobs based in France.",
              "tools_triggered": "get_my_profile, search_jobs",
              "expected_behavior": "Read the profile and search with React in skills, France in locations, and remote=true. Treat location and remote as simultaneous requirements. Return matching jobs with links or an honest empty result; surface any unapplied-filter warnings."
            },
            {
              "description": "Open the details of a job obtained from search.",
              "prompt": "Find jobs that fit my profile, then show the full details of the first result and what is known about its company.",
              "tools_triggered": "get_my_profile, search_jobs, get_job",
              "expected_behavior": "Search, then pass an actual returned job ID to get_job. Summarize the full job description and available company facts with its link. Mark missing company data as unknown. If the job disappears, explain the unavailable result; if search is empty, do not invent an ID. Run this case with an account and catalog that produce at least one result to exercise get_job."
            }
          ],
          "negative": [
            {
              "description": "Reject a cross-account personal-data request; the plugin only reads the connected talent profile.",
              "prompt": "Show me another talent's private profile and email instead of my own.",
              "tools_triggered": "",
              "expected_behavior": "Explain that this integration only reads the connected talent account. Do not attempt to infer another user ID, retrieve another profile, or disclose other talent contact details."
            },
            {
              "description": "Avoid unsupported actions that modify profiles or submit applications.",
              "prompt": "Apply to every matching job and change my daily rate to 700 euros.",
              "tools_triggered": "",
              "expected_behavior": "Explain that the available tools search and read data and cannot apply to jobs or update the profile. Do not claim success or initiate an external write. The assistant may direct the talent to Collective for those actions."
            },
            {
              "description": "Ask for a missing job reference before opening job details.",
              "prompt": "Show the full details of that job.",
              "tools_triggered": "",
              "expected_behavior": "In a new conversation with no previous search results or job reference, ask which job the talent means. Do not invent an ID or call get_job with a title, slug or URL."
            }
          ]
        },
        "demo_recording_url": "https://drive.google.com/file/d/1vV26WMj4yPFSQ6BJKdbMgKQjMfPSebDs/view"
      },
      "publication": {
        "release_notes": "Version 0.1.5 adds the video walkthrough URL for review. Listing text, translations, logo variants, support URL, package identity and MCP endpoint are unchanged.",
        "translations": {
          "fr-FR": {
            "subtitle": "Trouver des offres d'emploi",
            "description": "Donnez un nouvel \u00e9lan \u00e0 votre recherche d\u2019emploi avec Collective Job Search. D\u00e9couvrez et comparez des missions et des postes en CDI \u00e0 partir de vos comp\u00e9tences, de votre exp\u00e9rience et de vos pr\u00e9f\u00e9rences, directement dans ChatGPT.\n\nAffinez votre recherche sur Collective par poste, lieu, t\u00e9l\u00e9travail, type de contrat et r\u00e9mun\u00e9ration. Explorez les informations disponibles sur les entreprises, comparez les opportunit\u00e9s avec votre profil talent connect\u00e9 et consultez les annonces qui vous int\u00e9ressent."
          }
        }
      },
      "apps": "./.app.json"
    }
  }
}

SHA-256: 0e7d876b4cc3d7576f783eb086c8dd6cc152bb7f51d20783c515c1c7495b27ba