Neuro-Cognitive Engine
NCE — 신경-인지 엔진
AI 에이전트를 위한 멀티 테넌트 메모리 및 추론 기반이며, 그 위에 구축된 비즈니스 엔진 제품군입니다.
비즈니스를 운영하는 에이전트는 사물을 기억해야 하며, 그 기억이 올바르게 유지되어야 합니다. 즉, 올바른 테넌트에 범위가 지정되고, 출처에 귀속 가능하며, 조용히 손상될 수 없어야 합니다. NCE는 이를 제공하는 계층이며, 이를 사용하는 수직 엔진(조달, 영업, 프로젝트, 경제, 재고 등)도 함께 제공합니다.
Postgres, MongoDB, Redis 및 MinIO 기반의 Python으로 구축되었습니다. MCP(JSON-RPC 2.0) 및 REST를 통해 노출됩니다.
실제로 있는 것
| 103,762 라인 |
테스트 파일 | 391 |
등록된 MCP 도구 | 115 |
데이터베이스 마이그레이션 | 48 |
메인에 코드가 있는 수직 엔진 | 11 |
문서 페이지 | 114 — 여기서 읽기 |
아키텍처 결정 기록 | 8 |
풀 리퀘스트당 CI 작업 | 5 |
숫자는 트리에서 계산된 것이지 추정치가 아닙니다. 도구 개수는 테스트(tests/test_tool_registry.py)에 의해 검증되므로, 빌드가 실패하지 않고는 현실에서 벗어날 수 없습니다.
살펴볼 가치가 있는 부분
테넌트 격리는 데이터베이스에 의해 강제되며, 관례에 의한 것이 아닙니다. 모든 테넌트 범위 테이블은 namespace_id에 대한 정책과 함께 ENABLE + FORCE ROW LEVEL SECURITY를 수행합니다. 애플리케이션 코드는 추가로 명시적으로 필터링합니다. 슈퍼유저 연결은 FORCE RLS를 우회하고, 이를 잊은 테스트는 아무것도 증명하지 못하기 때문입니다. tests/test_rls_catalog.py는 등록되지 않은 테넌트 테이블이 추가되면 빌드를 실패시킵니다.
쓰기 권한은 기본적으로 거부됩니다. 엔진은 서로의 데이터를 쓰지 않습니다. nce/config_data/node-ownership.json은 (node_type, transition) → owning engine을 매핑하며, assert_owner는 쓰기 사이트에서 등록되지 않은 모든 것을 거부합니다. 소유권은 노드별뿐만 아니라 전환별로도 가능합니다. 구매 주문 라인의 ORDERED 상태는 Procurement에, DELIVERED는 Warehouse에, INSTALLED는 Field Tech에 속하며, 동일한 가드가 세 가지를 모두 표현합니다.
감사 로그는 데이터베이스 수준에서 추가 전용입니다. event_log에는 WORM 트리거가 있습니다. UPDATE와 DELETE는 단순히 피하는 것이 아니라 철회됩니다.
자율성은 제한됩니다. 세계 쓰기 도구는 기본적으로 사람 확인 전용이며, 멱등성 키를 가지고 있으며, 감사 로그에 기록됩니다. 값 및 볼륨 상한, 허용 목록 및 킬 스위치가 그 앞에 있습니다. 작업을 재생하는 것은 두 번째 쓰기가 아니라 아무 작업도 하지 않습니다.
돈과 비용은 건물 밖으로 나가지 않습니다. 허용 목록 필드 프로젝터(project(node, surface))는 외부 표면에 도달하는 것을 제어합니다. 마진과 비용은 어떤 허용 목록에도 없습니다.
생성된 텍스트는 근거가 있습니다. 산문은 이미 그래프에 있는 사실로부터 조립되며, 각 주장은 그것이 나온 노드에 연결되며, 자유롭게 작성된 후 확인되는 것이 아닙니다.
데이터는 두 시스템에서 동시에 올 수 있습니다. 네임스페이스별 리졸버는 주어진 함수가 Dynamics 365, NCE 또는 둘 다에서 읽을지 결정하고, 둘이 일치하지 않을 때 차이를 기록합니다. 따라서 마이그레이션이 커밋되기 전에 측정될 수 있습니다.
수직 엔진
11개의 엔진이 main에 코드를 가지고 있습니다. 각 엔진은 자체 테이블, 자체 노드 유형 및 다른 엔진과의 문서화된 경계를 소유합니다.
procurement · product · agreements · vendors · sales · system_design · project · economy · inventory · dynamics365 · diagnostics
엔진 제품군은 17개로 계획되어 있습니다. 점진적으로 구축 중이며 완료되지 않았습니다. 아래 상태를 참조하십시오.
구축 방법
엔진 제품군은 한 번에 수동으로 작성되지 않습니다. 작은 단위(229개 계획, 각각 하나의 관심사, 각각 자체 브랜치와 커밋)의 시퀀스로 구축되며, 각 단위는 수락되기 전에 독립적인 적대적 검토를 통과합니다.
검토는 코드를 작성한 모델 인스턴스와 다른 모델 인스턴스에 의해 수행되며, 구체적인 지시는 그것을 깨뜨리려고 시도하고 불확실할 때는 기본적으로 거부하는 것입니다. 이것은 반복적으로 중요했습니다:
재고 이동 변경이 권위 있는 트랜잭션 내부에 작성된 그래프 프로젝션과 함께 배송되었습니다. 동일한 두 위치 간의 양방향 트래픽에서 100% 시도 시 교착 상태가 발생했습니다. 린트 통과, 유형 통과, 테스트 스위트는 녹색이었습니다. 검토가 이를 발견했고 수정은 행 쓰기와 프로젝션 모두를 표준 키로 정렬하는 것이었습니다.
이벤트 버스 변경은 핸들러가 발생시키는 대신 기록하고 반환했기 때문에 이벤트를 조용히 삭제하면서 성공적으로 게시된 것으로 표시했을 것입니다. 검토는 아무것도 배송되기 전에 두 번 거부했습니다.
소수 정밀도 규칙을 주장하는 테스트는 규칙이 적용되었는지 여부와 관계없이 동일하게 통과하는 것으로 밝혀졌습니다. 유일한 픽스처가 두 경로 모두에서 동일한 방식으로 반올림되었기 때문입니다.
반복되는 교훈은 녹색 테스트 스위트가 보이는 것보다 덜 말해준다는 것입니다. 실패하는 속성은 일반적으로 docstring이 가장 자신 있게 주장하고 어떤 테스트도 실제로 구별하지 못하는 속성입니다.
실행
cp .env.example .env # fill in the values
make local-up # Postgres, MongoDB, Redis, MinIO via docker compose
make lint typecheck # ruff + mypy
pytest -m "not integration" # unit tests, no database required
pytest -m integration # requires the stack above통합 테스트는 데이터베이스에 연결할 수 없을 때 실패하는 대신 건너뜁니다. 건너뛴 테스트가 있는 녹색 종료 코드는 통과 실행이 아닙니다. 개수를 확인하십시오.
문서
전체 문서는 sindrehaugen.github.io/neuro-cognitive-engine 에 게시되어 있습니다. 아키텍처, 8개의 아키텍처 결정 기록, 엔진별 관리자 및 사용자 가이드, 공유 코어 참조 및 MCP 도구 쿡북이 포함됩니다.
다음부터 시작하는 것이 좋습니다:
아키텍처 — 4개 데이터베이스 스택과 계층이 어떻게 배치되는지
공유 코어 — 엔터티 해상도, 소유권, 자율성 거버넌스, 수정
멀티 테넌시 —
FORCE ROW LEVEL SECURITY가 어떻게 적용되는지MCP 도구 쿡북 — 게이팅 플래그가 있는 도구 표면
ADR — 결정 및 그 트레이드오프
레이아웃
nce/ engine core: memory, graph, RLS, autonomy, signing, replay
nce/vertical_modules/ the business engines
nce/migrations/ idempotent SQL, re-applied on boot under an advisory lock
tests/ 391 files; integration tests marked and CI-wired
docs/ source for the published documentation
go/ launcher and hardware detection
trimcp-infra/ Terraform for AWS and GCP
deploy/ compose stacks and container images상태
활발히 개발 중입니다. 17개 엔진 중 11개가 main에 코드를 가지고 있으며, 12번째는 진행 중입니다. 핵심 기반(테넌트 격리, 소유권, 자율성 거버넌스, 감사 로그, 서명, 재생)은 완료되었으며 그 위의 엔진에서 사용 중입니다.
이 저장소는 아키텍처와 엔지니어링 접근 방식을 보여주기 위해 게시되었습니다. 패키지 제품이 아니며 지원 약속이 없습니다.
라이선스
독점. 모든 권리 보유. 검토를 위해 게시됨; 재사용 라이선스 없음.
Sindre Løvlie Haugen · github.com/sindrehaugen
This server cannot be installed
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Connectors
Shared, governed long-term memory for AI agents across tools and sessions via MCP and REST.
Control plane for autonomous software labor. Agents claim objectives over MCP with audit trail.
MCP-native Trust Infrastructure for AI Agents. Persistent encrypted memory with Trust Quotient.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/sindrehaugen/neuro-cognitive-engine'
If you have feedback or need assistance with the MCP directory API, please join our Discord server