Skip to content

Commit f8bdeee

Browse files
authored
Merge pull request #15 from kubit-ui/feature/add-new-intelligent-messages
feat(messages): new languages and new types of messages intelligents
2 parents 6aeab87 + 186db7d commit f8bdeee

File tree

21 files changed

+1799
-41
lines changed

21 files changed

+1799
-41
lines changed

CHANGELOG.md

Lines changed: 80 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -6,13 +6,63 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
66
and this project adheres to
77
[Semantic Versioning](https://semver.org/spec/v2.0.0.html).
88

9+
## [2.5.0] - 2025-11-15
10+
11+
### 🚀 Productivity & Wellness Features
12+
13+
- **🧘‍♂️ Smart Reminders** - Kubito now reminds you to take breaks, drink water,
14+
check posture, and rest your eyes with configurable intervals
15+
- **📊 Coding Metrics** - Track your productivity with real-time metrics
16+
including:
17+
- Session duration and active coding time
18+
- Lines written per hour
19+
- Files modified count
20+
- Productivity score (0-100)
21+
- Most active programming language
22+
- **⚙️ Productivity Configuration** - New settings to customize:
23+
- Break reminder intervals (15-120 minutes, default: 30)
24+
- Water reminder intervals (20-180 minutes, default: 45)
25+
- Metrics display intervals (30-300 minutes, default: 60)
26+
- Enable/disable individual reminder types
27+
- **🎯 Productivity Command** - New "Kubito: Show Productivity Metrics" command
28+
to view detailed stats
29+
- **🌍 Expanded Language Support** - Kubito now supports **14 languages**:
30+
- 🇪🇸 Spanish (Español)
31+
- 🇺🇸 English
32+
- 🇫🇷 French (Français)
33+
- 🇩🇪 German (Deutsch)
34+
- 🇵🇹 Portuguese (Português)
35+
- 🇮🇹 Italian (Italiano)
36+
- 🇯🇵 Japanese (日本語) - **NEW**
37+
- 🇰🇷 Korean (한국어) - **NEW**
38+
- 🇨🇳 Chinese Simplified (中文简体) - **NEW**
39+
- 🇷🇺 Russian (Русский) - **NEW**
40+
- 🇳🇱 Dutch (Nederlands) - **NEW**
41+
- 🇵🇱 Polish (Polski) - **NEW**
42+
- 🇸🇦 Arabic (العربية) - **NEW**
43+
- 🇹🇷 Turkish (Türkçe) - **NEW**
44+
- **🎭 Intelligent Tracking** - Automatic activity detection with idle timeout
45+
to ensure accurate metrics
46+
47+
### 🔧 Technical Improvements
48+
49+
- **📦 Modular Architecture** - New ProductivityManager class for clean
50+
separation of concerns
51+
- **⚡️ Performance Optimization** - Efficient event tracking with proper
52+
cleanup and resource management
53+
- **🛡️ Type Safety** - Full TypeScript implementation with comprehensive
54+
interfaces
55+
956
## [2.4.0] - 2025-11-14
1057

1158
### ✨ Waving State & Animation Optimization
1259

13-
- **👋 Waving Greeting Animation** - Kubito now waves when the extension loads, creating a friendly first impression before starting to wander
14-
- **🎯 Smooth State Transitions** - New WAVING state (1.5 second duration) smoothly transitions to wandering behavior
15-
- **⚙️ Optimized Animation Timings** - Further refined movement speed and behavior patterns for a less distracting experience:
60+
- **👋 Waving Greeting Animation** - Kubito now waves when the extension loads,
61+
creating a friendly first impression before starting to wander
62+
- **🎯 Smooth State Transitions** - New WAVING state (1.5 second duration)
63+
smoothly transitions to wandering behavior
64+
- **⚙️ Optimized Animation Timings** - Further refined movement speed and
65+
behavior patterns for a less distracting experience:
1666
- Movement speed reduced from 0.15 to 0.08 pixels/frame for subtler animations
1767
- Wandering duration increased from 3-5s to 4-8s for more relaxed pacing
1868
- Pause duration: 1-2.5s range for state balance
@@ -23,35 +73,48 @@ and this project adheres to
2373

2474
### ✨ Enhanced Movement & Animation System
2575

26-
- **🎮 Natural Wandering Behavior** - Kubito now follows realistic movement patterns with alternating wandering and pause states
27-
- **⚡️ Optimized Movement Speed** - Reduced movement speed from 0.2 to 0.15 pixels/frame for more natural, relaxed pacing
28-
- **🔄 Smart State Management** - New KubitoState system (WANDERING, PAUSED, JUMPING, TALKING) with intelligent transitions
29-
- **🎪 Autonomous Jump Behavior** - Kubito now occasionally jumps on his own with 20% probability during pause states
30-
76+
- **🎮 Natural Wandering Behavior** - Kubito now follows realistic movement
77+
patterns with alternating wandering and pause states
78+
- **⚡️ Optimized Movement Speed** - Reduced movement speed from 0.2 to 0.15
79+
pixels/frame for more natural, relaxed pacing
80+
- **🔄 Smart State Management** - New KubitoState system (WANDERING, PAUSED,
81+
JUMPING, TALKING) with intelligent transitions
82+
- **🎪 Autonomous Jump Behavior** - Kubito now occasionally jumps on his own
83+
with 20% probability during pause states
3184

3285
### 🛠️ Technical Improvements
33-
- **🏗️ Better Architecture** - Clean separation between movement states, timing logic, and visual updates
34-
- **🎯 Message Logic** - Smart timing ensures messages only appear during paused state in safe zone (3-7 second intervals)
35-
- **⏱️ Jump Cooldown** - 1-second cooldown after jumps prevents message conflicts
36-
- **🎨 Asset Consistency** - Renamed assets from `kubito_*` to `kubito-*` format for consistency
86+
87+
- **🏗️ Better Architecture** - Clean separation between movement states, timing
88+
logic, and visual updates
89+
- **🎯 Message Logic** - Smart timing ensures messages only appear during paused
90+
state in safe zone (3-7 second intervals)
91+
- **⏱️ Jump Cooldown** - 1-second cooldown after jumps prevents message
92+
conflicts
93+
- **🎨 Asset Consistency** - Renamed assets from `kubito_*` to `kubito-*` format
94+
for consistency
3795

3896
## [2.2.0] - 2025-11-12
3997

4098
### ✨ Editor and Git Event Reactions
4199

42100
- **💾 File Save Reactions** - Kubito now shows a disk emoji when you save files
43-
- **🔄 Git Commit Detection** - Shows "Committed!" message when you make Git commits
44-
- **🚀 Git Push Detection** - Shows "Pushed!" message when you push to remote repositories
45-
- **⚡️ Real-time Response** - Immediate reactions using file system watchers for `.git/logs/HEAD` and `.git/logs/refs/remotes`
101+
- **🔄 Git Commit Detection** - Shows "Committed!" message when you make Git
102+
commits
103+
- **🚀 Git Push Detection** - Shows "Pushed!" message when you push to remote
104+
repositories
105+
- **⚡️ Real-time Response** - Immediate reactions using file system watchers
106+
for `.git/logs/HEAD` and `.git/logs/refs/remotes`
46107

47108
### ⚙️ Enhanced Configuration
48109

49110
- **🎛️ Event Settings** - New configuration options to control reactions:
50111
- `kubito.events.fileSave` - Toggle file save reactions (default: enabled)
51112
- `kubito.events.gitCommit` - Toggle Git commit reactions (default: enabled)
52113
- `kubito.events.gitPush` - Toggle Git push reactions (default: enabled)
53-
- **⚙️ Quick Settings Access** - New "Kubito: Configure Event Reactions" command for easy setup
54-
- **🔧 Event Message Priority** - Event messages interrupt random messages for immediate feedback
114+
- **⚙️ Quick Settings Access** - New "Kubito: Configure Event Reactions" command
115+
for easy setup
116+
- **🔧 Event Message Priority** - Event messages interrupt random messages for
117+
immediate feedback
55118

56119
## [2.1.0] - 2025-11-11
57120

README.md

Lines changed: 78 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -12,27 +12,38 @@
1212
- 🦘 **Autonomous Fun**: Kubito waves, jumps, talks and pauses randomly
1313
- 💬 **Smart Messages**: Context-aware messages that adapt to time and day
1414
(Monday Blues, Friday Feeling, Working Late)
15-
- 📁 **Development Reactions**: Kubito reacts to your coding activities - file saves, Git commits, and pushes with contextual messages
16-
- 🌍 **6 Languages**: Full support for English, Spanish, French, German,
17-
Portuguese, and Italian
18-
15+
- 📁 **Development Reactions**: Kubito reacts to your coding activities - file
16+
saves, Git commits, and pushes with contextual messages
17+
- 📊 **Productivity Tracking**: Smart reminders for breaks and water, plus
18+
coding metrics to track your productivity
19+
- 🏆 **Coding Metrics**: Track lines of code, session time, and get productivity
20+
insights
21+
- 🌍 **14 Languages**: Multilingual support for a global audience:
22+
- 🇪🇸 Spanish • 🇺🇸 English • 🇫🇷 French • 🇩🇪 German • 🇵🇹 Portuguese • 🇮🇹 Italian
23+
- 🇯🇵 Japanese • 🇰🇷 Korean • 🇨🇳 Chinese • 🇷🇺 Russian • 🇳🇱 Dutch • 🇵🇱 Polish
24+
- 🇸🇦 Arabic • 🇹🇷 Turkish
1925

2026
## 🚀 Getting Started
2127

2228
1. **Install** → Search "Kubito" in VS Code Extensions and click Install
23-
2. **Find Him** → Look for "Kubito" section in your Explorer sidebar (left panel)
24-
3. **Expand & Watch** → Click to expand if collapsed and watch Kubito start walking
25-
4. **Code**: Kubito reacts to your development workflow - save files, commit, or push to Git and see his responses!
29+
2. **Find Him** → Look for "Kubito" section in your Explorer sidebar (left
30+
panel)
31+
3. **Expand & Watch** → Click to expand if collapsed and watch Kubito start
32+
walking
33+
4. **Code**: Kubito reacts to your development workflow - save files, commit, or
34+
push to Git and see his responses!
2635

2736
## 🎮 How to Interact
2837

2938
| Action | What Happens |
3039
| ---------------------- | ----------------------------------------------- |
3140
| 👀 **Hover over him** | See a nice glow effect |
3241
|**Watch and wait** | Kubito autonomously walks, pauses, and jumps |
33-
| 💾 **Save a file** | Kubito shows encouraging save reactions |
42+
| 💾 **Save a file** | Kubito shows encouraging save reactions |
3443
|**Git commit** | Kubito celebrates your commits with messages |
3544
| 🚀 **Git push** | Kubito cheers when you push your code! |
45+
| 💧 **Productivity** | Kubito reminds you to take breaks, drink water |
46+
| 📊 **View Metrics** | Use "Kubito: Show Productivity Metrics" command |
3647
| 🌍 **Change language** | Messages adapt to your preferred language |
3748
| 📁 **Expand/Collapse** | Control Kubito's section like any sidebar panel |
3849

@@ -41,23 +52,75 @@
4152
Access in: `Settings > Extensions > Kubito`
4253

4354
- **Auto Show** → Automatically show Kubito when opening VS Code _(default: on)_
44-
- **Language** → Choose from 6 languages or auto-detect from VS Code _(default: auto)_
45-
- **Contextual Messages** → Show time and day-appropriate messages _(default: on)_
55+
- **Language** → Choose from 14 languages or auto-detect from VS Code _(default:
56+
auto)_
57+
- **Contextual Messages** → Show time and day-appropriate messages _(default:
58+
on)_
4659

4760
### 🎬 Event Reactions
61+
4862
Configure Kubito's responses to your development activities:
4963

5064
- **File Save Reactions** → Show reactions when saving files _(default: on)_
51-
- **Git Commit Reactions** → Show reactions when making Git commits _(default: on)_
52-
- **Git Push Reactions** → Show reactions when pushing to Git remotes _(default: on)_
65+
- **Git Commit Reactions** → Show reactions when making Git commits _(default:
66+
on)_
67+
- **Git Push Reactions** → Show reactions when pushing to Git remotes _(default:
68+
on)_
69+
70+
### 🚀 Productivity Features
71+
72+
Enhance your coding workflow with intelligent reminders and metrics:
73+
74+
- **Smart Reminders** → Enable break, water, and posture reminders _(default:
75+
on)_
76+
- **Break Interval** → Minutes between break reminders (15-120) _(default: 30)_
77+
- **Water Interval** → Minutes between water reminders (20-180) _(default: 45)_
78+
- **Show Metrics** → Display coding metrics like lines written and session time
79+
_(default: on)_
80+
- **Metrics Interval** → Minutes between metrics updates (30-300)
81+
_(default: 60)_
82+
83+
## 🌍 Supported Languages
84+
85+
Kubito speaks your language! All messages, reminders, and productivity features
86+
are fully localized in:
87+
88+
### Western Languages
89+
90+
- 🇪🇸 **Spanish** (Español) - Native support
91+
- 🇺🇸 **English** - Native support
92+
- 🇫🇷 **French** (Français) - Native support
93+
- 🇩🇪 **German** (Deutsch) - Native support
94+
- 🇵🇹 **Portuguese** (Português) - Native support
95+
- 🇮🇹 **Italian** (Italiano) - Native support
96+
- 🇳🇱 **Dutch** (Nederlands) - Native support
97+
98+
### Eastern Languages
99+
100+
- 🇯🇵 **Japanese** (日本語) - Full localization
101+
- 🇰🇷 **Korean** (한국어) - Full localization
102+
- 🇨🇳 **Chinese Simplified** (中文简体) - Full localization
103+
- 🇷🇺 **Russian** (Русский) - Full localization
104+
105+
### Additional Languages
106+
107+
- 🇵🇱 **Polish** (Polski) - Full localization
108+
- 🇸🇦 **Arabic** (العربية) - Full localization (RTL supported)
109+
- 🇹🇷 **Turkish** (Türkçe) - Full localization
110+
111+
Kubito automatically detects your VS Code language setting, or you can manually
112+
select your preferred language in the extension settings.
53113

54114
## 💡 Tips & Tricks
55115

56-
- **Can't see Kubito?** Make sure your Explorer panel is open (folder icon in sidebar)
116+
- **Can't see Kubito?** Make sure your Explorer panel is open (folder icon in
117+
sidebar)
57118
- **Section collapsed?** Click the arrow next to "Kubito" to expand
58119
- **Want more space?** You can resize the Explorer panel by dragging its edge
59-
- **Want to see event reactions?** Try saving a file or making a Git commit - Kubito will celebrate with you!
60-
- **Too many reactions?** You can disable file save, commit, or push reactions in Settings → Extensions → Kubito
120+
- **Want to see event reactions?** Try saving a file or making a Git commit -
121+
Kubito will celebrate with you!
122+
- **Too many reactions?** You can disable file save, commit, or push reactions
123+
in Settings → Extensions → Kubito
61124

62125
## 🤝 Support & Feedback
63126

package.json

Lines changed: 54 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
{
22
"name": "vscode-kubito",
33
"displayName": "Kubito - Your Coding Companion",
4-
"description": "An interactive and animated multilingual companion for your VS Code editor. Kubito walks around, responds to clicks, and shows contextual programming messages that adapt to time and day in 6 languages.",
4+
"description": "An interactive and animated multilingual companion for your VS Code editor. Kubito walks around, responds to clicks, and shows contextual programming messages that adapt to time and day in 14 languages including productivity reminders.",
55
"version": "2.4.0",
66
"publisher": "Kubit",
77
"author": {
@@ -65,6 +65,10 @@
6565
{
6666
"command": "kubito.openEventSettings",
6767
"title": "Kubito: Configure Event Reactions"
68+
},
69+
{
70+
"command": "kubito.showMetrics",
71+
"title": "Kubito: Show Productivity Metrics"
6872
}
6973
],
7074
"configuration": {
@@ -84,7 +88,15 @@
8488
"fr",
8589
"de",
8690
"pt",
87-
"it"
91+
"it",
92+
"ja",
93+
"ko",
94+
"zh-cn",
95+
"ru",
96+
"nl",
97+
"pl",
98+
"tr",
99+
"ar"
88100
],
89101
"enumDescriptions": [
90102
"Detect from VS Code language",
@@ -93,7 +105,15 @@
93105
"Français",
94106
"Deutsch",
95107
"Português",
96-
"Italiano"
108+
"Italiano",
109+
"日本語",
110+
"한국어",
111+
"中文(简体)",
112+
"Русский",
113+
"Nederlands",
114+
"Polski",
115+
"Türkçe",
116+
"العربية"
97117
],
98118
"default": "auto",
99119
"description": "Language for Kubito messages"
@@ -117,6 +137,37 @@
117137
"type": "boolean",
118138
"default": true,
119139
"description": "Show reactions when pushing to Git remotes"
140+
},
141+
"kubito.productivity.reminders": {
142+
"type": "boolean",
143+
"default": true,
144+
"description": "Enable smart reminders for breaks, water, and active pauses"
145+
},
146+
"kubito.productivity.breakInterval": {
147+
"type": "number",
148+
"default": 30,
149+
"minimum": 15,
150+
"maximum": 120,
151+
"description": "Minutes between break reminders (15-120)"
152+
},
153+
"kubito.productivity.waterInterval": {
154+
"type": "number",
155+
"default": 45,
156+
"minimum": 20,
157+
"maximum": 180,
158+
"description": "Minutes between water reminders (20-180)"
159+
},
160+
"kubito.productivity.showMetrics": {
161+
"type": "boolean",
162+
"default": true,
163+
"description": "Show coding metrics like lines written and session time"
164+
},
165+
"kubito.productivity.metricsInterval": {
166+
"type": "number",
167+
"default": 60,
168+
"minimum": 30,
169+
"maximum": 300,
170+
"description": "Minutes between metrics updates (30-300)"
120171
}
121172
}
122173
}

0 commit comments

Comments
 (0)