Skip to content

Commit 7aba302

Browse files
committed
chore: release v0.5.6
2 parents aa2372c + 17bcf0e commit 7aba302

57 files changed

Lines changed: 1484 additions & 948 deletions

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.dockerignore

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
node_modules
2+
apps/desktop/src-tauri/target
3+
**/*.sqlite*
4+
**/dist
5+
**/*.tsbuildinfo
6+
.git
7+
.env
8+
.env.*

.github/workflows/ci.yml

Lines changed: 0 additions & 43 deletions
Original file line numberDiff line numberDiff line change
@@ -43,46 +43,3 @@ jobs:
4343

4444
- name: Typecheck
4545
run: npm run typecheck
46-
build-android:
47-
name: Build (Android)
48-
runs-on: ubuntu-latest
49-
50-
steps:
51-
- name: Checkout
52-
uses: actions/checkout@v4
53-
54-
- name: Setup Node.js
55-
uses: actions/setup-node@v4
56-
with:
57-
node-version: 26
58-
cache: npm
59-
60-
- name: Setup Java
61-
uses: actions/setup-java@v4
62-
with:
63-
distribution: 'temurin'
64-
java-version: '17'
65-
66-
- name: Setup Android SDK
67-
uses: android-actions/setup-android@v3
68-
69-
- name: Cache Gradle
70-
uses: actions/cache@v4
71-
with:
72-
path: ~/.gradle/caches
73-
key: ${{ runner.os }}-gradle-${{ hashFiles('apps/android/**/*.gradle.kts', 'apps/android/gradle/**') }}
74-
restore-keys: |
75-
${{ runner.os }}-gradle-
76-
77-
- name: Install dependencies
78-
run: npm ci
79-
80-
- name: Sync web-ui to Android assets
81-
run: bash scripts/sync-android-assets.sh
82-
83-
- name: Remove local.properties (CI uses ANDROID_HOME)
84-
run: rm -f apps/android/local.properties
85-
86-
- name: Build Android APK (debug)
87-
working-directory: apps/android
88-
run: ./gradlew assembleDebug --no-daemon

.github/workflows/release.yml

Lines changed: 1 addition & 51 deletions
Original file line numberDiff line numberDiff line change
@@ -177,59 +177,10 @@ jobs:
177177
with:
178178
name: aurevoy-linux-appimage
179179
path: apps/desktop/src-tauri/target/release/bundle/appimage/*.AppImage
180-
build-android:
181-
name: Build (Android)
182-
runs-on: ubuntu-latest
183-
184-
steps:
185-
- name: Checkout
186-
uses: actions/checkout@v4
187-
188-
- name: Setup Node.js
189-
uses: actions/setup-node@v4
190-
with:
191-
node-version: 26
192-
cache: npm
193-
194-
- name: Setup Java
195-
uses: actions/setup-java@v4
196-
with:
197-
distribution: 'temurin'
198-
java-version: '17'
199-
200-
- name: Setup Android SDK
201-
uses: android-actions/setup-android@v3
202-
203-
- name: Cache Gradle
204-
uses: actions/cache@v4
205-
with:
206-
path: ~/.gradle/caches
207-
key: ${{ runner.os }}-gradle-${{ hashFiles('apps/android/**/*.gradle.kts', 'apps/android/gradle/**') }}
208-
restore-keys: |
209-
${{ runner.os }}-gradle-
210-
211-
- name: Install dependencies
212-
run: npm ci
213-
214-
- name: Sync web-ui to Android assets
215-
run: bash scripts/sync-android-assets.sh
216-
217-
- name: Remove local.properties (CI uses ANDROID_HOME)
218-
run: rm -f apps/android/local.properties
219-
220-
- name: Build Android APK (debug)
221-
working-directory: apps/android
222-
run: ./gradlew assembleDebug --no-daemon
223-
224-
- name: Upload APK artifact
225-
uses: actions/upload-artifact@v4
226-
with:
227-
name: aurevoy-android
228-
path: apps/android/app/build/outputs/apk/debug/*.apk
229180

230181
create-release:
231182
name: Create Release
232-
needs: [build-macos, build-windows, build-linux, build-android]
183+
needs: [build-macos, build-windows, build-linux]
233184
runs-on: ubuntu-latest
234185
permissions:
235186
contents: write
@@ -251,7 +202,6 @@ jobs:
251202
artifacts/aurevoy-windows/*.exe
252203
artifacts/aurevoy-linux-deb/*.deb
253204
artifacts/aurevoy-linux-appimage/*.AppImage
254-
artifacts/aurevoy-android/*.apk
255205
generate_release_notes: true
256206
env:
257207
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}

.gitignore

Lines changed: 2 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -34,17 +34,9 @@ logs/
3434
.vscode/*
3535
!.vscode/extensions.json
3636

37-
# Android
38-
apps/android/.gradle/
39-
apps/android/local.properties
40-
apps/android/app/build/
41-
apps/android/gradle/wrapper/gradle-wrapper.jar
42-
4337
# web-ui standalone build
4438
packages/web-ui/dist-web/
4539
packages/web-ui/dist/
4640

47-
# Build temp (downloaded SDK/Gradle)
48-
/tmp/android-sdk/
49-
/tmp/gradle-*/
50-
/tmp/cmdline*
41+
# Personal blog / social media posts
42+
blog/

Dockerfile

Lines changed: 50 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,50 @@
1+
# ── Builder ──────────────────────────────────────────
2+
FROM node:22-slim AS builder
3+
RUN apt-get update && apt-get install -y --no-install-recommends \
4+
python3 make g++ git \
5+
&& rm -rf /var/lib/apt/lists/*
6+
7+
WORKDIR /app
8+
COPY package.json package-lock.json tsconfig.base.json ./
9+
COPY packages/shared/package.json packages/shared/
10+
COPY packages/web-ui/package.json packages/web-ui/
11+
COPY apps/agent/package.json apps/agent/
12+
COPY apps/desktop/package.json apps/desktop/
13+
RUN npm ci --ignore-scripts && npm rebuild better-sqlite3
14+
15+
COPY packages/shared/ packages/shared/
16+
COPY apps/agent/ apps/agent/
17+
RUN npm run build:shared && npm run build -w @aurevoy/agent && npm prune --production
18+
19+
# ── Runtime ──────────────────────────────────────────
20+
FROM node:22-slim
21+
RUN apt-get update && apt-get install -y --no-install-recommends \
22+
git python3 curl ca-certificates \
23+
&& curl -LsSf https://astral.sh/uv/install.sh | sh \
24+
&& mv /root/.local/bin/uv /usr/local/bin/uv \
25+
&& apt-get purge -y curl \
26+
&& apt-get autoremove -y \
27+
&& rm -rf /var/lib/apt/lists/* /root/.local
28+
29+
WORKDIR /app
30+
COPY --from=builder /app/node_modules ./node_modules
31+
COPY --from=builder /app/packages/shared/dist ./packages/shared/dist
32+
COPY --from=builder /app/packages/shared/package.json ./packages/shared/
33+
COPY --from=builder /app/apps/agent/dist ./apps/agent/dist
34+
COPY --from=builder /app/apps/agent/package.json ./apps/agent/
35+
COPY --from=builder /app/apps/agent/skills ./apps/agent/skills
36+
37+
ENV AUREVOY_HOST=0.0.0.0 \
38+
AUREVOY_PORT=8787 \
39+
AUREVOY_PYTHON_AUTO_SETUP=false \
40+
AUREVOY_PYTHON_HOME=/usr \
41+
AUREVOY_LOG_PRETTY=false \
42+
NODE_ENV=production
43+
44+
VOLUME ["/root/.aurevoy"]
45+
46+
EXPOSE 8787
47+
HEALTHCHECK --interval=30s --timeout=3s \
48+
CMD node -e "fetch('http://127.0.0.1:8787/api/health').then(r=>{process.exit(r.ok?0:1)})"
49+
50+
CMD ["node", "apps/agent/dist/index.js"]

apps/agent/src/agent/context.ts

Lines changed: 49 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -10,13 +10,12 @@ import { skillRegistry } from '../skills/registry.js';
1010
* 当无可用 skill 时返回 null(标准要求不展示空 catalog)。
1111
*/
1212
export function buildSkillCatalogMessage(): Message | null {
13-
const descriptors = skillRegistry.listAll();
13+
const all = skillRegistry.listAll();
14+
const descriptors = all.filter((s) => s.enabled);
1415
if (descriptors.length === 0) return null;
1516

1617
const catalogLines = descriptors.map((s) => {
17-
let line = `- **${s.name}**: ${s.description}`;
18-
if (s.location) line += ` (location: ${s.location})`;
19-
return line;
18+
return `- **${s.name}**: ${s.description}`;
2019
}).join('\n');
2120

2221
const content =
@@ -554,3 +553,49 @@ export function buildMemorySystemMessage(
554553
createdAt: new Date().toISOString(),
555554
};
556555
}
556+
557+
/**
558+
* 构建环境上下文系统消息(始终注入)。
559+
*
560+
* 提供模型感知世界所必需的基础信息:
561+
* - 当前日期/时间
562+
* - 操作系统与平台
563+
* - 工作区目录(文件沙箱边界)
564+
* - Aurevoy 配置目录(skills / DB / 设置所在)
565+
* - 项目名称/路径
566+
*/
567+
export function buildSystemContextMessage(
568+
workspaceDir: string,
569+
configDir?: string,
570+
projectInfo?: { name: string; path: string },
571+
): Message {
572+
const now = new Date();
573+
const timeStr = now.toLocaleDateString('en-US', {
574+
weekday: 'long',
575+
year: 'numeric',
576+
month: 'long',
577+
day: 'numeric',
578+
});
579+
580+
const lines: string[] = [];
581+
lines.push('<system_context>');
582+
lines.push(`Current time: ${now.toISOString()}`);
583+
lines.push(`Today: ${timeStr}`);
584+
lines.push(`Platform: ${process.platform} ${process.arch}`);
585+
lines.push(`Shell: ${process.env.SHELL ?? 'unknown'}`);
586+
lines.push('');
587+
lines.push(`Workspace: ${workspaceDir}`);
588+
if (configDir) lines.push(`Config dir: ${configDir}`);
589+
if (projectInfo) {
590+
lines.push(`Project: ${projectInfo.name}`);
591+
lines.push(`Project path: ${projectInfo.path}`);
592+
}
593+
lines.push('</system_context>');
594+
595+
return {
596+
id: randomUUID(),
597+
role: 'system',
598+
content: lines.join('\n'),
599+
createdAt: now.toISOString(),
600+
};
601+
}

0 commit comments

Comments
 (0)