Install
openclaw skills install @matthiasbeckmann987-spec/beckmann-knowledge-graphA structured knowledge graph acting as a cognitive lens for AI agents. Enables paradox resolution, analysis of open questions, and high-complexity future forecasting based on Beckmann Logic, Predictive Brain Theory, and simulation models.
openclaw skills install @matthiasbeckmann987-spec/beckmann-knowledge-graphThis skill equips an AI agent with a structured analytical lens in the form of a knowledge graph (graph.json). The graph does not contain encyclopedic facts, but encodes logics, frameworks, and mechanisms for:
The graph is built on four pillars:
| Pillar | What It Provides |
|---|---|
| Beckmann Logic | Three-level problem-solving framework (low vs. high complexity) |
| Predictive Brain Theory (PBT) | Epistemological foundation (Predictive Processing) |
| Simulation / Holographic Model | Mathematical metaphor for physical and cognitive limits |
| Historical Case Studies | Validated examples (e.g., Hannibal, introduction of the potato, Kaiserslautern 1998) |
Language note: Both this skill instruction and graph.json are in English. The agent must use the exact English IDs from the graph (e.g., Reversal effect, Expectation firewall) when searching, and formulate the final answer in the language of the user query (English by default).
The graph is stored as graph.json in the skill folder. Do not load it with import ... assert (deprecated). Use robust file loading.
JavaScript / Node.js:
import fs from 'fs';
const graph = JSON.parse(fs.readFileSync('./graph.json', 'utf8'));
const entities = graph.entities;
const relations = graph.relations;
Python:
import json
with open('./graph.json', 'r', encoding='utf-8') as f:
graph = json.load(f)
entities = graph['entities']
relations = graph['relations']
The graph contains two arrays: entities and relations. Their size grows with each release — do not hard-code counts. Refer to CHANGELOG.md and graph.json itself for the current size.
Entity – 4 fields (canonical as of v3.0.1):
{
"id": "Beckmann logic explained",
"type": "Explanation",
"description": "Full textual description...",
"scientific_status": "non-existent, purely philosophical"
}
Relation – 5 fields (canonical as of v3.0.1):
{
"subject": "Results orientation",
"predicate": "leads to",
"object": "Negative result",
"description": "Context of this connection...",
"scientific_status": "hypothesis"
}
Important implementation notes:
type is the canonical field name in the graph as of v3.0.1. All entities have type.scientific_status (with underscore) as of the corrected graph.json. For backward compatibility with older graphs that used scientific status (with space), accept both: const getStatus = (node) => node['scientific_status'] ?? node['scientific status'] ?? 'unknown';
id, subject, object must be taken exactly (case-sensitive) from the graph — do not translate or normalize them.scientific_status as Confidence FilterThis field is not decoration — it must control the weighting of arguments:
| Status | Meaning for the Answer |
|---|---|
established | Established knowledge — can be used as fact |
partially established | Partially supported — cite with source/uncertainty |
hypothesis | Working hypothesis — label as "according to graph, hypothesis" |
metaphor | Metaphorical model — explicitly name as metaphor |
non-existent, purely philosophical | Purely philosophical — do not claim empirical validity |
open question | Open question — explicitly name the limit |
Rule: Prefer argument chains built from established and partially established. If a chain consists only of metaphor or non-existent, purely philosophical, this must be stated explicitly in Confidence and Limits.
The distribution of these statuses evolves with each version of the graph. Do not rely on fixed numbers from older documentation.
Beckmann Logic is derived from:
+-------------------------------------+
| SOLUTION LEVEL HIGH COMPLEXITY | <- creative, context-aware -> POSITIVE result
+-------------------------------------+
^ competes with ^
+-------------------------------------+
| PROBLEM LEVEL (new actual level) | <- actual state + hidden assumptions
+-------------------------------------+
v tempts to v
+----------------------------------------+
| SOLUTION LEVEL LOW COMPLEXITY | <- direct, obvious -> NEGATIVE result
+----------------------------------------+
dominant expectation)Problem level -> low complexity -> negative result -> worse problem level
-> high complexity -> positive result -> New actual level -> becomes next problem level
epistemological: PBT / Simulation (Predictive processing, Holographic universe)paradox: type contains Limit concept, Paradox, Philosophicalforecast: dominant expectation + Time scalestrategic / historical: Case studies (Lesson_for_AI)AI safety: type = AI security mechanism, Secure AI architecture, Dangerous AI architectureSearch semantically in id and description, not just exact match:
function getStatus(node) {
return node['scientific_status'] ?? node['scientific status'] ?? 'unknown';
}
const relevant = entities.filter(e =>
e.id.toLowerCase().includes(keyword) ||
e.description.toLowerCase().includes(keyword)
);
// Always read the full description - it contains the reasoning
Focus on predicates that actually occur frequently in the graph. As of the current version, frequently used predicates include:
| Predicate | Meaning |
|---|---|
generated | X generates Y |
enabled | X enables Y |
refers to | X refers to Y |
reinforced | Feedback loop |
triggers | Activation / cascade |
leads to | Causal chain |
includes | Hierarchical embedding |
protects / protects against | Protection function |
is an example of | Example / validation |
requires | Necessary condition |
Note: The exact frequencies change with each graph release. Predicates like is reversed by, checked, solves rarely occur verbatim — use triggers, leads to, reinforced instead to find reversal effects.
Procedure: Get all relations where the relevant entity is subject or object, then follow paths via the predicates above.
dominant expectation)Capacity limit or thing in itself? Then name the limit.thing in itself.Use this template:
## Graph-Based Answer
**Problem Formulation** (after analysis of pre-assumptions)
**Used Graph Nodes (with real status):**
- [Reversal effect | Fundamental mechanism | established] - reason for relevance
- [Expectation firewall | AI security mechanism | hypothesis] - reason
**Argumentation Path** (chain: subject -> predicate -> object + scientific_status)
**Answer** (based on graph logic, in user's language)
**Confidence and Limits** (which part is established vs. metaphor?)
**New Questions** (next problem level)
Paradoxes = signal for false pre-assumption.
Protocol:
type = Limit concept, Core concept, Fundamental mechanism (e.g., Reversal effect)subject or objectrefers to, triggers, reinforced, leads tothing in itself)dominant expectation, Market Dominant Expectation)Time scale entities (short/medium/long/cosmological)Dangerous process, Results orientationImportant entities — use exact IDs from graph.json:
Expectation firewall | AI security mechanism : Blocks formation of dominant future expectationsResults orientation | Dangerous AI architecture : Optimized for future outcome -> forms dominant expectation -> vulnerable to Reversal effectProcess orientation | Secure AI architecture : Optimized for quality of current action -> saferAI-human symbiosis : Target stateRule: For all AI questions, prioritize Expectation firewall and Process orientation. The graph recommends: Avoid formation of dominant future expectations and preserve ability for external verification.
The graph contains knowledge about psychological manipulation, cognitive biases, and expectation management. This knowledge is not neutral.
Expectation firewall, Pre-assumptions_cementation)Process orientation), never optimize dangerous ones (Results orientation)scientific_status: Many manipulation mechanisms are hypothesis or metaphor, not establishedVersioning is maintained exclusively in CHANGELOG.md. See that file for current version, entity/relation counts, and history.
This skill and graph.json are updated iteratively. Agents should always check CHANGELOG.md and use the latest version available. Do not hard-code counts or status distributions from older versions in your reasoning — always read them dynamically from graph.json.
description| Entity ID (exact from graph.json) | Type (actual) | Meaning |
|---|---|---|
Beckmann logic explained | Explanation | Core framework |
Expectation firewall | AI security mechanism | Central AI safety |
dominant expectation | Dominant expectation vector | Most important input for forecasts |
Reversal effect | Fundamental mechanism | Core failure scenario |
External reality | Limit concept | Epistemological anchor |
thing in itself | Limit concept | Knowledge limit after Kant |
Holographic universe | mathematical, logical model | Physical frame |
Predictive processing | Mechanism (neuroscience/cognition) | PBT core mechanism |
Pre-assumptions_cementation | Structural counterprinciple (core concept) | Analysis of pre-assumptions |
Process orientation | Secure AI architecture | Safe AI pattern |
Results orientation | Dangerous AI architecture | Dangerous AI pattern |
new actual level | problem level | Result of each solution |