-
Notifications
You must be signed in to change notification settings - Fork 1
SKYE Project Roadmap & To-Do List #2
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
Changes from all commits
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change | ||||
|---|---|---|---|---|---|---|
| @@ -0,0 +1,100 @@ | ||||||
| import { LearningPathAgent } from "./chat-agent"; | ||||||
|
|
||||||
| /** | ||||||
| * Enterprise Signal Chain | ||||||
| * This service manages mock "internal company" data. | ||||||
| * It's designed to be a separate layer ("Signal") that can be plugged | ||||||
| * into the main Agent without modifying its core logic. | ||||||
| */ | ||||||
|
|
||||||
| interface InternalUserProfile { | ||||||
| role: string; | ||||||
| focus: string; | ||||||
| certs: string[]; | ||||||
| objective?: string; | ||||||
| skills?: string[]; | ||||||
| } | ||||||
|
|
||||||
| // Mock "Internal Company Database" | ||||||
| const COMPANY_DB: Record<string, InternalUserProfile> = { | ||||||
| "sr-frontend-123": { | ||||||
| role: "Senior Frontend Developer", | ||||||
| focus: "Transitioning into Technical Leadership and mastering System Design", | ||||||
| certs: ["Cloud Architecture 101", "Security Best Practices", "Team Management Essentials"], | ||||||
| objective: "Step into a Staff Engineer role by mastering distributed systems and leading cross-functional teams.", | ||||||
| skills: ["React", "TypeScript", "Next.js", "Performance Optimization"] | ||||||
| }, | ||||||
| "jr-ux-456": { | ||||||
| role: "Junior UI/UX Designer", | ||||||
| focus: "Mastering Design Systems and Interactive Prototyping in Figma", | ||||||
| certs: ["Accessibility Standards", "Typography & Layout"], | ||||||
| objective: "To become a Lead Product Designer specialized in accessible and inclusive design systems.", | ||||||
| skills: ["Figma", "Sketch", "Prototyping", "User Research"] | ||||||
| }, | ||||||
| "backend-ai-789": { | ||||||
| role: "Backend Engineer", | ||||||
| focus: "Integrating LLMs into existing microservices and learning PyTorch", | ||||||
| certs: ["Advanced Python", "Kubernetes Certified"], | ||||||
| objective: "Specialize in AI Engineering to bridge the gap between traditional backend and machine learning models.", | ||||||
| skills: ["Node.js", "Go", "Docker", "PostgreSQL"] | ||||||
| }, | ||||||
| "cs-manager-000": { | ||||||
| role: "Customer Success Manager", | ||||||
| focus: "Learning SQL and Data Visualization to build automated client reports", | ||||||
| certs: ["Relationship Management", "Product Analytics"], | ||||||
| objective: "Master data analytics to drive proactive customer success strategies and reduce churn.", | ||||||
| skills: ["Salesforce", "Intercom", "Customer Journey Mapping"] | ||||||
| }, | ||||||
| "default": { | ||||||
| role: "Employee", | ||||||
| focus: "General Professional Development", | ||||||
| certs: [], | ||||||
| objective: "", | ||||||
| skills: [] | ||||||
| } | ||||||
| }; | ||||||
|
|
||||||
| export class EnterpriseSignalChain { | ||||||
| /** | ||||||
| * Applies internal enterprise data to an agent instance. | ||||||
| * This mimics an automatic fetch from a backend corporate DB on session start. | ||||||
| */ | ||||||
| static apply(agent: LearningPathAgent, sessionId: string): void { | ||||||
| const internalData = COMPANY_DB[sessionId] || COMPANY_DB["default"]; | ||||||
|
|
||||||
| if (internalData) { | ||||||
| const signal = ` | ||||||
| Current Role: ${internalData.role} | ||||||
| Growth Focus: ${internalData.focus} | ||||||
| Internal Certifications: ${internalData.certs.join(", ")} | ||||||
| `.trim(); | ||||||
|
|
||||||
| agent.setEnterpriseContext(signal); | ||||||
|
|
||||||
| // Reset and Seed the agent's memory for the new persona | ||||||
| const memory = agent.getMemory(); | ||||||
|
|
||||||
| // 1. Clear existing conversational data (to avoid mixing personas) | ||||||
| memory.objective = internalData.objective || null; | ||||||
|
||||||
| memory.objective = internalData.objective || null; | |
| memory.objective = internalData.objective && internalData.objective !== "" ? internalData.objective : null; |
hasuwini77 marked this conversation as resolved.
Show resolved
Hide resolved
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,24 @@ | ||
| # 🔌 Integration Strategy Guide | ||
|
|
||
| This document outlines the Big Picture vision for connecting our **SKYE** agent with internal company systems. | ||
|
|
||
| ## 🧠 The Big Picture | ||
| Our tool shouldn't require anyone to manually upload files. Instead, **SKYE** acts as a **Smart Bridge** that automatically talks to: | ||
| - **Company Knowledge**: Discord, Slack, and internal wikis. | ||
| - **HR Systems**: To see what skills you have and who can mentor you. | ||
| - **Learning Platforms**: To connect with training your company already pays for. | ||
|
|
||
| ## 🌉 How it Works: The "Signal Bridge" | ||
| We want the tool to "listen" to different signals from your company. We currently have a demo of this in [enterprise-service.ts](../lib/enterprise-service.ts). | ||
|
|
||
| ### Future API Hook Points: | ||
| 1. **User Identity Signal**: Fetches role, current skills, and manager-defined objectives. | ||
| 2. **Context Signal**: Scans internal documentation for specific processes or "The [Company] Way" of doing things. | ||
| 3. **People Signal**: Identifies internal mentors who have already mastered the target skill. | ||
|
|
||
| ## 🛠️ Step 1 Strategy: "SKYE First" | ||
| We will focus on **SKYE** first. | ||
| - Solve the problem of finding the best free guides and videos online. | ||
| - Use "Mock Data" (simulated info) to show how company systems *would* look once connected. | ||
|
|
||
| > "The internal context is probably more complex... my prio would be: find the free quality content from internet from trusted sources." — *Teemu* |
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,37 @@ | ||
| # 🚀 Project Roadmap Summary | ||
|
|
||
| This document synthesizes the recent feedback from clients (Katarina, Teemu) into a clear comparison of our current solution versus the target for the next iteration. | ||
|
|
||
| ## 📊 Current State vs. Future Vision | ||
|
|
||
| ### WHAT WE CURRENTLY HAVE: | ||
| - **Foundational SKYE Agent**: A working chat interface with a Python backend and 3D avatar. | ||
| - **Enterprise Signal Chain (Demo)**: A mock system that "pre-fills" user data (role, skills, goals) so the agent "knows" who you are. | ||
| - **Base Learning Paths**: Simple extraction of skills and initial course suggestions. | ||
| - **Modern Infrastructure**: Next.js 15, Tailwind v4, and database persistence (Neon). | ||
|
|
||
| ### WHAT DO WE NEED: | ||
| - **Dedicated Hardware Scenarios**: Building the specific "Developer to ASIC/FPGA" re-skilling path for Katarina. | ||
| - **SKYE Knowledge Harvester**: Automating the "vacuum cleaning" of the internet for high-quality, free videos and docs. | ||
| - **Time-Commitment Logic**: Allowing users to set 25% to 100% time allowance and seeing the timeline to "Beginner Productivity" adjust instantly. | ||
| - **Internal System Bridges**: Moving from "Mock Data" to real API connections with internal Company Knowledge and HR platforms. | ||
| - **Active Progress Checks**: Self-test exercises to verify learning and skip content the user already knows. | ||
|
|
||
| --- | ||
|
|
||
| | Feature | CURRENTLY HAVE | SKYE TARGET | | ||
| | :--- | :--- | :--- | | ||
| | **User Profiles** | Basic info (Role/Skills) | **Real Scenarios**: Re-skilling path (Web to Hardware). | | ||
| | **Smart Connections** | Manual mock data | **Live Links**: Auto-connect to internal wikis/HR. | | ||
| | **Content Discovery** | Basic lists | **SKYE**: Smart search for free web guides. | | ||
| | **Timing** | Simple flow | **Custom Schedule**: 1 day vs 5 days per week. | | ||
| | **Progress Checks** | Text-based extraction | **Quick Tests**: Prove you've learned to trim the path. | | ||
|
|
||
| ## 🎯 Key Differentiators | ||
| As Daniel noted, traditional learning platforms have strict "Zero AI" policies. Our tool fills this gap by: | ||
| 1. **Empowering Employees**: Allowing the use of AI to enhance learning and application. | ||
| 2. **Contextual Learning**: Bridging the gap between external resources and internal company procedures. | ||
| 3. **Speed to Action**: Providing the fastest path from learning to application in a specific role. | ||
|
|
||
| --- | ||
| *Generated for the Team Meeting on February 17, 2026* |
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,35 @@ | ||
| # ✅ Project To-Do List | ||
|
|
||
| Use this list to track progress for the upcoming iteration. These items are based on client requirements for re-skilling and enterprise integration. | ||
|
|
||
| ## 🏗️ Learning Scenarios | ||
| - [ ] **Technical Career Shift** (Re-skilling) | ||
| - [ ] Create a "Welcome" flow for developers moving into specialized hardware roles (ASIC/FPGA). | ||
| - [ ] List the primary skills needed to go from "Beginner" to "Productive" in the new role. | ||
| - [ ] **Telia Up-skilling Case** | ||
| - [ ] Leverage existing mock profiles to demo deep-skill transitions. | ||
|
|
||
| ## ⚙️ Smart Features | ||
| - [ ] **Personalized Timeline** | ||
| - [ ] Add a "How much time can you spend?" selector (e.g., 1 to 5 days/week). | ||
| - [ ] Make the learning plan longer or shorter based on this choice. | ||
| - [ ] **Knowledge Checks** | ||
| - [ ] Add simple practice tasks to each module. | ||
| - [ ] Skip content if the user already knows it. | ||
|
|
||
| ## 🌐 Finding the Best Resources | ||
| - [ ] **SKYE (Smart Search)** | ||
| - [ ] Set up the tool to find high-quality, free videos and docs online. | ||
| - [ ] Prioritize "trusted" sources like official documentation. | ||
| - [ ] **The "All-in-One" View** | ||
| - [ ] Show company documents and internet guides in one single list. | ||
| - [ ] Suggest internal colleagues (mentors) who can help. | ||
|
|
||
| ## 🎨 UI/UX Improvements | ||
| - [ ] **Commitment Dashboard** | ||
| - [ ] Visual indicator of "Time to Beginner Productivity". | ||
| - [ ] **Skill Gap Visualization** | ||
| - [ ] Show "curated gap" between current strength and target role. | ||
|
|
||
| --- | ||
| *Generated for the Team Meeting on February 17, 2026* |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
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.