A fact management system that provides automatic coding tools with consistent guidance about libraries, patterns, and development standards.
AI coding tools make the same mistakes again and again. If you've tried building with NextJS 15 they frequently mess up AppRouter; using ShadCN chances are they've used the wrong command- npx install shadcn-ui instead of npx install shadcn. They also don't make good or consistent architecture and design decisions.
When working with automatic coding tools like Cline in Cursor, developers often find themselves repeatedly providing the same guidance about coding standards, preferred libraries, and architectural patterns. HiveMind solves this by creating a centralized system for managing and enforcing these development guidelines through the Model Context Protocol (MCP).
This repository is a prototype that demonstrates an MCP server that allows facts to be set, retrieved, searched, and validated against. The goal is to help autonomous coding tools maintain consistency with your project's standards and preferences.
See an example validation report that demonstrates how HiveMind validates projects against established facts.
- Facts Management: Store and retrieve development decisions, guidelines, and standards
- Automated Validation: Validate code changes against established criteria
- Flexible Categories: Support for multiple development aspects (frontend, backend, security, etc.)
- Configurable Rules: Adjustable strictness levels for different types of guidelines
- Node.js
- SQLite
- MCP SDK
-
Clone the repository
-
Install dependencies:
cd facts-server npm install
-
Build the project:
npm run build
-
Configure the MCP service:
"hivemind": { "command": "node", "args": [ "<YOUR PATH>/hivemind/facts-server/build/index.js" ], "env": {}, "disabled": false, "autoApprove": [] }
The .clinerules
file configures how facts are managed:
- Automatic saving of development decisions
- Validation of proposals against existing facts
- Strictness levels for different fact types
- Category mappings for various development aspects
cd facts-server
npm start
The facts server provides the following tools:
- Create/update facts
- Search facts by type, strictness, and version
- Validate content against fact criteria
- Retrieve existing facts
graph TB
subgraph "System Architecture"
MCP[Model Context Protocol]
subgraph "Facts Management"
FS[Facts Server]
DB[(SQLite DB)]
VS[Vector Search]
end
subgraph "Validation Layer"
VP[Validation Processor]
RC[Rules Configuration]
end
IDE[Development Environment]
end
classDef default fill:#f9f9f9,stroke:#333,stroke-width:2px;
classDef highlight fill:#e1f5fe,stroke:#0288d1,stroke-width:2px;
class MCP,FS highlight
%%{init: {'sequence': {'width': 400, 'actorMargin': 30, 'messageMargin': 15, 'boxMargin': 10, 'fontSize': 11, 'actorFontSize': 11, 'noteFontSize': 11, 'messageFontSize': 11}}}%%
sequenceDiagram
participant IDE as Dev Env
participant MCP as MCP
participant FS as Facts
participant DB as DB
participant VP as Validator
IDE->>MCP: Dev Request
MCP->>FS: Query Facts
FS->>DB: Fetch Rules
DB-->>FS: Rules Data
FS->>VP: Validate
VP-->>FS: Result
FS-->>MCP: Facts & Valid.
MCP-->>IDE: Standards
The architecture diagram shows the core components of HiveMind, centered around the Model Context Protocol (MCP) which integrates with your development environment. The Facts Server manages development guidelines and standards using a SQLite database with vector search capabilities.
HiveMind/
├── facts-server/ # MCP server for facts management
│ ├── src/ # TypeScript source files
│ ├── prisma/ # Database schema and migrations
│ └── build/ # Compiled JavaScript output
└── .clinerules # Configuration for facts integration
- TypeScript
- Prisma (SQLite)
- MCP SDK
- Vector extensions for similarity search
npm run build
- Build the TypeScript codenpm run dev
- Run with debugging enablednpm start
- Start the facts server
Contributions are welcome! Feel free to submit issues, feature requests, or pull requests.
You can reach me on:
This project is licensed under the MIT License - see the LICENSE file for details.