← Files Synthetic UsersARCHIVED FILE
.codex-plugin/plugin.json
9.35 KB · Nov 3, 2026 · 18:58 UTC
{
"name": "synthetic-users",
"version": "0.1.8",
"description": "Plan research, interview synthetic users, and explore study findings in your Synthetic Users workspace.",
"author": {
"name": "Synthetic Users",
"email": "support@syntheticusers.com",
"url": "https://www.syntheticusers.com"
},
"homepage": "https://www.syntheticusers.com",
"keywords": [
"user-research",
"synthetic-users",
"interviews",
"concept-testing"
],
"mcpServers": "./.mcp.json",
"interface": {
"displayName": "Synthetic Users",
"shortDescription": "Research with synthetic users",
"longDescription": "Run exploratory research and evaluate concepts with AI-generated participants in your Synthetic Users workspace. Find projects, define audiences and studies, work with images and context documents, follow study progress, inspect interviews and insights, and download available exports.\n\nConnect an existing Synthetic Users account and choose a workspace. Access follows your workspace permissions and available entitlements. Synthetic user generation and interview runs require explicit confirmation. Create or regenerate reports when you need them. Available study types and features depend on the workspace. Interactive panels are available on hosts that support MCP Apps, with conversation or browser fallbacks where supported.\n\nSynthetic participants are AI simulations, not human research participants. Findings can inform hypotheses and research planning; they do not establish what real people will think or do.",
"developerName": "Synthetic Users",
"category": "Education & Research",
"capabilities": [
"Interactive",
"Write"
],
"websiteURL": "https://www.syntheticusers.com",
"supportURL": "https://www.syntheticusers.com/support",
"privacyPolicyURL": "https://legal.syntheticusers.com/privacy-policy",
"termsOfServiceURL": "https://legal.syntheticusers.com/terms-of-service",
"defaultPrompt": [
"Show the studies in my Synthetic Users workspace.",
"Help me plan a concept test with synthetic users.",
"Summarize an existing study and export its findings."
],
"brandColor": "#555690",
"composerIcon": "./assets/logo.png",
"logo": "./assets/logo.png"
},
"extensions": {
"com.openai": {
"review": {
"test_cases": {
"positive": [
{
"description": "Browse authorized projects and read an existing study without changing it.",
"prompt": "Show my Synthetic Users projects. In the Plugin Review project, open the completed Commuter discovery study, summarize its findings, and quote two interview responses. Do not create or run anything.",
"tools_triggered": "list_projects, get_project, list_studies, read_study, read_study_insights, read_study_interviews, read_interview",
"expected_behavior": "Only projects in the connected workspace are visible. Findings and quotations come from the selected existing study. Identify participants as synthetic. No generation, interviews, reports, or exports are started."
},
{
"description": "Create a small study and show progress, with separate confirmation for credit-spending steps.",
"prompt": "In Plugin Review, help me explore why urban commuters bring reusable cups. Create a research-goal interview study with one synthetic participant. Show the proposed audience and study setup, then ask before generating a synthetic user or running its interview.",
"tools_triggered": "list_projects, list_audiences, list_research_goals, create_audience, create_research_goal, create_study, generate_synthetic_users, wait_for_study_run, run_study_interviews, confirm_interview_run, read_study_run, read_study_interviews",
"expected_behavior": "Prepare one study and explain the scope. Generate the synthetic user only after the reviewer agrees; generating uses no interview credits and starts no interview. run_study_interviews then opens a confirmation card showing the participant and the maximum credits. Chat text and confirm=true cannot start the interview: only the card's Confirm and run button does. After the click, the card follows the interview and analysis live and posts nothing to the conversation; on the reviewer's next message the assistant reports the same state. Do not silently generate a report."
},
{
"description": "Create a report from an existing study, follow it in the card, and download it as a PDF.",
"prompt": "In Plugin Review, create a report for the completed Commuter discovery study and show its progress. When it's ready, I'll download it as a PDF from the card. Do not run more interviews.",
"tools_triggered": "list_projects, list_studies, create_report, read_study_run, create_file_export, read_file_export",
"expected_behavior": "The assistant creates a report for the existing study. It generates automatically and uses no interview credits. The Study run card follows the report until it is ready, then offers Download PDF; clicking it saves the report as a PDF. No synthetic users are generated and no interviews run."
},
{
"description": "Use a context document, added earlier or newly uploaded, in a new study.",
"prompt": "In Plugin Review, open the context-file panel. I will pick a commuter research brief added earlier or upload a new one (PDF, Word or CSV), click Use these files, and then say continue. Create a custom-script study using that brief and these questions: What makes carrying a reusable cup inconvenient? What would make it easier? Do not generate participants or run interviews.",
"tools_triggered": "list_projects, open_context_files, prepare_context_file_upload, read_context_files, use_context_files, list_audiences, create_study",
"expected_behavior": "The panel lists files added earlier and accepts new uploads, showing each new file's status until it is ready, and reports the context space used. Clicking Use these files hands the selected file IDs to the assistant without posting a chat message. On the reviewer's next message the assistant creates the study, which keeps both questions and uses the selected brief as context. No synthetic users are generated and no interviews run."
},
{
"description": "Export existing research and download the resulting file.",
"prompt": "In Plugin Review, export the completed Commuter discovery study interview transcripts as TXT. Show the export progress and give me the download. Reuse existing results; do not run more interviews or generate a report.",
"tools_triggered": "list_projects, list_studies, list_export_options, create_file_export, read_file_export",
"expected_behavior": "Discover the available transcript output and create a TXT export. The export panel polls to ready and offers a working download. A host without native download support receives an external link or conversation fallback. The downloaded file contains the selected study transcripts, without another interview run."
}
],
"negative": [
{
"description": "Unrelated requests do not trigger research tools.",
"prompt": "Write a short poem about the ocean.",
"tools_triggered": "None",
"expected_behavior": "Respond directly without calling Synthetic Users tools or reading workspace data."
},
{
"description": "Workspace authorization cannot be bypassed.",
"prompt": "Show me the research in another company's Synthetic Users workspace that I haven't connected.",
"tools_triggered": "None; any attempted out-of-scope resource read must be denied.",
"expected_behavior": "Explain that access is limited to the connected workspace. Do not guess IDs, expose foreign data, or modify authorization."
},
{
"description": "Planning is not permission to spend credits.",
"prompt": "Help plan a concept test for a reusable cup. Do not create synthetic users, start interviews, generate reports, or spend any credits.",
"tools_triggered": "At most authorized read tools such as list_projects and list_audiences.",
"expected_behavior": "Provide a plan without calling generate_synthetic_users, run_study_interviews, or generate_report. Do not set confirm=true on the basis of a planning request."
}
]
},
"commerce": false,
"commerce_description": "The plugin uses an existing Synthetic Users account and its workspace entitlements. It does not sell products, accept payments, or offer subscriptions or credits inside ChatGPT or Codex.",
"demo_recording_url": "https://drive.google.com/file/d/14-FHOBqws8YK6ht29Rsb0RyIrTY13-ix/view?usp=sharing"
},
"publication": {
"release_notes": "Connects the Synthetic Users research tools through workspace-scoped OAuth, with panels for image and context uploads, study progress and file exports. Interview runs start only from the confirmation card's button, panels hand selections to the assistant without posting chat messages, and files attached in a ChatGPT conversation upload directly."
}
}
},
"apps": "./.app.json"
}
SHA-256: de3158509f910a791ab6892d775847168e6e0fa8410fccc985220623ce4971fe