# Ask Hephaestus

Ask Hephaestus about your work, discuss feedback, or decide what to try on your next review. An AI model writes its answers, and it can use permitted recent work and practice feedback as context. [Practice feedback](/next/user/ai-code-review.md) explains how that feedback is prepared.

![A conversation in which a developer asks Hephaestus why they got feedback, and Hephaestus explains the gap and suggests a How to verify section.](/next/img/user/ask-hephaestus/conversation.light.webp)![A conversation in which a developer asks Hephaestus why they got feedback, and Hephaestus explains the gap and suggests a How to verify section.](/next/img/user/ask-hephaestus/conversation.dark.webp)

## Who can use Ask Hephaestus

Ask Hephaestus is available to each workspace member when a workspace admin sets up a conversation model. It answers only within [your AI choice](/next/user/user-settings.md#your-ai-choice). You do not need to request access or sign in again. Instance admins who are not members cannot use Ask Hephaestus in that workspace.

These conditions apply in each workspace:

* **Ask Hephaestus is not set up in this workspace yet.** A workspace admin needs to set up a conversation model.
* **Ask Hephaestus is off for you.** You chose **No AI**. Select **Change your AI choice** to let Hephaestus answer again.
* **Choose which AI may handle your work.** This workspace needs your AI choice first.
* **Ask Hephaestus is not set up for your AI choice yet.** No workspace conversation model meets your choice.

For the last condition, a workspace admin can add a model, or you can change your choice. Slack direct messages follow the same rules. If the workspace has no conversation model, Hephaestus does not reply in Slack. In the other cases above, Hephaestus replies in Slack with the same reason instead of an answer.

## Your conversation

You have one conversation with Hephaestus in each workspace. The **Ask Hephaestus** page and the Ask Hephaestus panel on other pages show all of it. Your Slack direct message with Hephaestus shows only the messages that you wrote in Slack and Hephaestus's answers to them. It also shows the notes of your weekly digest.

Hephaestus can look back through the conversation, so you can return to an earlier topic at any time. To keep a side topic apart, [reply in a thread](#reply-in-a-thread).

## Ask Hephaestus a question

1. Open **Ask Hephaestus**.
2. In **Message Hephaestus**, enter a specific question, such as "What feedback did I get on my latest pull request?"
3. Press Enter to send it.
4. Ask a follow-up question if you need more detail.

Shift+Enter starts a new line. On a touch screen, Enter starts a new line. To send, select **Send message**, or press Cmd+Enter or Ctrl+Enter.

While Hephaestus answers, a status line shows what it is doing, such as *Reading your practice feedback…*. Hephaestus keeps working when you go to another page or close the tab. If it answers while the panel is closed, a dot appears on the **Ask Hephaestus** button.

If Hephaestus could not answer, the message says why. Select **Try again** to ask the same question again.

If Hephaestus did not get your message, it shows *Not sent.* and the reason. Select **Retry** to send it again, **Copy message** to keep the text, or **Delete message** to remove it.

### Observations, problems, and feedback in an answer

Hephaestus can point to one of your practice review observations or to one problem in your work. It can also show you feedback that a review prepared for your conversation. Each one appears below the answer in Hephaestus's own words. If it is about a piece of your work that you can see, it ends with **Your feedback on this work**. Select it to open your feedback for that work.

### Send while Hephaestus answers

You can send another message while Hephaestus answers. It waits under your message with *Queued. This is answered next.* Up to 3 messages can wait in the conversation, and up to 3 in each thread. If you send more, Hephaestus asks you to wait for an answer first.

### Stop an answer

1. To stop the answer in progress, select **Stop answer** beside **Send message**.
2. To stop a message that waits, select **Stop** under it.

Where you cannot write a message, such as in the thread of a deleted message, **Stop** is on the line under the answer.

Hephaestus keeps what it wrote before you stopped it. A waiting message that you stop stays in the conversation without an answer. In the app, you can also stop an answer that Hephaestus is writing in Slack.

## Reply in a thread

A thread keeps a side topic next to the conversation. Each message in the conversation can have one thread. This includes your messages, Hephaestus's answers, and weekly digests.

1. Under a message, select **Reply in thread**.
2. Enter your reply.
3. Press Enter to send it.

The thread opens beside the conversation, or over it on a small screen. In the Ask Hephaestus panel, **Back to the conversation** returns to the conversation. A message with a thread shows its replies, such as *3 replies*. Select it to open the thread.

Threads have one level, so a reply in a thread cannot start another thread. Hephaestus can answer in a thread while it answers in the main conversation. A thread that you start in Slack also appears in the app. A thread that you start in the app stays in the app.

## Rate, copy, and delete messages

The controls appear under a message when you point at it or move to it with the keyboard.

* **Helpful** and **Not helpful** rate one of Hephaestus's answers. Select your rating again to clear it.
* **Copy message** copies the text of the message.
* **Delete message** appears on your own messages. You cannot delete Hephaestus's messages.

To delete one of your messages:

1. Under the message, select **Delete message**.
2. In the dialog, select **Delete message**.

Hephaestus forgets the message. If Hephaestus has not answered it, Hephaestus does not answer it. You cannot undo this. The conversation shows *This message was deleted.* in its place. If you wrote the message in Slack, the message and Hephaestus's answer stay in Slack.

If the message had a thread, the replies stay. The thread shows *This message was deleted.* above them, and you can delete your own replies one at a time. You cannot reply in that thread.

Hephaestus does not read your emoji reactions in Slack. Use **Helpful** and **Not helpful** to rate an answer.

## Ask Hephaestus on other pages

On other pages of a workspace, the **Ask Hephaestus** button sits in the lower-right corner. It opens a panel with the same conversation as the **Ask Hephaestus** page.

1. Select the **Ask Hephaestus** button.
2. Enter your question.
3. Press Enter to send it.

Your message carries the page you opened the panel from, such as **From Practice profile**. Hephaestus uses that page to understand your question. To send a message without it, select **Do not send this page with your message**. The page comes back when you open another page.

Press Escape to close a thread in the panel, and again to close the panel. Select **Open full page** to continue on the **Ask Hephaestus** page, with the open thread.

## Questions to try

A conversation that has not started offers three example questions:

* "Which practices apply in this workspace?"
* "What does a pull request that meets this workspace’s practices look like?" In a GitLab workspace, it says merge request.
* "Why do this workspace’s practices matter?"

Select one to put it in the message field, then change it or send it. Hephaestus answers them from the practices themselves, so you can ask them before any review of your work.

After your first reviews, try questions like these:

* "What feedback did I get on my latest pull request?"
* "I disagree with this comment. Can we work through it?"
* "What could I try differently on my next review?"

A conversation with Hephaestus alone does not record a disagreement. To disagree with feedback, [respond to it on your Practice profile](/next/user/practice-profile.md#respond-to-feedback).

## Check the answer

An AI model writes each answer, so Hephaestus can misunderstand your work or repeat an incorrect observation. Its answers are suggestions, not decisions.

If an answer does not match the work:

1. State what looks wrong.
2. Point Hephaestus to the relevant comment, line, or explanation.
3. Ask it to reconsider with that evidence.

You and your human reviewers stay responsible for decisions about the work.

### Links in an answer

An answer links only to Hephaestus and to the services that your workspace connects, such as GitHub, GitLab, Slack, or Outline. Any other address shows as text, so you see where it points, but a click does not open it. The same rule applies to feedback text and to answers in Slack. Copy an address only if you trust it.

## Use Hephaestus in Slack

To talk to Hephaestus in Slack, your workspace needs a Slack connection, and you must have connected your Slack account.

1. Open a direct message to Hephaestus in that Slack workspace.
2. Send a question about your work or feedback.

What you write to Hephaestus in Slack is part of your one conversation. Hephaestus answers where you asked, in the direct message or in a Slack thread. Its first answer in your direct message, and in each thread, says "Hephaestus answers with an AI model and can be wrong." The reply quotes the observations, problems, and practice feedback that Hephaestus showed you. Thread replies include **Helpful** and **Not helpful** buttons.

A reply longer than Slack can show ends with a note, and the full answer is in Hephaestus. If an answer does not fully reach Slack, the app shows *Not fully delivered to Slack. The full answer is here.* under it. To stop an answer that Hephaestus writes in Slack, use [Stop answer](#stop-an-answer) in the app.

The app shows the whole conversation. Messages written in Slack carry a **Slack** marker there. Questions you ask in the app are never posted to Slack.

If you edit a message in Slack, Hephaestus stores the new text and the app marks it *(edited)*. Hephaestus does not answer the edited message again. If you delete a message in Slack, Hephaestus erases it too, and stops any answer to it.

Workspace admins can separately enable monitored channels as context. Monitoring starts only after Hephaestus posts a visible announcement. [User settings](/next/user/user-settings.md#slack) has the Slack privacy controls.

## Notifications

Hephaestus messages you in Slack only when you wrote to it in Slack. Questions you ask in the app get their answers only in the app. The only other notification is the [weekly digest](#weekly-digest), if you turn it on.

## Weekly digest

The weekly digest is a message in your conversation that lists what happened in your week. Hephaestus writes a recap from the feedback and changes that you can see. It does not rank you, score your week, or treat a quiet week as a failure. It is off until you turn it on. One switch covers each workspace where Hephaestus can answer you.

To turn it on:

1. Open **User settings**.
2. Under **Weekly digest**, turn on **Weekly digest**.
3. Under **Time zone**, check your time zone, and select another if needed.

If you have not set a time zone, Hephaestus uses your browser’s time zone when you turn the digest on.

Each Monday at 09:00 in your time zone, Hephaestus adds a digest of the week before to your conversation. If the digest cannot be written at 09:00, it can still arrive until 21:00 that Monday. A workspace gets a digest only if something happened there. Quiet weeks send nothing. Turning the digest off also stops a queued recap from being published.

A digest lists:

* **Feedback that reached you** that week, on your work or in your conversation. Each piece links to where it appeared.
* **What changed** on your Practice profile.
* How many pieces of feedback from that week wait unread on your Practice profile.

Feedback on your Practice profile is not in the list, because it reaches you only when you open it there. A piece of that feedback leaves the count when you read it there. If nothing is left to show, the digest says *There is no feedback or profile change to show here now.*

If a workspace admin withdrew feedback, the digest says so. Feedback that newer feedback replaced is marked. Reading the digest does not mark feedback as read.

When a digest is ready, you get a short note in Slack. If you have not connected your Slack account, the note arrives by email instead. If Hephaestus cannot reach you in Slack or by email, the digest is only in your conversation. Both notes say *Your weekly digest is ready* and link to the digest with **Open in Hephaestus**. Notes contain no feedback, counts, or practice names.

To go through the digest with Hephaestus, reply in its thread. In the app, select **Reply in thread** on the digest. In Slack, reply in the thread of the note.

To turn the weekly digest off, use any of these:

* In **User settings**, turn off **Weekly digest**.
* In the Slack note, select **Turn off weekly digest**, then **Turn off**.
* In the email, use the link to turn off the weekly digest.

## What Hephaestus can use as context

Hephaestus does not have a complete or live view of your project. What it can use depends on how your workspace is set up. Check the current status on GitHub or GitLab before you act on an answer.

* **Recent work.** Your recent pull requests, merge requests, and issues, and how much you reviewed. For open work, it also sees the latest check result, reviews, and comments, as Hephaestus last recorded them.
* **Recent feedback.** Feedback that reached you on your work or your Practice profile. It does not see feedback that waits for approval, or feedback that was rejected, withdrawn, withheld, or replaced.
* **Recent observations.** A sample of practice review observations about your work from about the last 90 days.
* **Code.** The repositories that your workspace monitors, with their history. Hephaestus only reads its own copy, which can lag behind your latest push. It cannot run, build, test, or change your code.
* **Other context.** Review requests and issues assigned to you, the page you asked from, and your workspace's practices. Also allowed Slack channel messages and selected Outline documents.

If Hephaestus finds no feedback for some work, it says that it cannot tell whether feedback exists. Your [Practice profile](/next/user/practice-profile.md) shows your current standing.
