Skip to content
Skills Library
Programming · Automation

upgrade-devproxy-sample

/upgrade-devproxy-sample

This skill should be used when the user asks to "upgrade a sample", "update to new Dev Proxy version", "bump the version", "update schemas", or needs to upgrade existing Dev Proxy samples to a new version with updated schemas and documentation.

Author
pnp ↗
Licence
MIT
Last repository change
03.10.2026

Assessment and security

100/ 100Class: good
Format25 / 25
Frontmatter with name and description, valid name, description up to 1,024 characters, name matching the folder.
Discoverability25 / 25
Description explains when to use the skill, has a reasonable length and uses third person.
Content35 / 35
At least 150 words and at most 500 lines, headings, step lists, examples or code.
Hygiene15 / 15
No placeholders such as TODO, no Windows paths, with a licence.
Riskno signals detected in the scan
Files in this package
1
Scripts
0
HTML comments
0
URLs in SKILL.md
5
Deprecation

No signals detected. Repository changed on 03.10.2026, without references to retired models or APIs.

Licence

MIT, open: use and modify while retaining author attribution.

What it does and when to use it

This skill should be used when the user asks to "upgrade a sample", "update to new Dev Proxy version", "bump the version", "update schemas", or needs to upgrade existing Dev Proxy samples to a new version with updated schemas and documentation.

Triggers from the description

upgrade a sampleupdate to new Dev Proxy versionbump the versionupdate schemas
Original author description

This skill should be used when the user asks to "upgrade a sample", "update to new Dev Proxy version", "bump the version", "update schemas", or needs to upgrade existing Dev Proxy samples to a new version with updated schemas and documentation.

How it works

  1. Before Starting
  2. Files to Update
  3. Step 1: Update Configuration Files
  4. Step 2: Update Metadata (assets/sample.json)
  5. Step 3: Update README.md
  6. Step 4: Validate Changes
  7. Batch Upgrade Multiple Samples
  8. Checklist
  9. Quick Reference
Original SKILL.md headings · 177 lines, 567 words
SKILL.md preview
---
name: upgrade-devproxy-sample
description: This skill should be used when the user asks to "upgrade a sample", "update to new Dev Proxy version", "bump the version", "update schemas", or needs to upgrade existing Dev Proxy samples to a new version with updated schemas and documentation.
---

# Upgrade Dev Proxy Sample

This skill guides upgrading existing Dev Proxy samples to a new version, ensuring all schemas, metadata, and documentation are properly updated.

## Before Starting

Use Dev Proxy MCP tools to:
- Get the current/target schema version
- Check for any breaking changes in schemas
- Understand new requirements

## Files to Update

Every upgrade must update these locations:

1. **All config JSON files** - Schema URLs
2. **assets/sample.json** - `PROXY VERSION` and `updateDateTime`
3. **README.md** - Badge and version history table

## Step 1: Update Configuration Files

### Find All Config Files

Dev Proxy config files are in `.devproxy/` folder:
```bash
grep -r "dev-proxy/main/schemas" samples/{sample-name}/.devproxy/ --include="*.json"
```

### Update Schema URLs

Change version in `$schema` URLs:

**Before:**
```json
{
  "$schema": "https://raw.githubusercontent.com/dotnet/dev-proxy/main/schemas/v1.0.0/rc.schema.json"
}
```

**After:**
```json
{
  "$schema": "https://raw.githubusercontent.com/dotnet/dev-proxy/main/schemas/v2.0.0/rc.schema.json"
}
```

### Schema Types to Update

Different files use different schemas:
- `devproxyrc.json` → `rc.schema.json`
- Mock response files → `mockresponseplugin.mocksfile.schema.json`
- Error files → `genericrandomerrorplugin.errorsfile.schema.json`
- Plugin configs → `{pluginname}.schema.json`

**Important**: Match schema type to file purpose:
- `.schema.json` = plugin configuration (has `mocksFile`, `errorsFile` properties)
- `.mocksfile.schema.json` = actual mock data (has `mocks` array)
- `.errorsfile.schema.json` = actual error data (has `errors` array)

### Don't Forget Plugin Config Sections

Dev Proxy configs often have **embedded plugin config sections** with their own `$schema`:

```json
{
  "$schema": ".../rc.schema.json",
  "plugins": [...],
  "languageModelFailurePlugin": {
    "$schema": ".../languagemodelfailureplugin.schema.json",  // ← Update this too!
    "failures": [...]
  }
}
```

Update ALL `$schema` URLs in the file, not just the top-level one.

## Step 2: Update Metadata (assets/sample.json)

Update two fields:

```json
{
  "metadata": [
    { "key": "PROXY VERSION", "value": "v2.0.0" }
  ],
  "updateDateTime": "2026-01-18"
}
```

**Rules:**
- Date format: `YYYY-MM-DD` (not ISO timestamp)
- Preserve all other formatting (use sed for surgical changes)
- For pre-release samples (not yet merged), also update `creationDateTime`

## Step 3: Update README.md

### Update Compatibility Badge

**Before:**
```markdown
![Dev Proxy v1.0.0](https://aka.ms/devproxy/badge/v1.0.0)
```

**After:**
```markdown
![Dev Proxy v2.0.0](https://aka.ms/devproxy/badge/v2.0.0)
```

### Update Version History Table

**For samples already in main** (add new version):
```markdown
Version|Date|Comments
-------|----|--------
1.1|January 18, 2026|Updated to Dev Proxy v2.0.0
1.0|December 15, 2025|Initial release
```

**For pre-release samples** (update v1.0 date):
```markdown
Version|Date|Comments
-------|----|--------
1.0|January 18, 2026|Initial release
```

## Step 4: Validate Changes

Use the **validate-devproxy-sample** skill to verify:
- All `$schema` URLs are valid
- Plugin config sections have schemas
- No schema validation errors
- Dates are consistent

## Batch Upgrade Multiple Samples

To upgrade all samples to a new version:

```bash
# Find all files with old schema version (in .devproxy folders)
grep -rl "schemas/v1.0.0" samples/*/.devproxy/ --include="*.json"

# Update schemas (example with sed)
find samples/*/.devproxy -name "*.json" -exec grep -l "schemas/v1.0.0" {} \; | \
  xargs sed -i '' 's|schemas/v1.0.0|schemas/v2.0.0|g'
```

Then manually update each sample's:
- `assets/sample.json` dates and version
- `README.md` badge and version history

## Checklist

For each sample being upgraded:

- [ ] All `$schema` URLs updated (including plugin config sections)
- [ ] `PROXY VERSION` updated in `assets/sample.json`
- [ ] `updateDateTime` updated (YYYY-MM-DD format)
- [ ] README badge updated
- [ ] Version history entry added/updated
- [ ] Run **validate-devproxy-sample** skill to verify

## Quick Reference

### Schema URL Pattern
```
https://raw.githubusercontent.com/dotnet/dev-proxy/main/schemas/{version}/{schema-file}
```

### Common Schema Files
| File Type | Schema |
|-----------|--------|
| Main config | `rc.schema.json` |
| Mock responses | `mockresponseplugin.mocksfile.schema.json` |
| Random errors | `genericrandomerrorplugin.errorsfile.schema.json` |
| Rate limiting | `ratelimitingplugin.schema.json` |

Versions

The database has no other skills named upgrade-devproxy-sample.

Database snapshot: 13.11.2026 · package version c75aa949d31a (SHA-256 digest of the entire package)

Downloads in the last 30 days: 0 · ranking

Report a problem with this skill: harmful content, incorrect descriptions or an author’s removal request.

Similar skills

  • 100create-devproxy-sample
    This skill should be used when the user asks to "create a sample", "add a new sample", "make a Dev Proxy sample", "start a new sample", "scaffold a sample", or needs to create a new Dev Proxy sample with proper structure, config files, metadata, and README.
  • 100validate-devproxy-sample
    This skill should be used when the user asks to "validate a sample", "check my sample", "review before submitting", "verify sample structure", or needs to validate a Dev Proxy sample for correctness before submission.
  • 100dependency-upgrade
    Upgrade a dependency, framework or runtime to a new version, especially a major one (React, Next.js, Django, Rails, Node, Python, a library with breaking changes). Use when the user says "upgrade X", "bump to v5", "fix this deprecation", or a security advisory requires a newer version.
  • 95vendor-update
    Upgrade Go/Node.js vendor dependencies and sync tool versions. Use whenever the user says "upgrade dependencies", "update vendors", "vendor update", "run vendor-upgrade", "bump dependencies", "update packages", or asks to run the `vendor-update` Make target. This skill also…
  • 100sample-review
    Review existing code samples for correctness, runnability, and developer experience. Use when asked to "review these code samples", "do our examples actually run", or "assess sample quality".
  • 100dependency-upgrade
    Upgrade a Python or JS dependency safely. Given a library name, finds the latest safe version, reviews the changelog, assesses impact based on how the library is used in the repo, performs the upgrade, and creates a PR with the changelog and assessment. Use this whenever someone…

Feedback and reports

Your message goes to Bartosz Sokoliński. An email address is needed only for a reply. See the privacy policy.