neoagent 2.4.1-beta.16 → 2.4.1-beta.18

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 (54) hide show
  1. package/README.md +4 -0
  2. package/docs/index.md +4 -0
  3. package/extensions/chrome-browser/icons/icon128.png +0 -0
  4. package/extensions/chrome-browser/icons/icon16.png +0 -0
  5. package/extensions/chrome-browser/icons/icon48.png +0 -0
  6. package/extensions/chrome-browser/icons/logo.svg +3 -12
  7. package/flutter_app/android/app/src/main/res/mipmap-hdpi/ic_launcher.png +0 -0
  8. package/flutter_app/android/app/src/main/res/mipmap-mdpi/ic_launcher.png +0 -0
  9. package/flutter_app/android/app/src/main/res/mipmap-xhdpi/ic_launcher.png +0 -0
  10. package/flutter_app/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png +0 -0
  11. package/flutter_app/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png +0 -0
  12. package/flutter_app/assets/branding/app_icon_1024.png +0 -0
  13. package/flutter_app/assets/branding/app_icon_128.png +0 -0
  14. package/flutter_app/assets/branding/app_icon_192.png +0 -0
  15. package/flutter_app/assets/branding/app_icon_256.png +0 -0
  16. package/flutter_app/assets/branding/app_icon_32.png +0 -0
  17. package/flutter_app/assets/branding/app_icon_512.png +0 -0
  18. package/flutter_app/assets/branding/app_icon_64.png +0 -0
  19. package/flutter_app/assets/branding/tray_icon_template.png +0 -0
  20. package/flutter_app/lib/main_shared.dart +6 -57
  21. package/flutter_app/linux/runner/resources/app_icon.png +0 -0
  22. package/flutter_app/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_1024.png +0 -0
  23. package/flutter_app/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_128.png +0 -0
  24. package/flutter_app/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_16.png +0 -0
  25. package/flutter_app/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_256.png +0 -0
  26. package/flutter_app/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_32.png +0 -0
  27. package/flutter_app/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_512.png +0 -0
  28. package/flutter_app/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_64.png +0 -0
  29. package/flutter_app/pubspec.yaml +1 -0
  30. package/flutter_app/web/favicon.png +0 -0
  31. package/flutter_app/web/favicon.svg +2 -11
  32. package/flutter_app/web/icons/Icon-192.png +0 -0
  33. package/flutter_app/web/icons/Icon-512.png +0 -0
  34. package/flutter_app/web/icons/Icon-maskable-192.png +0 -0
  35. package/flutter_app/web/icons/Icon-maskable-512.png +0 -0
  36. package/package.json +1 -1
  37. package/server/public/.last_build_id +1 -1
  38. package/server/public/app_icon.png +0 -0
  39. package/server/public/assets/AssetManifest.bin +1 -1
  40. package/server/public/assets/AssetManifest.bin.json +1 -1
  41. package/server/public/assets/assets/branding/app_icon_256.png +0 -0
  42. package/server/public/assets/assets/branding/app_icon_512.png +0 -0
  43. package/server/public/assets/assets/branding/tray_icon_template.png +0 -0
  44. package/server/public/assets/web/icons/Icon-192.png +0 -0
  45. package/server/public/favicon.png +0 -0
  46. package/server/public/favicon.svg +2 -11
  47. package/server/public/flutter_bootstrap.js +1 -1
  48. package/server/public/icons/Icon-192.png +0 -0
  49. package/server/public/icons/Icon-512.png +0 -0
  50. package/server/public/icons/Icon-maskable-192.png +0 -0
  51. package/server/public/icons/Icon-maskable-512.png +0 -0
  52. package/server/public/main.dart.js +24364 -24400
  53. package/server/services/ai/providers/openaiCodex.js +6 -2
  54. package/server/services/tasks/runtime.js +1 -0
package/README.md CHANGED
@@ -1,3 +1,7 @@
1
+ <p align="center">
2
+ <img src="flutter_app/assets/branding/app_icon_128.png" width="80" alt="NeoAgent">
3
+ </p>
4
+
1
5
  <h1 align="center">NeoAgent</h1>
2
6
 
3
7
  <p align="center"><strong>Your agent. Your server. Your rules.</strong></p>
package/docs/index.md CHANGED
@@ -4,6 +4,10 @@ title: NeoAgent
4
4
  sidebar_label: Overview
5
5
  ---
6
6
 
7
+ <p align="center">
8
+ <img src="/img/app_icon.png" width="72" alt="NeoAgent" />
9
+ </p>
10
+
7
11
  # NeoAgent
8
12
 
9
13
  Self-hosted AI agent server. Runs as a system service, keeps all credentials on your machine, and provides a full operator UI for chat, automation, Android device control, recordings, integrations, and memory.
@@ -1,12 +1,3 @@
1
- <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 32 32">
2
- <defs>
3
- <linearGradient id="bg" x1="0%" y1="0%" x2="100%" y2="100%">
4
- <stop offset="0%" stop-color="#8f6d3e"/>
5
- <stop offset="100%" stop-color="#2f7d6e"/>
6
- </linearGradient>
7
- </defs>
8
- <rect x="5.76" y="5.76" width="20.48" height="20.48" rx="6.96" fill="url(#bg)" stroke="#ffffff" stroke-opacity="0.16" stroke-width="1"/>
9
- <polygon points="16,9.76 9.35,13.12 16,16.48 22.65,13.12" fill="white"/>
10
- <polyline points="9.35,16.48 16,19.68 22.65,16.48" fill="none" stroke="white" stroke-width="1.44" stroke-linecap="round" stroke-linejoin="round"/>
11
- <polyline points="9.35,19.68 16,22.72 22.65,19.68" fill="none" stroke="white" stroke-width="1.44" stroke-linecap="round" stroke-linejoin="round"/>
12
- </svg>
1
+ <svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" viewBox="0 0 32 32">
2
+ <image width="32" height="32" xlink:href="data:image/png;base64,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"/>
3
+ </svg>
@@ -970,28 +970,14 @@ class _LogoBadge extends StatelessWidget {
970
970
 
971
971
  @override
972
972
  Widget build(BuildContext context) {
973
- return Container(
973
+ return SizedBox(
974
974
  width: size,
975
975
  height: size,
976
- decoration: BoxDecoration(
977
- gradient: LinearGradient(
978
- colors: <Color>[_brandAccent, _brandAccentAlt],
979
- begin: Alignment.topLeft,
980
- end: Alignment.bottomRight,
981
- ),
982
- borderRadius: BorderRadius.circular(size * 0.34),
983
- boxShadow: <BoxShadow>[
984
- BoxShadow(
985
- color: _brandAccent.withValues(alpha: 0.32),
986
- blurRadius: 36,
987
- offset: const Offset(0, 10),
988
- ),
989
- ],
990
- border: Border.all(color: Colors.white.withValues(alpha: 0.12)),
991
- ),
992
- child: Padding(
993
- padding: EdgeInsets.all(size * 0.18),
994
- child: CustomPaint(painter: _NeoAgentLogoPainter()),
976
+ child: Image.asset(
977
+ 'assets/branding/app_icon_512.png',
978
+ width: size,
979
+ height: size,
980
+ filterQuality: FilterQuality.high,
995
981
  ),
996
982
  );
997
983
  }
@@ -1047,43 +1033,6 @@ class _BrandLockup extends StatelessWidget {
1047
1033
  }
1048
1034
  }
1049
1035
 
1050
- class _NeoAgentLogoPainter extends CustomPainter {
1051
- @override
1052
- void paint(Canvas canvas, Size size) {
1053
- final fillPaint = Paint()
1054
- ..color = Colors.white
1055
- ..style = PaintingStyle.fill;
1056
- final strokePaint = Paint()
1057
- ..color = Colors.white
1058
- ..style = PaintingStyle.stroke
1059
- ..strokeWidth = size.width * 0.08
1060
- ..strokeCap = StrokeCap.round
1061
- ..strokeJoin = StrokeJoin.round;
1062
-
1063
- final top = Path()
1064
- ..moveTo(size.width * 0.5, size.height * 0.08)
1065
- ..lineTo(size.width * 0.1, size.height * 0.3)
1066
- ..lineTo(size.width * 0.5, size.height * 0.52)
1067
- ..lineTo(size.width * 0.9, size.height * 0.3)
1068
- ..close();
1069
- canvas.drawPath(top, fillPaint);
1070
-
1071
- final middle = Path()
1072
- ..moveTo(size.width * 0.1, size.height * 0.52)
1073
- ..lineTo(size.width * 0.5, size.height * 0.74)
1074
- ..lineTo(size.width * 0.9, size.height * 0.52);
1075
- canvas.drawPath(middle, strokePaint);
1076
-
1077
- final bottom = Path()
1078
- ..moveTo(size.width * 0.1, size.height * 0.72)
1079
- ..lineTo(size.width * 0.5, size.height * 0.94)
1080
- ..lineTo(size.width * 0.9, size.height * 0.72);
1081
- canvas.drawPath(bottom, strokePaint);
1082
- }
1083
-
1084
- @override
1085
- bool shouldRepaint(covariant CustomPainter oldDelegate) => false;
1086
- }
1087
1036
 
1088
1037
  class _EmptyState extends StatelessWidget {
1089
1038
  const _EmptyState({required this.title, required this.subtitle});
@@ -55,5 +55,6 @@ flutter:
55
55
  assets:
56
56
  - web/icons/Icon-192.png
57
57
  - assets/branding/app_icon_256.png
58
+ - assets/branding/app_icon_512.png
58
59
  - assets/branding/tray_icon_template.png
59
60
  - assets/branding/onboarding_intro.mp4
Binary file
@@ -1,12 +1,3 @@
1
- <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 32 32">
2
- <defs>
3
- <linearGradient id="bg" x1="0%" y1="0%" x2="100%" y2="100%">
4
- <stop offset="0%" stop-color="#8f6d3e"/>
5
- <stop offset="100%" stop-color="#2f7d6e"/>
6
- </linearGradient>
7
- </defs>
8
- <rect x="2.5" y="2.5" width="27" height="27" rx="9" ry="9" fill="url(#bg)" stroke="#ffffff" stroke-opacity="0.16" stroke-width="1"/>
9
- <polygon points="16,5.7 5.2,11.6 16,17.6 26.8,11.6" fill="white"/>
10
- <polyline points="5.2,17.6 16,23.5 26.8,17.6" fill="none" stroke="white" stroke-width="2.2" stroke-linecap="round" stroke-linejoin="round"/>
11
- <polyline points="5.2,22.7 16,28.1 26.8,22.7" fill="none" stroke="white" stroke-width="2.2" stroke-linecap="round" stroke-linejoin="round"/>
1
+ <svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" viewBox="0 0 32 32">
2
+ <image width="32" height="32" xlink:href="data:image/png;base64,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"/>
12
3
  </svg>
Binary file
Binary file
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "neoagent",
3
- "version": "2.4.1-beta.16",
3
+ "version": "2.4.1-beta.18",
4
4
  "description": "Proactive personal AI agent with no limits",
5
5
  "license": "AGPL-3.0-only",
6
6
  "main": "server/index.js",
@@ -1 +1 @@
1
- 48b48dfa83d45f7191f684f7efa03dd0
1
+ bfafc9a2b5aa1372533cc854cd3cc56e
Binary file
@@ -1 +1 @@
1
-
1
+
@@ -1 +1 @@
1
- "DQgHIGFzc2V0cy9icmFuZGluZy9hcHBfaWNvbl8yNTYucG5nDAENAQcFYXNzZXQHIGFzc2V0cy9icmFuZGluZy9hcHBfaWNvbl8yNTYucG5nByRhc3NldHMvYnJhbmRpbmcvb25ib2FyZGluZ19pbnRyby5tcDQMAQ0BBwVhc3NldAckYXNzZXRzL2JyYW5kaW5nL29uYm9hcmRpbmdfaW50cm8ubXA0ByZhc3NldHMvYnJhbmRpbmcvdHJheV9pY29uX3RlbXBsYXRlLnBuZwwBDQEHBWFzc2V0ByZhc3NldHMvYnJhbmRpbmcvdHJheV9pY29uX3RlbXBsYXRlLnBuZwcycGFja2FnZXMvY3VwZXJ0aW5vX2ljb25zL2Fzc2V0cy9DdXBlcnRpbm9JY29ucy50dGYMAQ0BBwVhc3NldAcycGFja2FnZXMvY3VwZXJ0aW5vX2ljb25zL2Fzc2V0cy9DdXBlcnRpbm9JY29ucy50dGYHLHBhY2thZ2VzL21peHBhbmVsX2ZsdXR0ZXIvYXNzZXRzL21peHBhbmVsLmpzDAENAQcFYXNzZXQHLHBhY2thZ2VzL21peHBhbmVsX2ZsdXR0ZXIvYXNzZXRzL21peHBhbmVsLmpzBzdwYWNrYWdlcy9yZWNvcmRfd2ViL2Fzc2V0cy9qcy9yZWNvcmQuZml4d2VibWR1cmF0aW9uLmpzDAENAQcFYXNzZXQHN3BhY2thZ2VzL3JlY29yZF93ZWIvYXNzZXRzL2pzL3JlY29yZC5maXh3ZWJtZHVyYXRpb24uanMHL3BhY2thZ2VzL3JlY29yZF93ZWIvYXNzZXRzL2pzL3JlY29yZC53b3JrbGV0LmpzDAENAQcFYXNzZXQHL3BhY2thZ2VzL3JlY29yZF93ZWIvYXNzZXRzL2pzL3JlY29yZC53b3JrbGV0LmpzBxZ3ZWIvaWNvbnMvSWNvbi0xOTIucG5nDAENAQcFYXNzZXQHFndlYi9pY29ucy9JY29uLTE5Mi5wbmc="
1
+ "DQkHIGFzc2V0cy9icmFuZGluZy9hcHBfaWNvbl8yNTYucG5nDAENAQcFYXNzZXQHIGFzc2V0cy9icmFuZGluZy9hcHBfaWNvbl8yNTYucG5nByBhc3NldHMvYnJhbmRpbmcvYXBwX2ljb25fNTEyLnBuZwwBDQEHBWFzc2V0ByBhc3NldHMvYnJhbmRpbmcvYXBwX2ljb25fNTEyLnBuZwckYXNzZXRzL2JyYW5kaW5nL29uYm9hcmRpbmdfaW50cm8ubXA0DAENAQcFYXNzZXQHJGFzc2V0cy9icmFuZGluZy9vbmJvYXJkaW5nX2ludHJvLm1wNAcmYXNzZXRzL2JyYW5kaW5nL3RyYXlfaWNvbl90ZW1wbGF0ZS5wbmcMAQ0BBwVhc3NldAcmYXNzZXRzL2JyYW5kaW5nL3RyYXlfaWNvbl90ZW1wbGF0ZS5wbmcHMnBhY2thZ2VzL2N1cGVydGlub19pY29ucy9hc3NldHMvQ3VwZXJ0aW5vSWNvbnMudHRmDAENAQcFYXNzZXQHMnBhY2thZ2VzL2N1cGVydGlub19pY29ucy9hc3NldHMvQ3VwZXJ0aW5vSWNvbnMudHRmByxwYWNrYWdlcy9taXhwYW5lbF9mbHV0dGVyL2Fzc2V0cy9taXhwYW5lbC5qcwwBDQEHBWFzc2V0ByxwYWNrYWdlcy9taXhwYW5lbF9mbHV0dGVyL2Fzc2V0cy9taXhwYW5lbC5qcwc3cGFja2FnZXMvcmVjb3JkX3dlYi9hc3NldHMvanMvcmVjb3JkLmZpeHdlYm1kdXJhdGlvbi5qcwwBDQEHBWFzc2V0BzdwYWNrYWdlcy9yZWNvcmRfd2ViL2Fzc2V0cy9qcy9yZWNvcmQuZml4d2VibWR1cmF0aW9uLmpzBy9wYWNrYWdlcy9yZWNvcmRfd2ViL2Fzc2V0cy9qcy9yZWNvcmQud29ya2xldC5qcwwBDQEHBWFzc2V0By9wYWNrYWdlcy9yZWNvcmRfd2ViL2Fzc2V0cy9qcy9yZWNvcmQud29ya2xldC5qcwcWd2ViL2ljb25zL0ljb24tMTkyLnBuZwwBDQEHBWFzc2V0BxZ3ZWIvaWNvbnMvSWNvbi0xOTIucG5n"
Binary file
@@ -1,12 +1,3 @@
1
- <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 32 32">
2
- <defs>
3
- <linearGradient id="bg" x1="0%" y1="0%" x2="100%" y2="100%">
4
- <stop offset="0%" stop-color="#8f6d3e"/>
5
- <stop offset="100%" stop-color="#2f7d6e"/>
6
- </linearGradient>
7
- </defs>
8
- <rect x="2.5" y="2.5" width="27" height="27" rx="9" ry="9" fill="url(#bg)" stroke="#ffffff" stroke-opacity="0.16" stroke-width="1"/>
9
- <polygon points="16,5.7 5.2,11.6 16,17.6 26.8,11.6" fill="white"/>
10
- <polyline points="5.2,17.6 16,23.5 26.8,17.6" fill="none" stroke="white" stroke-width="2.2" stroke-linecap="round" stroke-linejoin="round"/>
11
- <polyline points="5.2,22.7 16,28.1 26.8,22.7" fill="none" stroke="white" stroke-width="2.2" stroke-linecap="round" stroke-linejoin="round"/>
1
+ <svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" viewBox="0 0 32 32">
2
+ <image width="32" height="32" xlink:href="data:image/png;base64,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"/>
12
3
  </svg>
@@ -37,6 +37,6 @@ _flutter.buildConfig = {"engineRevision":"4c525dac5ebe5971c5708ef73558ed8edcf4a3
37
37
 
38
38
  _flutter.loader.load({
39
39
  serviceWorkerSettings: {
40
- serviceWorkerVersion: "2938951816" /* Flutter's service worker is deprecated and will be removed in a future Flutter release. */
40
+ serviceWorkerVersion: "2558716008" /* Flutter's service worker is deprecated and will be removed in a future Flutter release. */
41
41
  }
42
42
  });
Binary file
Binary file