Improved support for running multiple Workers with `wrangler dev`
You can run multiple Workers in a single dev command by passing multiple config files to wrangler dev
:
wrangler dev --config ./web/wrangler.jsonc --config ./api/wrangler.jsonc
Previously, if you ran the command above and then also ran wrangler dev for a different Worker, the Workers running in separate wrangler dev sessions could not communicate with each other. This prevented you from being able to use Service Bindings ↗ and Tail Workers ↗ in local development, when running separate wrangler dev sessions.
Now, the following works as expected:
# Terminal 1: Run your application that includes both Web and API workerswrangler dev --config ./web/wrangler.jsonc --config ./api/wrangler.jsonc
# Terminal 2: Run your auth worker separatelywrangler dev --config ./auth/wrangler.jsonc
These Workers can now communicate with each other across separate dev commands, regardless of your development setup.
export default { async fetch(request, env) { // This service binding call now works across dev commands const authorized = await env.AUTH.isAuthorized(request);
if (!authorized) { return new Response('Unauthorized', { status: 401 }); }
return new Response('Hello from API Worker!', { status: 200 }); },};
Check out the Developing with multiple Workers guide to learn more about the different approaches and when to use each one.
Was this helpful?
- Resources
- API
- New to Cloudflare?
- Directory
- Sponsorships
- Open Source
- Support
- Help Center
- System Status
- Compliance
- GDPR
- Company
- cloudflare.com
- Our team
- Careers
- © 2025 Cloudflare, Inc.
- Privacy Policy
- Terms of Use
- Report Security Issues
- Trademark