🐍 🏠 - Ethical analysis of AI conversations: detect bias and harmful content and provide critical-thinking…
Ethics Vibe Check
以下摘录自该仓库的 README(片段) · 在 GitHub 读完整 README →
**A gut-check button for AI conversations.**
MCP tools that run an independent second-opinion model over an exchange so you can catch sycophancy, confirmation bias, or quiet drift — when you ask, not as ambient surveillance.
Package: @r-huijts/ethics-vibe-check · Repo: r-huijts/ethics-check-mcp
---
What it is
LLMs are trained to be helpful. That often means they agree too easily and let a chat slide toward whatever you already believe.
This server does **not** intercept every turn. It exposes tools you (or your host, when you ask) call mid-conversation:
> “Sanity check that.” · “Play devil’s advocate.” · “Are we drifting?”
A **second model** grades the exchange. Reuse (or omit) a session id to get a **sessionTrend** — escalating / improving / stable — so creep shows up as a signal, not a pile of disconnected snapshots.
---
Quick start
1. MCP server
**Cursor one-click** (above) installs the server command only. Afterward, open MCP settings and add env (Gemini by default):
**Local second opinion** (no cloud):
**CLI:**
Full env reference: env.example.
2. Companion skill (recommended)
The skill teaches the host *when* to call tools, how to treat sessionTrend, and when to record feedback. Prefer it over a fat always-on rule.
Installs skills/ethics-vibe-check/SKILL.md → ~/.cursor/skills/ethics-vibe-check/ (override with CURSOR_SKILLS_DIR).
Optional always-on checkpoint templates: docs/system-prompts.md.
---
Tools
| Tool | Use when |
|---|---|
| ethics_check | Broader scan of an exchange (bias, privacy, manipulation, confirmation bias, …). Returns overallRisk, concerns (may be empty), sessionTrend. |
| critical_thinking | Focused sycophancy / one-sidedness pass on one AI reply. Returns confirmationBiasRisk, sessionTrend. |
| ethics_guide | Multi-framework advice for a dilemma (not a mid-chat vibe check). |
| ethics_learn | Manually log a concern. Usually unnecessary if autoStore is on. |
| ethics_feedback | Thumbs-up/down on a prior recommendation so successScore weighting reflects what helped. |
**Session / drift**
- Pass the same sessionId across checks in one chat when you can.
- If omitted, the server uses a **process-scoped default** (typical MCP hosts run one process per conversation).
- Override with ETHICS_SESSION_ID for evals or known ids.
**Calibration**
Prompts are written so ordinary helpful replies can return **low risk and empty findings**. Empty is a valid gut-check result — not a failure.
---
Providers
| ETHICS_PROVIDER | Needs | Notes |
|---|---|---|
| gemini (default) | GEMINI_API_KEY | Cloud second opinion. Optional ETHICS_MODEL / GEMINI_MODEL. |
| ollama | Local Ollama | OLLAMA_BASE_URL, OLLAMA_MODEL or ETHICS_MODEL. |
| mock | nothing | Deterministic offline answers for tests/demos only. |
Storage defaults to ~/.ethics-vibe-check/data (ETHICS_DATA_DIR to override).
With Gemini, analysis leaves your machine — don’t paste secrets you wouldn’t send to a third-party API. Use Ollama for local-only checks.