clawmate 1.4.0 → 1.4.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (42) hide show
  1. package/index.js +441 -442
  2. package/main/ai-bridge.js +59 -59
  3. package/main/ai-connector.js +60 -60
  4. package/main/autostart.js +6 -6
  5. package/main/desktop-path.js +4 -4
  6. package/main/file-command-parser.js +46 -46
  7. package/main/file-ops.js +27 -27
  8. package/main/index.js +17 -17
  9. package/main/ipc-handlers.js +24 -24
  10. package/main/manifest.js +2 -2
  11. package/main/platform.js +16 -16
  12. package/main/smart-file-ops.js +64 -64
  13. package/main/store.js +1 -1
  14. package/main/telegram.js +137 -137
  15. package/main/tray.js +61 -61
  16. package/main/updater.js +13 -13
  17. package/openclaw.plugin.json +1 -1
  18. package/package.json +2 -2
  19. package/preload/preload.js +18 -18
  20. package/renderer/css/effects.css +6 -6
  21. package/renderer/css/pet.css +8 -8
  22. package/renderer/css/speech.css +5 -5
  23. package/renderer/first-run.html +14 -14
  24. package/renderer/index.html +4 -4
  25. package/renderer/js/ai-controller.js +91 -91
  26. package/renderer/js/app.js +24 -24
  27. package/renderer/js/browser-watcher.js +32 -32
  28. package/renderer/js/character.js +33 -33
  29. package/renderer/js/interactions.js +21 -21
  30. package/renderer/js/memory.js +60 -60
  31. package/renderer/js/metrics.js +141 -141
  32. package/renderer/js/mode-manager.js +13 -13
  33. package/renderer/js/pet-engine.js +236 -236
  34. package/renderer/js/speech.js +19 -19
  35. package/renderer/js/state-machine.js +23 -23
  36. package/renderer/js/time-aware.js +15 -15
  37. package/renderer/launcher.html +8 -8
  38. package/shared/constants.js +11 -11
  39. package/shared/messages.js +130 -130
  40. package/shared/personalities.js +44 -44
  41. package/skills/launch-pet/index.js +57 -47
  42. package/skills/launch-pet/skill.json +12 -23
@@ -1,5 +1,5 @@
1
1
  /**
2
- * Pet Incarnation 모드 전환 관리
2
+ * Pet <-> Incarnation mode switching manager
3
3
  */
4
4
  const ModeManager = (() => {
5
5
  let currentMode = 'pet';
@@ -22,17 +22,17 @@ const ModeManager = (() => {
22
22
  const p = personalities[mode];
23
23
  if (!p) return;
24
24
 
25
- // Incarnation 모드: 활성 인격체가 있으면 반영
25
+ // Incarnation mode: reflect active persona if available
26
26
  const persona = (mode === 'incarnation' && window._persona)
27
27
  ? window._persona.getActivePersona()
28
28
  : null;
29
29
 
30
- // 캐릭터 색상 업데이트
30
+ // Update character colors
31
31
  let colors;
32
32
  if (mode === 'pet') {
33
33
  colors = { primary: '#ff4f40', secondary: '#ff775f', dark: '#8B4513', eye: '#ffffff', pupil: '#111111', claw: '#ff4f40' };
34
34
  } else if (persona?.color) {
35
- // 인격체 커스텀 색상
35
+ // Persona custom colors
36
36
  colors = {
37
37
  primary: persona.color.primary || '#ff4f40',
38
38
  secondary: persona.color.secondary || '#ff775f',
@@ -46,17 +46,17 @@ const ModeManager = (() => {
46
46
  }
47
47
  Character.setColorMap(colors);
48
48
 
49
- // 속도 조정 (인격체 우선)
49
+ // Speed adjustment (persona takes priority)
50
50
  PetEngine.setSpeedMultiplier(persona?.speedMultiplier ?? p.speedMultiplier);
51
51
 
52
- // CSS 클래스
52
+ // CSS classes
53
53
  pet.classList.remove('mode-pet', 'mode-incarnation');
54
54
  pet.classList.add(`mode-${mode}`);
55
55
 
56
- // 말풍선 스타일
56
+ // Speech bubble style
57
57
  Speech.setMode(mode);
58
58
 
59
- // 성격 적용 (인격체가 있으면 병합)
59
+ // Apply personality (merge with persona if available)
60
60
  if (persona) {
61
61
  StateMachine.setPersonality({
62
62
  ...p,
@@ -70,12 +70,12 @@ const ModeManager = (() => {
70
70
  }
71
71
 
72
72
  /**
73
- * 인격체 변경 (Incarnation 모드에서 전환 )
73
+ * Change persona (when switching bots in Incarnation mode)
74
74
  */
75
75
  function setPersona(personaData) {
76
76
  if (window._persona) {
77
77
  window._persona.setActivePersona(personaData);
78
- // 현재 Incarnation 모드면 즉시 반영
78
+ // Apply immediately if currently in Incarnation mode
79
79
  if (currentMode === 'incarnation') {
80
80
  applyMode('incarnation');
81
81
  }
@@ -93,8 +93,8 @@ const ModeManager = (() => {
93
93
  applyMode(newMode);
94
94
  spawnTransitionEffect(newMode);
95
95
  Speech.show(newMode === 'pet'
96
- ? 'Clawby 모드로 변신!'
97
- : 'Claw... 각성했다.');
96
+ ? 'Transformed into Clawby mode!'
97
+ : 'Claw... has awakened.');
98
98
  }
99
99
 
100
100
  function spawnTransitionEffect(mode) {
@@ -102,7 +102,7 @@ const ModeManager = (() => {
102
102
  const color = mode === 'pet' ? '#ff4f40' : '#00BFA5';
103
103
  const world = document.getElementById('world');
104
104
 
105
- // 파티클 버스트
105
+ // Particle burst
106
106
  for (let i = 0; i < 12; i++) {
107
107
  const p = document.createElement('div');
108
108
  p.className = 'mode-transition-particle';