Skip to content

Guide · Agent skill

How to use the Ask User Question agent skill

Updated · written with AI from the project's own documentation and checked against our catalogue data

The ask-user-question skill gives an AI agent a way to stop and ask you something through a pop-up modal in the app, rather than writing a question into a terminal you may not be watching. This guide explains what the skill does, how to install it from our ZIP download or the Claude apps, how to trigger it, and what it needs. By the end you will be able to set it up and understand where it helps and where it does not.

Ask User QuestionMemTensor/MemOS · Apache-2.0

Quick start

  1. 1Confirm requirements. Install Node.js and make sure the MemOS desktop app is running locally on port 9227 or your configured port.
  2. 2Download the ZIP. Download the ask-user-question ZIP from our page and review the files, including package.json, SKILL.md, src/index.ts and tsconfig.json.
  3. 3Unzip into a skills folder. Unzip the skill into ~/.claude/skills/ for all projects, or into .claude/skills/ inside one project.
  4. 4Or upload in the Claude apps. In the Claude apps, open Settings, go to Capabilities, and upload the skill under Skills.
  5. 5Ask for a check-in. Tell the agent to ask you before a risky action, such as deleting files or sending a message.
  6. 6Answer the modal. Pick one of the listed options or choose Other and type your answer, then let the agent continue.

What the Ask User Question skill makes the agent do

The skill exposes an MCP tool named AskUserQuestion. When the agent calls it, a modal appears in the UI with a question, optional choices, and an optional text box. The skill's instructions state that the user cannot see CLI or terminal output, so this tool is the only way the agent can reliably communicate with you during a task.

The agent is told to use it for clarifying questions before ambiguous tasks, asking preferences, and confirming actions before executing destructive or irreversible steps, such as deletion, financial actions or messaging.

  • Clarifying questions before starting an unclear task
  • Preference questions, for example how files should be organized
  • Confirmation before deleting, sending or spending
  • Approval for sensitive actions such as messaging or financial steps

Install the ask-user-question skill

Download the ZIP from our page. Unzip it into one of two locations: ~/.claude/skills/ for all your projects, or .claude/skills/ inside a specific project folder.

Alternatively, if you use the Claude apps, open Settings, go to Capabilities, and upload the skill under Skills.

The package contains package.json, SKILL.md, src/index.ts and tsconfig.json. The skill runs a bundled TypeScript MCP server, so Node.js must be installed and the @modelcontextprotocol/sdk package must be available as described in the requirements section.

  • Option A: unzip into ~/.claude/skills/ (personal, all projects)
  • Option B: unzip into .claude/skills/ in a project folder (that project only)
  • Option C: upload through Settings → Capabilities → Skills in the Claude apps

Check the requirements before you rely on it

The skill needs Node.js, because it runs the bundled TypeScript MCP server. It also needs the MemOS desktop app running locally, listening on a local port, which the source gives as 9227 by default. The modal is shown by that app, so if the app is not running, the question cannot appear.

The skill runs scripts and uses the network, so review the files before installing it.

  • Node.js (runs the bundled TypeScript MCP server)
  • The MemOS desktop app running locally, listening on port 9227 by default
  • The @modelcontextprotocol/sdk package

Trigger the skill with natural requests

You do not need a special command. Ask the agent for something where it would benefit from checking with you, or tell it directly that you want to be asked. The agent decides when to call the tool based on the skill description, which covers clarification, preferences and confirmation.

When you want to force a check, say so plainly, for example: ask me before you delete anything, or ask me how I want these files organized.

  • "Ask me before you delete anything in this folder."
  • "Ask me how I want my Downloads folder organized."
  • "Confirm with me before you send this email."

Example: confirming a deletion

The source includes an example where the agent asks before deleting duplicates. The tool call presents three choices: delete all, review first, or cancel. The user picks one in the modal, and the agent continues based on that answer.

Use custom answers when the choices do not fit. Include an option labelled Other, which lets the user type a response. When Other is selected, the reply arrives as User responded: followed by their text, and the agent is instructed to wait for and handle that text rather than assume a predefined choice.

AskUserQuestion({ "questions": [{ "question": "Delete these 15 duplicate files?", "header": "Confirm", "options": [ { "label": "Delete all", "description": "Remove all 15 duplicates" }, { "label": "Review first", "description": "Show me the list before deleting" }, { "label": "Cancel", "description": "Don't delete anything" } ] }] })

Understand the parameters and responses

Each question needs a question field. The header, options and multiSelect fields are optional. The header is shown as the modal title and should be 12 characters or fewer. Options are typically two to four choices. multiSelect defaults to false.

The tool returns one of four responses: a single selection, multiple selections when multiSelect is true, a custom typed response, or a message that the user declined to answer.

  • question (required): the question text
  • header (optional): short label, max 12 characters, shown as modal title
  • options (optional): selectable choices, 2 to 4 recommended
  • multiSelect (optional): allow several choices, default false
  • User selected: [label] for a single choice
  • User responded: [text] for a typed answer
  • User declined to answer the question. if the modal is dismissed

Tips and limits

Keep questions short and give each option a clear description, so you know what each choice will do before you click it.

Treat the skill as a prompt mechanism, not a safety guarantee. It only asks questions. The agent can still ignore the rule or misread your answer, so check important actions yourself.

  • Write one clear question per modal and keep options to two to four
  • Use a descriptive Other option when you want free text
  • Read the response carefully before the agent proceeds
  • Do not rely on it for unattended jobs

What people use it for

  • Asking how to organize a folder before the agent moves any files
  • Confirming deletion of duplicate files with a review-first option
  • Getting approval before the agent sends an email or message
  • Clarifying an ambiguous coding or writing task before work starts
  • Collecting a user preference, such as which option an agent should use in a workflow

Frequently asked questions

Is the ask-user-question skill free to use?

The source gives the licence as Apache-2.0. Check the repository for any other terms before commercial use.

What do I need to install ask-user-question?

You need Node.js, the @modelcontextprotocol/sdk package, and the MemOS desktop app running locally on port 9227 by default. The modal appears through that app.

Where do I put the skill files?

Unzip the ZIP into ~/.claude/skills/ for all projects, or into .claude/skills/ in a project folder. In the Claude apps you can instead upload it under Settings, Capabilities, Skills.

Why doesn't the question pop up?

The modal is displayed by the MemOS desktop app. Make sure that app is running locally and listening on the expected port, which defaults to 9227. Node.js and the MCP SDK must also be available.

Is this skill safe to run?

The skill runs scripts and uses the network, so review the bundled files before installing. It only asks questions and does not enforce safety, so the agent can still ignore the rule.

How does it compare to just letting the agent write a question in chat?

The source says the user cannot see CLI or terminal output, so text written by the agent may not reach you. This tool displays a modal in the UI, which is the stated reason for using it.

New agent skills, repos and AI tools — every week

The best new skills and open-source projects, the fastest-growing repos, and one free prompt. Five minutes to read. Unsubscribe anytime.

Our verdict

This skill suits people running an agent inside the MemOS desktop app who want it to check before deleting, sending or spending. It is a poor fit for unattended jobs, where the agent would wait for an answer that never comes, and it should not be treated as a safety enforcer on its own.

Download the skill