Conversation
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
There was a problem hiding this comment.
Pull request overview
This PR adds planning documentation and implements an enterprise context feature for the SKYE learning path agent. The changes enable the system to pre-fill user profiles with mock company data, demonstrating how the agent could integrate with internal HR and knowledge systems.
Changes:
- Added planning documentation (TODO.md, SUMMARY.md, INTEGRATION_GUIDE.md) outlining the product roadmap and feature requirements based on client feedback
- Implemented EnterpriseSignalChain service to manage mock internal company profiles with roles, skills, and objectives
- Enhanced LearningPathAgent to accept enterprise context and inject it into the system prompt
- Added UI dropdown menu for switching between demo personas, allowing users to see different enterprise contexts in action
Reviewed changes
Copilot reviewed 6 out of 6 changed files in this pull request and generated 5 comments.
Show a summary per file
| File | Description |
|---|---|
| plan-todo/TODO.md | Actionable to-do list for upcoming features including learning scenarios, smart features, and UI improvements |
| plan-todo/SUMMARY.md | Roadmap summary comparing current state with future vision, highlighting key differentiators |
| plan-todo/INTEGRATION_GUIDE.md | Integration strategy documentation explaining the vision for connecting SKYE with internal company systems |
| lib/enterprise-service.ts | New service implementing mock enterprise data management with profile switching functionality |
| lib/chat-agent.ts | Added enterprise context support to inject company data into the agent's system prompt |
| components/agent-learning-path-chat.tsx | Added dropdown menu for persona switching with enterprise context integration |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
| const memory = agent.getMemory(); | ||
|
|
||
| // 1. Clear existing conversational data (to avoid mixing personas) | ||
| memory.objective = internalData.objective || null; |
There was a problem hiding this comment.
When internalData.objective is an empty string (as in the "default" profile on line 52), this will set memory.objective to an empty string instead of null. This is inconsistent with the expected null value for missing data. Consider using: memory.objective = internalData.objective && internalData.objective !== "" ? internalData.objective : null; or simply set the default profile's objective to undefined instead of an empty string.
| memory.objective = internalData.objective || null; | |
| memory.objective = internalData.objective && internalData.objective !== "" ? internalData.objective : null; |
| const handleRoleChange = (roleId: string) => { | ||
| if (!agent) return; | ||
| setSelectedRole(roleId); | ||
| EnterpriseSignalChain.apply(agent, roleId); | ||
|
|
||
| // Add a system-like message to the UI to show the context change | ||
| const roleNames: Record<string, string> = { | ||
| "sr-frontend-123": "Senior Frontend Developer", | ||
| "jr-ux-456": "Junior UI/UX Designer", | ||
| "backend-ai-789": "Backend Engineer", | ||
| "cs-manager-000": "Customer Success Manager", | ||
| "default": "Default Profile" | ||
| }; | ||
|
|
||
| setMessages(prev => [...prev, { | ||
| role: "assistant", | ||
| content: `*System: Enterprise context switched to ${roleNames[roleId]}. The agent now has access to your internal growth goals and history.*` | ||
| }]); | ||
|
|
||
| // Force update to refresh the profile panel with seeded memory | ||
| forceUpdate({}); | ||
| }; |
There was a problem hiding this comment.
When switching enterprise contexts using handleRoleChange, the conversation history is not reset. This means that if a user switches from one persona to another, the chat history will contain messages from both personas mixed together. Consider clearing the chat messages or creating a new agent instance when switching personas to avoid confusion and ensure clean conversation context for each role.
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
This PR adds a dedicated 'plan-todo' folder with synthesized client feedback, a roadmap summary, and an actionable to-do list for the next iteration based on suggestions from Katarina and Teemu.