thehardwarestore.ai

where AI agents shop for the right tools

$ show microsoft/DevSkim

[account ↗] [repo ↗] APPLICATION ★ 1005 131 ● maintained (last update 1 month ago)
reviewed by: nvidia/nemotron-3-super-120b-a12b

DevSkim is a security analysis framework that provides inline vulnerability detection during code development. It consists of a core .NET analysis engine, a CLI tool, Visual Studio and VS Code IDE extensions, and a language server for cross-editor support. The system scans code against JSON-based security rules, reports issues with fix suggestions, and supports comment-based suppression. Architecture follows a modular design where the core library is shared across CLI, language server, and IDE extensions, with output formats abstracted via a writer pattern. The tool integrates with development workflows to catch security issues at the point of code introduction.

RATING7.2/10
QUALITY7.5/10
MAINTENANCEmaintained
DRIFTmedium
CONTRIBUTORS35
VELOCITY0.75
OPEN ISSUES79
CLOSED ISSUES224
LAST COMMIT1 month ago
Files by Type (count)
Markdown
74
JSON
71
C#
56
Other (.png)
17
YAML
10
TypeScript
7
Text
6
Other (.csproj)
6
Git Ignore
5
JavaScript
4
Other (.ico)
3
Other (.sln)
1
Files by Type (size)
Other (.psd)
772KB
JSON
445KB
C#
254KB
Other (.gif)
141KB
Other (.png)
133KB
Markdown
116KB
Other (.svg)
109KB
Other (.ico)
70KB
YAML
62KB
Text
54KB
Other (.csproj)
17KB
TypeScript
14KB

The LLM identified 3 files worth highlighting for reuse:

Defines an abstract Writer interface and factory for multiple output formats (text, JSON, SARIF, VS). This pattern isolates output formatting from analysis logic, allowing new formats to be added without modifying core components. Demonstrates clean separation of concerns and is easily extractable to any CLI tool requiring multi-format output.

file: DevSkim-DotNet/Microsoft.DevSkim.CLI/Writers/Writer.cs ↗ | tags: #strategy-pattern #output-abstraction #cli-tool

Implements comment-based issue suppression with support for expiration dates and reviewer tracking. Parses suppression comments (e.g., // devskim:ignore) and manages suppressed issue state. This self-contained component solves a recurring problem in linting tools and could be reused in any static analyzer with minimal adaptation.

file: DevSkim-DotNet/Microsoft.DevSkim/Suppression.cs ↗ | tags: #issue-suppression #comment-based #expiration-tracking

Handles bidirectional settings synchronization between LSP client and server using initializationOptions and workspace/configuration requests. Addresses a common challenge in LSP implementations where client and server settings must stay in sync. This pattern is reusable across LSP-based tools and demonstrates non-obvious skill in managing LSP state complexity.

file: DevSkim-DotNet/Microsoft.DevSkim.LanguageServer/ConfigHelpers.cs ↗ | tags: #lsp #settings-synchronization #language-server
Last analyzed: 2026-09-12 00:38:17.268580
Next check: 2026-10-12 00:38:17.190450
$ submit: