Signalint

io.github.TranQui004由 GitHub 账号 TranQui004 发布v1.2.1更新于 Oct 24, 2026

Local stdio MCP server for cached, loop-aware JS/TS diagnostics (Oxlint, tsc, Biome, ESLint).

已验证STDIO仅桌面开发者工具数据与分析

概览

AI 生成的概览

本地 MCP 服务器,运行 JS/TS 检查器与编译器,为编码助手提供精简、按优先级聚类的诊断、验证差异和循环检测。

可以做什么
运行全项目或增量检查(带缓存),按检查 ID 获取完整问题详情,并查看会话中的循环与规则反复情况。读取不可变的诊断快照,比较基线检查与当前检查,得出新增、已解决和未变化的问题。接收外部 LSP 或编译器诊断,并读取带来源信息的实时缓冲诊断。在内存中暂存修复方案,应用到磁盘或丢弃。
适用场景
适合 AI 编码助手在 JavaScript 或 TypeScript 仓库中工作时使用:让它看到紧凑、按优先级排序的 lint 与类型错误,而不是大量原始编译输出;确认一次修改是减少问题而非挪动问题;避免重复同一种失败的修复。
运行要求
通过 stdio 在本地运行,通常使用 npx signalint-mcp。需要 Node.js 22.12.0 或更高版本。项目需自行安装诊断引擎(typescript、oxlint、eslint 和/或 @biomejs/biome),服务器不自带。初次使用运行 npx signalint init,会生成 signalint.config.json 并配置已安装的 MCP 客户端。仅支持桌面客户端。
安装前请注意
apply_diagnostic_fix 工具被标记为会修改且具破坏性:它会写入文件,仅有进程内尽力回滚,中断时没有持久化的崩溃恢复。预览和丢弃工具不会写入磁盘。初始化会写入配置文件并修改 MCP 客户端配置,安装钩子会改变宿主行为。

安装

在 SourceWeft 中

  1. 打开 控制台中的 Signalint,将其添加到工作区。
  2. 为需要使用其工具的对话启用该服务。

Desktop only,通过 STDIO。 STDIO 服务会启动本地进程,因此需要 SourceWeft 桌面宿主。

其他 MCP 客户端

参照 仓库 中的启动说明。

README

Signalint

[CI] [npm version] [License: MIT] [Node.js]

Signalint is a reliable, read-only-by-default diagnostic intelligence layer for AI coding agents (Claude Code, Cursor, Codex, VS Code) and CI workflows.

Instead of flooding an agent's context window with thousands of raw compiler lines, Signalint normalizes diagnostics across compilers, linters, and language servers into bounded, priority-clustered issue summaries, calculates verification deltas against explicit baselines, and detects oscillating fix loops.


Key Differentiators

  • 13 Complete MCP Tools: From incremental checks and immutable snapshots to live diagnostic ingestion and journaled transactional fix application.
  • Verification Deltas: Exact arithmetic on introduced, resolved, and unchanged diagnostics with semantic identity matching that survives line shifts.
  • Immutable Snapshots & Concurrency Safety: Isolated in-memory snapshot store keyed by checkId eliminates race collisions during concurrent checks.
  • Monorepo-Aware Planning: Unites package manifests (pnpm-workspace.yaml) parsed via pure-JS YAML with glob negation exclusions and TypeScript Project References, ordering checks topologically.
  • Multi-Source Provenance: Distinguishes compiler, linter, and editor/LSP diagnostics across JavaScript, TypeScript, Python (Ruff/Mypy), Rust (Clippy), and Go (GolangCI-Lint).
  • Portable Host Hooks: Native verify-after-change adapters for Claude Code, Cursor, Codex, and VS Code.
  • In-Memory Previews & In-Process Rollback: In-memory previews never touch disk; apply uses per-file adjacent temporary-file replacement, pre-write drift detection, and in-process best-effort rollback for multi-file writes (does not claim persistent crash recovery if aborted abruptly).

Quick Start

1. Requirements

  • Node.js >= 22.12.0 (utilizes native node:sqlite).
  • Your project installs its own diagnostic engines (typescript, oxlint, eslint, and/or @biomejs/biome). Signalint detects project-local installations and ships no bundled engines.

2. Initialize in your repository

sh
npx signalint init

This detects your project's linters/compilers, generates signalint.config.json, and configures your installed MCP clients.

3. Add to MCP Clients

Add Signalint to your MCP configuration (e.g. claude_desktop_config.json, .cursor/mcp.json):

json
{  "mcpServers": {    "signalint": {      "command": "npx",      "args": ["-y", "signalint-mcp"]    }  }}

Complete MCP Tools Catalog

Signalint exposes 13 strictly typed MCP tools over stdio:

ToolCategorySafety AnnotationDescription
pingDiagnosticsRead-only (idempotent)Verifies server responsiveness and canonical project root path.
check_projectDiagnosticsRead-only (idempotent)Full project/workspace scan across all enabled engines.
check_filesDiagnosticsRead-only (idempotent)Fast incremental check on specific files using content-hash caching.
get_issue_detailDiagnosticsRead-only (idempotent)Retrieves full, unomitted issue records anchored to an immutable checkId.
get_loop_statusDiagnosticsRead-only (idempotent)Returns oscillating fix signatures and rule churn detected in the session.
get_diagnostic_snapshotSnapshotsRead-only (idempotent)Retrieves complete state and metrics for an immutable check snapshot.
compare_diagnosticsDeltasRead-only (idempotent)Computes verification delta between a baseline check and a current check.
after_edit_checkDeltasRead-only (idempotent)Runs incremental check on edited files and diffs against a baseline check.
ingest_diagnosticsLive / LSPRead-only (openWorld: false)Ingests external LSP or compiler diagnostics into Signalint's clustering model.
get_live_diagnosticsLive / LSPRead-only (idempotent)Returns active buffered diagnostics with source provenance.
preview_diagnostic_fixTransactionsRead-only (destructive: false)Stages proposed code fixes in-memory. Does not write to disk.
apply_diagnostic_fixTransactionsMutating (destructive: true)Per-file adjacent temp replacement, pre-write drift check, and in-process best-effort rollback.
discard_diagnostic_fixTransactionsRead-only (idempotent)Drops an in-memory fix transaction without touching disk.

See docs/mcp-contract.md for full JSON Schemas and error codes.


CLI Commands

Signalint includes a comprehensive command-line interface:

sh
# Run a project diagnostic scan:npx signalint check .npx signalint check src/ --format github    # GitHub Actions annotations
# View session statistics and cache economics:npx signalint stats
# Verify local engine availability and configuration:npx signalint doctor
# Manage host verify-after-change hooks:npx signalint hooks preview --runtime claudenpx signalint hooks install --runtime cursor --confirmnpx signalint hooks run --runtime claude --payload '<json-event>'

Monorepo Support

Signalint natively understands multi-package monorepos:

  • Configure "monorepoMode": "auto" in signalint.config.json to detect pnpm-workspace.yaml via pure-JS YAML parsing with glob negation exclusions (!).
  • Strictly differentiates local workspace packages (workspace:*) from external npm registry dependencies.
  • Builds a topological dependency graph uniting package manifests and TypeScript project references.
  • Caches whole-program TypeScript builds in isolated per-package directories (.signalint/cache/tsc/<project-id>/).
  • Changes to a shared package automatically invalidate dependent packages while keeping independent siblings cached.

See docs/monorepo.md for configuration and architecture.


Verify-After-Change Hooks

Automate post-edit verification without creating infinite agent loops:

  • Native adapters for Claude Code, Cursor, Codex, and VS Code.
  • Emits bounded context into prompt windows and blocks only on unresolved syntax/type errors.

See docs/hooks.md for setup instructions.


Documentation Index


License

MIT © 2026 Tran Trong Qui

来源:README.md,提交 6327008

工具

0
SourceWeft 尚未在沙箱中启动过该软件包,因此其工具未知。

版本历史

6
  1. v1.2.1最新Oct 11, 2026
  2. v1.2.0Oct 10, 2026
  3. v1.1.2Oct 8, 2026
  4. v1.1.0Oct 8, 2026
  5. v1.0.0Oct 6, 2026
  6. v0.4.2Sep 16, 2026

评分

已满足适用检查项的 50%

该评分衡量此收录条目的完整程度,依据注册中心条目、端点与公开来源计算得出。它不是对服务器本身的评价,也不表示服务器安全或当前可用:可连通性是带日期的检查结果,评分也不包含安装量或用户评价。

  • 近 30 天内可连通25 分

    请保持端点能够响应 MCP 握手;SourceWeft 每 30 天探测一次。

  • 已声明认证方式10 分

    请在注册中心条目中声明凭据请求头,或保持端点能够响应探测,以便判定其认证方式。

  • 已列出工具15 分

    请让服务器在无凭据时响应 tools/list,或发布可在沙箱中无凭据启动的软件包。

  • 描述必需15 分
  • 图标10 分
  • 文档15 分
  • 许可证10 分