Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
44 commits
Select commit Hold shift + click to select a range
e5196d4
Enhance asset management and UI components
MayueCif Jan 4, 2026
b5fbd31
Refactor Telegram services to standardize terminology and enhance dat…
MayueCif Jan 4, 2026
0ca4d9a
Add new documentation and refactor financial tools for enhanced clari…
MayueCif Jan 16, 2026
7263127
refactor(investment-selection): 重构投资选择工作流为策略模式
MayueCif Jan 18, 2026
d6d6ba9
统一Keyed Service用法并升级依赖包,适配新API
MayueCif Jan 22, 2026
ec3f3ff
重构加密货币服务层,统一API与异常处理
MayueCif Jan 29, 2026
7c78caf
优化Agent指令构建逻辑,更新ReAct模式描述;改进测试清理方法以确保资源释放
MayueCif Feb 1, 2026
d961aaf
Enhance multi-market support and refactor asset screening logic
MayueCif Feb 25, 2026
84134f0
Update package references and refactor MarketChatSession for session …
MayueCif Feb 26, 2026
3c532b9
Refactor trading module and enhance AI trading capabilities
MayueCif Mar 5, 2026
ff2b685
Refactor trading execution tools and enhance risk management
MayueCif Mar 5, 2026
9c2706f
Refactor AGENTS.md and restructure project for multi-market support
MayueCif Mar 8, 2026
d1528f7
Enhance documentation and refactor trading module for improved clarit…
MayueCif Mar 10, 2026
34e0d01
feat: Implement Favorite and Asset History Services
MayueCif Mar 10, 2026
44cc74f
feat: 更新 Microsoft.Agents.AI 和 Microsoft.Agents.AI.Workflows 包版本至 1.0…
MayueCif Mar 13, 2026
92cd734
feat: Add comprehensive market analysis templates and scoring standards
MayueCif Mar 14, 2026
d33e712
feat: 更新多个 Executor 类以支持消息处理并添加新包引用
MayueCif Mar 15, 2026
6c34e4a
feat: Implement Retrieval Orchestrator for knowledge base retrieval w…
MayueCif Mar 17, 2026
94d13b7
feat: 更新 AGENTS.md 文件,修正描述并添加 RAG 项目文档
MayueCif Mar 18, 2026
02c161e
依赖包升级及异常处理器初始化优化
MayueCif Mar 19, 2026
41e545f
refactor(agents): 统一使用AgentSkillsProvider替换FileAgentSkillsProvider
MayueCif Apr 2, 2026
85a3c24
build: 更新 Microsoft.Agents.AI 相关依赖至稳定版 1.0.0
MayueCif Apr 3, 2026
700be7f
feat(trading): enhance TradeExecutor with human-in-the-loop confirmat…
MayueCif Apr 10, 2026
b7f791a
feat: Implement Knowledge Graph, Memory Management, and Session Searc…
MayueCif Apr 16, 2026
ea1aaf9
fix: 修复代码审查发现的多项问题
MayueCif Apr 16, 2026
f5a7476
Refactor project dependencies and improve test error handling
MayueCif May 16, 2026
e716412
fix: 修复构建和发布工作流中的项目路径
MayueCif May 18, 2026
808a1bc
feat: 更新多个服务以支持工厂模式和缓存机制,优化分析工作流
MayueCif May 28, 2026
46f2613
依赖包升级及包管理优化
MayueCif May 28, 2026
83fb587
更新依赖包版本并添加新样式文件
MayueCif Jun 12, 2026
52727b2
chore(packages): 升级依赖库版本以保持最新稳定性
MayueCif Jun 17, 2026
4ac0390
[Trading] 修复风控与策略缺陷并兼容币安 fills 响应
MayueCif Jun 19, 2026
9d97ffb
[UI] 重设计交易监控页为双栏仪表盘
MayueCif Jun 19, 2026
70032d0
[Tools] 修复 A股/Crypto 数据获取 JSON 反序列化 Nullable<decimal> 崩溃
MayueCif Jun 19, 2026
55ba5f1
[UI] 清理 Avalonia 11.x 过时 API 警告 (AVLN5001)
MayueCif Jun 19, 2026
0a3960e
[chore] 忽略 Windows 保留设备名 nul 文件
MayueCif Jun 19, 2026
fe12b48
refactor(analysts): 优化分析师代理及提示词配置管理
MayueCif Jun 20, 2026
c36492b
feat(crypto): 加密货币市场全面支持及架构重构
MayueCif Jun 23, 2026
8a808f0
fix(workflow): 修复分析工作流输出丢失及超时诊断改进
MayueCif Jun 23, 2026
5e7b23a
fix: 全局健壮性增强——交易幂等、资源释放、线程安全与熔断防护
MayueCif Jun 24, 2026
d886c78
[Agents] 升级 A 股资金流接口至智兔 API 并全面优化和修复模型 AI 描述及中文备注
MayueCif Jun 24, 2026
96016af
docs: 移除MAF升级指南与模块化计划文档
MayueCif Jun 24, 2026
67c256f
refactor(price-alert): 将价格预警服务重构为异步SQLite持久化
MayueCif Jun 25, 2026
e0d07db
refactor(investment): 优化投资选择工作流和股票筛选功能
MayueCif Jun 25, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
10 changes: 0 additions & 10 deletions .actrc

This file was deleted.

89 changes: 44 additions & 45 deletions .github/workflows/build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -2,68 +2,67 @@ name: Build

on:
push:
branches: [ main, develop, feat/* ]
branches: [main, develop, feat/*]
pull_request:
branches: [ main, develop ]
branches: [main, develop]

env:
DOTNET_VERSION: '10.0.x'
DOTNET_VERSION: "10.0.x"

jobs:
build-windows:
name: Build Windows
runs-on: windows-latest

steps:
- name: Checkout code
uses: actions/checkout@v4
- name: Setup .NET
uses: actions/setup-dotnet@v4
with:
dotnet-version: ${{ env.DOTNET_VERSION }}
- name: Restore dependencies
run: dotnet restore MarketAssistant.slnx
- name: Build
run: dotnet build src/MarketAssistant.csproj -c Release --no-restore
- name: Checkout code
uses: actions/checkout@v4

- name: Setup .NET
uses: actions/setup-dotnet@v4
with:
dotnet-version: ${{ env.DOTNET_VERSION }}

- name: Restore dependencies
run: dotnet restore MarketAssistant.slnx

- name: Build
run: dotnet build src/MarketAssistant.App/MarketAssistant.App.csproj -c Release --no-restore

build-macos:
name: Build macOS
runs-on: macos-latest

steps:
- name: Checkout code
uses: actions/checkout@v4
- name: Setup .NET
uses: actions/setup-dotnet@v4
with:
dotnet-version: ${{ env.DOTNET_VERSION }}
- name: Restore dependencies
run: dotnet restore MarketAssistant.slnx
- name: Build
run: dotnet build src/MarketAssistant.csproj -c Release --no-restore -r osx-x64 -p:ErrorOnDuplicatePublishOutputFiles=false
- name: Checkout code
uses: actions/checkout@v4

- name: Setup .NET
uses: actions/setup-dotnet@v4
with:
dotnet-version: ${{ env.DOTNET_VERSION }}

- name: Restore dependencies
run: dotnet restore MarketAssistant.slnx

- name: Build
run: dotnet build src/MarketAssistant.App/MarketAssistant.App.csproj -c Release --no-restore -r osx-x64 -p:ErrorOnDuplicatePublishOutputFiles=false

build-linux:
name: Build Linux
runs-on: ubuntu-latest

steps:
- name: Checkout code
uses: actions/checkout@v4

- name: Setup .NET
uses: actions/setup-dotnet@v4
with:
dotnet-version: ${{ env.DOTNET_VERSION }}

- name: Restore dependencies
run: dotnet restore MarketAssistant.slnx

- name: Build
run: dotnet build src/MarketAssistant.csproj -c Release --no-restore -r linux-x64
- name: Checkout code
uses: actions/checkout@v4

- name: Setup .NET
uses: actions/setup-dotnet@v4
with:
dotnet-version: ${{ env.DOTNET_VERSION }}

- name: Restore dependencies
run: dotnet restore MarketAssistant.slnx

- name: Build
run: dotnet build src/MarketAssistant.App/MarketAssistant.App.csproj -c Release --no-restore -r linux-x64
99 changes: 95 additions & 4 deletions .github/workflows/release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -31,12 +31,28 @@ jobs:
with:
dotnet-version: ${{ env.DOTNET_VERSION }}

- name: Resolve release version
id: version
shell: bash
run: |
if [ -n "${{ inputs.version }}" ]; then
VERSION="${{ inputs.version }}"
elif [ "${{ github.event_name }}" = "release" ]; then
VERSION="${{ github.event.release.tag_name }}"
else
VERSION="${GITHUB_REF#refs/tags/}"
fi
# 去掉前缀 v
VERSION="${VERSION#v}"
echo "version=$VERSION" >> $GITHUB_OUTPUT
echo "Resolved version: $VERSION"

- name: Restore dependencies
run: dotnet restore MarketAssistant.slnx

- name: Build Windows x64
run: |
dotnet publish src/MarketAssistant.csproj `
dotnet publish src/MarketAssistant.App/MarketAssistant.App.csproj `
-c Release `
-r win-x64 `
--self-contained `
Expand All @@ -45,13 +61,31 @@ jobs:
-p:UseAppHost=true `
-p:DebugType=None `
-p:DebugSymbols=false `
-p:Version=${{ steps.version.outputs.version }} `
-p:InformationalVersion=${{ steps.version.outputs.version }} `
-o ./publish/windows
shell: pwsh

- name: Clean debug files
run: |
Get-ChildItem -Path ./publish/windows -Include "*.pdb", "*.xml" -Recurse | Remove-Item -Force
shell: pwsh

- name: Install Inno Setup
run: choco install innosetup --no-progress -y

- name: Build installer
shell: pwsh
env:
APP_VERSION: ${{ steps.version.outputs.version }}
run: |
$version = $env:APP_VERSION
$issFile = "scripts\windows\MarketAssistant.iss"
$content = Get-Content $issFile -Raw
$content = $content -replace '#define MyAppVersion ".*?"', "#define MyAppVersion `"$version`""
Set-Content $issFile -Value $content -NoNewline
& "${env:ProgramFiles(x86)}\Inno Setup 6\ISCC.exe" $issFile

- name: Create ZIP archive
run: |
Compress-Archive -Path ./publish/windows/* `
Expand All @@ -63,7 +97,9 @@ jobs:
uses: actions/upload-artifact@v4
with:
name: windows-x64
path: ${{ env.APP_NAME }}-Windows-x64.zip
path: |
${{ env.APP_NAME }}-Windows-x64.zip
Release/Windows/*.exe

# macOS 构建
build-macos:
Expand All @@ -78,6 +114,21 @@ jobs:
with:
dotnet-version: ${{ env.DOTNET_VERSION }}

- name: Resolve release version
id: version
shell: bash
run: |
if [ -n "${{ inputs.version }}" ]; then
VERSION="${{ inputs.version }}"
elif [ "${{ github.event_name }}" = "release" ]; then
VERSION="${{ github.event.release.tag_name }}"
else
VERSION="${GITHUB_REF#refs/tags/}"
fi
VERSION="${VERSION#v}"
echo "version=$VERSION" >> $GITHUB_OUTPUT
echo "Resolved version: $VERSION"

- name: Restore dependencies
run: dotnet restore MarketAssistant.slnx

Expand All @@ -99,6 +150,7 @@ jobs:
- name: Build macOS app
run: ./scripts/macos/build-app-bundle.sh
env:
APP_VERSION: ${{ steps.version.outputs.version }}
# 如果配置了签名,取消注释以下行
# SIGNING_IDENTITY: ${{ secrets.MACOS_SIGNING_IDENTITY }}
# NOTARYTOOL_PROFILE: "AC_PASSWORD"
Expand Down Expand Up @@ -130,6 +182,21 @@ jobs:
with:
dotnet-version: ${{ env.DOTNET_VERSION }}

- name: Resolve release version
id: version
shell: bash
run: |
if [ -n "${{ inputs.version }}" ]; then
VERSION="${{ inputs.version }}"
elif [ "${{ github.event_name }}" = "release" ]; then
VERSION="${{ github.event.release.tag_name }}"
else
VERSION="${GITHUB_REF#refs/tags/}"
fi
VERSION="${VERSION#v}"
echo "version=$VERSION" >> $GITHUB_OUTPUT
echo "Resolved version: $VERSION"

- name: Install dependencies
run: |
sudo apt-get update
Expand All @@ -145,9 +212,13 @@ jobs:

- name: Build Debian package
run: ./scripts/linux/build-deb.sh
env:
APP_VERSION: ${{ steps.version.outputs.version }}

- name: Build RPM package
run: ./scripts/linux/build-rpm.sh
env:
APP_VERSION: ${{ steps.version.outputs.version }}
continue-on-error: true

- name: Upload .deb package
Expand Down Expand Up @@ -178,6 +249,9 @@ jobs:
contents: write

steps:
- name: Checkout code
uses: actions/checkout@v4

- name: Download all artifacts
uses: actions/download-artifact@v4
with:
Expand All @@ -189,7 +263,7 @@ jobs:
- name: Get release version
id: get_version
run: |
if [ "${{ github.event_name }}" == "release" ]; then
if [ "${{ github.event_name }}" = "release" ]; then
echo "version=${{ github.event.release.tag_name }}" >> $GITHUB_OUTPUT
else
echo "version=${GITHUB_REF#refs/tags/}" >> $GITHUB_OUTPUT
Expand All @@ -210,17 +284,34 @@ jobs:
echo "Release $TAG not found. Skipping asset cleanup."
fi

- name: Generate SHA256 checksums
working-directory: ./artifacts
run: |
find . -type f \( -name "*.zip" -o -name "*.exe" -o -name "*.dmg" -o -name "*.deb" -o -name "*.rpm" \) -exec sha256sum {} \; > ../SHA256SUMS.txt
cat ../SHA256SUMS.txt

- name: Upload release assets
uses: softprops/action-gh-release@v2
with:
files: |
./artifacts/**/*.zip
./artifacts/**/*.exe
./artifacts/**/*.dmg
./artifacts/**/*.deb
./artifacts/**/*.rpm
./SHA256SUMS.txt
tag_name: ${{ steps.get_version.outputs.version }}
name: ${{ steps.get_version.outputs.version }}
draft: false
prerelease: false
prerelease: ${{ contains(steps.get_version.outputs.version, '-') }}
body: |
## 下载说明

请根据操作系统选择对应安装包:
- **Windows**: `MarketAssistant-Windows-x64.zip`(便携版)或 `MarketAssistant-Setup-<version>.exe`(安装版)
- **macOS**: `MarketAssistant-<version>.dmg`(Universal Binary,同时支持 Apple Silicon 和 Intel)
- **Linux**: `MarketAssistant-<version>-amd64.deb`(Debian/Ubuntu)或 `MarketAssistant-<version>-x86_64.rpm`(Fedora/RHEL)

完整性校验请参考 `SHA256SUMS.txt`。
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
10 changes: 10 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,9 @@
##
## Get latest from https://github.com/github/gitignore/blob/main/VisualStudio.gitignore

# Windows 保留设备名(误生成时 git 会反复列出,磁盘上实际不存在)
nul

# User-specific files
*.rsuser
*.suo
Expand Down Expand Up @@ -398,3 +401,10 @@ FodyWeavers.xsd

# JetBrains Rider
*.sln.iml
.idea/

# Secrets and credentials
.secrets
.env
*.pem
*.key
Loading
Loading