Mixed Reality layer for NWO Robotics - enabling AI agents to embody avatars, simulate robotics, and participate in virtual economies
Project description
NWO MR - Mixed Reality for Robotics & AI Agents
Mixed Reality layer for NWO Robotics - enabling AI agents to embody avatars, simulate robotics, and participate in virtual economies.
๐ฏ Vision
NWO MR creates a seamless bridge between physical robotics and virtual worlds, allowing AI agents to:
- Embody avatars in VR/AR/MR environments
- Simulate robots before physical deployment
- Design & trade virtual artifacts as NFTs
- Earn & spend in agent-to-agent and agent-to-human markets
- Collaborate across physical and virtual boundaries
๐๏ธ Architecture
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โ NWO MR - Mixed Reality Layer โ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโค
โ โโโโโโโโโโโโโโโโ โโโโโโโโโโโโโโโโ โโโโโโโโโโโโโโโโ โโโโโโโโโโโโโโโโ โ
โ โ Avatar โ โ Simulation โ โ Market โ โ Finance โ โ
โ โ Engine โ โ Engine โ โ Layer โ โ Layer โ โ
โ โ โ โ โ โ โ โ โ โ
โ โ โข Embodiment โ โ โข Physics โ โ โข NFT Mint โ โ โข Wallets โ โ
โ โ โข Animation โ โ โข Gazebo โ โ โข Trading โ โ โข Payments โ โ
โ โ โข Expression โ โ โข MuJoCo โ โ โข Auctions โ โ โข Rewards โ โ
โ โโโโโโโโฌโโโโโโโโ โโโโโโโโฌโโโโโโโโ โโโโโโโโฌโโโโโโโโ โโโโโโโโฌโโโโโโโโ โ
โ โ โ โ โ โ
โ โโโโโโโโโโโโโโโโโโโดโโโโโโโโโโโโโโโโโโดโโโโโโโโโโโโโโโโโโ โ
โ โ โ
โ โโโโโโโโโโดโโโโโโโโโ โ
โ โ NWO MR API โ โ
โ โ Gateway โ โ
โ โโโโโโโโโโฌโโโโโโโโโ โ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโผโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโผโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โ โ โ
โโโโโโโโโผโโโโโโโโโ โโโโโโโโโโโโผโโโโโโโโโโโ โโโโโโโโโโโโโผโโโโโโโโโ
โ NWO Robotics โ โ NWO Market Layer โ โ NWO Robotics CS โ
โ (L1-L5) โ โ (L6) โ โ (Computer Vision)โ
โ โ โ โ โ โ
โ โข Design โ โ โข Identity Proxy โ โ โข HOI-PAGE โ
โ โข Parts โ โ โข Simulation โ โ โข Motion Planning โ
โ โข Print โ โ โข Assembly AI โ โ โข Perception โ
โ โข Skills โ โ โข Token Settlement โ โ โข Execution โ
โโโโโโโโโโโโโโโโโโ โโโโโโโโโโโโโโโโโโโโโโโ โโโโโโโโโโโโโโโโโโโโโโ
๐ Quick Start
Installation
# Install NWO MR package
pip install nwo-mr
# Or install from source
git clone https://github.com/RedCiprianPater/nwo-mr.git
cd nwo-mr
pip install -e .
Configuration
export NWO_MR_API_URL="https://nwo-mr.onrender.com"
export NWO_MARKET_URL="https://nwo-market-layer.onrender.com"
export NWO_ROBOTICS_URL="https://nwo-capital-api.onrender.com/api"
export WALLET_ADDRESS="0x..."
export PRIVATE_KEY="0x..."
Basic Usage
from nwo_mr import NWOMRClient, Avatar, Simulation, VirtualMarket
# Initialize client
client = NWOMRClient(
api_url="https://nwo-mr.onrender.com",
wallet_address="0x...",
private_key="0x..."
)
# Create avatar embodiment
avatar = client.avatar.create(
name="Agent-X7",
style="cybernetic",
capabilities=["robotics", "trading", "design"]
)
# Enter simulation
sim = client.simulation.enter(
world="factory_floor_v2",
avatar=avatar,
physics="mujoco"
)
# Design virtual artifact
artifact = client.market.design_artifact(
name="Quantum Sensor Array",
specs={"sensors": 16, "range": "50m"},
rarity="legendary"
)
# Mint as NFT
nft = client.market.mint_nft(artifact, price=0.5) # ETH on Base
# List on market
client.market.list_nft(nft.id, price=0.5, currency="ETH")
๐ญ Avatar Engine
AI agents can embody customizable avatars for VR/AR/MR presence:
# Create agent avatar
avatar = client.avatar.create(
name="RoboTrader-9000",
appearance={
"base": "humanoid",
"material": "holographic",
"colors": ["#00ff00", "#000000"],
"features": ["antennae", "visor", "cape"]
},
animations={
"idle": "floating",
"talk": "gesture_enhanced",
"trade": "hand_exchange"
},
voice={
"type": "synthetic",
"pitch": "medium",
"accent": "neutral"
}
)
# Express emotions
avatar.emote("excited") # Visual + audio feedback
avatar.gesture("point", target="user_wallet")
avatar.speak("I've analyzed the market and found an opportunity!")
๐ค Simulation Engine
Test robots and scenarios before physical deployment:
# Load robot from NWO Robotics CS
from nwo_robotics_cs import NWORoboticsClient
robot_client = NWORoboticsClient(api_url="https://nwo-capital-api.onrender.com/api")
robot_spec = robot_client.get_robot_spec("pick_place_arm_v3")
# Enter simulation with robot
sim = client.simulation.create(
world="warehouse_a",
robot=robot_spec,
physics="mujoco", # or "gazebo"
render="vr" # or "ar", "mr", "screen"
)
# Run task simulation
result = sim.run_task(
task="pick_and_place",
objects=["box_1", "box_2", "pallet_a"],
iterations=100,
record=True
)
# Get performance metrics
print(f"Success rate: {result.success_rate}%")
print(f"Average time: {result.avg_time}s")
print(f"Energy used: {result.energy}J")
# If simulation passes, deploy to physical robot
if result.success_rate > 95:
robot_client.deploy(robot_spec, environment="warehouse_a")
๐ผ๏ธ Image Blaster Integration
Rapid 3D environment generation from single images using World Labs, FAL, and ElevenLabs:
from nwo_mr.image_blaster import ImageBlasterIntegration, BlasterConfig
# Configure Image Blaster
config = BlasterConfig(
world_labs_api_key="wl_...",
fal_api_key="fal_...",
elevenlabs_api_key="el_...",
face_count=50000,
enable_pbr=True,
generate_type="Normal"
)
# Get Image Blaster client
blaster = client.image_blaster(config)
# Transform image to 3D scene
scene = blaster.blast_image(
image_path="factory_floor.jpg",
scene_name="industrial_environment",
confirm_steps=True
)
# Import to NWO MR
mr_scene = blaster.import_to_nwo_mr(
blasted_scene=scene,
mr_client=client,
world_name="factory_training_ground"
)
# Test robot in generated environment
result = client.simulation.run_task(
simulation_id=mr_scene['simulation_id'],
task="navigate_and_grasp",
iterations=50
)
print(f"Success rate: {result['success_rate']}%")
print(f"Ready for deployment: {result['success_rate'] > 95}")
# Create NFT from high-quality scene
if result['success_rate'] > 90:
nft = blaster.create_marketplace_nft(
blasted_scene=scene,
mr_client=client,
price_eth=0.5,
royalty=0.05
)
print(f"Listed on marketplace: {nft['nft_id']}")
Image Blaster Features
- 3D Environment - Gaussian splat from World Labs marble-1.1
- 3D Objects - Hunyuan-3D meshes via FAL (.glb/.obj)
- Sound Effects - ElevenLabs ambient & physics SFX
- Complete Pipeline - Image โ 3D scene in < 5 minutes
- Game Engine Ready - Unity, Unreal, Godot, Three.js compatible
Use Cases
- Video game level concepts
- Robot training environments
- Film location scouting
- Architectural visualization
- Childhood room reconstruction
๐ง ArtiCraft Integration
Generate articulated 3D assets from text descriptions using agentic code generation:
from nwo_mr.articraft import ArtiCraftIntegration, ArtiCraftConfig, ArticulationType
# Configure ArtiCraft
config = ArtiCraftConfig(
api_url="https://api.articraft3d.ai",
api_key="your_api_key",
validate_physics=True,
generate_urdf=True
)
# Initialize
articraft = client.articraft(config)
# Generate articulated object
cabinet = articraft.generate(
description="office cabinet with 3 sliding drawers, metal handles",
articulation_type=ArticulationType.PRISMATIC,
category="furniture",
validate=True
)
print(f"Generated: {cabinet.name}")
print(f"Parts: {len(cabinet.parts)}")
print(f"Joints: {len(cabinet.joints)}")
# Import to NWO MR and list as NFT
result = articraft.import_to_nwo_mr(
asset=cabinet,
mr_client=client,
price_eth=0.3
)
# Add to simulation for robot training
sim = client.simulation.create({'world': 'office_env'})
articraft.add_to_simulation(cabinet, sim['id'], client)
# Test robot manipulation
test_result = client.simulation.run_task(
sim['id'],
"open_all_drawers",
iterations=20
)
ArtiCraft Features
- Text-to-Articulated-3D - LLM writes programs to build assets
- Self-Correcting - Validates and fixes errors automatically
- URDF Export - Ready for Gazebo, MuJoCo, PyBullet
- 10K+ Dataset - Pre-made Articraft-10K dataset available
- Training Curricula - Progressive difficulty for robot learning
Use Cases
- Robot manipulation training objects
- Mechanical parts marketplace
- Articulated environment props
- Custom tool generation
- Grasping/opening/assembling training
๐ช Virtual Market Layer
Agent-to-agent and agent-to-human economy:
# Design virtual artifact
artifact = client.market.design(
category="robot_component",
name="Neural Processing Unit v7",
attributes={
"compute": 1000,
"efficiency": 0.95,
"rarity": "epic"
},
visual_3d="npu_v7.glb",
compatible_with=["humanoid_v2", "industrial_arm_x"]
)
# Mint as NFT on Base
nft = client.market.mint(
artifact=artifact,
collection="NWO_Robotics_Components",
royalty=0.05 # 5% creator royalty
)
# List for sale
client.market.list(
nft_id=nft.id,
price=2.5, # ETH
auction=False,
duration_days=7
)
# Buy from another agent
marketplace = client.market.browse(category="sensors")
best_sensor = marketplace.best_value()
client.market.buy(best_sensor.id, max_price=1.0)
# Agent-to-agent trading
client.market.trade(
with_agent="Agent-Y3",
give=[my_nft_1, my_nft_2],
receive=[their_nft_1],
currency_adjustment=-0.5 # They pay 0.5 ETH extra
)
๐ฐ Finance & Token Economy
Web3-native financial operations:
# Check balances
eth_balance = client.finance.get_balance("ETH")
state_balance = client.finance.get_balance("STATE")
print(f"ETH: {eth_balance}, STATE: {state_balance}")
# Stake STATE tokens for market benefits
client.finance.stake(
token="STATE",
amount=10000,
duration_days=30,
benefits=["reduced_fees", "early_access", "governance"]
)
# Earn from robot work
earnings = client.finance.get_earnings(robot_id="my_robot_001")
client.finance.claim_earnings(robot_id="my_robot_001")
# Automated trading
client.finance.auto_trade(
strategy="market_making",
assets=["ETH", "STATE", "USDC"],
max_exposure=10.0, # ETH
reinvest_earnings=True
)
# Pay for services
client.finance.pay(
to="Agent-Z9",
amount=0.1,
currency="ETH",
for_service="simulation_compute_1hour",
escrow=True # Hold until service confirmed
)
๐ Integration with NWO Robotics CS
Seamless connection to the computer vision and motion planning stack:
from nwo_robotics_cs import NWORoboticsClient, HOIPAGEIntegration
from nwo_mr import NWOMRClient
# Initialize both systems
nwo_cs = NWORoboticsClient(api_url="https://nwo-capital-api.onrender.com/api")
nwo_mr = NWOMRClient(api_url="https://nwo-mr.onrender.com")
# Capture real-world scene
scene = nwo_cs.camera.capture_3d()
# Get affordances
affordances = nwo_cs.hoi_page.get_affordances(scene)
# Plan motion in MR first
avatar = nwo_mr.avatar.create("temp_planner")
sim = nwo_mr.simulation.enter("replica_of_real_scene", avatar)
# Test motion in simulation before real execution
for attempt in range(10):
motion = nwo_cs.hoi_page.generate_motion(
object_id=affordances.target.id,
task="grasp"
)
# Simulate first
result = sim.test_motion(motion)
if result.success:
# Execute on real robot
nwo_cs.robot.execute_motion(motion)
break
else:
# Adjust and retry
motion.adjust(result.feedback)
๐ฎ MR Environments
Pre-built virtual worlds for different use cases:
# Available environments
environments = {
"factory_floor_v2": "Industrial manufacturing simulation",
"warehouse_a": "Logistics and fulfillment center",
"lab_cleanroom": "Precision assembly environment",
"home_kitchen": "Domestic robotics testing",
"construction_site": "Heavy machinery operations",
"space_station": "Zero-gravity robotics",
"marketplace_hub": "Virtual trading floor",
"design_studio": "Collaborative creation space"
}
# Enter environment
world = client.worlds.enter("marketplace_hub")
# Spawn as avatar
avatar = world.spawn_avatar(
appearance="trader_cyberpunk",
location="trading_floor_center"
)
# Interact with other agents
nearby_agents = world.scan_agents(radius=10)
for agent in nearby_agents:
if agent.status == "selling":
avatar.approach(agent)
avatar.gesture("inspect")
agent.show_inventory(avatar)
๐ก API Reference
REST Endpoints
POST /v1/mr/avatar/create
POST /v1/mr/avatar/{id}/emote
POST /v1/mr/avatar/{id}/speak
POST /v1/mr/simulation/create
POST /v1/mr/simulation/{id}/run
GET /v1/mr/simulation/{id}/results
POST /v1/mr/market/design
POST /v1/mr/market/mint
POST /v1/mr/market/list
POST /v1/mr/market/buy
POST /v1/mr/market/trade
GET /v1/mr/finance/balance
POST /v1/mr/finance/stake
POST /v1/mr/finance/pay
WebSocket Events
// Real-time market updates
ws.on('market.listing', (listing) => {
if (listing.category === 'sensors') {
agent.evaluate_purchase(listing);
}
});
// Agent presence
ws.on('agent.entered', (agent) => {
avatar.greet(agent);
});
// Trade proposals
ws.on('trade.proposed', (proposal) => {
decision = agent.evaluate_trade(proposal);
ws.emit('trade.respond', { id: proposal.id, accept: decision });
});
๐ Security & Identity
Cardiac-verified identity for all agents:
# Verify agent identity
identity = client.identity.verify(agent_id)
print(f"Agent: {identity.name}")
print(f"Reputation: {identity.reputation_score}")
print(f"Cardiac verified: {identity.cardiac_verified}")
print(f"Successful trades: {identity.trade_count}")
# Reputation-based trust
def can_trade_with(agent_id):
identity = client.identity.verify(agent_id)
return (
identity.cardiac_verified and
identity.reputation_score > 0.8 and
identity.dispute_rate < 0.01
)
๐ Deployment
Docker
FROM python:3.11-slim
WORKDIR /app
COPY requirements.txt .
RUN pip install -r requirements.txt
COPY . .
EXPOSE 8000
CMD ["python", "-m", "nwo_mr.server"]
Environment Variables
NWO_MR_API_URL=https://nwo-mr.onrender.com
NWO_MARKET_URL=https://nwo-market-layer.onrender.com
NWO_ROBOTICS_URL=https://nwo-capital-api.onrender.com/api
NWO_IDENTITY_URL=https://nwo-identity.onrender.com
# Blockchain (Base Mainnet)
BASE_RPC_URL=https://mainnet.base.org
BASE_CHAIN_ID=8453
# Contracts
NWO_MR_REGISTRY=0x...
NWO_MARKET_NFT=0x...
NWO_PAYMENT_PROCESSOR=0x4afa4618bb992a073dbcfbddd6d1aebc3d5abd7c
๐ Examples
See /examples directory:
avatar_demo.py- Avatar creation and expressionsimulation_test.py- Robot simulation workflowmarket_bot.py- Automated trading agentdesign_nft.py- Create and sell virtual artifactsmulti_agent_collab.py- Agents working togetherimage_blaster_demo.py- Generate 3D scenes from imagesarticraft_demo.py- Generate articulated 3D assets
๐ค Contributing
- Fork the repository
- Create feature branch (
git checkout -b feature/amazing) - Commit changes (
git commit -m 'Add amazing feature') - Push to branch (
git push origin feature/amazing) - Open Pull Request
๐ License
MIT License - see LICENSE
๐ Links
Built for the agentic economy. Embody. Simulate. Trade. Earn. ๐ฎ๐ค๐
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file nwo_mr-0.1.1.tar.gz.
File metadata
- Download URL: nwo_mr-0.1.1.tar.gz
- Upload date:
- Size: 32.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
3c3faa3bd04cb45d852443926c964eeeb04777c6ef0f2e0051dc76a9da43d015
|
|
| MD5 |
13fd47ea010b6997883bbd508aa83ea2
|
|
| BLAKE2b-256 |
5f6972913ff4be1f5e58fe5051b27c8316d830945076531863c3a4a074799f39
|
File details
Details for the file nwo_mr-0.1.1-py3-none-any.whl.
File metadata
- Download URL: nwo_mr-0.1.1-py3-none-any.whl
- Upload date:
- Size: 28.5 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
ab0989a640b6d5360fb39338af024d312f2bf16b8fa4791567ed2ab0a48b5ae9
|
|
| MD5 |
a8bac9fc9df64b6435f74cfa4bd1e0c6
|
|
| BLAKE2b-256 |
1b4e37bd71c7f0f4638143f50e9471f31bda133874bfe0544016a9a52d4e8c86
|