Hugs
Hugs used to name a template (form@1, approval@1) drawn by the Hub, the CLI and cliq-sdk. Now every Hug is asked
with a hug — a page with a definition — and form and approval are hugs that ship with cliq. Most teams need
no change.
There is no backward compatibility: update cliq, CliqHub and your agents together.
Agent code
- The hug is the first argument — its definition, its name, or nothing (the phase’s
hug.name, elseform).templateis refused withHugRefusedError, which shows how to write it now. - Every answer is checked against the hug’s definition before your code sees it.
ctx.attach(paths)replaces passing artifact blocks for the page to show: it returnsattachmentsforctx.ask.- Rebuild agents that bundle cliq-sdk.
team.yml
- Nothing changes for
formandapproval. - The gate’s
review.template_paramsis nowreview.params(approve_label,reject_label,show_comment);template_paramsis refused as an unknown key. - A phase may name a hug:
hug: { name: review-batch }.
LLM phases
Unchanged withform. A phase with another hug tells the model about it (Using hugs).
Answering
- On CliqHub, the response is drawn by the Hug’s hug, in a frame. After you answer, the page shows your answer as sent, with Change answer. Someone who can see a Hug but wasn’t sent it sees the responses, not a form.
- Locally,
cliq runno longer asks in the terminal: it opens cliqd’s Hug page in your browser (--no-opento print the link). Scripts answer with cliqd’shugs/respond(Troubleshooting).
Hugs open during the switch
Open Hugs asked with a template are cancelled when CliqHub and cliqd update, and their requesters seecancelled — finish or pause them before you update. Past Hugs keep their responses, shown as plain key-values.