xiaozuoassistant 0.1.41

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 (56) hide show
  1. package/README.md +90 -0
  2. package/bin/cli.js +429 -0
  3. package/config.json +36 -0
  4. package/dist/client/assets/browser-ponyfill-DNlTAU2D.js +2 -0
  5. package/dist/client/assets/index-BPATxdcV.js +153 -0
  6. package/dist/client/assets/index-CgL5gMVL.css +1 -0
  7. package/dist/client/favicon.svg +4 -0
  8. package/dist/client/index.html +354 -0
  9. package/dist/client/locales/en/translation.json +77 -0
  10. package/dist/client/locales/zh/translation.json +77 -0
  11. package/dist/server/agents/office.js +23 -0
  12. package/dist/server/app.js +50 -0
  13. package/dist/server/channels/base-channel.js +13 -0
  14. package/dist/server/channels/create-channels.js +18 -0
  15. package/dist/server/channels/dingtalk.js +83 -0
  16. package/dist/server/channels/feishu.js +95 -0
  17. package/dist/server/channels/telegram.js +53 -0
  18. package/dist/server/channels/terminal.js +49 -0
  19. package/dist/server/channels/web.js +45 -0
  20. package/dist/server/channels/wechat.js +107 -0
  21. package/dist/server/config/loader.js +73 -0
  22. package/dist/server/config/prompts.js +12 -0
  23. package/dist/server/core/agents/manager.js +22 -0
  24. package/dist/server/core/agents/runtime.js +85 -0
  25. package/dist/server/core/brain.js +131 -0
  26. package/dist/server/core/event-bus.js +24 -0
  27. package/dist/server/core/logger.js +71 -0
  28. package/dist/server/core/memories/manager.js +115 -0
  29. package/dist/server/core/memories/short-term.js +128 -0
  30. package/dist/server/core/memories/structured.js +109 -0
  31. package/dist/server/core/memories/vector.js +138 -0
  32. package/dist/server/core/memory.js +2 -0
  33. package/dist/server/core/plugin-manager.js +112 -0
  34. package/dist/server/core/plugin.js +1 -0
  35. package/dist/server/core/scheduler.js +24 -0
  36. package/dist/server/core/types.js +1 -0
  37. package/dist/server/index.js +318 -0
  38. package/dist/server/llm/openai.js +23 -0
  39. package/dist/server/routes/auth.js +28 -0
  40. package/dist/server/server/create-http.js +17 -0
  41. package/dist/server/server.js +29 -0
  42. package/dist/server/skills/base-skill.js +16 -0
  43. package/dist/server/skills/create-agent.js +58 -0
  44. package/dist/server/skills/delegate.js +39 -0
  45. package/dist/server/skills/file-system.js +137 -0
  46. package/dist/server/skills/list-agents.js +24 -0
  47. package/dist/server/skills/office-excel.js +84 -0
  48. package/dist/server/skills/office-ppt.js +58 -0
  49. package/dist/server/skills/office-word.js +90 -0
  50. package/dist/server/skills/registry.js +27 -0
  51. package/dist/server/skills/search.js +31 -0
  52. package/dist/server/skills/system-time.js +27 -0
  53. package/package.json +116 -0
  54. package/public/favicon.svg +4 -0
  55. package/public/locales/en/translation.json +77 -0
  56. package/public/locales/zh/translation.json +77 -0
package/package.json ADDED
@@ -0,0 +1,116 @@
1
+ {
2
+ "name": "xiaozuoassistant",
3
+ "private": false,
4
+ "description": "Your personal, locally-hosted AI assistant for office productivity.",
5
+ "version": "0.1.41",
6
+ "author": "mantle.lau",
7
+ "license": "MIT",
8
+ "repository": {
9
+ "type": "git",
10
+ "url": "git+https://github.com/mantlelau-lgtm/claw.git"
11
+ },
12
+ "keywords": [
13
+ "ai",
14
+ "assistant",
15
+ "office",
16
+ "automation",
17
+ "local-first",
18
+ "agent"
19
+ ],
20
+ "type": "module",
21
+ "main": "dist/server/index.js",
22
+ "bin": {
23
+ "xiaozuoAssistant": "bin/cli.js",
24
+ "xiaozuoassistant": "bin/cli.js"
25
+ },
26
+ "files": [
27
+ "dist",
28
+ "bin",
29
+ "public",
30
+ "config.json",
31
+ "README.md"
32
+ ],
33
+ "scripts": {
34
+ "client:dev": "vite",
35
+ "build": "rm -rf dist && tsc -b && vite build && tsc -p tsconfig.server.json",
36
+ "lint": "eslint .",
37
+ "preview": "vite preview",
38
+ "check": "tsc --noEmit",
39
+ "server:dev": "nodemon --watch src --watch config.json --exec tsx src/index.ts",
40
+ "dev": "concurrently \"npm run client:dev\" \"npm run server:dev\"",
41
+ "postinstall": "cp node_modules/@lancedb/lancedb-darwin-x64/lancedb.darwin-x64.node node_modules/@lancedb/lancedb/dist/ 2>/dev/null || true && npm rebuild better-sqlite3"
42
+ },
43
+ "dependencies": {
44
+ "@lancedb/lancedb": "0.22.3",
45
+ "@lancedb/lancedb-darwin-x64": "0.22.3",
46
+ "@types/node-cron": "^3.0.11",
47
+ "apache-arrow": "18.1.0",
48
+ "axios": "^1.13.6",
49
+ "better-sqlite3": "^12.6.2",
50
+ "bindings": "^1.5.0",
51
+ "clsx": "^2.1.1",
52
+ "commander": "^14.0.3",
53
+ "cors": "^2.8.5",
54
+ "dotenv": "^17.3.1",
55
+ "express": "^4.21.2",
56
+ "fs-extra": "^11.3.4",
57
+ "i18next": "^25.8.17",
58
+ "i18next-browser-languagedetector": "^8.2.1",
59
+ "i18next-http-backend": "^3.0.2",
60
+ "lucide-react": "^0.511.0",
61
+ "mammoth": "^1.11.0",
62
+ "node-cron": "^4.2.1",
63
+ "officegen": "^0.6.5",
64
+ "openai": "^6.27.0",
65
+ "pptxgenjs": "^4.0.1",
66
+ "qrcode-terminal": "^0.12.0",
67
+ "react": "^18.3.1",
68
+ "react-dom": "^18.3.1",
69
+ "react-i18next": "^16.5.6",
70
+ "react-router-dom": "^7.3.0",
71
+ "socket.io": "^4.8.3",
72
+ "socket.io-client": "^4.8.3",
73
+ "tailwind-merge": "^3.0.2",
74
+ "tar": "^7.5.11",
75
+ "telegraf": "^4.16.3",
76
+ "uuid": "^13.0.0",
77
+ "wechaty": "^1.20.2",
78
+ "winston": "^3.19.0",
79
+ "winston-daily-rotate-file": "^5.0.0",
80
+ "xlsx": "^0.18.5",
81
+ "zustand": "^5.0.3"
82
+ },
83
+ "devDependencies": {
84
+ "@eslint/js": "^9.25.0",
85
+ "@types/better-sqlite3": "^7.6.13",
86
+ "@types/cors": "^2.8.19",
87
+ "@types/express": "^4.17.21",
88
+ "@types/fs-extra": "^11.0.4",
89
+ "@types/node": "^22.15.30",
90
+ "@types/qrcode-terminal": "^0.12.2",
91
+ "@types/react": "^18.3.12",
92
+ "@types/react-dom": "^18.3.1",
93
+ "@types/socket.io": "^3.0.1",
94
+ "@types/tar": "^6.1.13",
95
+ "@types/uuid": "^10.0.0",
96
+ "@vercel/node": "^5.3.6",
97
+ "@vitejs/plugin-react": "^4.4.1",
98
+ "autoprefixer": "^10.4.21",
99
+ "babel-plugin-react-dev-locator": "^1.0.0",
100
+ "concurrently": "^9.2.1",
101
+ "eslint": "^9.25.0",
102
+ "eslint-plugin-react-hooks": "^5.2.0",
103
+ "eslint-plugin-react-refresh": "^0.4.19",
104
+ "globals": "^16.0.0",
105
+ "nodemon": "^3.1.10",
106
+ "postcss": "^8.5.3",
107
+ "tailwindcss": "^3.4.17",
108
+ "tsx": "^4.21.0",
109
+ "typescript": "~5.8.3",
110
+ "typescript-eslint": "^8.30.1",
111
+ "vite": "^6.3.5",
112
+ "vite-plugin-trae-solo-badge": "^1.0.0",
113
+ "vite-tsconfig-paths": "^5.1.4",
114
+ "wait-on": "^9.0.4"
115
+ }
116
+ }
@@ -0,0 +1,4 @@
1
+ <svg width="32" height="32" viewBox="0 0 32 32" fill="none" xmlns="http://www.w3.org/2000/svg">
2
+ <rect width="32" height="32" fill="#0A0B0D"/>
3
+ <path d="M26.6677 23.7149H8.38057V20.6496H5.33301V8.38159H26.6677V23.7149ZM8.38057 20.6496H23.6201V11.4482H8.38057V20.6496ZM16.0011 16.0021L13.8461 18.1705L11.6913 16.0021L13.8461 13.8337L16.0011 16.0021ZM22.0963 16.0008L19.9414 18.1691L17.7865 16.0008L19.9414 13.8324L22.0963 16.0008Z" fill="#32F08C"/>
4
+ </svg>
@@ -0,0 +1,77 @@
1
+ {
2
+ "welcome": {
3
+ "title": "Welcome to xiaozuoAssistant",
4
+ "subtitle": "Your personal AI assistant. Select a conversation from the sidebar or start a new one to begin."
5
+ },
6
+ "chat": {
7
+ "title": "Chat",
8
+ "empty": "Start a conversation...",
9
+ "you": "You",
10
+ "assistant": "xiaozuoAssistant",
11
+ "thinking": "Thinking...",
12
+ "inputPlaceholder": "Message xiaozuoAssistant...",
13
+ "disclaimer": "xiaozuoAssistant can make mistakes. Consider checking important information."
14
+ },
15
+ "sessionList": {
16
+ "title": "xiaozuoAssistant",
17
+ "newChat": "New chat",
18
+ "recent": "Recent",
19
+ "defaultSession": "Default Session",
20
+ "newConversation": "New Conversation",
21
+ "settings": "Settings",
22
+ "deleteConfirm": "Are you sure you want to delete this session?"
23
+ },
24
+ "settings": {
25
+ "title": "Settings",
26
+ "tabs": {
27
+ "general": "General",
28
+ "systemPrompt": "System Prompt",
29
+ "scheduler": "Memory & Scheduler"
30
+ },
31
+ "general": {
32
+ "provider": "Provider",
33
+ "apiKey": "API Key",
34
+ "baseURL": "Base URL",
35
+ "modelName": "Model Name",
36
+ "temperature": "Temperature"
37
+ },
38
+ "prompt": {
39
+ "description": "Define how xiaozuoAssistant behaves and responds.",
40
+ "placeholder": "You are a helpful AI assistant..."
41
+ },
42
+ "scheduler": {
43
+ "memoryMaintenance": "Memory Maintenance",
44
+ "description": "Configure when the system should compress old memories and delete expired sessions.",
45
+ "cronSchedule": "Cron Schedule",
46
+ "cronHint": "Format: Minute Hour Day Month DayOfWeek (e.g., \"0 0 * * *\" for daily at midnight)",
47
+ "manualTrigger": "Manual Trigger",
48
+ "manualDescription": "Force run the maintenance task immediately.",
49
+ "runNow": "Run Maintenance Now",
50
+ "daily": "Daily",
51
+ "weekly": "Weekly",
52
+ "custom": "Custom (Cron)"
53
+ },
54
+ "buttons": {
55
+ "close": "Close",
56
+ "save": "Save Changes",
57
+ "saving": "Saving...",
58
+ "cancel": "Cancel"
59
+ },
60
+ "messages": {
61
+ "savedSuccess": "Configuration saved successfully!",
62
+ "saveFailed": "Failed to save configuration",
63
+ "networkError": "Network error occurred",
64
+ "maintenanceSuccess": "Maintenance triggered successfully!"
65
+ },
66
+ "language": "Language"
67
+ },
68
+ "weekdays": {
69
+ "sunday": "Sunday",
70
+ "monday": "Monday",
71
+ "tuesday": "Tuesday",
72
+ "wednesday": "Wednesday",
73
+ "thursday": "Thursday",
74
+ "friday": "Friday",
75
+ "saturday": "Saturday"
76
+ }
77
+ }
@@ -0,0 +1,77 @@
1
+ {
2
+ "welcome": {
3
+ "title": "欢迎使用 xiaozuoAssistant",
4
+ "subtitle": "您的个人 AI 助手。请从侧边栏选择一个会话或开始一个新的会话。"
5
+ },
6
+ "chat": {
7
+ "title": "聊天",
8
+ "empty": "开始一个新的对话...",
9
+ "you": "你",
10
+ "assistant": "xiaozuoAssistant",
11
+ "thinking": "思考中...",
12
+ "inputPlaceholder": "给 xiaozuoAssistant 发送消息...",
13
+ "disclaimer": "xiaozuoAssistant 可能会犯错。请核对重要信息。"
14
+ },
15
+ "sessionList": {
16
+ "title": "xiaozuoAssistant",
17
+ "newChat": "新对话",
18
+ "recent": "最近",
19
+ "defaultSession": "默认会话",
20
+ "newConversation": "新会话",
21
+ "settings": "设置",
22
+ "deleteConfirm": "确定要删除这个会话吗?"
23
+ },
24
+ "settings": {
25
+ "title": "设置",
26
+ "tabs": {
27
+ "general": "常规",
28
+ "systemPrompt": "系统提示词",
29
+ "scheduler": "记忆与调度"
30
+ },
31
+ "general": {
32
+ "provider": "模型提供商",
33
+ "apiKey": "API Key",
34
+ "baseURL": "Base URL",
35
+ "modelName": "模型名称",
36
+ "temperature": "温度 (Temperature)"
37
+ },
38
+ "prompt": {
39
+ "description": "定义 xiaozuoAssistant 的行为和响应方式。",
40
+ "placeholder": "你是一个有用的 AI 助手..."
41
+ },
42
+ "scheduler": {
43
+ "memoryMaintenance": "记忆维护",
44
+ "description": "配置系统何时压缩旧记忆并删除过期会话。",
45
+ "cronSchedule": "Cron 表达式",
46
+ "cronHint": "格式: 分 时 日 月 周 (例如 \"0 0 * * *\" 表示每天午夜)",
47
+ "manualTrigger": "手动触发",
48
+ "manualDescription": "立即强制运行维护任务。",
49
+ "runNow": "立即运行维护",
50
+ "daily": "每天",
51
+ "weekly": "每周",
52
+ "custom": "自定义 (Cron)"
53
+ },
54
+ "buttons": {
55
+ "close": "关闭",
56
+ "save": "保存更改",
57
+ "saving": "保存中...",
58
+ "cancel": "取消"
59
+ },
60
+ "messages": {
61
+ "savedSuccess": "配置保存成功!",
62
+ "saveFailed": "保存配置失败",
63
+ "networkError": "发生网络错误",
64
+ "maintenanceSuccess": "维护任务触发成功!"
65
+ },
66
+ "language": "语言"
67
+ },
68
+ "weekdays": {
69
+ "sunday": "星期日",
70
+ "monday": "星期一",
71
+ "tuesday": "星期二",
72
+ "wednesday": "星期三",
73
+ "thursday": "星期四",
74
+ "friday": "星期五",
75
+ "saturday": "星期六"
76
+ }
77
+ }