An AI system designed to exceed human-level problem-solving in general contexts by:
This project is still in development and has no current releases.
.env
file:
DATA_FOLDER_PATH
: The path to the main data directory where graph data and other files will be stored. Example:
DATA_FOLDER_PATH=/path/to/your/data/folder
Ensure that the necessary environment variables are set in the .env
file.
.env
file:
DATA_FOLDER_PATH=/path/to/your/data/folder
Build the project using the .NET CLI:
dotnet build
Run the project:
dotnet run --project reasoningEngine
Welcome to the Reasoning Engine project! To get started with contributing to or reviewing the project, please check out the dev
branch.
We welcome contributions from the community! Before you begin, please take a moment to review our CONTRIBUTING.md file for detailed guidelines on the development workflow, coding standards, and testing practices.
git clone https://github.com/conormckenzie/reasoning-engine.git
dev
branch:
git checkout dev
<name-of-contributor>/<feature-branch-name>
:
git checkout -b yourname/your-feature-branch
git add .
git commit -m "Your commit message"
git push origin yourname/your-feature-branch
dev
branch.The Reasoning Engine project is organized into several key directories and files, each serving a specific purpose. Below is an overview of the structure:
ReasoningEngine/
│
├── Core/
│ ├── Edge.cs # Defines the Edge class representing connections in the graph
│ └── Node.cs # Defines the Node class representing nodes in the graph
│
├── GraphFileHandling/
│ ├── GraphFileManager.cs # Manages file operations related to nodes and edges
│ ├── IndexManager.cs # Handles the index of nodes and edges
│ └── OneTimeSetup.cs # Performs one-time setup tasks like creating directories
│
├── Utils/
│ ├── DebugUtils/
│ │ ├── DebugOptions.cs # Provides options for debug settings
│ │ └── DebugWriter.cs # Provides methods for writing debug and regular messages
│ └── AI Template.md # Template for AI chatbots interaction prompts
│
├── Program.cs # The main entry point of the application
├── ReasoningEngine.csproj # Project file defining dependencies and build settings
└── .env # Environment variables configuration file
Node.cs: Defines the Node
class, which represents individual nodes within the graph. Each node has an ID and associated content.
Edge.cs: Defines the Edge
class, which represents connections between nodes in the graph. Each edge has a source node, a destination node, a weight, and additional content.
GraphFileManager.cs: Responsible for managing file operations related to nodes and edges. This includes saving and loading nodes and edges from disk.
IndexManager.cs: Manages the index of nodes and edges, keeping track of where each node and edge is stored on disk.
OneTimeSetup.cs: Handles initial setup tasks that need to be performed before the application starts, such as creating necessary directories and files.
DebugOptions.cs: Provides options for enabling or disabling debug mode in the application.
DebugWriter.cs: Utility class for writing debug and regular messages to the console, with options for inline or newline output.
Program.cs: The main entry point of the application. It handles environment variable loading, initializing core components, and providing a user interface through a menu.
.env: Contains environment variables required by the application, such as DATA_FOLDER_PATH
.
ReasoningEngine.csproj: The project file that defines the project's dependencies, build settings, and target framework.
The Reasoning Engine is an evolving project, with many exciting features and improvements planned for the future. There's nothing here right now, but filling out this area is in progress—check back soon for updates!
This project is licensed under the Creative Commons Attribution-NonCommercial 4.0 International (CC BY-NC 4.0) License.
For more details, you can view the full license here.
For any questions or issues, please reach out to [conor.mckenzie314@protonmail.com].