Rosentic

io.github.Rosentic由 GitHub 账号 Rosentic 发布v0.1.1更新于 Oct 24, 2026

Deterministic cross-branch conflict detection for AI coding agents

已验证STDIO仅桌面开发者工具安全与监控

概览

AI 生成的概览

一个本地 MCP 服务器,让 AI 编程助手通过确定性的 AST 分析检测 git 仓库中的跨分支合并冲突。

可以做什么
扫描仓库各分支的最新提交,检测跨分支的契约冲突,例如函数签名变更、HTTP 路由不匹配和 schema 变更,覆盖多种语言,并以发现项而非 AI 评审意见的形式报告。解释某条具体冲突发现及其处理建议。列出活跃分支,供助手选择要扫描的分支。在本地针对 git 仓库运行,代码不会离开本机。
适用场景
适用于推送、创建拉取请求或合并之前,当多个分支修改了共享函数、API 路由或 schema,需要判断某个分支合并后是否会破坏其他分支时。它补充而非替代逐文件的安全或代码审查工具。
运行要求
本地 Python 环境,从 PyPI 安装 rosentic-mcp 包,并在支持 MCP 的编辑器中配置通过 stdio 启动 rosentic-mcp 命令。需要一个包含待比较分支的本地 git 仓库。未声明任何账号、API 密钥或环境变量。
安装前请注意
它会读取本地 git 仓库和分支头进行分析,因此只应指向你愿意被扫描的仓库。它只报告冲突,不修改代码;根据发现项采取行动(例如更改签名或路由)由助手或用户自行决定。

安装

在 SourceWeft 中

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

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

其他 MCP 客户端

参照 仓库 中的启动说明。

README

Rosentic - Cross-Branch Merge Safety

Rosentic checks whether your active branches are compatible with each other before merge. It detects broken function signatures, HTTP route conflicts, and schema mismatches across 15+ languages using deterministic AST analysis.

This is not AI code review. Rosentic finds structural contract conflicts that would cause runtime failures after merge - the kind of breaks that tests don't catch because they only run on one branch at a time.

Install

bash
pip install rosentic-mcp

Then add to your editor's MCP config:

json
{  "mcpServers": {    "rosentic": {      "command": "rosentic-mcp",      "args": [],      "env": {}    }  }}

Works with Cursor, Claude Code, Cline, Windsurf, and any editor that supports MCP.

What it does

Rosentic gives your AI coding agent three MCP tools:

ToolPurpose
check_conflictsScan a repo for cross-branch contract conflicts
explain_conflictExplain a specific finding and what to do about it
list_branchesList active branches so the agent can choose what to scan

Example conflicts Rosentic catches

  • Branch A adds a required parameter to createOrder(). Branch B calls createOrder() with the old signature. Both pass CI. Merge breaks production.
  • Branch A changes POST /api/users to require email in the request body. Branch B's frontend still sends the old payload.
  • Branch A removes a field from a GraphQL type that Branch B's query depends on.

How it works

Before you push, open a PR, or merge, your agent runs a cross-branch compatibility check. It calls check_conflicts, which scans your repo's branch heads using tree-sitter AST parsing and reports any conflicts.

No code leaves your machine. The scan runs locally against your git repo.

Compared to Semgrep Guardian

Semgrep Guardian checks each file for security vulnerabilities and code issues. Rosentic checks whether your branches are compatible with each other. They solve different problems and work well together:

  • Semgrep Guardian: "Is this code safe and correct on its own?"
  • Rosentic: "Will this branch break other branches when merged?"

Links

来源:README.md,提交 a30c458

工具

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

版本历史

1
  1. v0.1.1最新Sep 16, 2026

评分

已满足适用检查项的 40%

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

  • 近 30 天内可连通25 分

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

  • 已声明认证方式10 分

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

  • 已列出工具15 分

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

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

    请在仓库或注册中心条目中声明许可证。