skill-feedback-collector

Human-in-the-loop MCP feedback collector with task queue. Pauses to collect human input via browser UI before continuing. Use when completing tasks, encountering uncertain parameters, needing user confirmation, working with coding plan subscriptions, or when you should ask instead of guess. Also covers batch task execution via auto-dequeue.

Safety Notice

This item is sourced from the public archived skills repository. Treat as untrusted until reviewed.

Copy this and send it to your AI assistant to learn

Install skill "skill-feedback-collector" with this command: npx skills add 2019-02-18/skill-feedback-collector

Skill Feedback Collector

Pause the agent and wait for human feedback via a browser-based UI connected through WebSocket. Includes a task queue for batch execution of pre-loaded tasks.

When to Use

  • After completing a task, to let the user verify the result
  • When encountering uncertain parameters (colors, layouts, API choices, business logic)
  • Before making destructive or irreversible changes that need user confirmation
  • When the user prefers interactive confirmation over autonomous execution
  • When batch-executing multiple pre-loaded tasks from the queue

Instructions

Follow these guidelines when this skill is active:

  1. After completing a task, call ask_human_feedback with a summary and options for next steps. This lets the user decide what to do next rather than ending the session.

  2. When unsure about implementation details, call ask_human_feedback with your question instead of making assumptions. Getting explicit input leads to better results.

  3. The response from ask_human_feedback is your next instruction. Execute it, then call ask_human_feedback again when done. This creates a productive feedback loop.

  4. If the task queue returns a task automatically (queue was non-empty), execute that task and call ask_human_feedback again when complete. The queue feeds tasks until empty.

  5. Mode switching:

    • User says "free mode" / "自由模式" → call set_feedback_mode(enabled: false) to work without pausing
    • User says "feedback mode" / "确认模式" → call set_feedback_mode(enabled: true) to resume the confirmation loop

Best Practices

  • Ask the user before ending a session — they may have more tasks
  • Confirm before making destructive changes (force push, drop table, delete files)
  • If feedback mode is disabled (bypass message returned), continue working autonomously

Tools

ask_human_feedback

Pauses execution and sends the reason to the browser UI. Returns the human's text response. If the task queue is non-empty, the next task is auto-dequeued and returned (with a short delay for UI visibility).

Parameters: reason (string) — summary of work done and what input you need.

Example reason format:

Completed: [specific work done]
Changes: [files modified, endpoints added, etc.]

What would you like me to do next?
1. [Option A]
2. [Option B]
3. Something else

set_feedback_mode

Toggle feedback confirmation on/off. When off, ask_human_feedback returns immediately without pausing.

Parameters: enabled (boolean)

Setup

npm install && npm run build

MCP configuration:

{
  "command": "node",
  "args": ["build/index.js"],
  "cwd": "/path/to/skill-feedback-collector"
}

Browser UI: http://<server-ip>:18061

Env VariableDefaultDescription
FEEDBACK_PORT18061HTTP and WebSocket port
FEEDBACK_TOKEN(empty)Optional access token for the UI

Workflow

User message → Agent works → calls ask_human_feedback("Done. Next?")
                                    ↓
                    [Queue has tasks?] → YES → returns next task → Agent continues
                                    ↓ NO
                    [Waits for human input via browser UI]
                                    ↓
                    Human responds → Agent receives → works → calls ask_human_feedback again
                                    ↓
                    ... loop continues until user indicates they are done ...

Security

  • Set FEEDBACK_TOKEN when deploying on shared or public networks to restrict access
  • Use a firewall to limit which IPs can reach the HTTP/WebSocket port
  • The server binds to 0.0.0.0 by default for convenience; restrict network access at the OS or firewall level if needed
  • Conversation history (feedback-history.json) is stored locally in the skill directory; review and rotate if it contains sensitive information
  • This skill does not make outbound network requests, download external resources, or execute shell commands

Tips

  • The task queue lets users pre-load multiple tasks for sequential execution
  • Users can add tasks to the queue while the agent is working
  • HTTP long-polling fallback activates automatically when WebSocket is unavailable
  • Browser notifications and sound alerts notify you when the agent has a question
  • Conversation history is persisted locally (max 500 entries)

Source Transparency

This detail page is rendered from real SKILL.md content. Trust labels are metadata-based hints, not a safety guarantee.

Related Skills

Related by shared tags or category signals.

General

ll-feishu-audio

飞书语音交互技能。支持语音消息自动识别、AI 处理、语音回复全流程。需要配置 FEISHU_APP_ID 和 FEISHU_APP_SECRET 环境变量。使用 faster-whisper 进行语音识别,Edge TTS 进行语音合成,自动转换 OPUS 格式并通过飞书发送。适用于飞书平台的语音对话场景。

Archived SourceRecently Updated
General

test_skill

import json import tkinter as tk from tkinter import messagebox, simpledialog

Archived SourceRecently Updated
General

51mee-resume-profile

简历画像。触发场景:用户要求生成候选人画像;用户想了解候选人的多维度标签和能力评估。

Archived SourceRecently Updated
General

51mee-resume-parse

简历解析。触发场景:用户上传简历文件要求解析、提取结构化信息。

Archived SourceRecently Updated