{ "format": 1, "seat": "node-launcher", "scope": "node", "grain": "seat-list", "domain": "Core", "decision": "novox/hq ADR 0208", "verbs": [ { "name": "menu", "description": "Put a menu of choices in front of the operator and answer with the one chosen, or nothing when the menu was dismissed — the dmenu-compatible contract.", "input": { "properties": { "choices": { "description": "the lines to choose between, in order", "items": { "type": "string" }, "type": "array" }, "prompt": { "description": "what the menu asks (optional)", "type": "string" } }, "required": [ "choices" ], "type": "object" } }, { "name": "secret", "description": "Ask the operator for a value in a prompt that does not show what is typed, and answer it sealed to the key the asker gives — never in the clear — or cancelled when the prompt was dismissed or not answered in time.", "optional": true, "input": { "properties": { "module": { "description": "the module whose own secret is asked for", "type": "string" }, "node": { "description": "the machine the module runs on", "type": "string" }, "seal_to": { "description": "the asker's public sealing key: the answer is sealed to it", "type": "string" }, "secret": { "description": "the own secret's name", "type": "string" }, "timeout_seconds": { "description": "give up after this long (optional)", "type": "string" } }, "required": [ "module", "secret", "node", "seal_to" ], "type": "object" } } ] }