| name | comment |
| description | Comment skill — add comment to external ticket from wiki |
| risk_class | hard |
| confirm_action | comment.create |
Comment
Add a comment to an external ticket from the wiki.
Arguments
$ARGUMENTS — Path to the task page, optionally followed by the comment text (e.g., wiki/tasks/fix-login-bug.md "Great progress on this")
Behavior
Step 1 — Read the task page
Read the task page. Extract its backend reference (gh_ref, jira_ref, or asana_ref).
If no backend reference exists, inform the user: "This task has no backend reference. Push it first with /push."
Step 2 — Get comment text
If comment text was provided in $ARGUMENTS, use it. Otherwise, ask the user what they want to comment.
Step 3 — Request a confirm-token
This skill is risk_class: hard. The external write is performed
exclusively via rubber-ducky comment, which consumes the confirm-token
internally. Build the structured preview:
Action: comment
Backend: <backend-name>
Target: <ref>
Payload:
text: <comment text>
Request a token:
TOKEN=$(rubber-ducky --no-json confirm request \
--action <backend>.comment \
--preview "$PREVIEW_TEXT")
If the command exits non-zero, the user declined or the call failed —
stop here and tell the user the comment was not posted.
Step 4 — Execute the comment via rubber-ducky comment
Invoke the CLI verb with the token. It consumes the token, posts the
comment, increments comment_count, bumps updated, and appends the
audit-log line. A missing / expired / action-mismatched token causes
the verb to exit non-zero before any external call.
rubber-ducky --json comment <task-file> \
--backend <backend> \
--text "$COMMENT_TEXT" \
--confirm-token "$TOKEN"
Report failure to the user if the verb exits non-zero; do not retry
without a fresh token.
Step 5 — Append the comment text to the wiki body
The CLI already updated comment_count, updated, and the wiki log.
What it does NOT do is append the comment body to the task page's
## Comments section (the wiki body is a Markdown editor surface — the
CLI doesn't render comment formatting). Use the Edit tool to add:
**@<your-handle>** — <ISO-timestamp>
> <comment text>
at the end of the ## Comments section, then you're done.