feat: add dashboard-aware presentation tools to cve-impact and fleet-inventory skills#131
feat: add dashboard-aware presentation tools to cve-impact and fleet-inventory skills#131TomerFi wants to merge 3 commits into
Conversation
…inventory skills Signed-off-by: Tomer Figenblat <tfigenbl@redhat.com>
|
[Critical] Text fallback path removed from The old Step 4 contained the complete text-based result handling:
These instructions are removed entirely by this PR. The new Step 4 instructs the agent to call The removed instructions should be preserved as a fallback branch (e.g. "If dashboard unavailable / falls back to text: …"). |
|
[Moderate] Asymmetric dashboard coverage across CVE flows The |
|
[Architectural] Consider a dedicated presentation skill Both skills now call dashboard MCP tools directly. This goes against the repo's core principle: "Skills encapsulate tools — never call MCP tools directly; always invoke skills." A dedicated
The trade-off is one additional skill file per dashboard type. |
@dmartinol The fallback is handled server-side — |
@dmartinol Good catch — flows 02 and 03 use a different tool ( |
@dmartinol The |
…ashboard support to flows 02 and 03 Signed-off-by: Tomer Figenblat <tfigenbl@redhat.com>
|
Pushed a new commit: feat: update skills for client-side dashboard data fetching and add dashboard support to flows 02 and 03
Recordings with skills on Cursor:
|
| **Scope**: devices=all (account-wide) | severities=all, most critical, or selected | remediation=available or does not matter | ||
|
|
||
| **Tool**: `vulnerability__get_cves` (single request; no offset pagination in API) | ||
| **Tools**: `vulnerability__get_cves` fetcing the data for analysis and `vulnerability__load_cve_dashboard` displaying an interactive dashboard |
| - `limit`: From HITL (default 20) | ||
|
|
||
|
|
||
| **Before** continuing further, invoke the dashbaord tool to initaite the dashbaord, and examin the instruction returning from the tool. |
Code reviewFound 3 issues:
Please run 🤖 Generated with Claude Code - If this code review was useful, please react with 👍. Otherwise, react with 👎. |
Fix spelling errors in dashboard-related flow files and fleet-inventory SKILL.md: dashbaord→dashboard, fetcing→fetching, initaite→initiate, examin→examine, succesful→successful, and load_cve_dashbaord tool name. Signed-off-by: Tomer Figenblat <tfigenbl@redhat.com>
|
Hey @dmartinol (or dmartinol's claude ;-) ). Regarding issues 1 and 2 (typos):
First, let me ease your mind — there's not a single LLM that won't be able to interpret "dashboard" from "dashbaord", especially when the tool itself is correctly named in All typos were fixed in 04bbce5. Regarding issue 3 (
I don't necessarily agree. As you noted yourself, I've added: Which clearly states That said, if it would make you feel comfortable, we can beef the instruction up, something like: What do you think? Regarding "Please run
A few things here:
Generated by @TomerFi with the help of AI tools to make sure this message is grammatically correct and delivers the idea. |
Summary
load_cve_dashboardto the cve-impact skill workflow, prerequisites, and dependenciesload_inventory_dashboardto the fleet-inventory skill workflow, prerequisites, and dependenciesThese presentation tools are implemented in insights-mcp #389. They detect UI support at runtime — rendering a dashboard on UI-capable clients or falling back to text on others.
For full context on the approach investigation and decision, see APPENG-5287 and the MCP UI Integration Strategy ADR.
Validation
Recordings
CVE Dashboard (cve-impact):
Fleet Inventory Dashboard (fleet-inventory):
Related tickets