Command Palette

Search for a command to run...

UnylyUnyly
Весь каталог

AsQu

БесплатноНе проверен

Async question queue for Claude Code and other agents, providing a desktop UI where questions accumulate so users can answer at their own pace without blocking

GitHubEmbed

Описание

Async question queue for Claude Code and other agents, providing a desktop UI where questions accumulate so users can answer at their own pace without blocking agent execution.

README

🇰🇷 한국어

AsQu

MIT License Rust Tauri 2 Claude Code and Codex Plugin

Async Ask Question Queue for AI coding agents
Questions queue up in a desktop app — answer at your own pace, no more idle waiting.

AsQu Screenshot

What is AsQu?

AsQu is an async question queue for AI coding agents such as Claude Code and Codex. Instead of the agent blocking on one question at a time, questions accumulate in a persistent desktop UI and you answer them whenever you're ready.

  • Single binary — no args starts the GUI, subcommands act as a CLI client
  • Named Pipe IPC — GUI auto-starts in the background on first CLI call
  • Multi-session — each Claude Code or Codex session gets its own panel in the UI
  • Auto-cleanup — sessions disappear once all their questions are answered

Installation

Prerequisites

  • Rust toolchain (edition 2024)
  • Platform dependencies for Tauri 2

Install

# 1. Install binary
cargo install --git https://github.com/inonego-ai/AsQu.git --bin asqu

# 2. Register marketplace
claude plugin marketplace add inonego-ai/AsQu

# 3. Install plugin
claude plugin install asqu

CLI Commands

Command Description
asqu ask '<json array>' Submit one or more questions
asqu wait [ids...] [options] Block until answered. No ids = entire session
asqu get [ids...] Non-blocking snapshot. No ids = entire session
asqu dismiss [ids...] [--reason <r>] Cancel questions. No ids = all pending in session
asqu open Show the desktop window
asqu shutdown Gracefully shut down the GUI process

ask

Always pass a JSON array (even for a single question).

asqu ask '[
  {"text":"Q1?","choices":["A","B"],"category":"Deploy","priority":"critical"},
  {"text":"Q2?","choices":[{"label":"X","description":"Detail for X"},{"label":"Y"}],"instant":true},
  {"text":"Q3?","header":"Note","context":"Background info","multiSelect":true}
]'

Fields: text (required), header, choices, allowOther, multiSelect, instant, context, category, priority.
choices accepts string arrays ["A","B"] or object arrays [{"label":"A","description":"..."}].

{ "result": "ask_ok", "ids": ["3", "4", "5"], "pending": 3 }

wait

asqu wait                  # block until all pending questions are answered
asqu wait 3 4              # block until specific questions are answered
asqu wait 3 --timeout 60   # timeout after 60 seconds
asqu wait --any            # unblock on first answer
{
  "result": "answers_ok",
  "answered": [{ "id": "3", "answer": { "selections": { "0": {} }, "text": "..." } }],
  "denied":   [{ "id": "4", "reason": "dismissed by user" }],
  "pending":  ["5"],
  "timedOut": true,   // present only when timeout elapsed
  "shutdown": true    // present only when app was quit while waiting
}

selections keys are choice indices ("0", "1", ...). Value may contain confidence (0–100) and note.

get

asqu get        # snapshot of all questions in this session
asqu get 3 4    # snapshot for specific IDs

Same response shape as wait. Use pending IDs to recover context after compaction.

dismiss

asqu dismiss           # cancel all pending questions in this session
asqu dismiss 3 4       # cancel specific questions
asqu dismiss 3 --reason "no longer needed"
{ "result": "dismiss_ok", "dismissed": ["3", "4"] }

How It Works

Claude Code  ──asqu ask──▶  Named Pipe  ──▶  GUI (persistent)
             ◀─ ids ───────                        │
             ──asqu wait──▶                   user answers
             ◀─ answers ───────────────────────────┘
  1. First CLI call auto-starts the GUI in the background if it isn't running.
  2. Session ID is read from agent environment variables such as CLAUDE_SESSION_ID or CODEX_THREAD_ID.
  3. asqu wait blocks until the user answers in the desktop UI, then returns JSON.
  4. Once all questions in a session are answered or dismissed, the session is removed automatically.

License

MIT

from github.com/inonego-ai/asqu

Установка AsQu

У этого сервера нет опубликованного пакета — он собирается из исходников. Открой репозиторий и следуй инструкции в README.

▸ github.com/inonego-ai/asqu

FAQ

AsQu MCP бесплатный?

Да, AsQu MCP бесплатный — установка в пару кликов через Unyly без оплаты.

Нужен ли API-ключ для AsQu?

Нет, AsQu работает без API-ключей и переменных окружения.

AsQu — hosted или self-hosted?

Self-hosted: сервер запускается локально на твоей машине командой из раздела установки.

Как установить AsQu в Claude Desktop, Claude Code или Cursor?

Открой AsQu на unyly.org, выбери вкладку своего клиента (Claude Desktop, Claude Code, Cursor) и нажми Install — конфиг сгенерируется автоматически, без правки JSON.

Похожие MCP

Compare AsQu with

Не уверен что выбрать?

Найди свой стек за 60 секунд

Автор?

Embed-бейдж для README

Похожее

Все в категории development