ask-compose

Structures question and context fields for asynchronous decision requests before calling add_ask.

3|1|Updated Dec 9, 2025
One-click install
npx skills add https://github.com/isizono/calm --skill ask-compose-isizono
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: ask-compose
Source: https://github.com/isizono/calm/tree/main/skills/ask-compose
Command: npx skills add https://github.com/isizono/calm --skill ask-compose-isizono

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve? When an AI session needs a human decision that can only be answered while the user is away or across sessions, poorly written questions stall work. This Skill enforces a fixed composition template for the question and context fields of CALM's add_ask tool so every asynchronous decision request is answerable in seconds, even in plain-text notification channels like LINE. ## Core Features & Use Cases - Fixed question template: Composes question with Overview, Options, and Recommendation sections within a 500-character limit, including guidance on how to trim content when over budget. - Structured context field: Places the target activity title first, followed by a Background section covering current task, history, impact scope (reversible/irreversible), and consequences of inaction. - Choices and goal binding: Maps option labels to the add_ask choices argument (max 3 items, 100 chars each) and binds the ask to goal conditions via update_goal when the ask blocks a human-owned condition. - Use Case: A nightly batch hits an API rate limit mid-run. The Skill guides composing an ask with two options (wait 60 minutes vs. abort until tomorrow), a clear recommendation, and background context, so the user can answer with a single letter from a notification. ## Quick Start Before calling add_ask to delegate a decision to the user, follow this skill's template to compose the question and context fields.

Frequently Asked Questions about ask-compose

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I compose an asynchronous decision request with add_ask?▼

Run this skill's template before calling add_ask: write Overview, Options, and Recommendation sections in the question field, and put the target activity title plus a Background section in context. Never write question or context directly without the template.

What should go in the question field versus the context field?▼

Question holds everything needed to decide on the spot: problem summary, options with pros and cons, and a recommendation, within 500 characters. Context holds the target activity title first, then background details like task history, impact scope, and consequences of inaction.

How do I keep the question under the 500 character limit?▼

Aim for about 150 characters for the overview, one 60-character line per option, and a 50-character recommendation. If still over, reduce to two options, keep only the decisive pros or cons, and move detailed comparisons into the context background.

When should I pass the choices argument to add_ask?▼

Pass choices when the ask has enumerable options, using each option's label text, up to 3 items of 100 characters each. Skip it for pure Yes/No asks with no listed alternatives; it defaults to null.

What is the difference between ask-compose and ask-distill?▼

ask-compose runs before add_ask to structure the question and context fields. ask-distill runs after add_ask, reviewing the similar_asks in the response to decide whether a recurring pattern warrants a meta ask.

When should I not create an ask at all?▼

Do not create an ask when the user is present and can answer immediately. Ask directly in the session instead, then record the outcome as a decision with decision-record rather than filing an asynchronous ask.