@aggroot-team/aggroot 1.7.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.
- package/.env.example +106 -0
- package/LICENSE +21 -0
- package/README.md +496 -0
- package/dist/cli.cjs +26 -0
- package/dist/index.cjs +45238 -0
- package/dist/native/better_sqlite3.node +0 -0
- package/dist/tree-sitter-c.wasm +0 -0
- package/dist/tree-sitter-cpp.wasm +0 -0
- package/dist/web-tree-sitter.wasm +0 -0
- package/install-linux.sh +123 -0
- package/install-windows.bat +121 -0
- package/package.json +155 -0
- package/scripts/build-all.mjs +42 -0
- package/scripts/fix-workspace-deps.mjs +41 -0
- package/scripts/generate-example-skills.ts +238 -0
- package/scripts/import-meta-shim.js +3 -0
- package/scripts/install-browsers.mjs +132 -0
- package/scripts/obfuscate.mjs +215 -0
- package/scripts/test-bash-parser.ts +37 -0
- package/scripts/test-parser2.ts +24 -0
- package/scripts/test-parser3.js +4 -0
- package/scripts/test-tokenizer.js +148 -0
- package/scripts/verify-no-source.mjs +83 -0
- package/share/agents/agent-coder.json +256 -0
- package/share/agents/agent-devops.json +61 -0
- package/share/agents/agent-writer.json +213 -0
- package/share/scripts/_utils.py +105 -0
- package/share/scripts/market_overview.py +244 -0
- package/share/scripts/stock_compare.py +244 -0
- package/share/scripts/stock_financial.py +211 -0
- package/share/scripts/stock_news.py +181 -0
- package/share/scripts/stock_quote.py +433 -0
- package/share/scripts/stock_technical.py +402 -0
- package/share/web/dist/assets/arc-DmQ0lviI.js +1 -0
- package/share/web/dist/assets/architectureDiagram-3BPJPVTR-KELFQLRt.js +36 -0
- package/share/web/dist/assets/blockDiagram-GPEHLZMM-D_2waPJB.js +132 -0
- package/share/web/dist/assets/c4Diagram-AAUBKEIU-BxaYriMP.js +10 -0
- package/share/web/dist/assets/channel-DppiAmuZ.js +1 -0
- package/share/web/dist/assets/chunk-2J33WTMH-D_wcMArK.js +1 -0
- package/share/web/dist/assets/chunk-4BX2VUAB-C4Mm8aE8.js +1 -0
- package/share/web/dist/assets/chunk-55IACEB6-Djo1jBPb.js +1 -0
- package/share/web/dist/assets/chunk-727SXJPM-D-9kzLrQ.js +206 -0
- package/share/web/dist/assets/chunk-AQP2D5EJ-BV58AHlG.js +231 -0
- package/share/web/dist/assets/chunk-FMBD7UC4-D3AHszVJ.js +15 -0
- package/share/web/dist/assets/chunk-ND2GUHAM-CCuQ63c7.js +1 -0
- package/share/web/dist/assets/chunk-QZHKN3VN-Dl9PXzs1.js +1 -0
- package/share/web/dist/assets/classDiagram-4FO5ZUOK-BnkzOZLJ.js +1 -0
- package/share/web/dist/assets/classDiagram-v2-Q7XG4LA2-BnkzOZLJ.js +1 -0
- package/share/web/dist/assets/cose-bilkent-S5V4N54A-BuRspznV.js +1 -0
- package/share/web/dist/assets/cytoscape.esm-CkSuTymj.js +321 -0
- package/share/web/dist/assets/dagre-BM42HDAG-D4fhww9y.js +4 -0
- package/share/web/dist/assets/defaultLocale-CrowFXzY.js +1 -0
- package/share/web/dist/assets/diagram-2AECGRRQ-dMi9m1J4.js +43 -0
- package/share/web/dist/assets/diagram-5GNKFQAL-CjRIIBA8.js +10 -0
- package/share/web/dist/assets/diagram-KO2AKTUF-gR1tXbmQ.js +3 -0
- package/share/web/dist/assets/diagram-LMA3HP47-CQkJCjQX.js +24 -0
- package/share/web/dist/assets/diagram-OG6HWLK6-DBEvIvu5.js +24 -0
- package/share/web/dist/assets/erDiagram-TEJ5UH35-ChwS3Oys.js +85 -0
- package/share/web/dist/assets/flowDiagram-I6XJVG4X-yYT7qyQr.js +162 -0
- package/share/web/dist/assets/ganttDiagram-6RSMTGT7-9TgEI2XC.js +292 -0
- package/share/web/dist/assets/gitGraphDiagram-PVQCEYII-PVcWiaLN.js +106 -0
- package/share/web/dist/assets/graph-D2o_JWn5.js +1 -0
- package/share/web/dist/assets/index-BWshepxw.js +407 -0
- package/share/web/dist/assets/index-aC35iubs.css +1 -0
- package/share/web/dist/assets/infoDiagram-5YYISTIA-C5_cYCEE.js +2 -0
- package/share/web/dist/assets/init-Gi6I4Gst.js +1 -0
- package/share/web/dist/assets/ishikawaDiagram-YF4QCWOH-Day2c-1K.js +70 -0
- package/share/web/dist/assets/journeyDiagram-JHISSGLW-BZdHoYic.js +139 -0
- package/share/web/dist/assets/kanban-definition-UN3LZRKU-DoEoEViV.js +89 -0
- package/share/web/dist/assets/katex-HP8lGamR.js +257 -0
- package/share/web/dist/assets/layout-UJbxhwF7.js +1 -0
- package/share/web/dist/assets/linear-z8LqGvHi.js +1 -0
- package/share/web/dist/assets/mindmap-definition-RKZ34NQL-DshJGF7V.js +96 -0
- package/share/web/dist/assets/ordinal-Cboi1Yqb.js +1 -0
- package/share/web/dist/assets/pieDiagram-4H26LBE5-MKBdIMr0.js +30 -0
- package/share/web/dist/assets/quadrantDiagram-W4KKPZXB-Rc8VkAHd.js +7 -0
- package/share/web/dist/assets/requirementDiagram-4Y6WPE33-DIvF0TEG.js +84 -0
- package/share/web/dist/assets/sankeyDiagram-5OEKKPKP-FTZOsw4G.js +40 -0
- package/share/web/dist/assets/sequenceDiagram-3UESZ5HK-BXnFdz67.js +162 -0
- package/share/web/dist/assets/stateDiagram-AJRCARHV-N_DEea7F.js +1 -0
- package/share/web/dist/assets/stateDiagram-v2-BHNVJYJU-9RyR03R8.js +1 -0
- package/share/web/dist/assets/timeline-definition-PNZ67QCA-nelw3asj.js +120 -0
- package/share/web/dist/assets/vennDiagram-CIIHVFJN-BkfB2ea3.js +34 -0
- package/share/web/dist/assets/wardley-L42UT6IY-ChtTMLrY.js +161 -0
- package/share/web/dist/assets/wardleyDiagram-YWT4CUSO-CEsObJvL.js +78 -0
- package/share/web/dist/assets/xychartDiagram-2RQKCTM6-DNog7YuY.js +7 -0
- package/share/web/dist/index.html +13 -0
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
package/install-linux.sh
ADDED
|
@@ -0,0 +1,123 @@
|
|
|
1
|
+
#!/bin/bash
|
|
2
|
+
|
|
3
|
+
# AggRoot 项目 Linux/macOS 安装脚本
|
|
4
|
+
|
|
5
|
+
set -e
|
|
6
|
+
|
|
7
|
+
# 颜色定义
|
|
8
|
+
RED='\033[0;31m'
|
|
9
|
+
GREEN='\033[0;32m'
|
|
10
|
+
YELLOW='\033[1;33m'
|
|
11
|
+
BLUE='\033[0;34m'
|
|
12
|
+
NC='\033[0m' # No Color
|
|
13
|
+
|
|
14
|
+
echo -e "${BLUE}========================================${NC}"
|
|
15
|
+
echo -e "${BLUE} AggRoot 项目 Linux/macOS 安装脚本${NC}"
|
|
16
|
+
echo -e "${BLUE}========================================${NC}"
|
|
17
|
+
echo ""
|
|
18
|
+
|
|
19
|
+
# 检查 Node.js
|
|
20
|
+
if ! command -v node &> /dev/null; then
|
|
21
|
+
echo -e "${RED}❌ 错误: Node.js 未安装${NC}"
|
|
22
|
+
echo ""
|
|
23
|
+
echo "请先安装 Node.js (版本 >= 20.0.0)"
|
|
24
|
+
echo "Linux: 使用 nvm 或包管理器安装"
|
|
25
|
+
echo "macOS: 使用 brew install node 或从官网下载"
|
|
26
|
+
echo "官网: https://nodejs.org/"
|
|
27
|
+
echo ""
|
|
28
|
+
exit 1
|
|
29
|
+
fi
|
|
30
|
+
|
|
31
|
+
NODE_VERSION=$(node -v)
|
|
32
|
+
echo -e "${GREEN}✅ Node.js 版本: $NODE_VERSION${NC}"
|
|
33
|
+
echo ""
|
|
34
|
+
|
|
35
|
+
# 检查 npm
|
|
36
|
+
if ! command -v npm &> /dev/null; then
|
|
37
|
+
echo -e "${RED}❌ 错误: npm 未安装${NC}"
|
|
38
|
+
echo ""
|
|
39
|
+
exit 1
|
|
40
|
+
fi
|
|
41
|
+
|
|
42
|
+
echo -e "${YELLOW}📦 开始安装 AggRoot 项目...${NC}"
|
|
43
|
+
echo ""
|
|
44
|
+
|
|
45
|
+
# 步骤 1: 安装依赖
|
|
46
|
+
echo -e "${YELLOW}[1/3] 安装依赖...${NC}"
|
|
47
|
+
if ! npm install; then
|
|
48
|
+
echo -e "${YELLOW}⚠️ 警告: 依赖安装遇到问题${NC}"
|
|
49
|
+
echo "尝试使用淘宝镜像..."
|
|
50
|
+
npm config set registry https://registry.npmmirror.com
|
|
51
|
+
if ! npm install; then
|
|
52
|
+
echo -e "${RED}❌ 错误: 依赖安装失败${NC}"
|
|
53
|
+
echo "请检查网络连接或手动安装"
|
|
54
|
+
exit 1
|
|
55
|
+
fi
|
|
56
|
+
fi
|
|
57
|
+
echo -e "${GREEN}✅ 依赖安装完成${NC}"
|
|
58
|
+
echo ""
|
|
59
|
+
|
|
60
|
+
# 步骤 2: 重建原生模块
|
|
61
|
+
echo -e "${YELLOW}[2/3] 重建原生模块...${NC}"
|
|
62
|
+
echo "注意: 这可能需要几分钟时间..."
|
|
63
|
+
if ! npm run rebuild:linux; then
|
|
64
|
+
echo -e "${YELLOW}⚠️ 警告: Linux 特定重建失败,尝试标准重建...${NC}"
|
|
65
|
+
if ! npm run rebuild-native; then
|
|
66
|
+
echo -e "${YELLOW}⚠️ 警告: 原生模块重建失败${NC}"
|
|
67
|
+
echo "如果项目运行正常,可以忽略此警告"
|
|
68
|
+
echo "如果遇到模块错误,请安装构建工具:"
|
|
69
|
+
echo " Ubuntu/Debian: sudo apt install build-essential python3 make g++"
|
|
70
|
+
echo " CentOS/RHEL: sudo yum groupinstall 'Development Tools'"
|
|
71
|
+
echo " macOS: xcode-select --install"
|
|
72
|
+
else
|
|
73
|
+
echo -e "${GREEN}✅ 原生模块重建完成${NC}"
|
|
74
|
+
fi
|
|
75
|
+
else
|
|
76
|
+
echo -e "${GREEN}✅ 原生模块重建完成${NC}"
|
|
77
|
+
fi
|
|
78
|
+
echo ""
|
|
79
|
+
|
|
80
|
+
# 步骤 3: 安装浏览器
|
|
81
|
+
echo -e "${YELLOW}[3/4] 安装 Playwright 浏览器...${NC}"
|
|
82
|
+
export PLAYWRIGHT_DOWNLOAD_HOST=https://npmmirror.com/mirrors/playwright
|
|
83
|
+
if ! npx playwright install chromium; then
|
|
84
|
+
echo -e "${YELLOW}淘宝镜像失败,尝试官方源...${NC}"
|
|
85
|
+
unset PLAYWRIGHT_DOWNLOAD_HOST
|
|
86
|
+
if ! npx playwright install chromium; then
|
|
87
|
+
echo -e "${YELLOW}⚠️ 警告: 浏览器安装失败,将在首次使用时自动下载${NC}"
|
|
88
|
+
else
|
|
89
|
+
echo -e "${GREEN}✅ 浏览器安装完成${NC}"
|
|
90
|
+
fi
|
|
91
|
+
else
|
|
92
|
+
echo -e "${GREEN}✅ 浏览器安装完成${NC}"
|
|
93
|
+
fi
|
|
94
|
+
echo ""
|
|
95
|
+
|
|
96
|
+
# 步骤 4: 构建项目
|
|
97
|
+
echo -e "${YELLOW}[4/4] 构建项目...${NC}"
|
|
98
|
+
if ! npm run build:dev; then
|
|
99
|
+
echo -e "${RED}❌ 错误: 构建失败${NC}"
|
|
100
|
+
echo "请检查 TypeScript 配置"
|
|
101
|
+
exit 1
|
|
102
|
+
fi
|
|
103
|
+
echo -e "${GREEN}✅ 项目构建完成${NC}"
|
|
104
|
+
echo ""
|
|
105
|
+
|
|
106
|
+
echo -e "${BLUE}========================================${NC}"
|
|
107
|
+
echo -e "${BLUE} 🎉 安装完成!${NC}"
|
|
108
|
+
echo -e "${BLUE}========================================${NC}"
|
|
109
|
+
echo ""
|
|
110
|
+
echo "运行以下命令启动项目:"
|
|
111
|
+
echo ""
|
|
112
|
+
echo " npm run dev # 开发模式(热重载)"
|
|
113
|
+
echo " npm start # 生产模式"
|
|
114
|
+
echo ""
|
|
115
|
+
echo "其他有用命令:"
|
|
116
|
+
echo " npm test # 运行测试"
|
|
117
|
+
echo " npm run lint # 代码检查"
|
|
118
|
+
echo " npm run format # 代码格式化"
|
|
119
|
+
echo ""
|
|
120
|
+
echo "查看 README.md 获取详细文档"
|
|
121
|
+
echo "查看 INSTALL.md 获取安装说明"
|
|
122
|
+
echo ""
|
|
123
|
+
echo -e "${BLUE}========================================${NC}"
|
|
@@ -0,0 +1,121 @@
|
|
|
1
|
+
@echo off
|
|
2
|
+
chcp 65001 >nul
|
|
3
|
+
echo ========================================
|
|
4
|
+
echo AggRoot 项目 Windows 安装脚本
|
|
5
|
+
echo ========================================
|
|
6
|
+
echo.
|
|
7
|
+
|
|
8
|
+
REM 检查 Node.js
|
|
9
|
+
where node >nul 2>nul
|
|
10
|
+
if %errorlevel% neq 0 (
|
|
11
|
+
echo ❌ 错误: Node.js 未安装
|
|
12
|
+
echo.
|
|
13
|
+
echo 请先安装 Node.js (版本 >= 20.0.0)
|
|
14
|
+
echo 下载地址: https://nodejs.org/
|
|
15
|
+
echo.
|
|
16
|
+
pause
|
|
17
|
+
exit /b 1
|
|
18
|
+
)
|
|
19
|
+
|
|
20
|
+
for /f "tokens=*" %%i in ('node -v') do set NODE_VERSION=%%i
|
|
21
|
+
echo ✅ Node.js 版本: %NODE_VERSION%
|
|
22
|
+
echo.
|
|
23
|
+
|
|
24
|
+
REM 检查 npm
|
|
25
|
+
where npm >nul 2>nul
|
|
26
|
+
if %errorlevel% neq 0 (
|
|
27
|
+
echo ❌ 错误: npm 未安装
|
|
28
|
+
echo.
|
|
29
|
+
pause
|
|
30
|
+
exit /b 1
|
|
31
|
+
)
|
|
32
|
+
|
|
33
|
+
echo 📦 开始安装 AggRoot 项目...
|
|
34
|
+
echo.
|
|
35
|
+
|
|
36
|
+
REM 步骤 1: 安装依赖
|
|
37
|
+
echo [1/3] 安装依赖...
|
|
38
|
+
call npm install
|
|
39
|
+
if %errorlevel% neq 0 (
|
|
40
|
+
echo ⚠️ 警告: 依赖安装遇到问题
|
|
41
|
+
echo 尝试使用淘宝镜像...
|
|
42
|
+
call npm config set registry https://registry.npmmirror.com
|
|
43
|
+
call npm install
|
|
44
|
+
if %errorlevel% neq 0 (
|
|
45
|
+
echo ❌ 错误: 依赖安装失败
|
|
46
|
+
echo 请检查网络连接或手动安装
|
|
47
|
+
pause
|
|
48
|
+
exit /b 1
|
|
49
|
+
)
|
|
50
|
+
)
|
|
51
|
+
echo ✅ 依赖安装完成
|
|
52
|
+
echo.
|
|
53
|
+
|
|
54
|
+
REM 步骤 2: 重建原生模块
|
|
55
|
+
echo [2/3] 重建原生模块...
|
|
56
|
+
echo 注意: 这可能需要几分钟时间...
|
|
57
|
+
call npm run rebuild:windows
|
|
58
|
+
if %errorlevel% neq 0 (
|
|
59
|
+
echo ⚠️ 警告: Windows 特定重建失败,尝试标准重建...
|
|
60
|
+
call npm run rebuild-native
|
|
61
|
+
if %errorlevel% neq 0 (
|
|
62
|
+
echo ⚠️ 警告: 原生模块重建失败
|
|
63
|
+
echo 如果项目运行正常,可以忽略此警告
|
|
64
|
+
echo 如果遇到模块错误,请安装 Visual Studio Build Tools
|
|
65
|
+
) else (
|
|
66
|
+
echo ✅ 原生模块重建完成
|
|
67
|
+
)
|
|
68
|
+
) else (
|
|
69
|
+
echo ✅ 原生模块重建完成
|
|
70
|
+
)
|
|
71
|
+
echo.
|
|
72
|
+
|
|
73
|
+
REM 步骤 3: 安装浏览器
|
|
74
|
+
echo [3/4] 安装 Playwright 浏览器...
|
|
75
|
+
set PLAYWRIGHT_DOWNLOAD_HOST=https://npmmirror.com/mirrors/playwright
|
|
76
|
+
call npx playwright install chromium
|
|
77
|
+
if %errorlevel% neq 0 (
|
|
78
|
+
echo 淘宝镜像失败,尝试官方源...
|
|
79
|
+
set PLAYWRIGHT_DOWNLOAD_HOST=
|
|
80
|
+
call npx playwright install chromium
|
|
81
|
+
if !errorlevel! neq 0 (
|
|
82
|
+
echo ⚠️ 警告: 浏览器安装失败,将在首次使用时自动下载
|
|
83
|
+
) else (
|
|
84
|
+
echo ✅ 浏览器安装完成
|
|
85
|
+
)
|
|
86
|
+
) else (
|
|
87
|
+
echo ✅ 浏览器安装完成
|
|
88
|
+
)
|
|
89
|
+
echo.
|
|
90
|
+
|
|
91
|
+
REM 步骤 4: 构建项目
|
|
92
|
+
echo [4/4] 构建项目...
|
|
93
|
+
call npm run build:dev
|
|
94
|
+
if %errorlevel% neq 0 (
|
|
95
|
+
echo ❌ 错误: 构建失败
|
|
96
|
+
echo 请检查 TypeScript 配置
|
|
97
|
+
pause
|
|
98
|
+
exit /b 1
|
|
99
|
+
)
|
|
100
|
+
echo ✅ 项目构建完成
|
|
101
|
+
echo.
|
|
102
|
+
|
|
103
|
+
echo ========================================
|
|
104
|
+
echo 🎉 安装完成!
|
|
105
|
+
echo ========================================
|
|
106
|
+
echo.
|
|
107
|
+
echo 运行以下命令启动项目:
|
|
108
|
+
echo.
|
|
109
|
+
echo npm run dev ^# 开发模式(热重载)
|
|
110
|
+
echo npm start ^# 生产模式
|
|
111
|
+
echo.
|
|
112
|
+
echo 其他有用命令:
|
|
113
|
+
echo npm test ^# 运行测试
|
|
114
|
+
echo npm run lint ^# 代码检查
|
|
115
|
+
echo npm run format ^# 代码格式化
|
|
116
|
+
echo.
|
|
117
|
+
echo 查看 README.md 获取详细文档
|
|
118
|
+
echo 查看 INSTALL.md 获取安装说明
|
|
119
|
+
echo.
|
|
120
|
+
echo ========================================
|
|
121
|
+
pause
|
package/package.json
ADDED
|
@@ -0,0 +1,155 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "@aggroot-team/aggroot",
|
|
3
|
+
"version": "1.7.2",
|
|
4
|
+
"description": "AggRoot - AI Assistant (Node.js/TypeScript Version)",
|
|
5
|
+
"keywords": [
|
|
6
|
+
"ai",
|
|
7
|
+
"assistant",
|
|
8
|
+
"llm",
|
|
9
|
+
"agent"
|
|
10
|
+
],
|
|
11
|
+
"repository": {
|
|
12
|
+
"type": "git",
|
|
13
|
+
"url": "https://gitcode.com/Mario_z/aita.git"
|
|
14
|
+
},
|
|
15
|
+
"license": "MIT",
|
|
16
|
+
"author": "zhangzhuo",
|
|
17
|
+
"type": "module",
|
|
18
|
+
"imports": {
|
|
19
|
+
"#core/*": "./dist/core/*.js",
|
|
20
|
+
"#tools/*": "./dist/tools/*.js",
|
|
21
|
+
"#models/*": "./dist/models/*.js",
|
|
22
|
+
"#memory/*": "./dist/memory/*.js",
|
|
23
|
+
"#types": "./dist/types/index.js",
|
|
24
|
+
"#config": "./dist/config.js"
|
|
25
|
+
},
|
|
26
|
+
"main": "./dist/index.cjs",
|
|
27
|
+
"bin": {
|
|
28
|
+
"aggroot": "dist/cli.cjs"
|
|
29
|
+
},
|
|
30
|
+
"directories": {
|
|
31
|
+
"doc": "docs",
|
|
32
|
+
"test": "tests"
|
|
33
|
+
},
|
|
34
|
+
"files": [
|
|
35
|
+
"dist/",
|
|
36
|
+
"share/",
|
|
37
|
+
"scripts/",
|
|
38
|
+
".env.example",
|
|
39
|
+
"install-windows.bat",
|
|
40
|
+
"install-linux.sh",
|
|
41
|
+
"README.md"
|
|
42
|
+
],
|
|
43
|
+
"scripts": {
|
|
44
|
+
"dev": "node --no-warnings --import=tsx --watch src/index.ts",
|
|
45
|
+
"dev:no-watch": "node --no-warnings --import=tsx src/index.ts",
|
|
46
|
+
"dev:silent": "node --no-warnings --import=tsx --watch src/index.ts",
|
|
47
|
+
"build": "node -e \"require('fs').rmSync('dist',{recursive:true,force:true})\" && tsc -p tsconfig.build.json && node scripts/obfuscate.mjs && node scripts/verify-no-source.mjs && cd packages/web && npx vite build && cd ../..",
|
|
48
|
+
"build:all": "node scripts/build-all.mjs",
|
|
49
|
+
"build:dev": "tsc",
|
|
50
|
+
"prepack": "npm run build && cd packages/web && npx vite build && cd ../.. && node -e \"const{mkdirSync,readdirSync,copyFileSync,existsSync}=require('fs');const{join}=require('path');function cpR(s,d){mkdirSync(d,{recursive:true});for(const f of readdirSync(s)){const sp=join(s,f),dp=join(d,f);const st=require('fs').statSync(sp);st.isDirectory()?cpR(sp,dp):copyFileSync(sp,dp)}if(!existsSync('share/web'))mkdirSync('share/web',{recursive:true})}if(existsSync('packages/web/dist'))cpR(join('packages','web','dist'),join('share','web','dist'))\"",
|
|
51
|
+
"start": "node --no-warnings --max-old-space-size=4096 dist/index.cjs",
|
|
52
|
+
"type-check": "tsc --noEmit",
|
|
53
|
+
"lint": "eslint .",
|
|
54
|
+
"lint:fix": "eslint . --fix",
|
|
55
|
+
"format": "prettier --write .",
|
|
56
|
+
"format:check": "prettier --check .",
|
|
57
|
+
"test": "vitest",
|
|
58
|
+
"test:run": "vitest run",
|
|
59
|
+
"test:coverage": "vitest run --coverage",
|
|
60
|
+
"test:cross-platform": "node test-cross-platform.js",
|
|
61
|
+
"clean": "node -e \"require('fs').rmSync('dist',{recursive:true,force:true});require('fs').rmSync('logs',{recursive:true,force:true})\"",
|
|
62
|
+
"rebuild-native": "npm rebuild better-sqlite3 sharp",
|
|
63
|
+
"rebuild:windows": "npm rebuild --build-from-source better-sqlite3 sharp",
|
|
64
|
+
"rebuild:linux": "npm rebuild --build-from-source better-sqlite3 sharp",
|
|
65
|
+
"install:all": "npm install && npm run rebuild-native"
|
|
66
|
+
},
|
|
67
|
+
"dependencies": {
|
|
68
|
+
"@aggroot-team/server": "workspace:*",
|
|
69
|
+
"@modelcontextprotocol/sdk": "^1.29.0",
|
|
70
|
+
"@sqlite.org/sqlite-wasm": "3.53.0-build1",
|
|
71
|
+
"@vscode/ripgrep": "^1.17.1",
|
|
72
|
+
"@xenova/transformers": "^2.17.0",
|
|
73
|
+
"ajv": "^8.18.0",
|
|
74
|
+
"ajv-formats": "^3.0.1",
|
|
75
|
+
"chalk": "^5.6.2",
|
|
76
|
+
"chokidar": "^5.0.0",
|
|
77
|
+
"cli-table3": "^0.6.5",
|
|
78
|
+
"diff": "^9.0.0",
|
|
79
|
+
"docx": "^9.6.1",
|
|
80
|
+
"dotenv": "^17.3.1",
|
|
81
|
+
"exceljs": "^4.4.0",
|
|
82
|
+
"glob": "^13.0.6",
|
|
83
|
+
"iconv-lite": "^0.7.2",
|
|
84
|
+
"ink": "^6.8.0",
|
|
85
|
+
"inquirer": "^12.0.0",
|
|
86
|
+
"lru-cache": "^11.2.7",
|
|
87
|
+
"mammoth": "^1.12.0",
|
|
88
|
+
"marked": "^18.0.3",
|
|
89
|
+
"openai": "^4.67.0",
|
|
90
|
+
"ora": "^8.1.0",
|
|
91
|
+
"pino": "^9.5.0",
|
|
92
|
+
"pino-pretty": "^11.2.0",
|
|
93
|
+
"playwright": "^1.60.0",
|
|
94
|
+
"pptxgenjs": "^4.0.1",
|
|
95
|
+
"react": "^19.2.4",
|
|
96
|
+
"react-reconciler": "^0.31.0",
|
|
97
|
+
"scheduler": "^0.27.0",
|
|
98
|
+
"simple-git": "^3.26.0",
|
|
99
|
+
"string-width": "^8.2.1",
|
|
100
|
+
"tiktoken": "^1.0.22",
|
|
101
|
+
"tree-sitter-c": "^0.24.1",
|
|
102
|
+
"tree-sitter-cpp": "^0.23.4",
|
|
103
|
+
"ts-morph": "^27.0.2",
|
|
104
|
+
"uuid": "^13.0.0",
|
|
105
|
+
"web-tree-sitter": "^0.26.8",
|
|
106
|
+
"zod": "^3.25.76"
|
|
107
|
+
},
|
|
108
|
+
"optionalDependencies": {
|
|
109
|
+
"@honcho-ai/sdk": "^2.1.1",
|
|
110
|
+
"better-sqlite3": "^11.10.0",
|
|
111
|
+
"sharp": "^0.34.5"
|
|
112
|
+
},
|
|
113
|
+
"devDependencies": {
|
|
114
|
+
"@eslint/js": "^9.13.0",
|
|
115
|
+
"@types/ajv": "^0.0.5",
|
|
116
|
+
"@types/better-sqlite3": "^7.6.13",
|
|
117
|
+
"@types/diff": "^7.0.2",
|
|
118
|
+
"@types/node": "^20.14.0",
|
|
119
|
+
"@types/react": "^19.2.14",
|
|
120
|
+
"@types/react-reconciler": "^0.31.0",
|
|
121
|
+
"@vitest/coverage-v8": "^2.1.0",
|
|
122
|
+
"esbuild": "^0.28.0",
|
|
123
|
+
"eslint": "^9.13.0",
|
|
124
|
+
"eslint-config-prettier": "^9.1.0",
|
|
125
|
+
"husky": "^9.1.0",
|
|
126
|
+
"javascript-obfuscator": "^4.2.2",
|
|
127
|
+
"lint-staged": "^15.5.0",
|
|
128
|
+
"prettier": "^3.3.3",
|
|
129
|
+
"tsx": "^4.19.0",
|
|
130
|
+
"typescript": "^5.6.0",
|
|
131
|
+
"typescript-eslint": "^8.10.0",
|
|
132
|
+
"vitest": "^2.1.0"
|
|
133
|
+
},
|
|
134
|
+
"engines": {
|
|
135
|
+
"node": ">=20.0.0"
|
|
136
|
+
},
|
|
137
|
+
"os": [
|
|
138
|
+
"win32",
|
|
139
|
+
"linux",
|
|
140
|
+
"darwin"
|
|
141
|
+
],
|
|
142
|
+
"cpu": [
|
|
143
|
+
"x64",
|
|
144
|
+
"arm64",
|
|
145
|
+
"ia32"
|
|
146
|
+
],
|
|
147
|
+
"publishConfig": {
|
|
148
|
+
"access": "public"
|
|
149
|
+
},
|
|
150
|
+
"lint-staged": {
|
|
151
|
+
"*.{ts,tsx,json,md,css}": [
|
|
152
|
+
"prettier --write"
|
|
153
|
+
]
|
|
154
|
+
}
|
|
155
|
+
}
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* AggRoot 一键构建脚本
|
|
5
|
+
* 按依赖顺序编译所有 workspace 包
|
|
6
|
+
*/
|
|
7
|
+
|
|
8
|
+
import { execSync } from "node:child_process";
|
|
9
|
+
|
|
10
|
+
const packages = [
|
|
11
|
+
{ name: "@aggroot/protocol", label: "Protocol (共享类型)" },
|
|
12
|
+
{ name: "@aggroot/server", label: "Server (网关服务)" },
|
|
13
|
+
{ name: "@aggroot/web", label: "Web (前端)" },
|
|
14
|
+
{ name: "aggroot", label: "AggRoot (主包)" },
|
|
15
|
+
];
|
|
16
|
+
|
|
17
|
+
function run(cmd) {
|
|
18
|
+
execSync(cmd, { stdio: "inherit", shell: true });
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
function build(pkg) {
|
|
22
|
+
const cmd = pkg.name === "aggroot"
|
|
23
|
+
? "npm run build"
|
|
24
|
+
: `npm run build -w ${pkg.name}`;
|
|
25
|
+
run(cmd);
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
// --- main ---
|
|
29
|
+
console.log("=== AggRoot 全量构建 ===\n");
|
|
30
|
+
|
|
31
|
+
for (const pkg of packages) {
|
|
32
|
+
console.log(`>> 构建 ${pkg.label} ...`);
|
|
33
|
+
try {
|
|
34
|
+
build(pkg);
|
|
35
|
+
} catch {
|
|
36
|
+
console.error(`\n!! 构建 ${pkg.label} 失败,已中止`);
|
|
37
|
+
process.exit(1);
|
|
38
|
+
}
|
|
39
|
+
console.log(`>> ${pkg.label} 完成\n`);
|
|
40
|
+
}
|
|
41
|
+
|
|
42
|
+
console.log("=== 全部构建完成 ===");
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
import { readFileSync, writeFileSync } from "node:fs";
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* Fix workspace protocol dependencies before npm publish.
|
|
5
|
+
*
|
|
6
|
+
* pnpm workspace dependencies (workspace:*) are not understood by npm.
|
|
7
|
+
*
|
|
8
|
+
* For packages that are statically imported (bundled by esbuild into dist/),
|
|
9
|
+
* we DELETE them from package.json since they're already embedded in the bundle.
|
|
10
|
+
*
|
|
11
|
+
* For packages that are NOT bundled but still needed at runtime,
|
|
12
|
+
* replace workspace:* with the actual published version number.
|
|
13
|
+
*/
|
|
14
|
+
|
|
15
|
+
const rootPkg = JSON.parse(readFileSync("package.json", "utf8"));
|
|
16
|
+
|
|
17
|
+
// Packages that are statically imported → esbuild bundles them → remove from deps
|
|
18
|
+
const BUNDLED_WORKSPACE_PKGS = ["@aggroot/server"];
|
|
19
|
+
|
|
20
|
+
function fixDeps(deps) {
|
|
21
|
+
if (!deps) return;
|
|
22
|
+
for (const [k, v] of Object.entries(deps)) {
|
|
23
|
+
if (typeof v === "string" && v.startsWith("workspace:")) {
|
|
24
|
+
if (BUNDLED_WORKSPACE_PKGS.includes(k)) {
|
|
25
|
+
delete deps[k];
|
|
26
|
+
console.log(`[fix-workspace] Removed bundled dependency: ${k}`);
|
|
27
|
+
} else {
|
|
28
|
+
// Fallback: would need to look up version - for now just remove
|
|
29
|
+
delete deps[k];
|
|
30
|
+
console.log(`[fix-workspace] Removed unbundled dependency: ${k}`);
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
fixDeps(rootPkg.dependencies);
|
|
37
|
+
fixDeps(rootPkg.optionalDependencies);
|
|
38
|
+
fixDeps(rootPkg.devDependencies);
|
|
39
|
+
|
|
40
|
+
writeFileSync("package.json", JSON.stringify(rootPkg, null, 2) + "\n");
|
|
41
|
+
console.log("[fix-workspace] Done — all workspace:* dependencies removed");
|