Skip to main content

Personal AGI Operating Core

Project description

🌌 MONAD (v0.1)

Personal AGI Operating Core

🇨🇳 简体中文 (Chinese)How It WorksInstallationArchitecture

Python OpenAI API ReAct Agent


MONAD is not a chatbot or a simple tool-matcher. It is a self-learning, objective-driven autonomous rational agent core.

Unlike traditional agents that rely on a predefined, hardcoded set of tools, MONAD acts like a rational entity with basic "instincts". It has no memory and no pre-loaded knowledge of how to perform specific tasks (like checking the weather or searching the web).

Instead, it autonomously learns how to complete your tasks by writing and executing Python code on the fly, and then saving those successful experiences as reusable skills.


🧠 Core Philosophy

  • File System as Database: The system itself has no memory of past sessions. It persists all learned information (axioms, environment knowledge, learned skills, user context, and experiences) directly to local Markdown files. No vector databases, no RAG, zero external dependencies.
  • Absolute Rationality: MONAD follows a strict reasoning loop (Analyze → Self-check → Learn → Execute → Reflect) to accomplish goals logically.
  • Self-Learning & Self-Evolving: Instead of shipping with 100 tools, MONAD ships with only 4 basic instincts (hands 🤲, voice 🗣️, eyes 👁️, dialogue 💬). It learns everything else by generating code.
  • LLM as a Command Executor: The LLM's own training data is disregarded. All factual information must be retrieved from the real world via code execution or web perception.
  • Search First, Ask Later: When stuck during execution (errors, missing packages, unfamiliar tools), MONAD's first instinct is to search the web via web_fetch, never to guess. But if the user's intent is unclear, MONAD asks the user first. In short: unclear query → ask user; execution problem → search first.

⚡ Basic Capabilities ("Instincts")

MONAD comes with only four built-in capabilities:

Capability Metaphor Description
🐍 python_exec Hands 🤲 Evaluate arbitrary Python code. Process data, call APIs, read/write files, install libraries—learn to do anything.
💻 shell Voice 🗣️ Execute shell commands on the host operating system.
👁️ web_fetch Eyes 👁️ Perceive the internet directly. Fetch web pages with 3 modes: fast (HTTP), stealth (anti-bot), browser (JS render). Powered by Scrapling.
🙋 ask_user Dialogue 💬 Ask the user for clarification when it truly cannot proceed independently.

📂 Knowledge Architecture

MONAD uses Categorized Memory instead of semantic retrieval (RAG).

knowledge/
├── axioms/          # System axioms & core behavioral principles
├── environment/     # World knowledge (e.g., search engine URLs, API endpoints)
├── user/            # Categorized user context (No RAG used here)
│   ├── facts.md     #   Objective facts & preferences (e.g., prefers Python)
│   ├── mood.md      #   Current state & mood
│   └── goals.md     #   Long-term goals & ongoing projects
├── skills/          # Auto-generated reusable Python skills
├── experiences/     # Execution logs and post-task reflections
├── protocols/       # Error handling protocols
└── tools/           # Documentation for the 4 basic capabilities

⚙️ How It Works

When you give MONAD an objective (e.g., "What is the weather in Hangzhou today?"):

  1. Analyze & Self-Check: The Reasoner loads the knowledge base and checks if a get_weather skill already exists.
  2. Plan & Act: If no skill exists, it writes a Python script using python_exec to call a free weather API (e.g., Open-Meteo).
  3. Observe & Adjust: It runs the code, observes the standard output. If it crashes, it analyzes the error, patches the code, and retries.
  4. Answer: It formats the final retrieved real-world data for the user.
  5. Reflect & Learn: After the task, the Reflection module analyzes what happened. The SkillBuilder then evaluates if the logic should be extracted into a new permanent skill file.

🚀 Installation

1. Install via pip (Recommended)

pip install monad-core

Alternatively, install from source:

git clone https://github.com/hscspring/Monad.git
cd Monad
pip install -e .

2. Configure your LLM On your first run, MONAD will initialize its workspace in ~/.monad/. Update ~/.monad/.env with your LLM Base URL, API Key, and Model name.


💻 Usage

Interactive Terminal Mode

Start the continuous ReAct agent loop from anywhere:

monad

Self-Test

Verify all modules load correctly and the LLM connection is functioning:

monad --test

Unit Tests

Run the test suite for all tools:

python -m pytest tests/ -v

Built with pure rational reasoning 💡

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

monad_core-0.1.1.tar.gz (28.9 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

monad_core-0.1.1-py3-none-any.whl (31.2 kB view details)

Uploaded Python 3

File details

Details for the file monad_core-0.1.1.tar.gz.

File metadata

  • Download URL: monad_core-0.1.1.tar.gz
  • Upload date:
  • Size: 28.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.2

File hashes

Hashes for monad_core-0.1.1.tar.gz
Algorithm Hash digest
SHA256 cb7a15322871a3121e696b97ba07f95b020344845a75e6a0427cae6738b99d72
MD5 08c941dbb325b343095e392caf11d32e
BLAKE2b-256 e36771a311ae4699787826bb45acd212789ece921e44bf5c1dca85a7fdc1a754

See more details on using hashes here.

File details

Details for the file monad_core-0.1.1-py3-none-any.whl.

File metadata

  • Download URL: monad_core-0.1.1-py3-none-any.whl
  • Upload date:
  • Size: 31.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.2

File hashes

Hashes for monad_core-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 38aa18d9fb3645af297f439fa746c9c598ded210ae7cf80a9871d0e1197bc143
MD5 ed67095e14c003e443a4a1cc6d7d946c
BLAKE2b-256 223a3c4e56a7b1b9faf99cab3b0d6dbb4b9fb1b9157c890e58f02fc168f33e05

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page