README.md

June 11, 2026 Β· View on GitHub

PhyAgentOS

Cognitive-Physical Decoupling β€” A Session-Centered Runtime for Embodied Intelligence

Stars Forks

Python License Website PRs

English Β· δΈ­ζ–‡


πŸ“’ Changelog

VersionDateUpdate
v0.1.52026-06-11Cleaned protocol files and docs; game scenario separated to general-game-agent branch; main branch now focused on sim & real
v0.1.42026-06-5Optimize the user-friendly onboarding process; Communication Protocol Specification; More reasonable coding standards; Game Agent & Benchmarking ready
v0.1.32026-05-25Strict separation of PolicySkillRuntime / BuiltinSkillRuntime; Game Agent & Benchmarking ready
v0.1.22026-05-20Perception plugin system: SensorConfig / PerceptionConfig YAML + EnvironmentWriter auditable writeback
v0.1.12026-05-18Session-Centered Runtime MVP: DummySimTarget + DummyAdapter + DummyClient serial pipeline
v0.1.02026-04-29Hackathon baseline: plugin-based HAL, ReKep / SAM3 real-robot grasping & VLN full pipeline

πŸ€” Why PhyAgentOS?

Traditional "LLM-direct-to-hardware" approaches tightly couple reasoning to execution β€” switching robots means rewriting the entire pipeline. PhyAgentOS changes this through Cognitive-Physical Decoupling + Session-Centered Runtime:

πŸ”ŒOne Codebase, Any Hardware β€” Adding a new robot means implementing one Target Adapter (~100 lines); zero changes to the scheduling layer.
πŸ›‘οΈThree Safety Layers β€” Critic validation β†’ Strict Preflight β†’ Target-side SafetyGuard; mandatory for real-robot deployment.
πŸ“‹Fully Auditable β€” State, actions, and perception results are written to Markdown + YAML files; every step is traceable and reproducible.
πŸ”„Zero-Friction Migration β€” The same Session protocol runs identically across sim and real targets.

Architecture

β–² Session-Centered Runtime Architecture Overview


✨ Core Features

πŸ”„ Session-Centered Runtime WatchdogSupervisor β†’ SessionRunner β†’ SkillRuntime β†’ TargetSessionHandle execution pipeline, replacing the legacy Driver-Center architecture
🎯 Target-Configured Three target kinds β€” debug / simulation / real_robot β€” registered in TARGETS.md, adapters attached on demand
🧩 Adapter + Bridge TargetAdapter + PolicyAdapter + ActionBridge three-way decoupling with explicit observation/action contracts; AdapterPlan auto-composed, eliminating targetΓ—skill combinatorial explosion
⚑ Dual Skill Runtimes PolicySkillRuntime maintains policy closed-loop + BuiltinSkillRuntime manages agent interactive loop
πŸ›‘οΈ Strict Preflight Runtime validation checks (target / sensor / perception / adapter contract / action contract / tool); failures are rejected before execution starts
πŸ“ File Protocol Matrix TARGETS.md Β· SKILLRUNTIME.md Β· SESSIONS.md Β· ENVIRONMENT.md Β· LESSONS.md + external YAML configs
πŸ” Multi-Layer Safety Critic validation β†’ Preflight contract checks β†’ Target-side SafetyGuard β†’ Operator Override
🌐 Fleet Mode Multi-robot coordination with shared + per-robot workspaces, priority-based serial scheduling

πŸš€ 5-Minute Quick Start

1

Install

git clone https://github.com/PhyAgentOS/PhyAgentOS.git && cd PhyAgentOS
pip install -e .            # Python β‰₯ 3.11
pip install -e ".[dev]"     # Dev dependencies
2

Initialize Workspace

paos onboard
3

Start Agent

paos agent
4

Optional: Connect Runtime Services

# LIBERO benchmark TargetWS machine
MUJOCO_GL=egl PYTHONWARNINGS=ignore \
conda run -n liberopi python PhyAgentOS/runtime/targets/remote/libero/server.py \
  --host 0.0.0.0 --port 9002

# pi0.5 policy machine
conda run -n lerobot-pi python -m PhyAgentOS.runtime.policy.openpi.lerobot_pi0_server \
  --model-dir /path/to/pi05/checkpoint --host 0.0.0.0 --port 8000

paos agent and paos gateway create the runtime workspace and start the session watchdog automatically when runtime is enabled in config. Runtime targets are declared in TARGETS.md, executable runtimes in SKILLRUNTIME.md, and the Agent queues work by appending sessions to SESSIONS.md.

paos agent -m "run the configured LIBERO benchmark task"

πŸ—‚οΈ Protocol Files

Context LoadingFileOwnerPurpose
Always loaded into the agent system promptAGENTS.mdAgent workspaceProject-level operating rules for the agent
Always loaded into the agent system promptSOUL.mdAgent workspaceIdentity, high-level behavior, and assistant style
Always loaded into the agent system promptUSER.mdAgent workspaceUser preferences and durable profile notes
Always loaded into the agent system promptTOOLS.mdAgent workspaceTool usage policy and available tool guidance
Always loaded into the agent system promptSKILLS.mdAgent workspaceAgent-facing skill discovery and loading rules
Loaded when present; filtered by enabled runtime targets where applicableEMBODIED.mdAgent workspaceHuman-readable target capability descriptions
Loaded when present as state, not bootstrap policyENVIRONMENT.mdAgent/runtime workspaceCurrent target and scene/environment state
Loaded when present as memory/stateLESSONS.mdAgent workspaceOperational lessons and failure notes
Loaded when present as task stateTASK.mdAgent workspaceMulti-step task decomposition and progress
Runtime protocol; read before scheduling sessionsRUNTIME.mdRuntime workspaceInstructions for writing valid runtime sessions
Runtime protocol; read before scheduling sessionsTARGETS.mdRuntime workspaceEnabled targets, endpoint/adapter/config references, supported skill runtimes
Runtime protocol; read before scheduling sessionsSKILLRUNTIME.mdRuntime workspacePolicy/builtin skill runtime registry and execution contracts
Runtime queue/state; written by Agent and watchdogSESSIONS.mdRuntime workspacePending/running/completed execution sessions and results

SKILLS.md is for agent capabilities and skill discovery. SKILLRUNTIME.md is for runtime execution contracts; it is paired with TARGETS.md and SESSIONS.md.


πŸ“¦ Project Structure

PhyAgentOS/
β”‚
β”œβ”€β”€ PhyAgentOS/agent/          # Track A  ─  Planner / Critic / Memory
β”‚
β”œβ”€β”€ PhyAgentOS/runtime/        # Track B  ─  Execution Plane
β”‚   β”œβ”€β”€ watchdog/              #   WatchdogSupervisor
β”‚   β”œβ”€β”€ sessions/              #   SessionRunner / TargetSessionHandle
β”‚   β”œβ”€β”€ targets/               #   RolloutTarget (debugΒ·simΒ·real)
β”‚   β”‚   └── remote/libero/     #   LIBERO benchmark TargetWS server + proxy
β”‚   β”œβ”€β”€ skillruntime/          #   PolicySkillRuntime / BuiltinSkillRuntime
β”‚   β”œβ”€β”€ adapters/              #   TargetAdapter / PolicyAdapter / Bridge
β”‚   β”‚   β”œβ”€β”€ libero/            #   LIBERO target adapter
β”‚   β”‚   └── openpi/            #   OpenPI policy adapters
β”‚   β”œβ”€β”€ policy/openpi/         #   OpenPI client + LeRobot pi0-family server
β”‚   β”œβ”€β”€ perception/            #   Perception Runtime / EnvironmentWriter
β”‚   β”œβ”€β”€ preflight/             #   RuntimeCompatibilityPreflight
β”‚   └── schemas/               #   Pydantic Schema
β”‚
β”œβ”€β”€ configs/runtime/           # Sensor / Perception / Contract YAML
β”œβ”€β”€ scripts/                   # Utility scripts
β”œβ”€β”€ workspace/                 # Agent workspace; runtime files may share it by config
β”œβ”€β”€ docs/                      # Documentation
└── tests/                     # Tests

🏷️ Supported Targets

KindLocationExamples
πŸ›debugLocalecho / mock / dry-run β€” zero-hardware protocol pipeline validation
πŸ§ͺsimulationRemoteRoboCasa, LIBERO β€” benchmark evaluation & batch experience mining
πŸ€–real_robotRemoteFranka, Go2, XLeRobot, AgileX PIPER β€” real-world deployment

All targets are registered in TARGETS.md, identified by target_adapter:// URI. More examples & demos β†’ Project Website


πŸ“– Documentation

DocumentAudienceDescription
🌐 WebsiteEveryoneFull docs, architecture details, demos
πŸ“˜ User ManualUsersInstallation, deployment, and operation guide
πŸ“™ Dev GuideDevelopersSecondary development, hardware integration, plugin authoring

🀝 Contributing

PRs and Issues are welcome! Check our development roadmap here β†’ Dev Plan.


Built on nanobot

Jointly developed by Sun Yat-sen University HCP Lab & Peng Cheng Laboratory


SYSU Β Β Β  Pengcheng Β Β Β  HCP
MIT License Β· Copyright Β© 2025-2026 PhyAgentOS