Summary
Upstream v1.5.0 adds emoji reaction support across issues and pull requests via two layers:
Three new granular tools (gated behind FeatureFlagIssuesGranular / FeatureFlagPullRequestsGranular):
add_issue_reaction — add a reaction (+1, -1, laugh, confused, heart, hooray, rocket, eyes) to an issue or pull request
add_issue_comment_reaction — add a reaction to an issue or pull request comment by comment ID
add_pull_request_review_comment_reaction — add a reaction to a PR review comment by numeric comment ID
Optional reaction params on existing default tools:
add_issue_comment gains optional comment_id + content fields so an agent can react to a specific comment without enabling the granular toolset; body and comment_id/content are mutually exclusive on the same call
add_reply_to_pull_request_comment gains an optional content field for the same reason
The three standalone tools live in issues_granular.go and pullrequests_granular.go. The default-tool extensions live in issues.go and pullrequests.go. Three new toolsnap files are added, and the two existing compound-tool snaps are updated.
Upstream reference
Fork conflict
None. The fork's custom tools (issue_graph, set_project_item_status, add_issue_to_project, project field mutations) operate in entirely different areas. The reaction tools are purely additive.
Context
Reaction support was the last major missing surface for issue/PR interaction. Agents could read reaction counts (already in MinimalIssue.Reactions) but had no way to post reactions. The granular tools use client.Reactions.CreateIssueReaction, CreateIssueCommentReaction, and CreatePullRequestCommentReaction from go-github, all returning HTTP 201 with the reaction ID. The default-tool extensions reduce round-trips for agents that only need to react to a comment they just created.
Summary
Upstream v1.5.0 adds emoji reaction support across issues and pull requests via two layers:
Three new granular tools (gated behind
FeatureFlagIssuesGranular/FeatureFlagPullRequestsGranular):add_issue_reaction— add a reaction (+1,-1,laugh,confused,heart,hooray,rocket,eyes) to an issue or pull requestadd_issue_comment_reaction— add a reaction to an issue or pull request comment by comment IDadd_pull_request_review_comment_reaction— add a reaction to a PR review comment by numeric comment IDOptional reaction params on existing default tools:
add_issue_commentgains optionalcomment_id+contentfields so an agent can react to a specific comment without enabling the granular toolset;bodyandcomment_id/contentare mutually exclusive on the same calladd_reply_to_pull_request_commentgains an optionalcontentfield for the same reasonThe three standalone tools live in
issues_granular.goandpullrequests_granular.go. The default-tool extensions live inissues.goandpullrequests.go. Three new toolsnap files are added, and the two existing compound-tool snaps are updated.Upstream reference
Fork conflict
None. The fork's custom tools (
issue_graph,set_project_item_status,add_issue_to_project, project field mutations) operate in entirely different areas. The reaction tools are purely additive.Context
Reaction support was the last major missing surface for issue/PR interaction. Agents could read reaction counts (already in
MinimalIssue.Reactions) but had no way to post reactions. The granular tools useclient.Reactions.CreateIssueReaction,CreateIssueCommentReaction, andCreatePullRequestCommentReactionfrom go-github, all returning HTTP 201 with the reaction ID. The default-tool extensions reduce round-trips for agents that only need to react to a comment they just created.