# rSkill manifest — clarify-ambiguity (kind: playbook) # # A symbolic S2 *decision procedure* the Reasoner reads (not a neural policy): # when the goal is underspecified or ambiguous, resolve it from memory/scene or # ask the operator a concise question before acting. Composes existing read-only # reasoner tools; carries no weights and never actuates directly (it gates the # downstream ExecuteRskill → Action chunk → C++ safety kernel). schema_version: "0.1" name: "OpenRAL/rskill-playbook-clarify_ambiguity" version: "0.1.0" license: "apache-2.0" role: "s2" kind: "playbook" # Embodiment-agnostic — a playbook is gated by capabilities_required, not by a # specific embodiment. Declared explicitly with the "any" wildcard (never an # empty list, which the manifest validator rejects). embodiment_tags: ["any"] # No capability flags: resolving an ambiguous reference is operator interaction # plus memory/scene queries — it works on any robot. The kept-empty mapping # `capabilities_required: {}` is the explicit "no flags" form; the read-only # scene/memory queries the SOP performs are gated at runtime by the composed # tools' own requirements, not by this playbook. capabilities_required: {} # A playbook actuates nothing itself. actuators_required: [] # Required field; pinned to 1 like the perception kinds (no Action rows). chunk_size: 1 # S2 planning budget (~0.2 Hz tick). CI enforces on the reference host. latency_budget: per_chunk_ms: 5000.0 description: > S2 decision procedure: when the goal is underspecified or ambiguous, resolve it from memory/scene or ask the operator a concise question before acting — never guessing on an irreversible action. Composes query_scene, memory_search, recall_object and emit_prompt. # RSkillAction.PLAN — registry/discovery metadata only (a playbook is role s2, # never an ExecuteSkill dispatch verb). actions: - "plan" objects: - "ambiguous reference" scenes: - "indoor" - "household" # Provenance citation (a playbook has no weights / upstream model repo, so a # citation is still required for publish-readiness — CLAUDE.md §6.4). The # The authoring decision record is private (OpenRAL/management); this points at # the public stub that explains where it lives. paper_url: "https://github.com/OpenRAL/openral/blob/master/docs/decisions.md" # The playbook decision-procedure contract. playbook: trigger: "the goal is underspecified or ambiguous — multiple candidate referents, a missing target or destination, or an unsafe-to-guess choice" body_uri: "./PLAYBOOK.md" composes_tools: - "query_scene" - "memory_search" - "recall_object" - "emit_prompt" done_predicate: "the goal has a single unambiguous interpretation, confirmed from memory/scene or by the operator" max_steps: 5