Token导航 LogoToken导航TokenDH.com
Decision OS MCP logo
运维云端stdio官方级别未说明来源级核验

Decision OS MCP

MCP Server

decision-os-mcp

一个用于LLM原生决策追踪和学习的MCP服务器,专注于捕获工程工作中的意外事件并形成学习循环。

工具数

14

提示词数

0

GitHub Stars

0

资源数

0
TypeScriptClaude云端部署Claude DesktopClaudeCursorVS Code

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

marianstefi20

提供方

marianstefi20

最后核验

2026/5/17 20:23

运行时

Node.js

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

命令预览

npx decision-os-mcp

详细介绍

决策OS MCP

MCP服务器 决策操作系统 --LLM原生决策跟踪和学习系统。

什么是决策操作系统?

决策操作系统捕获 新型压力 --在工程工作中,现实会让你感到惊讶的时刻。与传统的文档不同,它侧重于LLM无法预测的内容,从而形成一个学习循环:

Cases → Pressure Events (surprises) → Outcomes → Foundations (compressed learnings)

快速开始

1.安装MCP服务器

# Global install
npm install -g decision-os-mcp

# Or use npx (no install needed)
npx decision-os-mcp

2.添加到您的项目

将模板复制到项目中:

cp -r templates/.decision-os /path/to/your-project/

编辑 config.yaml 使用您的项目名称。

3.配置您的代理

光标

添加到您的项目 .cursor/mcp.json:

{
  "mcpServers": {
    "decision-os": {
      "command": "npx",
      "args": ["-y", "decision-os-mcp"],
      "env": {
        "DECISION_OS_PATH": "${workspaceFolder}/.decision-os"
      }
    }
  }
}

复制游标规则模板:

cp templates/.cursor/rules/decision-os.mdc /path/to/your-project/.cursor/rules/

克劳德代码/克劳德桌面

添加到您的Claude桌面配置(~/Library/Application Support/Claude/claude_desktop_config.json 在macOS上):

{
  "mcpServers": {
    "decision-os": {
      "command": "npx",
      "args": ["-y", "decision-os-mcp"],
      "env": {
        "DECISION_OS_PATH": "/absolute/path/to/your-project/.decision-os"
      }
    }
  }
}

复制代理说明模板(包括 .claude/rules/ 指向AGENTS.md的符号链接):

cp templates/AGENTS.md /path/to/your-project/
cp -R templates/.claude /path/to/your-project/
注: Claude Desktop需要绝对路径 DECISION_OS_PATH (没有 ${workspaceFolder}).

代理商.md 是一个由20多个编码代理支持的开放标准,包括OpenAI Codex、Google Jules、Claude Code、Cursor、Aider、Zed、Warp、VS Code等。这 .claude/rules/ symlink也让Claude Code自动获取它——每个代理一个文件。

工具

工具说明
get_context获取活跃案例、最近的压力、按相关性排名的基础、冲突
log_pressure当现实与预期不一致时,记录压力事件
quick_pressure以最小的摩擦快速捕捉压力事件(仅预期+实际需要)
create_case创建新案例(工作单位)
close_case用结果信号和后悔分数结束案例(自动忘记成功案例)
set_active_case为会话设置活动案例(在重新启动后持续存在)
get_foundations从项目和全局范围查询基础
search_pressures搜索过去的压力事件
check_policy检查给定信号的政策要求
promote_to_foundation将压力事件推广到基金会(项目或全球范围)
elevate_foundation将项目基础提升到全球范围
validate_foundation验证全球基金会是否适用于当前项目
suggest_review审查项目中未汲取的经验和遗忘的机会
list_cases列出项目中的所有案例

核心概念

压力事件

主要的学习成果。发生意外时记录:

expected: "Supabase insert would throw on null FK"
actual: "RLS silently blocked the write, no error"
adaptation: "Added explicit null-check before insert"
remember: "Supabase RLS fails silently on null FK values"

基础

从反复的压力事件中获得的压缩学习:

id: F-0001
title: "Supabase RLS fails silently on null FK"
default_behavior: "Always validate FK values before insert when using RLS"
context_tags: [SUPABASE, RLS, DATA_MODEL]
confidence: 2  # Out of 3
scope: PROJECT  # or GLOBAL
origin_project: my-project
validated_in: [my-project, other-project]
exit_criteria: "Supabase adds explicit error for null FK violations"
source_pressures: [PE-0003, PE-0007]

层次基础(全局->项目)

Decision OS支持类似于Git配置的级联作用域模型:

~/.decision-os/                    # GLOBAL (user-wide, universal learnings)
├── config.yaml
└── defaults/foundations.yaml      # GF-prefixed foundations

~/projects/my-app/.decision-os/    # PROJECT (specific to this codebase)
├── config.yaml
├── cases/
└── defaults/foundations.yaml      # F-prefixed foundations

解析顺序:项目在冲突方面战胜了GLOBAL。

全球基金会是建议,而不是规则。 它们代表了超越特定技术栈的普遍模式:

  • 工具行为(例如,“MCP描述符路径可能已过时”)
  • 调试策略(例如,“重构前跟踪调用站点”)
  • 元学习(例如,“实施前的问题要求”)

设置全局基础:

# Create global .decision-os
mkdir -p ~/.decision-os/defaults
cp templates/global-.decision-os/config.yaml ~/.decision-os/
cp templates/global-.decision-os/defaults/foundations.yaml ~/.decision-os/defaults/

冲突检测:何时 get_context 它强调了项目和全球基金会重叠或相互矛盾的冲突。

病例

为压力事件提供上下文的有限工作单元(功能、错误修复、尖峰):

id: 0001-add-tile-caching
title: "Add tile caching"
goal: "Reduce API latency for repeated tile requests"
status: ACTIVE
signals:
  context:
    risk_level: MEDIUM
    affected_surface: [PERFORMANCE_CRITICAL, INTEGRATION]
decisions:
  approach: BUILD
  posture: BALANCED
  validation_level: STANDARD

目录结构

# Global (user-wide)
~/.decision-os/
├── config.yaml               # scope: GLOBAL
└── defaults/
    └── foundations.yaml      # GF-prefixed universal learnings

# Project (per-codebase)
your-project/
├── .decision-os/
│   ├── config.yaml           # scope: PROJECT
│   ├── cases/
│   │   ├── 0001-bootstrap/
│   │   │   ├── case.yaml     # Case metadata
│   │   │   └── pressures.yaml # Pressure events
│   │   └── 0002-add-auth/
│   │       └── ...
│   └── defaults/
│       └── foundations.yaml  # F-prefixed project learnings
├── .cursor/                  # Cursor setup
│   ├── mcp.json              # MCP server config
│   └── rules/
│       └── decision-os.mdc   # LLM instructions (Cursor format)
├── .claude/                  # Claude Code setup
│   └── rules/
│       └── decision-os.md    # -> symlink to ../../AGENTS.md
├── AGENTS.md                 # Agent instructions (Claude Code, Codex, Jules, etc.)
└── src/

LLM工作流程

  1. 任务开始时:呼叫 get_context() 加载活动案例和基础(按相关性排序)
  2. 当惊讶:呼叫 quick_pressure() 用于快速捕获或 log_pressure() 查看完整细节
  3. 在构建决策之前:呼叫 check_policy() 查看需求
  4. 任务结束时:呼叫 close_case() 遗憾得分
  5. 定期地:呼叫 suggest_review() 寻找未汲取的知识和遗忘的机会

遗忘

系统会故意遗忘。案例是暂时的容器——知识存在于基础中。

close_case() 被称为 后悔0 而且还有 无未促进的压力事件,该案例将自动删除。未存档。被遗忘的。

这使得 .decision-os/cases/ 目录精简:只有仍然具有未压缩学习的情况(未升级的PE或后悔1+)才能生存。

生命周期:

  1. 病例出生 当工作开始时
  2. 压力事件被捕获 当意外发生时
  3. PE得到晋升 当模式出现时,基础
  4. 案件被遗忘 当他们没有什么可教的时候
  5. 基金会幸存下来 作为唯一持久的知识

使用 suggest_review() 找出阻碍遗忘的案例(遗憾为0,但未提升的PE仍然存在),并决定是推广还是丢弃它们。

主动案例持久性

活动病例持续到 .decision-os/.active-case 并在MCP服务器重启后幸存下来。Cursor重新启动时不再丢失活动大小写。

信号词汇

上下文信号(执行前)

  • risk_level:低/中/高
  • reversibility:易/中/难
  • change_frequency:罕见/偶尔/频繁
  • affected_surface:核心域/集成/数据模型/基础设施部署/安全边界/UI_x/性能关键
  • novelty:低/中/高

决策

  • approach:重用/重构/构建/混合
  • posture:最小/平衡/稳健
  • validation_level:基本/标准/严格

结果信号

  • regret:0-3(0=会选择相同,3=强烈后悔)
  • regressions:无/次要/主要

发展

# Install dependencies
npm install

# Build
npm run build

# Run locally
DECISION_OS_PATH=/path/to/.decision-os npm start

哲学

  • 仅记录新的压力:不要记录LLM可以得出什么
  • 系统应该忘记:删除成功案例。知识存在于基础中,而不是案例中
  • 假设,而非公理:基础有信心,可以修改
  • 最少的仪式:词汇量小,结构化但不官僚
  • 先捕获,后过滤:不确定时,记录下来——捕捉太多比错过惊喜要好
  • LLM本地:专为人工智能辅助的工程工作流程而设计

许可证

麻省理工学院

目录标签

目录标签

TypeScriptClaude云端部署LLM原生本地部署决策追踪压力事件学习系统工程工作

支持客户端

Claude DesktopClaudeCursorVS Code

接入字段

传输方式(transport,传输协议)

stdio

鉴权方式(authType,认证方式)

none

运行时(runtime,运行环境)

Node.js

来源包(packageName,安装包名)

decision-os-mcp

工具数量(toolCount,工具数)

14

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

stdionone部署方式未说明

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

来源信息

继续浏览同类 MCP