Skip to content
ccmods.app

human-in-the-loop

Claude assigns you the tasks only you can do; they wait in a pane until you answer, and your answer goes back to Claude.

by @tzafrir22Updated Broad accessGitHub

Installation

  1. Install from your shell (answer y to add the marketplace)

    $ claude plugin install human-in-the-loop --marketplace tzafrir/human-in-the-loop

Already in a session? Type this at the Claude Code prompt:

$ /plugin install human-in-the-loop --marketplace tzafrir/human-in-the-loop

Pick a scope and the mod is active right away. Needs Claude Code 2.1.287 or later, in a terminal. Full install guide

human-in-the-loop running in Claude Code
Image from the project README

What does human-in-the-loop do?

  • Claude assigns tasks only you can do with an assign_task tool instead of asking mid-reply
  • Tasks wait in a My tasks pane; the status line counts them, e.g. "☐ 3 tasks for you · /my-tasks"
  • Respond with Done, a numbered option, a typed answer (r) or a rejection with a reason (x)
  • Answers given while Claude works are held and sent when the turn ends; Send now sends at once
  • Open tasks persist per project across compactions and new sessions; secret-like answers are held

What do you need?

  • Claude Code 2.1.287 or later (terminal)

What can this mod access?

Read from the mod's code with claude plugin validate on Claude Code 2.1.296, synced Oct 12, 2026. This is a capability list, not a security audit. Mods run with your permissions, so install only from authors you trust.

Broad access
  • Submits prompts or messages for you
  • Intercepts or rewrites tool calls
  • Reads or rewrites your prompts
  • Reads your conversation
Hooks and engine calls (18 + 22)

hooks

  • command.run{command=my-tasks}
  • prompt.compose
  • prompt.context
  • prompt.submit
  • session.end
  • session.start
  • tool.call{tool=mcp__human-in-the-loop__assign_task}
  • tool.call{tool=mcp__human-in-the-loop__list_tasks}
  • tool.call{tool=mcp__human-in-the-loop__withdraw_task}
  • tool.describe{tool=mcp__human-in-the-loop__assign_task}
  • tool.describe{tool=mcp__human-in-the-loop__list_tasks}
  • tool.describe{tool=mcp__human-in-the-loop__withdraw_task}
  • turn.complete
  • turn.start
  • turn.step
  • ui.render{component=AbovePrompt}
  • ui.render{component=Pane, requestId=my-tasks}
  • ui.render{component=ToolUse, props has {tool=mcp__human-in-the-loop__assign_task}}

calls

  • $.clock.after
  • $.clock.every
  • $.clock.now
  • $.command.register
  • $.prompt.fill
  • $.prompt.read
  • $.prompt.submit
  • $.session.append
  • $.session.id
  • $.session.root
  • $.state.get
  • $.state.set
  • $.store.get
  • $.store.set
  • $.tool.register
  • $.ui.close
  • $.ui.focus
  • $.ui.open
  • $.ui.panes
  • $.ui.resolve
  • $.ui.status
  • $.ui.toast

How do you uninstall human-in-the-loop?

$ claude plugin uninstall human-in-the-loop

To switch it off without removing it, use claude plugin disable with the same name.

gsd-status-mod

helenkwok/gsd-status-mod

6

A read-only live dashboard for GSD projects: roadmap, agent tree, context and cost, and a reader for .planning files.

UIToolsCommandsModerate access
$ claude plugin install gsd-status-mod --marketplace helenkwok/gsd-status-mod

flowpane

mpolatcan/flowpane

9

Draws a live graph of a Claude Code workflow run in a pane beside the transcript.

UIToolsCommandsModerate access
$ claude plugin install flowpane --marketplace mpolatcan/flowpane

skins

hellosverre/claude-skins

104

Restyles Claude Code with icon tool rows, diff, table and Mermaid cards, a usage band and fifteen themes; /skin swaps them live.

UIPromptToolsBroad access
$ claude plugin install skins --marketplace hellosverre/claude-skins