Summary
Three UX improvements to the amber-issue-handler.yml GitHub Action workflow to provide better feedback when Amber is processing issues and PRs.
1. Add 👀 reaction when the GitHub Action acknowledges a @ambient-code comment
When a comment containing @ambient-code is posted on an issue or PR, the GitHub Action should immediately add an 👀 (eyes) reaction to that comment. This gives instant visual feedback that the action has been triggered and is processing, similar to how CodeRabbit does it.
Where to change: In the handle-comment job, add an early step (before the Resolve context step or at the very beginning of Resolve context) that uses the GitHub API to add a reaction:
gh api repos/${{ github.repository }}/issues/comments/${{ github.event.comment.id }}/reactions \
-X POST -f content=eyes
This should also apply to the handle-issue-label job — react to the label event (or the issue itself) with 👀 to signal acknowledgement.
2. Improve the issue comment posted after ambient-code:auto-fix label is applied
Currently the Post-session labels and comment step (line 119-128) posts this comment after the session completes:
Session `session-xxxxx` created (phase: Running). PR will have the `ambient-code:managed` label.
Problems:
- The comment only appears once the session/PR is done (since
wait: 'true' is set on the action). It should be posted immediately when the issue is first processed, not after the session finishes.
- The comment includes a raw session UUID which isn't useful — it should include a clickable link to the session instead.
- The comment is posted by the GitHub Actions bot, not the ambient-code bot. Investigate if this can be changed (e.g. by having the ambient-action post the comment instead, or using a PAT associated with the ambient-code bot user).
Suggested improved comment format:
🤖 Amber is working on this issue. [View session](<PLATFORM_HOST>/projects/<NAMESPACE>/sessions/<SESSION_NAME>)
Implementation note: The PLATFORM_HOST secret and session name are available. The comment step needs to be moved before the Create session step (or split into two: one immediate acknowledgement, one post-session update). The session name is available from steps.session.outputs.session-name.
Since the action uses wait: 'true', an alternative approach is to restructure so that:
- An immediate comment is posted when the workflow starts (before session creation)
- The session link is added once the session name is known (this may require splitting the create+wait or using the API directly to create the session first)
3. Fix broken session links in PR bodies and comments
The session links that Amber includes in PR bodies and comments are currently broken. Instead of resolving the environment variables, they render as literal template strings:
https://github.com/ambient-code/platform/pull/${PLATFORM_HOST}/projects/${AG...ESPACE}/sessions/session-xxxxx
The issue is that the prompt instructs the agent to use $PLATFORM_HOST, $AGENTIC_SESSION_NAMESPACE, and $AGENTIC_SESSION_NAME in markdown links, but the agent is not properly expanding these variables when constructing the link text.
Where the link format is defined: Lines 104-105, 110, and similar in the prompt text:
🤖 [Ambient Session]($PLATFORM_HOST/projects/$AGENTIC_SESSION_NAMESPACE/sessions/$AGENTIC_SESSION_NAME)
The agent needs to evaluate these env vars and substitute them into the URL. The variables are passed via environment-variables on lines 116-117. The agent may be treating the $VAR syntax as literal text rather than shell variables. This needs debugging — it could be that the agent needs explicit instructions to read and substitute env vars, or the prompt needs to use a different notation.
Files to modify
.github/workflows/amber-issue-handler.yml — all three changes are in this file
Notes
- The
permissions block already includes issues: write which is needed for reactions.
- The GitHub Actions bot vs ambient-code bot attribution question (item 2) may not be solvable within the workflow alone — it depends on whether the
GITHUB_TOKEN can be replaced with a PAT or GitHub App token for the ambient-code bot.
Summary
Three UX improvements to the
amber-issue-handler.ymlGitHub Action workflow to provide better feedback when Amber is processing issues and PRs.1. Add 👀 reaction when the GitHub Action acknowledges a
@ambient-codecommentWhen a comment containing
@ambient-codeis posted on an issue or PR, the GitHub Action should immediately add an 👀 (eyes) reaction to that comment. This gives instant visual feedback that the action has been triggered and is processing, similar to how CodeRabbit does it.Where to change: In the
handle-commentjob, add an early step (before theResolve contextstep or at the very beginning ofResolve context) that uses the GitHub API to add a reaction:This should also apply to the
handle-issue-labeljob — react to the label event (or the issue itself) with 👀 to signal acknowledgement.2. Improve the issue comment posted after
ambient-code:auto-fixlabel is appliedCurrently the
Post-session labels and commentstep (line 119-128) posts this comment after the session completes:Problems:
wait: 'true'is set on the action). It should be posted immediately when the issue is first processed, not after the session finishes.Suggested improved comment format:
Implementation note: The
PLATFORM_HOSTsecret and session name are available. The comment step needs to be moved before theCreate sessionstep (or split into two: one immediate acknowledgement, one post-session update). The session name is available fromsteps.session.outputs.session-name.Since the action uses
wait: 'true', an alternative approach is to restructure so that:3. Fix broken session links in PR bodies and comments
The session links that Amber includes in PR bodies and comments are currently broken. Instead of resolving the environment variables, they render as literal template strings:
The issue is that the prompt instructs the agent to use
$PLATFORM_HOST,$AGENTIC_SESSION_NAMESPACE, and$AGENTIC_SESSION_NAMEin markdown links, but the agent is not properly expanding these variables when constructing the link text.Where the link format is defined: Lines 104-105, 110, and similar in the prompt text:
The agent needs to evaluate these env vars and substitute them into the URL. The variables are passed via
environment-variableson lines 116-117. The agent may be treating the$VARsyntax as literal text rather than shell variables. This needs debugging — it could be that the agent needs explicit instructions to read and substitute env vars, or the prompt needs to use a different notation.Files to modify
.github/workflows/amber-issue-handler.yml— all three changes are in this fileNotes
permissionsblock already includesissues: writewhich is needed for reactions.GITHUB_TOKENcan be replaced with a PAT or GitHub App token for the ambient-code bot.