Skip to content

StefanRohringer/me-system

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 

Repository files navigation

ME-System — Metasystem Units

Deterministic knowledge network from technical documents. No LLM. No training. No cloud.

Inspired by cybernetics, OODA and VSM, but neither — a 12×7 deterministic knowledge matrix.


What is it?

A generic framework for building deterministic knowledge networks from any domain-specific documents (PDF, TXT).

Core concept: (12 knowledge domains × 7 aspects) + 10 cross-sectional units = 94 Metasystem Units (ME).

Each ME is a self-contained knowledge unit with a formula, parameters, a score, and weighted connections to other MEs. Together they form a deterministic network that structures, links, and queries knowledge — without AI, without APIs, without internet.


Core Principles

Principle Meaning
Deterministic Same input = same output. Always. No guessing.
Offline Runs on a Raspberry Pi. No cloud required.
No LLM No API calls, no training, no probabilities.
Traceable Every connection has a verifiable source.
Domain-agnostic The 12 domains are freely configurable (engineering, history, medicine, law...).
GPL v3 All derivatives must stay open source.

Architecture

Source Documents (PDF/TXT)
    ↓
Keyword Miner — Extracts terms and parameters from texts
    ↓
94 Metasystem Units (ME)
  ├─ 84 Core ME (12 domains × 7 aspects)
  └─ 10 Cross-sectional ME (domain-overarching)
    ↓
Refiner — Populates each ME with domain-specific values
    ↓
Network Calculator — Weighted connections between all ME
    ↓
Trigger (Cycle) — Runs all ME, stores results in SQLite
    ↓
Queries (Terminal / Telegram / API)

The 7-Aspect Cycle

Each of the 12 domains passes through 7 aspects — the knowledge cycle. The cycle engine runs 72 time-steps (precession-based tick, independent of the 84 core MEs — the 72 steps represent a temporal pulse, not a 1:1 mapping to MEs):

 1. Observe     → What is? What signals are present?
 2. Understand  → What does it mean? Recognize patterns?
 3. Formulate   → Which rule applies? Calculate?
 4. Decide      → What to do? Prioritize?
 5. Act         → Execute. Produce results.
 6. Check       → Was the action correct?
 7. Learn       → What remains? Adapt?

(12 × 7) + 10 = 94 ME


Domains are Configurable

The framework defines no fixed domains. You set them per project in me_constants.py:

Field Example Domains
Engineering Material, Manufacturing, Quality, Maintenance, Control, Standards...
Medicine Diagnosis, Symptoms, Medication, Surgery, Aftercare, Prevention...
History Sources, Chronology, Archaeology, Linguistics, Reception...

Quick Start

# 1. Clone
git clone https://github.com/StefanRohringer/me-system.git
cd me-system

# 2. Define your domains
# Edit me_constants.py — replace the 12 placeholder domains

# 3. Add source texts
mkdir txt_extracted
# Put your .txt files in txt_extracted/

# 4. Initialize database
python3 -m me_system.me_trigger init

# 5. Calculate network
python3 -m me_system.me_trigger network

# 6. Run cycle
python3 -m me_system.me_trigger cycle

Switch Projects

# Via environment variable:
export ME_PROJECT=/path/to/project
python3 -m me_system.me_trigger status

# Or by working directory:
cd /path/to/project
python3 -m me_system.me_trigger status

Queries

# Show a single ME
python3 -m me_system.me_trigger me 22

# Show connections of an ME
python3 -m me_system.me_trigger links 22

# Network statistics
python3 -m me_system.me_trigger network

# Cluster analysis
python3 -m me_system.me_trigger cluster

# Full cycle run
python3 -m me_system.me_trigger cycle

# Search by keyword
python3 -m me_system.me_trigger search <keyword>

# Persistent cycle daemon
python3 -m me_system.me_daemon --loop

# Autonomous explorer daemon
python3 -m me_system.me_explorer

Note: Legacy German commands (zyklus, netzwerk, suche, verb, alle) are still supported as aliases.


Example Output

After populating domains and running a cycle, querying a single ME looks like:

$ python3 -m me_system.me_trigger me 22

ME #22 — Domain 2 / Aspect 1 (Observe)
───────────────────────────────────────
Formula:    h₂₁ = Σ(α_i · S_i)
Score:      0.74
Parameters: critical_temperature = 185°C
            tolerance_range = ±0.3mm
Connections: → ME #11 (0.62)
             → ME #33 (0.48)
             → ME #07 (0.39)
Last cycle: 2026-04-15 22:34:12
Sources:    3 documents

Network overview:

$ python3 -m me_system.me_trigger network

ME-System Network
────────────────
Total ME:      94  (84 core + 10 cross-sectional)
Connections:   4371 weighted
Mean score:    0.286
Clusters:      13
Hub node:     ME #01 (Metasystem)
Density:      42.3%

Requirements

  • Python ≥ 3.10 (no external dependencies)
  • SQLite (part of Python standard library)
  • No GPU. No cloud. No internet connection.

Tested on: Raspberry Pi (ARM), Linux x86, macOS.


Project Structure (Local)

my-project/
├── me_state.db       (auto-created database)
├── txt_extracted/    (source texts as .txt)
├── analysen/         (analysis files)
└── logs/             (log files)

Files (11 Modules)

File Purpose
__init__.py Package marker
me_config.py Project configuration, path resolution
me_constants.py Domains + aspects (edit per project)
me_core.py Database + ME core logic
me_network.py Weighted connections between ME
me_trigger.py Query interface + cycle control
me_cycle.py 72-step cycle engine (precession-based time tick)
me_refiner.py Keyword Miner — parameter extraction from texts
me_query.py Knowledge gap search
me_explorer.py Autonomous explorer daemon
me_daemon.py Autonomous cycle daemon

What Makes It Special

1. No hallucinations — Every output is based on real source documents. No guessing, no inventing.

2. Runs on a Raspberry Pi — ~200 MB RAM. No GPU. No cloud. 24/7.

3. Platform-independent — Linux, macOS, Windows. Python 3 + SQLite. Done.

4. Domain-agnostic — One framework for any knowledge domain. One domain set per project.

5. No black box — Every formula, every connection, every score is traceable and editable.

6. Scales linearly — More domains = more ME. The code stays the same.

7. Fully reproducible — Same input always produces the same output.


License

GNU General Public License v3.0

This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

All derivatives and modified versions must also be published under GPL v3.

About

Deterministic (12×7)+10 knowledge network from technical documents — no LLM, no cloud, runs on a Pi

Topics

Resources

License

Stars

0 stars

Watchers

0 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages