Why Every Software Project Needs a Living Knowledge Graph
- doktormagnus

- Jun 27
- 2 min read
Large software projects inevitably become more difficult to maintain over time.
New developers join the project. Original design decisions are forgotten. Functions are duplicated. Documentation becomes outdated. Eventually, developers spend more time searching through code than developing new functionality.
Most documentation suffers from one fundamental limitation.
It becomes obsolete.
As the source code evolves, documentation slowly diverges from reality until developers no longer trust it.
Instead of treating documentation as something developers write manually, we asked a different question.
What if the source code itself became the documentation?

A Knowledge Graph for Software Projects
Our approach represents software projects as a continuously evolving graph database.
Python files, classes, functions, variables, modules, dependencies and documentation are transformed into connected graph objects rather than isolated source files.
This allows developers to explore the project semantically instead of navigating hundreds of directories manually.
Questions such as
Where is this function used?
Which modules depend on this class?
Which code has become redundant?
Which functions are never executed?
become graph queries rather than manual investigations.
AI Agents as Software Architects
Once the project has been represented as a knowledge graph, a completely new possibility emerges.
Instead of asking a language model to analyse thousands of source files every time, AI agents can retrieve exactly the relevant parts of the graph.
Each agent performs a specialized task.
One agent analyses dependencies.
Another detects redundant implementations.
A third identifies dead code.
Another generates technical documentation.
Yet another proposes architectural improvements.
Rather than replacing software developers, the agents continuously assist them by maintaining an up-to-date understanding of the entire project.
Local Large Language Models
Running these agents on a local Large Language Model provides several important advantages.
Source code never leaves the organization.
Sensitive projects remain confidential.
Developers obtain immediate responses without relying on external cloud services.
Combined with a graph database, the language model no longer depends solely on its context window. Instead, it receives structured information describing only the relevant parts of the project.
Automatically Generated Documentation
One particularly interesting consequence is documentation.
Instead of manually maintaining design documents, agents can automatically generate project documentation directly from the current software implementation.
For example, a workflow may consist of
Python source code
↓
Knowledge graph
↓
AI agents
↓
LaTeX generation
↓
PDF documentation
Whenever the project changes, the documentation evolves with it.
From Source Code to Living Knowledge
Software systems are becoming increasingly complex.
Maintaining a shared understanding of large codebases is rapidly becoming one of the largest challenges in software engineering.
We believe future development environments will combine graph databases, autonomous AI agents, and local language models into continuously evolving knowledge systems that help developers understand, maintain and improve software throughout its entire lifecycle.
Rather than documenting software manually, the software should continuously document itself.

Comments