Skip to content

Conversation

devversion
Copy link
Member

Often times I find the AI Summary to be super helpful, but there are also cases where the summary is lacking critical information, or giving me too verbose information.

Every user might look for different things here. To address this need, and leverage the full power of AI for e.g. quantifying findings (instead of manual chore work, clicking through every app), this PR introduces an AI assistant chat.

Users can ask questions about a report and get answers! This is an extension of the AI Summary and can be extremely helpful.

image image

protected readonly models: Model[] = [
{id: 'gemini-2.5-flash', name: 'Gemini 2.5 Flash'},
{id: 'gemini-2.5-pro', name: 'Gemini 2.5 Pro'},
{id: 'gemini-2.5-flash-lite', name: 'Gemini 2.5 Flash Lite'},
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

In a follow-up, we could look into adding other models here. For now, this is a starting point.

[class.hidden]="!isAiAssistantVisible()"
[reportGroupId]="reportGroupId()"
(close)="isAiAssistantVisible.set(false)"
/>
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is the new code. The rest is apparently prettier formatting

Often times I find the AI Summary to be super helpful, but there are
also cases where the summary is lacking critical information, or giving
me too verbose information.

Every user might look for different things here. To address this need,
and leverage the full power of AI for e.g. quantifying findings (instead
of manual chore work, clicking through every app), this PR introduces an
AI assistant chat.

Users can ask questions about a report and get answers! This is an
extension of the AI Summary and can be extremely helpful.
Copy link
Collaborator

@AndrewKushnir AndrewKushnir left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks great, thanks @devversion 👍 I've left a couple of comments, but we can address them in a followup PR (I will proceed with the merge).

<span class="material-symbols-outlined">smart_toy</span>
</button>

<app-ai-assistant
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We can use @defer here :) The amount of code is quite small atm, so it's not super important, but having a @defer would allow us to have more code without affecting IPL time.

</button>

<app-ai-assistant
[class.hidden]="!isAiAssistantVisible()"
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Also a quick question: this assistant uses Gemini models atm, I'm wondering if we should have a check whether Gemini key is provided on the server and don't bring up the UI if not? For ex. via an API call like /api/assistant/config, which can return a JSON like {configured: true} and we can extend it later with more options in the future if needed.

@AndrewKushnir AndrewKushnir merged commit 704973c into angular:main Oct 2, 2025
3 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants