{"id":30029118,"url":"https://github.com/dev-proxy-tools/toolkit","last_synced_at":"2026-01-29T12:01:55.369Z","repository":{"id":216947218,"uuid":"742570852","full_name":"dev-proxy-tools/toolkit","owner":"dev-proxy-tools","description":"Dev Proxy Toolkit extension for Visual Studio Code","archived":false,"fork":false,"pushed_at":"2026-01-20T12:03:09.000Z","size":704,"stargazers_count":11,"open_issues_count":10,"forks_count":3,"subscribers_count":1,"default_branch":"main","last_synced_at":"2026-01-20T19:17:11.216Z","etag":null,"topics":["dev-proxy","open-api"],"latest_commit_sha":null,"homepage":"https://aka.ms/devproxy","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/dev-proxy-tools.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":"AGENTS.md","dco":null,"cla":null}},"created_at":"2024-01-12T19:19:42.000Z","updated_at":"2026-01-20T11:13:52.000Z","dependencies_parsed_at":"2024-04-23T16:46:07.293Z","dependency_job_id":"ebd7e6fe-0547-4ee1-a475-cf537fa5399f","html_url":"https://github.com/dev-proxy-tools/toolkit","commit_stats":{"total_commits":118,"total_committers":2,"mean_commits":59.0,"dds":"0.016949152542372836","last_synced_commit":"1a5e2322e487b5a8720522a38238cd9653d16c5a"},"previous_names":["garrytrinder/dev-proxy-vsc-ext","garrytrinder/dev-proxy-toolkit","dev-proxy-tools/toolkit"],"tags_count":85,"template":false,"template_full_name":null,"purl":"pkg:github/dev-proxy-tools/toolkit","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dev-proxy-tools%2Ftoolkit","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dev-proxy-tools%2Ftoolkit/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dev-proxy-tools%2Ftoolkit/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dev-proxy-tools%2Ftoolkit/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/dev-proxy-tools","download_url":"https://codeload.github.com/dev-proxy-tools/toolkit/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dev-proxy-tools%2Ftoolkit/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28877042,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-29T10:31:27.438Z","status":"ssl_error","status_checked_at":"2026-01-29T10:31:01.017Z","response_time":59,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.6:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["dev-proxy","open-api"],"created_at":"2025-08-06T17:01:46.530Z","updated_at":"2026-01-29T12:01:55.363Z","avatar_url":"https://github.com/dev-proxy-tools.png","language":"TypeScript","readme":"# Dev Proxy Toolkit\n\n\u003c!-- Update version badges when releasing: Stable = last published release, Pre-release = current manifest version --\u003e\n[![Stable Version](https://img.shields.io/badge/Stable-v1.10.0-007ACC)](https://marketplace.visualstudio.com/items?itemName=garrytrinder.dev-proxy-toolkit) [![Pre-release Version](https://img.shields.io/badge/Pre--release-v1.11.0-24bfa5)](https://marketplace.visualstudio.com/items?itemName=garrytrinder.dev-proxy-toolkit) [![Visual Studio Marketplace Installs](https://img.shields.io/visual-studio-marketplace/i/garrytrinder.dev-proxy-toolkit?label=Installs)](https://marketplace.visualstudio.com/items?itemName=garrytrinder.dev-proxy-toolkit)\n\n[![Install Stable](https://img.shields.io/badge/VS%20Code-Install_Stable-007ACC?logo=visualstudiocode)](vscode:extension/garrytrinder.dev-proxy-toolkit) [![Install Pre-release](https://img.shields.io/badge/VS%20Code%20Insiders-Install_Pre--release-24bfa5?logo=visualstudiocode)](vscode-insiders:extension/garrytrinder.dev-proxy-toolkit)\n\nSupercharge your [Dev Proxy](https://aka.ms/devproxy) workflow with IntelliSense, diagnostics, and one-click commands.\n\n\u003c!-- TODO: Add hero GIF showing extension in action --\u003e\n\n## Quick Start\n\n1. **Install this extension** - [Install from VS Code](vscode:extension/garrytrinder.dev-proxy-toolkit). You'll be prompted to install Dev Proxy if it's not already installed.\n2. **Create a config** - Run `Dev Proxy Toolkit: Create configuration file` from the Command Palette\n3. **Configure your proxy** - Add URLs to watch and plugins using snippets (type `devproxy-`) or let [GitHub Copilot help](#mcp-server)\n4. **Start Dev Proxy** - Run `Dev Proxy Toolkit: Start` from the Command Palette\n\n## Features\n\n### Commands\n\nControl Dev Proxy directly from VS Code via the Command Palette (`Cmd+Shift+P` / `Ctrl+Shift+P`).\n\n| Command | When Available |\n|---------|----------------|\n| Start | Dev Proxy not running |\n| Stop | Dev Proxy running |\n| Restart | Dev Proxy running |\n| Raise mock request | Dev Proxy running |\n| Start recording | Dev Proxy running |\n| Stop recording | Dev Proxy recording |\n| Open configuration file | Dev Proxy installed |\n| Create configuration file | Dev Proxy installed |\n| Discover URLs to watch | Dev Proxy not running |\n| Generate JWT | Dev Proxy installed |\n\n### Snippets\n\nType `devproxy-` to access 80+ snippets:\n\n- **JSON** - Config files, plugins, mocks, and more\n- **YAML** - GitHub Actions workflow steps\n\n\u003cdetails\u003e\n\u003csummary\u003e\u003cstrong\u003eJSON Snippets\u003c/strong\u003e (click to expand)\u003c/summary\u003e\n\n| Prefix | Description |\n| ------ | ----------- |\n| `devproxy-config-file` | Dev Proxy config file |\n| `devproxy-config-file-schema` | Dev Proxy config file schema |\n| `devproxy-error` | Dev Proxy error |\n| `devproxy-mocks-file` | Dev Proxy mocks file |\n| `devproxy-mocks-file-schema` | Dev Proxy mocks file schema |\n| `devproxy-mock` | Dev Proxy mock |\n| `devproxy-prices-file` | Dev Proxy prices file |\n| `devproxy-price` | Dev Proxy price |\n| `devproxy-request` | Dev Proxy request |\n| `devproxy-response` | Dev Proxy response |\n| `devproxy-response-header` | Dev Proxy response header |\n| `devproxy-rewrite` | Dev Proxy rewrite |\n| `devproxy-plugin-auth` | AuthPlugin instance |\n| `devproxy-plugin-auth-config-apikey` | AuthPlugin API Key config section |\n| `devproxy-plugin-auth-config-oauth2` | AuthPlugin OAuth2 config section |\n| `devproxy-plugin-api-center-minimal-permissions` | ApiCenterMinimalPermissionsPlugin instance |\n| `devproxy-plugin-api-center-minimal-permissions-config` | ApiCenterMinimalPermissionsPlugin config section |\n| `devproxy-plugin-api-center-onboarding` | ApiCenterOnboardingPlugin instance |\n| `devproxy-plugin-api-center-onboarding-config` | ApiCenterOnboardingPlugin config section |\n| `devproxy-plugin-api-center-production-version` | ApiCenterProductionVersionPlugin instance |\n| `devproxy-plugin-api-center-production-version-config` | ApiCenterProductionVersionPlugin config section |\n| `devproxy-plugin-caching-guidance` | CachingGuidancePlugin instance |\n| `devproxy-plugin-caching-guidance-config` | CachingGuidancePlugin config section |\n| `devproxy-plugin-crud-api` | CrudApiPlugin instance |\n| `devproxy-plugin-crud-api-config` | CrudApiPlugin config section |\n| `devproxy-plugin-crud-api-file` | CrudApiPlugin API file |\n| `devproxy-plugin-crud-api-file-schema` | CrudApiPlugin API file schema |\n| `devproxy-plugin-crud-api-action` | CrudApiPlugin action |\n| `devproxy-plugin-dev-tools` | DevToolsPlugin instance |\n| `devproxy-plugin-dev-tools-config` | DevToolsPlugin config section |\n| `devproxy-plugin-entra-mock-response` | EntraMockResponsePlugin instance |\n| `devproxy-plugin-entra-mock-response-config` | EntraMockResponsePlugin config section |\n| `devproxy-plugin-execution-summary` | ExecutionSummaryPlugin instance |\n| `devproxy-plugin-execution-summary-config` | ExecutionSummaryPlugin config section |\n| `devproxy-plugin-generic-random-error` | GenericRandomErrorPlugin instance |\n| `devproxy-plugin-generic-random-error-config` | GenericRandomErrorPlugin config section |\n| `devproxy-plugin-generic-random-error-file` | GenericRandomErrorPlugin errors file |\n| `devproxy-plugin-generic-random-error-file-schema` | GenericRandomErrorPlugin errors file schema |\n| `devproxy-plugin-graph-beta-support-guidance` | GraphBetaSupportGuidancePlugin instance |\n| `devproxy-plugin-graph-client-request-id-guidance` | GraphClientRequestIdGuidancePlugin instance |\n| `devproxy-plugin-graph-connector-guidance` | GraphConnectorGuidancePlugin instance |\n| `devproxy-plugin-graph-minimal-permissions-guidance` | GraphMinimalPermissionsGuidancePlugin instance |\n| `devproxy-plugin-graph-minimal-permissions-guidance-config` | GraphMinimalPermissionsGuidancePlugin config section |\n| `devproxy-plugin-graph-minimal-permissions` | GraphMinimalPermissionsPlugin instance |\n| `devproxy-plugin-graph-minimal-permissions-config` | GraphMinimalPermissionsPlugin config section |\n| `devproxy-plugin-graph-mock-response` | GraphMockResponsePlugin instance |\n| `devproxy-plugin-graph-mock-response-config` | GraphMockResponsePlugin config section |\n| `devproxy-plugin-graph-random-error` | GraphRandomErrorPlugin instance |\n| `devproxy-plugin-graph-random-error-config` | GraphRandomErrorPlugin config section |\n| `devproxy-plugin-graph-sdk-guidance` | GraphSdkGuidancePlugin instance |\n| `devproxy-plugin-graph-select-guidance` | GraphSelectGuidancePlugin instance |\n| `devproxy-plugin-har-generator` | HarGeneratorPlugin instance |\n| `devproxy-plugin-har-generator-config` | HarGeneratorPlugin config section |\n| `devproxy-plugin-http-file-generator` | HttpFileGeneratorPlugin instance |\n| `devproxy-plugin-http-file-generator-config` | HttpFileGeneratorPlugin config section |\n| `devproxy-plugin-latency` | LatencyPlugin instance |\n| `devproxy-plugin-latency-config` | LatencyPlugin config section |\n| `devproxy-plugin-language-model-failure` | LanguageModelFailurePlugin instance |\n| `devproxy-plugin-language-model-failure-config` | LanguageModelFailurePlugin config section |\n| `devproxy-plugin-language-model-rate-limiting` | LanguageModelRateLimitingPlugin instance |\n| `devproxy-plugin-language-model-rate-limiting-config` | LanguageModelRateLimitingPlugin config section |\n| `devproxy-plugin-minimal-csom-permissions` | MinimalCsomPermissionsPlugin instance |\n| `devproxy-plugin-minimal-csom-permissions-config` | MinimalCsomPermissionsPlugin config section |\n| `devproxy-plugin-minimal-permissions` | MinimalPermissionsPlugin instance |\n| `devproxy-plugin-minimal-permissions-config` | MinimalPermissionsPlugin config section |\n| `devproxy-plugin-minimal-permissions-guidance` | MinimalPermissionsGuidancePlugin instance |\n| `devproxy-plugin-minimal-permissions-guidance-config` | MinimalPermissionsGuidancePlugin config section |\n| `devproxy-plugin-mock-generator` | MockGeneratorPlugin instance |\n| `devproxy-plugin-mock-request` | MockRequestPlugin instance |\n| `devproxy-plugin-mock-request-config` | MockRequestPlugin config section |\n| `devproxy-plugin-mock-response` | MockResponsePlugin instance |\n| `devproxy-plugin-mock-response-config` | MockResponsePlugin config section |\n| `devproxy-plugin-mock-response-schema` | MockResponsePlugin schema |\n| `devproxy-plugin-mock-stdio-response` | MockStdioResponsePlugin instance |\n| `devproxy-plugin-mock-stdio-response-config` | MockStdioResponsePlugin config section |\n| `devproxy-plugin-mock-stdio-response-file` | MockStdioResponsePlugin mocks file |\n| `devproxy-plugin-mock-stdio-response-file-schema` | MockStdioResponsePlugin mocks file schema |\n| `devproxy-plugin-odata-paging-guidance` | ODataPagingGuidancePlugin instance |\n| `devproxy-plugin-graph-odsp-search-guidance` | ODSPSearchGuidancePlugin instance |\n| `devproxy-plugin-openai-mock-response` | OpenAIMockResponsePlugin instance |\n| `devproxy-plugin-openai-telemetry` | OpenAITelemetryPlugin instance |\n| `devproxy-plugin-openai-telemetry-config` | OpenAITelemetryPlugin config section |\n| `devproxy-plugin-openai-usage-debugging` | OpenAIUsageDebuggingPlugin instance |\n| `devproxy-plugin-open-api-spec-generator` | OpenApiSpecGeneratorPlugin instance |\n| `devproxy-plugin-open-api-spec-generator-config` | OpenApiSpecGeneratorPlugin config section |\n| `devproxy-plugin-rate-limiting` | RateLimitingPlugin instance |\n| `devproxy-plugin-rate-limiting-config` | RateLimitingPlugin config section |\n| `devproxy-plugin-rate-limiting-file` | Dev Proxy rate limiting file |\n| `devproxy-plugin-rate-limiting-file-schema` | Dev Proxy rate limiting file schema |\n| `devproxy-plugin-retry-after` | RetryAfterPlugin instance |\n| `devproxy-plugin-rewrite` | RewritePlugin instance |\n| `devproxy-plugin-rewrite-file` | RewritePlugin rewrites file |\n| `devproxy-plugin-rewrite-file-schema` | RewritePlugin rewrites file schema |\n| `devproxy-plugin-rewrite-config` | RewritePlugin config section |\n| `devproxy-plugin-typespec-generator` | TypeSpecGeneratorPlugin instance |\n| `devproxy-plugin-typespec-generator-config` | TypeSpecGeneratorPlugin config section |\n| `devproxy-plugin-url-discovery` | UrlDiscoveryPlugin instance |\n| `devproxy-reporter-json` | JsonReporter instance |\n| `devproxy-reporter-markdown` | MarkdownReporter instance |\n| `devproxy-reporter-plain-text` | PlainTextReporter instance |\n| `devproxy-task-start` | Start Dev Proxy VS Code Task |\n| `devproxy-task-stop` | Stop Dev Proxy VS Code Task |\n\n\u003c/details\u003e\n\n\u003cdetails\u003e\n\u003csummary\u003e\u003cstrong\u003eYAML Snippets\u003c/strong\u003e (click to expand)\u003c/summary\u003e\n\n| Prefix | Description |\n| ------ | ----------- |\n| `devproxy-action-setup` | GitHub Actions step: Setup Dev Proxy (recommended) |\n| `devproxy-action-start` | GitHub Actions step: Start Dev Proxy manually |\n| `devproxy-action-stop` | GitHub Actions step: Stop Dev Proxy |\n| `devproxy-action-record-start` | GitHub Actions step: Start Dev Proxy recording |\n| `devproxy-action-record-stop` | GitHub Actions step: Stop Dev Proxy recording |\n| `devproxy-action-chromium-cert` | GitHub Actions step: Install Dev Proxy certificate for Chromium browsers |\n\n\u003c/details\u003e\n\n### Diagnostics\n\nReal-time validation of your configuration files. Click any diagnostic code to view [detailed documentation](https://learn.microsoft.com/microsoft-cloud/dev/dev-proxy/technical-reference/toolkit-diagnostics).\n\n| Code | Description |\n|------|-------------|\n| `invalidSchema` | Schema version doesn't match installed Dev Proxy |\n| `invalidConfigSection` | Config section not used by any plugin |\n| `deprecatedPluginPath` | Using old plugin DLL path (pre-v0.29) |\n| `missingLanguageModel` | Plugin requires language model configuration |\n| `noEnabledPlugins` | No plugins are enabled |\n| `reporterPosition` | Reporter plugin should be last |\n| `summaryWithoutReporter` | Summary plugin needs a reporter |\n| `apiCenterPluginOrder` | OpenApiSpecGeneratorPlugin must come before ApiCenterOnboardingPlugin |\n| `emptyUrlsToWatch` | No URLs configured to intercept |\n| `pluginConfigRequired` | Plugin requires a config section |\n| `pluginConfigMissing` | Referenced config section doesn't exist |\n| `pluginConfigOptional` | Plugin can be configured (optional) |\n| `pluginConfigNotRequired` | Plugin doesn't support configuration |\n| `invalidConfigSectionSchema` | Config section schema version doesn't match installed Dev Proxy |\n| `unknownConfigProperty` | Config section has property not defined in schema |\n| `invalidConfigValue` | Config section property value doesn't match schema |\n\n### Quick Fixes\n\nOne-click fixes for common issues:\n\n- **Update schema** - Match schema to installed Dev Proxy version (config file or config sections)\n- **Update plugin path** - Fix deprecated `dev-proxy-plugins.dll` paths (single or all at once)\n- **Remove unknown property** - Remove properties not defined in config section schema\n- **Add languageModel configuration** - Enable language model for AI plugins\n- **Add plugin configuration** - Add optional config section for plugins that support it\n- **Add missing config section** - Create config section when plugin references one that doesn't exist\n\n### Code Lens\n\n- **View docs** - Click plugin names to open documentation\n\n### Status Bar\n\nShows Dev Proxy status at a glance:\n\n- Version number and update availability\n- Running state (radio tower icon when active)\n- Error indicator if Dev Proxy is not installed\n\n## Configuration\n\n| Setting | Type | Default | Description |\n|---------|------|---------|-------------|\n| `dev-proxy-toolkit.version` | `stable` \\| `beta` | `stable` | Version to use when both are installed |\n| `dev-proxy-toolkit.newTerminal` | `boolean` | `true` | Start Dev Proxy in a new terminal |\n| `dev-proxy-toolkit.showTerminal` | `boolean` | `true` | Show terminal when starting |\n| `dev-proxy-toolkit.closeTerminal` | `boolean` | `true` | Close terminal when stopping |\n| `dev-proxy-toolkit.apiPort` | `number` | `8897` | Port for Dev Proxy API communication |\n| `dev-proxy-toolkit.devProxyPath` | `string` | `\"\"` | Custom path to Dev Proxy executable (uses auto-detection if empty) |\n\n## Tasks\n\nRun Dev Proxy as a VS Code task for integration with build workflows.\n\n\u003e [!TIP]\n\u003e Use the `devproxy-task-start` and `devproxy-task-stop` snippets to quickly add tasks to your `tasks.json`.\n\n```json\n{\n  \"version\": \"2.0.0\",\n  \"tasks\": [\n    {\n      \"label\": \"Start Dev Proxy\",\n      \"type\": \"devproxy\",\n      \"command\": \"start\",\n      \"isBackground\": true,\n      \"problemMatcher\": \"$devproxy-watch\"\n    },\n    {\n      \"label\": \"Stop Dev Proxy\",\n      \"type\": \"devproxy\",\n      \"command\": \"stop\"\n    }\n  ]\n}\n```\n\n## MCP Server\n\nThis extension includes an MCP server for AI-assisted development. See [Dev Proxy MCP Server](https://github.com/dev-proxy-tools/mcp) for available tools.\n\n## Troubleshooting\n\n**Dev Proxy not detected?**\n- Ensure Dev Proxy is installed and available in your PATH\n- Check the `dev-proxy-toolkit.version` setting if you have both stable and beta installed\n\n**Diagnostics not showing?**\n- Verify your file is recognized as a Dev Proxy config (check the status bar)\n- The file must be named `devproxyrc.json` or contain a valid `$schema` property\n\n**Commands not available?**\n- Some commands are only available when Dev Proxy is running or stopped\n- Check the status bar to see the current state\n\n## Contributing\n\nFound a bug or have a feature request? [Open an issue](https://github.com/dev-proxy-tools/toolkit/issues).\n\n## License\n\n[MIT](LICENSE)\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdev-proxy-tools%2Ftoolkit","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdev-proxy-tools%2Ftoolkit","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdev-proxy-tools%2Ftoolkit/lists"}