Free and open source. MIT licensed. No account required.

OpenAI is shutting down Evals and stored prompts on 2026-11-30. Get your work out first.

This tool turns an OpenAI Evals export into a promptfoo project for each eval (config, tests, graders, and a migration report), and turns stored prompt objects into plain TypeScript and Python functions.

Privacy: the converter runs fully in your browser. Your files are never uploaded. The converter page is built with a Content-Security-Policy of connect-src 'none', so the browser itself blocks network requests from that page.

Try it View on GitHub

Shutdown dates: OpenAI deprecations page (re-checked 2026-11-10). Check it yourself; dates can change. This project is not affiliated with OpenAI or promptfoo.

What it does

It does not call a model, compute scores, or migrate Agent Builder workflows. Manual graders are written as failing placeholders on purpose, so a result can never look green because a grader was skipped.

Get notified

No account with us is required. The waitlist is GitHub-native, so nothing is collected here.

  1. Watch releases. On the repo, click Watch → Custom → check Releases → Apply. GitHub will email you when a new version is published (for example, Agent Builder support).
    Open the Watch settings
  2. Pin yourself to the Agent Builder thread. Subscribe to the pinned Discussion “Notify me about Agent Builder support” (this tool does not convert Agent Builder workflows yet).
    Open Discussions

Optional email form — not enabled

This section is a placeholder. No email is collected and the form is not wired to any service. To get updates today, use Watch → Releases or the Discussion above.

Maintainers: to enable a free-tier form later, create an account at Formspree, Tally, or Buttondown (that account requires explicit approval — see APPROVALS.md), paste the form endpoint in the action below, un-hide the form, and loosen only this landing page’s form-action CSP to that provider. Do not change the converter page’s CSP (convert.html must stay connect-src 'none' and form-action 'none'). Require a consent checkbox. Collect nothing without consent.