Skip to content

URML (open robot intent language): a validated-intent layer above BotBrain (request for comment) #11

Description

@idoco2003

Hi BotBrain community,

URML (urml.dev) is a small, Apache-2.0 language for describing robot intent: an intent becomes a typed primitive, validated against the robot's declared capabilities and a safety envelope, then dispatched. BotBrain is a modular brain for legged robots (teleop, nav, mapping on ROS 2), and URML is interesting as the validated-intent layer that sits above it and routes into its existing modules.

Nothing here asks the project to adopt, host, or maintain anything. This is a request for comment.

The mapping: the legged platform BotBrain drives declares its mobility (a legged drive type), its whole_body stability limits, and its named locations as a URML manifest. A high-level or natural-language command becomes a typed URML primitive, validated against that manifest, then routed to BotBrain's navigation or teleop path. URML is the typed gate and intent record; BotBrain stays the runtime that moves the legs.

Two real questions: (1) does a URML manifest for the legged platform (legged drive type + whole_body limits + locations) fit how BotBrain models its robot? (2) Is a validated-intent layer above the nav / teleop modules interesting, or already covered by something in the stack -- and which is the cleaner first seam?

Full write-up: https://github.com/URML-MARS/URML/blob/main/docs/rfcs/0494-botbrain-outreach.md

Thanks for BotBrain; a modular legged-robot brain is a natural place to ask where a validated-intent gate fits.

Ido Yahalomi (URML, greenvh@gmail.com)

AI-assisted prose, maintainer-reviewed before posting (see https://github.com/URML-MARS/URML/blob/main/VIBE.md). Human-only correspondence available on request.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions