Help us improve
Share bugs, ideas, or general feedback.
From roslyn-mcp
Roslyn code actions (fixes and refactorings). Use when: applying IDE-style quick fixes or refactorings at a position or selection, including introduce parameter and inline temporary variable. Takes file path and line/column (and optional selection end) as input.
npx claudepluginhub darylmcd/roslyn-backed-mcp --plugin roslyn-mcpHow this skill is triggered — by the user, by Claude, or both
Slash command
/roslyn-mcp:code-actions file path and line:column [endLine:endColumn]file path and line:column [endLine:endColumn]The summary Claude sees in its skill listing — used to decide when to auto-load this skill
You help apply **Roslyn code actions** exposed by the MCP host: list actions at a span, preview the diff, apply with the preview token, then validate.
Guides technical evaluation of code review feedback: read fully, restate for understanding, verify against codebase, respond with reasoning or pushback before implementing.
Share bugs, ideas, or general feedback.
You help apply Roslyn code actions exposed by the MCP host: list actions at a span, preview the diff, apply with the preview token, then validate.
From $ARGUMENTS (or the user's message), obtain:
filePathstartLine, startColumn (1-based)endLine, endColumn for selection-range refactorings (e.g. introduce parameter, inline temporary)If a workspace is not loaded, ask for the solution path and call workspace_load first.
Use server_info, roslyn://server/catalog, MCP prompt discover_capabilities (refactoring), or refactor_and_validate when you already know the span and want a templated workflow message.
preview_code_action → review diff → apply_code_action.compile_check or build_project / build_workspace.get_code_actions with workspaceId, filePath, startLine, startColumn, and end coordinates if the user highlighted a range.preview_code_action with that index. Show the diff summary.apply_code_action with the preview token.compile_check (fast) or build_workspace.revert_last_apply then retry with a different action or span.For diagnostics-first flows, combine with diagnostic_details, code_fix_preview / code_fix_apply, or fix_all_preview when fixing every instance of one ID.
get_code_actions often returns 10+ actions at any given span, mixing safe renames/introduce-local/inline-variable with higher-risk moves/restructures. Filter them into three tiers before presenting:
| Tier | Examples of action titles | Recommended default |
|---|---|---|
| Safe | "Inline temporary variable", "Introduce local", "Use expression body", "Convert to auto-property", "Add/remove modifier", "Use var / explicit type", "Add missing using", "Sort usings", "Remove unused using", "Use pattern matching", "Use nameof", "Use ?? / ??=", "Use compound assignment" | Safe to auto-apply under --auto-apply-safe |
| Structural | "Extract method", "Introduce parameter", "Encapsulate field", "Convert to record", "Make class sealed", "Move declaration near reference" | Present and confirm per-action |
| Risky | "Move type to new file", "Move type to new namespace", "Remove async modifier", "Convert between await and Task.Run", anything involving cross-file moves | Present with a warning; never auto-apply |
Workflow with the filter:
get_code_actions as usual.--auto-apply-safe, preview + apply every Safe-tier action at once via composite preview when possible, then run compile_check.This filter is a heuristic — action titles vary by analyzer version. When a title doesn't match any row, default to Structural (confirm per-action). A user can override the classification for a specific action by name.