Skip to main content

VS Code IDE Rules Template

Generated by MCP ADR Analysis Serverโ€‹

Purpose: Configure VS Code for {PROJECT_NAME} with architecture-aware settings and automations.

Workspace Settingsโ€‹

Editor Configurationโ€‹

{
"editor.formatOnSave": true,
"editor.codeActionsOnSave": {
"source.fixAll": true,
"source.organizeImports": true
},
"editor.rulers": [80, 120],
"editor.snippetSuggestions": "top",
"editor.suggestSelection": "first"
}

Language-Specific Settingsโ€‹

{
"[typescript]": {
"editor.defaultFormatter": "esbenp.prettier-vscode",
"editor.formatOnSave": true
},
"[python]": {
"editor.defaultFormatter": "ms-python.black-formatter",
"editor.formatOnSave": true
}
}

Extensions Configurationโ€‹

Required Extensionsโ€‹

{
"recommendations": [
"esbenp.prettier-vscode",
"dbaeumer.vscode-eslint",
"ms-python.python",
"ms-vscode.cpptools",
"golang.go",
"rust-lang.rust-analyzer"
]
}

Extension Settingsโ€‹

{
"eslint.validate": ["javascript", "javascriptreact", "typescript", "typescriptreact"],
"prettier.requireConfig": true,
"python.linting.enabled": true,
"python.linting.pylintEnabled": true
}

Task Automationโ€‹

Build Tasksโ€‹

{
"version": "2.0.0",
"tasks": [
{
"label": "Build Project",
"type": "npm",
"script": "build",
"group": {
"kind": "build",
"isDefault": true
},
"problemMatcher": ["$tsc"]
},
{
"label": "Run Tests",
"type": "npm",
"script": "test",
"group": {
"kind": "test",
"isDefault": true
}
},
{
"label": "Architecture Validation",
"type": "shell",
"command": "mcp-adr-tool validate-rules",
"problemMatcher": []
}
]
}

Debug Configurationโ€‹

{
"version": "0.2.0",
"configurations": [
{
"type": "node",
"request": "launch",
"name": "Debug Application",
"skipFiles": ["<node_internals>/**"],
"program": "${workspaceFolder}/src/index.js"
}
]
}

Code Snippetsโ€‹

ADR Generationโ€‹

{
"Generate ADR": {
"prefix": "adr",
"body": [
"# ${1:Title}",
"",
"## Status",
"Proposed",
"",
"## Context",
"${2:What is the issue that we're seeing that is motivating this decision?}",
"",
"## Decision",
"${3:What is the change that we're proposing?}",
"",
"## Consequences",
"${4:What becomes easier or harder because of this change?}"
],
"description": "Generate ADR template"
}
}

Test Templateโ€‹

{
"Test Case": {
"prefix": "test",
"body": [
"describe('${1:Component}', () => {",
" it('should ${2:behavior}', () => {",
" // Arrange",
" ${3:setup}",
" ",
" // Act",
" ${4:action}",
" ",
" // Assert",
" ${5:expectation}",
" });",
"});"
]
}
}

Keyboard Shortcutsโ€‹

Custom Keybindingsโ€‹

[
{
"key": "ctrl+shift+a",
"command": "workbench.action.tasks.runTask",
"args": "Architecture Validation"
},
{
"key": "ctrl+shift+t",
"command": "workbench.action.tasks.test"
},
{
"key": "ctrl+shift+d",
"command": "workbench.action.tasks.runTask",
"args": "Deployment Check"
}
]

MCP Integrationโ€‹

Launch Configurationโ€‹

{
"mcp.servers": {
"adr-analysis": {
"command": "node",
"args": ["path/to/mcp-adr-analysis-server"],
"env": {
"PROJECT_PATH": "${workspaceFolder}",
"ADR_DIRECTORY": "./adrs"
}
}
}
}

Project-Specific Rulesโ€‹

Architecture Validationโ€‹

{
"architectureRules": {
"layerViolations": "error",
"dependencyDirection": "inward",
"allowedImports": {
"domain": [],
"application": ["domain"],
"infrastructure": ["domain", "application"]
}
}
}

Code Quality Gatesโ€‹

{
"qualityGates": {
"coverage": 80,
"complexity": 10,
"duplicates": 5,
"maintainability": "A"
}
}

Workspace Recommendationsโ€‹

Folder Structureโ€‹

.vscode/
โ”œโ”€โ”€ settings.json # Workspace settings
โ”œโ”€โ”€ tasks.json # Task automation
โ”œโ”€โ”€ launch.json # Debug configuration
โ”œโ”€โ”€ extensions.json # Extension recommendations
โ””โ”€โ”€ snippets/ # Custom snippets
โ”œโ”€โ”€ typescript.json
โ”œโ”€โ”€ python.json
โ””โ”€โ”€ general.json

Custom Configurationโ€‹

Add your VS Code specific customizations:

{
"custom": {
// Your project-specific settings
}
}