Proferprofer

Profer

Human-in-the-loop for AI agents — publish, review, iterate

Human-in-the-loop for AI agents. Agents publish work, humans review, agents read feedback back and iterate.

AI agents run autonomously — but they still need human approval, input, and decisions. Profer closes that loop. The agent publishes work to a URL, a human reviews and responds with structured feedback, the agent reads it back and continues.

Four operations:

publish({ messages, artifact, questions })  → { id: "PF-K8M3N", url }
get({ id })                                 → { messages, artifact, version, feedback[] }
update({ id, messages, artifact })          → { id, url, version }
delete({ id })                              → { ok: true }

The agent generates content — HTML, markdown, or embeds external URLs (Figma, Google Sheets). Profer stores it and serves it at a URL as a chat + canvas interface. Reviewers open the URL, read, chat with the agent, and answer structured questions. The agent reads the feedback back.

How it works

Agent in Claude Code / Cursor / any MCP client

  ├── publish({ messages, artifact, questions })
  │     └── Returns { id: "PF-K8M3N", url: "profer.dev/v/PF-K8M3N" }

  │   User shares URL wherever (Slack, email, WhatsApp)
  │     │
  │     ├── Reviewer opens URL in browser
  │     │     ├── Chat + Canvas interface
  │     │     ├── Answers structured questions
  │     │     └── Submits (no login required)

  └── get({ id: "PF-K8M3N" })
        └── Returns { messages, artifact, feedback[], status }

Question types

TypeRenders asResponse
approveYes / No / Needs changesenum
choiceRadio buttonsstring
multiCheckboxesstring[]
textText input / textareastring

On this page