Metadata-Version: 2.4
Name: feagi-core
Version: 2.1.14
Summary: Core SDK for building FEAGI agents, controlling the neural engine, and creating marketplace packages (without Brain Visualizer)
Author-email: "Neuraville Inc." <feagi@neuraville.com>
License: Apache-2.0
Project-URL: Homepage, https://www.neuraville.com/feagi
Project-URL: Source, https://github.com/feagi/feagi
Project-URL: Bug Tracker, https://github.com/feagi/feagi/issues
Project-URL: Documentation, https://github.com/feagi/feagi/tree/staging/docs
Classifier: Development Status :: 4 - Beta
Classifier: Intended Audience :: Developers
Classifier: Intended Audience :: Science/Research
Classifier: License :: OSI Approved :: Apache Software License
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Topic :: Scientific/Engineering :: Artificial Intelligence
Requires-Python: >=3.10
Description-Content-Type: text/markdown
License-File: LICENSE
License-File: NOTICE
Requires-Dist: numpy>=1.20.0
Requires-Dist: aiohttp>=3.9.0
Requires-Dist: toml>=0.10.2
Requires-Dist: requests>=2.31.0
Requires-Dist: feagi-rust-py-libs>=0.0.86
Requires-Dist: pyserial>=3.5
Provides-Extra: bv
Requires-Dist: feagi-bv<3.0.0,>=2.2.1; extra == "bv"
Requires-Dist: feagi-bv-linux<3.0.0,>=2.2.1; sys_platform == "linux" and extra == "bv"
Requires-Dist: feagi-bv-macos-arm64<3.0.0,>=2.2.1; (sys_platform == "darwin" and platform_machine == "arm64") and extra == "bv"
Requires-Dist: feagi-bv-macos-x86_64<3.0.0,>=2.2.1; (sys_platform == "darwin" and platform_machine == "x86_64") and extra == "bv"
Requires-Dist: feagi-bv-windows<3.0.0,>=2.2.1; sys_platform == "win32" and extra == "bv"
Provides-Extra: video
Requires-Dist: opencv-python>=4.9.0; extra == "video"
Provides-Extra: bluetooth
Requires-Dist: bleak>=0.21.0; extra == "bluetooth"
Requires-Dist: websockets>=12.0; extra == "bluetooth"
Provides-Extra: test
Requires-Dist: pytest>=7.0.0; extra == "test"
Requires-Dist: pytest-cov>=4.0.0; extra == "test"
Requires-Dist: pytest-asyncio>=0.21.0; extra == "test"
Requires-Dist: opencv-python>=4.9.0; extra == "test"
Requires-Dist: requests>=2.31.0; extra == "test"
Provides-Extra: dev
Requires-Dist: pytest>=7.0.0; extra == "dev"
Requires-Dist: pytest-cov>=4.0.0; extra == "dev"
Requires-Dist: pytest-asyncio>=0.21.0; extra == "dev"
Requires-Dist: black>=23.0.0; extra == "dev"
Requires-Dist: isort>=5.12.0; extra == "dev"
Requires-Dist: mypy>=1.0.0; extra == "dev"
Requires-Dist: ruff>=0.0.270; extra == "dev"
Requires-Dist: pre-commit>=3.0.0; extra == "dev"
Requires-Dist: opencv-python>=4.9.0; extra == "dev"
Provides-Extra: docs
Requires-Dist: mkdocs>=1.4.0; extra == "docs"
Requires-Dist: mkdocs-material>=9.0.0; extra == "docs"
Requires-Dist: mkdocstrings>=0.20.0; extra == "docs"
Requires-Dist: mkdocstrings-python>=1.0.0; extra == "docs"
Provides-Extra: full
Requires-Dist: feagi-bv<3.0.0,>=2.2.1; extra == "full"
Requires-Dist: feagi-bv-linux<3.0.0,>=2.2.1; sys_platform == "linux" and extra == "full"
Requires-Dist: feagi-bv-macos-arm64<3.0.0,>=2.2.1; (sys_platform == "darwin" and platform_machine == "arm64") and extra == "full"
Requires-Dist: feagi-bv-macos-x86_64<3.0.0,>=2.2.1; (sys_platform == "darwin" and platform_machine == "x86_64") and extra == "full"
Requires-Dist: feagi-bv-windows<3.0.0,>=2.2.1; sys_platform == "win32" and extra == "full"
Requires-Dist: opencv-python>=4.9.0; extra == "full"
Requires-Dist: bleak>=0.21.0; extra == "full"
Requires-Dist: websockets>=12.0; extra == "full"
Dynamic: license-file

# FEAGI Python SDK

**Build AI agents that learn like biological brains**

[![PyPI](https://img.shields.io/pypi/v/feagi)](https://pypi.org/project/feagi/) [![Python](https://img.shields.io/pypi/pyversions/feagi)](https://pypi.org/project/feagi/) [![Discord](https://img.shields.io/discord/1242546683791933480)](https://discord.gg/PTVC8fyGN8) [![License](https://img.shields.io/badge/License-Apache%202.0-blue.svg)](https://opensource.org/licenses/Apache-2.0)

---

## Installation Options

**Full Experience (Recommended for most users):**
```bash
pip install feagi
```
Includes:
- FEAGI itself, for running neuronal simulations 
- Brain Visualizer, for real-time 3D neural activity visualization (~196MB)
- Python bindings for FEAGI libraries (intended for advanced users)
- FEAGI Agent Python SDK for rapidly making agents for FEAGI

**Slim/Core (Recommended for Production):**
```bash
pip install feagi-core
```
Includes:
- Python bindings for FEAGI libraries (intended for advanced users)
- FEAGI Agent Python SDK for rapidly making agents for FEAGI

> **Note:** Both packages use identical imports (`from feagi import ...`)

---

## What is FEAGI?

**FEAGI (Framework for Evolutionary Artificial General Intelligence)** is a biologically inspired, modular neural execution engine designed for **embodied AI and robotics**. FEAGI enables spiking-neural-circuit-driven perception, cognition, and control across simulated and physical embodiments, with a strong emphasis on **real-time interaction, modularity, and cross-platform deployment**.

FEAGI serves as the core neural runtime behind **Neurorobotics Studio**, powering a growing ecosystem of reusable neural components ("brains"), tools, and integrations for robotics and physical AI.

### The FEAGI Python SDK

The FEAGI Python SDK provides the tools you need to:

- **Connect robots and devices** to FEAGI's neural network
- **Build learning agents** for robots, simulators, and games
- **Visualize neural activity** in real-time with Brain Visualizer
- **Control and manage FEAGI** from Python code
- **Interface with diverse embodiments** through standardized communication protocols

---

## Key Concepts

* **Neuromorphic by Design** – FEAGI is built as a neuromorphic framework inspired by biological neural computation. While it currently runs on conventional CPUs and GPUs, **native support for neuromorphic hardware is a near-term roadmap item**, enabling direct execution on event-driven, spike-based accelerators as they mature.

* **Embodied Intelligence First** – FEAGI is designed to control bodies (robots, agents, simulations), not just process static data.

* **Spiking Neural Networks (SNNs)** – Uses event-driven neuron firing rather than frame-based inference.

* **Modular Neural Architecture** – Neural circuits can be composed like building blocks (Lego-like micro-circuits).

* **Real-Time Closed Loop** – Continuous perception → cognition → action loop.

* **Cross-Simulator & Hardware Support** – One brain, many bodies.

---

## Quick Start

Get started with FEAGI in just 2 lines:

```bash
pip install "feagi"
feagi start 
feagi bv start
```

That's it! This installs FEAGI with Brain Visualizer, creates default configuration automatically, and launches the visualizer.


## Documentation

- [Documentation](https://github.com/feagi/feagi/tree/main/docs)
- [Examples](./examples/)

---

### Configuration Management

Initialize FEAGI environment with default configuration:

```bash
feagi init
```

This creates:
- Configuration: `~/.feagi/config/feagi_configuration.toml`
- Genomes directory: `~/Documents/FEAGI/Genomes/` (macOS/Windows) or `~/FEAGI/genomes/` (Linux)
- Connectomes directory: `~/Documents/FEAGI/Connectomes/` or `~/FEAGI/connectomes/`
- Logs and cache directories

**For complete configuration options and customization, see [DEPLOY.md](./DEPLOY.md).**

### Start FEAGI Engine from Python

```python
from feagi.engine import FeagiEngine

engine = FeagiEngine()
engine.load_config()  # Uses default config
engine.load_genome("my_brain.json")  # Loads from genomes directory
engine.start()
```

Or from command line:

```bash
feagi start --config ~/.feagi/config/feagi_configuration.toml --genome my_brain.json
```

### SDK Architecture

```
feagi/
├── agent/           # Agent framework (BaseAgent)
├── pns/             # Peripheral Nervous System (communication)
├── engine/          # Engine control
├── config/          # Configuration management
├── paths/           # Cross-platform path utilities
├── cli/             # Command-line tools
├── genome/          # Runtime genome manipulation (coming soon)
├── connectome/      # Brain state management (coming soon)
└── packaging/       # Marketplace packages (coming soon)
```


## Examples

See [`examples/`](./examples/) for complete agent implementations:
- Basic sensory agent
- Robot agent (SDK-based)
- Simulator agent (Webots)
- Vision processing

---


## Community & Support

- **Discord**: [Join our community](https://discord.gg/PTVC8fyGN8)
- **Issues**: [Report bugs](https://github.com/feagi/feagi-python-sdk/issues)
- **Neurorobotics Studio**: [Cloud platform](https://brainsforrobots.com)
- **Homepage**: [feagi.org](https://feagi.org)

---

## Requirements

- Python 3.10 or higher
- Works on Linux, macOS, and Windows

---

## License

Apache 2.0 - See [LICENSE](LICENSE) for details.

**Copyright 2016-2025 Neuraville Inc. All Rights Reserved.**

---

## About Neuraville

FEAGI is developed by **Neuraville**, a company focused on democratizing robotics and enabling the next generation of embodied AI through modular, biologically inspired intelligence systems.
