Skip to content

Commit 857fc4c

Browse files
feat: add Dev Proxy v2.3 release notes with improvements in detached mode and multi-instance support
1 parent ef838bb commit 857fc4c

File tree

2 files changed

+118
-0
lines changed

2 files changed

+118
-0
lines changed

public/blog/images/v2-3-0.png

477 KB
Loading
Lines changed: 118 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,118 @@
1+
---
2+
title: "Dev Proxy v2.3 with improved detached mode and multi-instance support"
3+
description: "We're excited to announce the release of Dev Proxy v2.3. This release brings significant improvements to detached mode, including proper JSON output, multi-instance support, and proxy URL visibility."
4+
date: 2026-03-26
5+
author: "Waldek Mastykarz, Garry Trinder"
6+
tags: ["release"]
7+
image: "/blog/images/v2-3-0.png"
8+
---
9+
10+
We're excited to announce the release of **Dev Proxy v2.3.0!** This release is all about making Dev Proxy work better with AI agents, automation, and CI/CD pipelines. Whether you're using agents to test your APIs and improve your app's quality, running parallel test suites, or integrating Dev Proxy into your build scripts, v2.3.0 has you covered. We've improved detached mode with proper JSON output that agents and scripts can parse, added support for running multiple instances side by side, and made it easier to discover the proxy URL when starting Dev Proxy in the background.
11+
12+
### **In this version:**
13+
14+
- **Proper JSON output** in detached mode with `--output json`
15+
- **Multi-instance support** when running without system proxy
16+
- **Proxy URL visibility** when starting Dev Proxy in detached mode
17+
18+
### **Proper JSON output in detached mode**
19+
20+
If you're building an AI agent or automation around Dev Proxy, you've likely used `--output json` to get machine-readable output. But when running in detached mode (`--detach`), Dev Proxy would still return plain text - even with `--output json` specified. Not great when your agent or script expects JSON.
21+
22+
This happened because the detached startup code wrote directly to the console before the logging infrastructure was initialized, completely bypassing the JSON formatter.
23+
24+
**What changed:**
25+
26+
Dev Proxy now properly detects `--output json` during detached startup and emits consistent JSONL output:
27+
28+
```json
29+
{"type":"result","data":{"pid":6456,"apiUrl":"http://127.0.0.1:8897","logFile":"/path/to/logs/devproxy-6456-2026-03-05.log"},"timestamp":"2026-03-05T14:22:42.0000000Z"}
30+
```
31+
32+
Error messages also use structured JSONL on stderr:
33+
34+
```json
35+
{"type":"log","level":"error","message":"Dev Proxy is already running (PID: 6456). Use 'devproxy stop' to stop it first.","timestamp":"2026-03-05T14:22:42.0000000Z"}
36+
```
37+
38+
**Why this matters:** AI agents need structured data to make decisions. If your agent starts Dev Proxy, it can now reliably parse the startup output to extract the PID and API URL. Same goes for CI/CD pipelines and build scripts - no more special-casing the startup phase in your automation.
39+
40+
### **Multi-instance support**
41+
42+
Previously, Dev Proxy blocked starting a second instance - even when neither instance was registered as the system proxy. This made it impossible to have an AI agent spin up dedicated proxy instances per task, or run parallel test suites, each with their own Dev Proxy instance pointing at different API configurations.
43+
44+
**What changed:**
45+
46+
When `asSystemProxy` is `false`, Dev Proxy now allows multiple instances to run simultaneously. Each instance gets its own state file, so they don't interfere with each other.
47+
48+
To help you manage multiple instances, we've also added a `--pid` option to the `logs`, `status`, and `stop` commands:
49+
50+
```bash
51+
# Start two instances on different ports
52+
devproxy --detach --as-system-proxy false --port 8080
53+
devproxy --detach --as-system-proxy false --port 9090
54+
55+
# Check status of all running instances
56+
devproxy status
57+
58+
# Stop a specific instance
59+
devproxy stop --pid 1234
60+
61+
# Stop all instances
62+
devproxy stop
63+
```
64+
65+
**Why this matters:** Building an agent that tests multiple API scenarios simultaneously? Running parallel test suites? Need different API configurations for different microservices? You can now spin up as many Dev Proxy instances as you need, each with its own configuration, and manage them independently.
66+
67+
### **Proxy URL in detached mode output**
68+
69+
When starting Dev Proxy in detached mode, especially with `--port 0` for OS-assigned ports, there was no way to know which port the proxy was actually listening on without checking the state file.
70+
71+
**What changed:**
72+
73+
The detached mode startup output now includes the proxy URL with the actual resolved port:
74+
75+
```
76+
Dev Proxy started in background.
77+
78+
PID: 4588
79+
Proxy URL: http://127.0.0.1:63860
80+
API URL: http://127.0.0.1:64123
81+
Log file: /path/to/logs/devproxy-4588-2026-03-11.log
82+
```
83+
84+
This also works with `--output json`, where the proxy URL is included in the JSONL result.
85+
86+
**Why this matters:** When an agent or script starts Dev Proxy with dynamic port assignment, it can now immediately discover the proxy address from the startup output - no need to poll the state file or guess the port.
87+
88+
## Dev Proxy Aspire extensions
89+
90+
If you're using Dev Proxy with .NET Aspire, we've got good news. Community contributor [Meir Blachman](https://github.com/Meir017) upgraded the [Dev Proxy Aspire extensions](https://github.com/dev-proxy-tools/aspire) to Aspire 13.2.0 and added .NET 10 support. The previous version relied on Aspire 9, which is now out of support.
91+
92+
The updated extensions are available as v0.3.0 on NuGet. If you're using Dev Proxy in your Aspire projects, update your packages to get on the supported version of Aspire.
93+
94+
Thanks, Meir! 🙏
95+
96+
## Dev Proxy Toolkit
97+
98+
[Dev Proxy Toolkit](https://marketplace.visualstudio.com/items?itemName=garrytrinder.dev-proxy-toolkit) is an extension that makes it easier to work with Dev Proxy from within Visual Studio Code. Alongside the new release of Dev Proxy, we've also released a new version of the toolkit, v1.16.0.
99+
100+
In this version, we've:
101+
102+
- Updated the extension icon to the new purple design
103+
- Updated all JSON snippets to use v2.3.0 schemas
104+
105+
Checkout out the [changelog](https://marketplace.visualstudio.com/items/garrytrinder.dev-proxy-toolkit/changelog) for more information on changes and bug fixes.
106+
107+
### **Why upgrade to v2.3.0?**
108+
109+
**Agent-ready** - Structured JSONL output that AI agents can parse and act on
110+
**Parallel instances** - Agents and scripts can spin up multiple Dev Proxy instances side by side
111+
**Better discoverability** - See the actual proxy URL immediately on startup
112+
**Streamlined CI/CD** - Reliable automation from agents to build pipelines
113+
114+
### **Try it now**
115+
116+
Download **Dev Proxy v2.3.0** today and build better API-connected applications with confidence!
117+
118+
Got feedback or ideas? [Join us](https://github.com/dotnet/dev-proxy/discussions) and be part of the conversation.

0 commit comments

Comments
 (0)