Skip to content

feat(apollo-react): add Skills resource type to AgentFlow canvas#850

Draft
CalebMartinUiPath wants to merge 1 commit into
mainfrom
feat/agentflow-skills-resource
Draft

feat(apollo-react): add Skills resource type to AgentFlow canvas#850
CalebMartinUiPath wants to merge 1 commit into
mainfrom
feat/agentflow-skills-resource

Conversation

@CalebMartinUiPath

Copy link
Copy Markdown

DRAFT - STILL ITERATING

Adds an opt-in third "+" add-button on the top edge of the agent node (alongside Memory and Escalations) for a new "skills" resource type.

  • New ResourceNodeType.Skills (top edge) with position/order entries
  • AgentFlowSkillsResource + SkillsResourceData added to the resource and node-data unions; AgentFlowResourceType now includes 'skills'
  • New enableSkills prop (mirrors enableMemory) gates the button so it is opt-in per consumer; off by default
  • skills label added to AgentNodeTranslations (+ default "Skills")
  • Clicking the button fires onAddResource('skills'); no node rendering paths are required since consumers drive the resulting UI
  • Storybook wrapper wired with enableSkills for visual testing

Adds an opt-in third "+" add-button on the top edge of the agent node
(alongside Memory and Escalations) for a new "skills" resource type.

- New ResourceNodeType.Skills (top edge) with position/order entries
- AgentFlowSkillsResource + SkillsResourceData added to the resource
  and node-data unions; AgentFlowResourceType now includes 'skills'
- New enableSkills prop (mirrors enableMemory) gates the button so it
  is opt-in per consumer; off by default
- skills label added to AgentNodeTranslations (+ default "Skills")
- Clicking the button fires onAddResource('skills'); no node rendering
  paths are required since consumers drive the resulting UI
- Storybook wrapper wired with enableSkills for visual testing

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Copilot AI review requested due to automatic review settings June 24, 2026 00:06
@github-actions

github-actions Bot commented Jun 24, 2026

Copy link
Copy Markdown
Contributor

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Review Updated (PT)
apollo-design 🟢 Ready Preview, Logs Jun 23, 2026, 05:10:49 PM
apollo-docs 🟢 Ready Preview, Logs Jun 23, 2026, 05:10:49 PM
apollo-landing 🟢 Ready Preview, Logs Jun 23, 2026, 05:10:49 PM
apollo-vertex 🟢 Ready Preview, Logs Jun 23, 2026, 05:10:49 PM

@github-actions github-actions Bot added the size:L 100-499 changed lines. label Jun 24, 2026
@github-actions

Copy link
Copy Markdown
Contributor

Dependency License Review

  • 1942 package(s) scanned
  • ✅ No license issues found
  • ⚠️ 2 package(s) excluded (see details below)
License distribution
License Packages
MIT 1712
ISC 89
Apache-2.0 55
BSD-3-Clause 27
BSD-2-Clause 23
BlueOak-1.0.0 8
MPL-2.0 4
MIT-0 3
CC0-1.0 3
MIT OR Apache-2.0 2
(MIT OR Apache-2.0) 2
Unlicense 2
LGPL-3.0-or-later 1
Python-2.0 1
CC-BY-4.0 1
(MPL-2.0 OR Apache-2.0) 1
Unknown 1
Artistic-2.0 1
(WTFPL OR MIT) 1
(BSD-2-Clause OR MIT OR Apache-2.0) 1
CC-BY-3.0 1
0BSD 1
(MIT OR CC0-1.0) 1
MIT AND ISC 1
Excluded packages
Package Version License Reason
@img/sharp-libvips-linux-x64 1.2.4 LGPL-3.0-or-later LGPL pre-built binary, not linked
khroma 2.1.0 Unknown MIT per GitHub repo, missing license field in package.json

@github-actions

Copy link
Copy Markdown
Contributor

📊 Coverage + size by package

Per-package coverage and bundle size on this PR. New-line coverage = of the source lines this PR adds or changes, the % hit by tests.

Package Coverage New-line coverage Packed (gzip) Unpacked vs main
@uipath/apollo-core 9.0% 43.82 MB 57.31 MB ±0
@uipath/apollo-react 34.7% 50.0% (4/8) 7.27 MB 27.58 MB +818 B
@uipath/apollo-wind 38.6% 324.3 KB 2.23 MB −15 B
@uipath/ap-chat 85.8% 43.36 MB 55.69 MB ±0

"Coverage" is each package's own coverage.include scope (e.g. apollo-core instruments only scripts/). "Packed"/"Unpacked" come from npm pack --dry-run and only cover built packages — "—" means not measured this run (package not affected / not built). "vs main" is the packed (gzipped) delta against the last successful main build (the package-sizes artifact from the Release workflow); "—" there means no main baseline was available this run. The baseline is main's latest build, not this PR's exact merge-base, so it includes any drift since the branch diverged. Packages with no vitest config are omitted.

@CalebMartinUiPath CalebMartinUiPath added the dev-packages Adds dev package publishing on pushes to this PR label Jun 24, 2026
@github-actions

github-actions Bot commented Jun 24, 2026

Copy link
Copy Markdown
Contributor

📦 Dev Packages

Package Status Updated (PT)
@uipath/apollo-react@4.52.0-pr850.cbdc856 🟢 Published Jun 23, 2026, 05:13:49 PM

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Pull request overview

This PR adds an opt-in Skills resource type to the AgentFlow canvas, introducing a third “+” handle on the top edge of the agent node (alongside Memory and Escalations) and propagating the new 'skills' type through the AgentFlow resource/type unions and Storybook wiring.

Changes:

  • Added ResourceNodeType.Skills and integrated it into handle position/order + auto-layout grouping.
  • Extended AgentFlow public types/unions to include 'skills' (resources, node data, initial selection, translations) and introduced enableSkills?: boolean.
  • Updated AgentNode/AgentFlow wiring to show the Skills top handle when enabled and to emit onAddResource('skills'); Storybook wrapper passes enableSkills.

Reviewed changes

Copilot reviewed 6 out of 6 changed files in this pull request and generated 6 comments.

Show a summary per file
File Description
packages/apollo-react/src/canvas/utils/auto-layout.ts Adds Skills to resource-handle grouping used by auto-layout.
packages/apollo-react/src/canvas/types.ts Introduces Skills resource/node-data types, new enableSkills flag, and translations key.
packages/apollo-react/src/canvas/components/AgentCanvas/nodes/AgentNode.tsx Adds Skills handle visibility and onAddResource('skills') dispatch.
packages/apollo-react/src/canvas/components/AgentCanvas/AgentFlow.tsx Threads enableSkills through AgentFlow and filters skills nodes when disabled.
packages/apollo-react/src/canvas/components/AgentCanvas/AgentFlow.stories.tsx Story wrapper now accepts/passes enableSkills.
packages/apollo-react/src/canvas/components/AgentCanvas/AgentFlow.constants.ts Adds Skills enum entry plus top-edge position/order configuration.

Comment on lines 183 to +186
| AgentFlowToolResource
| AgentFlowMemorySpaceResource
| AgentFlowA2aResource;
| AgentFlowA2aResource
| AgentFlowSkillsResource;
Comment on lines 583 to 587
context: string;
tools: string;
memory: string;
skills: string;
instructions: string;
enableMcpTools?: boolean;
/** TODO: Remove once memory feature is fully implemented */
enableMemory?: boolean;
/** Enables the "Skills" add-button on the top edge of the agent node. */
Comment on lines 36 to 44
const groups: Record<ResourceNodeType, AgentFlowCustomNode[]> = {
[ResourceNodeType.Context]: [],
[ResourceNodeType.Escalation]: [],
[ResourceNodeType.MCP]: [],
[ResourceNodeType.Tool]: [],
[ResourceNodeType.MemorySpace]: [],
[ResourceNodeType.A2A]: [],
[ResourceNodeType.Skills]: [],
};
Comment on lines 624 to 632
onAddResource={handleAddResourceRequest}
onRemoveResource={handleRemoveResource}
onSelectResource={handleSelectResource}
enableTimelinePlayer={mode === 'view' && enableTimelinePlayer}
enableMemory={enableMemory}
enableSkills={enableSkills}
enableStickyNotes={enableStickyNotes}
enableInstructions={enableInstructions}
stickyNotes={stickyNotes}
Comment on lines 216 to 220
const displayMemory =
enableMemory === true && (mode === 'design' || (mode === 'view' && hasMemory));
const displaySkills =
enableSkills === true && (mode === 'design' || (mode === 'view' && hasSkills));
const displayContext = mode === 'design' || (mode === 'view' && hasContext);
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

dev-packages Adds dev package publishing on pushes to this PR pkg:apollo-react size:L 100-499 changed lines.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants