Skip to content

URML (open robot intent language): a per-robot validated-intent layer beside Buzz's swarm language (request for comment) #120

Description

@idoco2003

Hi Buzz maintainers,

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. Buzz is also a language for robots, at a different layer -- it expresses collective swarm behavior that compiles down to per-robot execution. This is a language-to-language note, not a request to adopt anything.

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

Where the two sit: Buzz expresses the swarm's collective behavior; URML declares each robot's validated intent and the fleet's roster + cross-robot constraints. One natural composition: a Buzz program coordinates the swarm, while the per-robot actions it issues are URML primitives validated against each robot's capability manifest before dispatch. URML adds the typed, statically-checkable per-robot gate; Buzz stays the swarm language. No manifest ask, just a conversation about where each layer sits.

Two real questions: (1) is "Buzz coordinates the swarm, URML validates the per-robot intent it issues" a sensible layering? (2) Does URML's fleet roster + cross-robot deconfliction overlap or complement Buzz's swarm primitives, and which boundary is worth exploring first?

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

Thanks for Buzz; a purpose-built swarm language is exactly the kind of peer a per-robot intent layer wants to understand its boundary with.

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