mirror of
https://github.com/tinyhumansai/openhuman.git
synced 2026-07-30 23:14:37 +00:00
Update subproject commit and remove obsolete GitHub Actions workflows
- Updated the subproject commit reference in the skills directory. - Deleted the deploy-gh-pages.yml workflow as it is no longer needed. - Modified package-and-publish.yml to include a release body in the draft release creation step. - Removed ARCHITECTURE.md and README.md files from the publish directory as part of the cleanup.
This commit is contained in:
@@ -1,74 +0,0 @@
|
||||
name: Deploy to GitHub Pages
|
||||
|
||||
on:
|
||||
workflow_run:
|
||||
workflows: ["Version Bump"]
|
||||
types:
|
||||
- completed
|
||||
branches:
|
||||
- main
|
||||
|
||||
permissions:
|
||||
contents: write
|
||||
|
||||
concurrency:
|
||||
group: deploy-gh-pages
|
||||
cancel-in-progress: false
|
||||
|
||||
jobs:
|
||||
deploy:
|
||||
environment: Production
|
||||
runs-on: ubuntu-latest
|
||||
# Only run if the version-bump workflow succeeded
|
||||
if: ${{ github.event.workflow_run.conclusion == 'success' }}
|
||||
|
||||
steps:
|
||||
- name: Checkout code
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
fetch-depth: 0
|
||||
|
||||
- name: Setup Node.js
|
||||
uses: actions/setup-node@v4
|
||||
with:
|
||||
node-version: 20.x
|
||||
cache: "yarn"
|
||||
|
||||
- name: Install dependencies
|
||||
run: yarn install --frozen-lockfile
|
||||
|
||||
- name: Build frontend
|
||||
run: yarn build
|
||||
env:
|
||||
NODE_ENV: production
|
||||
VITE_BACKEND_URL: ${{ vars.VITE_BACKEND_URL }}
|
||||
VITE_TELEGRAM_BOT_USERNAME: ${{ secrets.VITE_TELEGRAM_BOT_USERNAME }}
|
||||
VITE_TELEGRAM_BOT_ID: ${{ secrets.VITE_TELEGRAM_BOT_ID }}
|
||||
VITE_SENTRY_DSN: ${{ secrets.VITE_SENTRY_DSN }}
|
||||
VITE_SKILLS_GITHUB_REPO: ${{ vars.VITE_SKILLS_GITHUB_REPO }}
|
||||
VITE_SKILLS_GITHUB_TOKEN: ${{ secrets.VITE_SKILLS_GITHUB_TOKEN }}
|
||||
VITE_DEBUG: ${{ vars.VITE_DEBUG }}
|
||||
|
||||
- name: Deploy to GitHub Pages
|
||||
uses: peaceiris/actions-gh-pages@v4
|
||||
with:
|
||||
personal_token: ${{ secrets.XGH_TOKEN }}
|
||||
external_repository: alphahumanxyz/alphahuman
|
||||
publish_dir: ./dist
|
||||
publish_branch: gh-pages
|
||||
commit_message: "chore: deploy to gh-pages [skip ci]"
|
||||
user_name: "github-actions[bot]"
|
||||
cname: app.alphahuman.xyz
|
||||
force_orphan: true
|
||||
user_email: "github-actions[bot]@users.noreply.github.com"
|
||||
|
||||
- name: Update GH repo
|
||||
uses: peaceiris/actions-gh-pages@v4
|
||||
with:
|
||||
personal_token: ${{ secrets.XGH_TOKEN }}
|
||||
external_repository: alphahumanxyz/alphahuman
|
||||
publish_dir: ./publish
|
||||
publish_branch: main
|
||||
user_name: "github-actions[bot]"
|
||||
user_email: "github-actions[bot]@users.noreply.github.com"
|
||||
commit_message: "chore: update main branch [skip ci]"
|
||||
@@ -134,10 +134,11 @@ jobs:
|
||||
run: |
|
||||
echo "Creating draft release for tag: $TAG_NAME"
|
||||
echo "Repository: $PUBLISH_REPO"
|
||||
RELEASE_BODY="See the assets below to download this version."
|
||||
RESPONSE=$(curl -s -w "\n%{http_code}" -X POST \
|
||||
-H "Authorization: Bearer $XGH_TOKEN" \
|
||||
-H "Accept: application/vnd.github.v3+json" \
|
||||
-d '{"tag_name": "'"$TAG_NAME"'", "name": "'"$RELEASE_NAME"'", "draft": true}' \
|
||||
-d '{"tag_name": "'"$TAG_NAME"'", "name": "'"$RELEASE_NAME"'", "draft": true, "body": "'"$RELEASE_BODY"'"}' \
|
||||
"https://api.github.com/repos/$PUBLISH_REPO/releases")
|
||||
HTTP_CODE=$(echo "$RESPONSE" | tail -n1)
|
||||
BODY=$(echo "$RESPONSE" | sed '$d')
|
||||
|
||||
@@ -1,182 +0,0 @@
|
||||
# Architecture Overview
|
||||
|
||||
> This document describes AlphaHuman's architecture at a conceptual level. AlphaHuman is closed-source software -- no source code is included in this repository.
|
||||
|
||||
## Overview
|
||||
|
||||
AlphaHuman is a native desktop application built with modern web technologies and a Rust backend. Unlike Electron-based apps, it uses the operating system's built-in web view, resulting in significantly smaller binaries and lower memory usage.
|
||||
|
||||
The app runs entirely on your machine. There is no mandatory cloud backend -- services like Telegram are connected directly from the app using their official APIs.
|
||||
|
||||
## Technology Stack
|
||||
|
||||
| Layer | Technology | Why |
|
||||
| ------------- | ---------------------------- | -------------------------------------------------------------- |
|
||||
| **Frontend** | React + TypeScript | Component-based UI with type safety |
|
||||
| **Backend** | Rust | Native performance, memory safety, no garbage collector |
|
||||
| **Framework** | Tauri v2 | Lightweight cross-platform framework (alternative to Electron) |
|
||||
| **Real-time** | WebSocket | Low-latency bidirectional communication with services |
|
||||
| **AI** | MCP (Model Context Protocol) | Standardized interface for AI tool execution |
|
||||
|
||||
## Architecture Diagram
|
||||
|
||||
```
|
||||
+-----------------------------------------------------------+
|
||||
| AlphaHuman App |
|
||||
+-----------------------------------------------------------+
|
||||
| |
|
||||
| +---------------------------------------------------+ |
|
||||
| | UI Layer | |
|
||||
| | React + TypeScript | |
|
||||
| | (Views, Components, State Management, Routing) | |
|
||||
| +---------------------------------------------------+ |
|
||||
| | |
|
||||
| +---------------------------------------------------+ |
|
||||
| | Skills Engine | |
|
||||
| | Plugin Architecture | |
|
||||
| | | |
|
||||
| | +-----------+ +-----------+ +------------+ | |
|
||||
| | | Telegram | | Google | | Web3 | | |
|
||||
| | | Skill | | Skill | | Skill | | |
|
||||
| | +-----------+ +-----------+ +------------+ | |
|
||||
| +---------------------------------------------------+ |
|
||||
| | |
|
||||
| +---------------------------------------------------+ |
|
||||
| | AI Engine | |
|
||||
| | Model Context Protocol (MCP) | |
|
||||
| | (Tool Discovery, Execution, Responses) | |
|
||||
| +---------------------------------------------------+ |
|
||||
| | |
|
||||
| +---------------------------------------------------+ |
|
||||
| | Native Runtime | |
|
||||
| | Rust / Tauri | |
|
||||
| | (IPC, Networking, File System, OS Keychain) | |
|
||||
| +---------------------------------------------------+ |
|
||||
| | |
|
||||
+-----------------------------------------------------------+
|
||||
| Platform Layer |
|
||||
| macOS | Linux | Windows | Mobile |
|
||||
+-----------------------------------------------------------+
|
||||
```
|
||||
|
||||
## Skills System
|
||||
|
||||
AlphaHuman's core extensibility comes from its **skills** architecture. Each skill is an independent module that connects to an external service and exposes a set of actions.
|
||||
|
||||
### How Skills Work
|
||||
|
||||
```
|
||||
+-----------------+
|
||||
| Skill Store |
|
||||
| (discovery & |
|
||||
| installation) |
|
||||
+-----------------+
|
||||
|
|
||||
install skill
|
||||
|
|
||||
v
|
||||
+------------+ +-----------------+ +------------------+
|
||||
| User |--->| Skill |--->| External Service |
|
||||
| (or AI) | | | | (Telegram, etc.) |
|
||||
+------------+ | - setup() | +------------------+
|
||||
| - connect() |
|
||||
| - tools[] |
|
||||
| - handlers[] |
|
||||
+-----------------+
|
||||
```
|
||||
|
||||
### Skill Lifecycle
|
||||
|
||||
1. **Install** -- The skill module is loaded into the app
|
||||
2. **Setup** -- User provides any required configuration (API keys, auth tokens)
|
||||
3. **Connect** -- The skill establishes a connection to the external service
|
||||
4. **Ready** -- The skill's tools become available to the user and AI engine
|
||||
|
||||
### What a Skill Provides
|
||||
|
||||
- **Tools** -- Discrete actions the skill can perform (e.g., "send a message", "search chats")
|
||||
- **Views** -- Optional UI components for displaying skill-specific data
|
||||
- **Event handlers** -- Reactions to real-time events from the connected service
|
||||
|
||||
### Current and Planned Skills
|
||||
|
||||
| Skill | Services | Status |
|
||||
| --------- | -------------------------------- | --------- |
|
||||
| Telegram | Telegram chats, channels, groups | Available |
|
||||
| Google | Gmail, Calendar, Drive | Planned |
|
||||
| Notion | Pages, databases | Planned |
|
||||
| Web3 | Wallets, on-chain data | Planned |
|
||||
| Exchanges | CEX/DEX trading | Planned |
|
||||
|
||||
## AI Integration
|
||||
|
||||
AlphaHuman uses the **Model Context Protocol (MCP)** to give the AI engine a standardized way to discover and invoke tools provided by skills.
|
||||
|
||||
### How It Works
|
||||
|
||||
1. **Discovery** -- The AI engine queries all connected skills for their available tools
|
||||
2. **Planning** -- Based on the user's request, the AI selects which tools to use
|
||||
3. **Execution** -- The AI invokes tools through MCP, which routes calls to the appropriate skill
|
||||
4. **Response** -- Results are returned to the AI, which synthesizes a response for the user
|
||||
|
||||
### Example Flow
|
||||
|
||||
```
|
||||
User: "Summarize what I missed in the Trading group today"
|
||||
|
||||
1. AI receives the request
|
||||
2. AI discovers Telegram skill has a "get_messages" tool
|
||||
3. AI calls get_messages(chat="Trading group", since="today")
|
||||
4. Telegram skill fetches messages via Telegram API
|
||||
5. AI receives the messages and generates a summary
|
||||
6. Summary is displayed to the user
|
||||
```
|
||||
|
||||
The AI never has direct access to your credentials. It interacts with services only through the skill layer, which manages authentication independently.
|
||||
|
||||
## Security Model
|
||||
|
||||
### Rust Backend
|
||||
|
||||
The native backend is written in Rust, which provides memory safety guarantees at compile time. This eliminates entire classes of vulnerabilities (buffer overflows, use-after-free, data races) that are common in C/C++ applications.
|
||||
|
||||
### Sandboxed Web View
|
||||
|
||||
The UI runs inside the operating system's native web view (WebKit on macOS, WebKitGTK on Linux). The web view is sandboxed and can only communicate with the Rust backend through a controlled IPC (inter-process communication) bridge. It cannot make arbitrary system calls.
|
||||
|
||||
### Local-First Data
|
||||
|
||||
All user data is stored locally on your machine. Credentials and authentication tokens are stored in the operating system's keychain (Keychain on macOS, Secret Service on Linux). No data is sent to AlphaHuman's servers.
|
||||
|
||||
### Permission Model
|
||||
|
||||
The app uses a capability-based permission system. Each feature must explicitly declare what system resources it needs access to. The user interface cannot access the file system, network, or OS APIs without going through the Rust backend's permission checks.
|
||||
|
||||
## Platform Support
|
||||
|
||||
| Platform | Status | Notes |
|
||||
| --------------------- | --------- | ---------------------------- |
|
||||
| macOS (Apple Silicon) | Available | Primary development target |
|
||||
| macOS (Intel) | Available | Universal binary support |
|
||||
| Linux (x64) | Available | `.deb`, `.rpm`, `.AppImage` |
|
||||
| Windows | Planned | `.msi` and `.exe` installers |
|
||||
| Android | Planned | Native mobile app |
|
||||
| iOS | Planned | Native mobile app |
|
||||
|
||||
## Why Not Electron?
|
||||
|
||||
AlphaHuman uses [Tauri](https://tauri.app) instead of Electron. Key differences:
|
||||
|
||||
| | Tauri | Electron |
|
||||
| ---------------- | ---------------------------- | --------------------------- |
|
||||
| Binary size | ~10-15 MB | ~150+ MB |
|
||||
| RAM usage | Lower (uses system web view) | Higher (bundles Chromium) |
|
||||
| Backend language | Rust | Node.js |
|
||||
| Security | Sandboxed, capability-based | Less restrictive by default |
|
||||
| System web view | Yes (no bundled browser) | No (ships Chromium) |
|
||||
|
||||
---
|
||||
|
||||
<p align="center">
|
||||
<sub>AlphaHuman is closed-source software. This document describes the architecture at a conceptual level for transparency and educational purposes.</sub>
|
||||
</p>
|
||||
@@ -1,99 +0,0 @@
|
||||
<p align="center">
|
||||
<img src="https://alphahumanxyz.github.io/alphahuman/icon.png" alt="AlphaHuman" width="80" />
|
||||
</p>
|
||||
|
||||
<h1 align="center">AlphaHuman</h1>
|
||||
|
||||
<p align="center">
|
||||
<strong>Your Telegram assistant here to get you 10x more done in your journey</strong>
|
||||
</p>
|
||||
|
||||
<p align="center">
|
||||
<img src="https://img.shields.io/badge/status-early%20beta-orange" alt="Early Beta" />
|
||||
<img src="https://img.shields.io/badge/platform-macOS%20%7C%20Linux-blue" alt="Platforms" />
|
||||
<a href="https://github.com/alphahumanxyz/alphahuman/releases/latest"><img src="https://img.shields.io/github/v/release/alphahumanxyz/alphahuman?label=latest" alt="Latest Release" /></a>
|
||||
</p>
|
||||
|
||||
---
|
||||
|
||||
## What is AlphaHuman?
|
||||
|
||||
AlphaHuman is a desktop app that supercharges your Telegram workflow with AI-powered automation. Connect your Telegram account, and let AlphaHuman help you manage chats, automate repetitive tasks, and surface the insights that matter -- all from a fast, native desktop experience.
|
||||
|
||||
## Download
|
||||
|
||||
> **Early Beta** -- AlphaHuman is under active development. Expect rough edges.
|
||||
|
||||
### macOS
|
||||
|
||||
| Chip | Download |
|
||||
| --------------------------- | --------------------------------------------------------------------------------------------------------------- |
|
||||
| Apple Silicon (M1/M2/M3/M4) | [`.dmg` (aarch64)](https://github.com/alphahumanxyz/alphahuman/releases/latest/download/AlphaHuman_aarch64.dmg) |
|
||||
| Intel | [`.dmg` (x64)](https://github.com/alphahumanxyz/alphahuman/releases/latest/download/AlphaHuman_x64.dmg) |
|
||||
|
||||
### Linux
|
||||
|
||||
| Format | Download |
|
||||
| --------------- | ------------------------------------------------------------------------------------------------------------- |
|
||||
| Debian / Ubuntu | [`.deb` (amd64)](https://github.com/alphahumanxyz/alphahuman/releases/latest/download/AlphaHuman_amd64.deb) |
|
||||
| Fedora / RHEL | [`.rpm` (x86_64)](https://github.com/alphahumanxyz/alphahuman/releases/latest/download/AlphaHuman_x86_64.rpm) |
|
||||
| Universal | [`.AppImage`](https://github.com/alphahumanxyz/alphahuman/releases/latest/download/AlphaHuman_amd64.AppImage) |
|
||||
|
||||
### Coming Soon
|
||||
|
||||
- **Windows** -- `.msi` and `.exe` installers
|
||||
- **Android** and **iOS** -- Mobile apps
|
||||
|
||||
Browse all releases: [github.com/alphahumanxyz/alphahuman/releases](https://github.com/alphahumanxyz/alphahuman/releases)
|
||||
|
||||
## Features
|
||||
|
||||
### Telegram Integration
|
||||
|
||||
Connect your Telegram account and manage everything from one place. Read and send messages, search across chats, get summaries of conversations you missed, and automate common workflows.
|
||||
|
||||
### Skills Marketplace
|
||||
|
||||
AlphaHuman uses a pluggable **skills** architecture. Each skill connects to an external service and exposes actions that you (or the AI) can perform. Telegram is the first skill, with many more on the way.
|
||||
|
||||
### AI-Powered Automation
|
||||
|
||||
Built-in AI understands your intent and can execute multi-step actions across your connected services. Ask it to summarize a group chat, draft a reply, or find a message from last week -- it handles the rest.
|
||||
|
||||
### Privacy-First
|
||||
|
||||
Your data stays on your machine. AlphaHuman runs as a native desktop app (not a web app), stores credentials in your OS keychain, and connects directly to services without routing your data through third-party servers.
|
||||
|
||||
## Getting Started
|
||||
|
||||
1. **Download** the installer for your platform from the [releases page](https://github.com/alphahumanxyz/alphahuman/releases/latest)
|
||||
2. **Install** the app (drag to Applications on macOS, or use your package manager on Linux)
|
||||
3. **Connect Telegram** -- follow the in-app onboarding to link your Telegram account
|
||||
4. **Start using** -- ask the AI assistant to help you manage your Telegram, or explore the features yourself
|
||||
|
||||
## Skills
|
||||
|
||||
| Skill | Status | Description |
|
||||
| ------------------- | --------- | ------------------------------------------------------------------- |
|
||||
| Telegram | Available | Manage chats, send messages, search conversations, get AI summaries |
|
||||
| Google Workspace | Planned | Gmail, Calendar, Drive integration |
|
||||
| Notion | Planned | Notes, databases, task management |
|
||||
| Web3 Wallets | Planned | Portfolio tracking, transaction monitoring |
|
||||
| Exchange Connectors | Planned | CEX/DEX trading, position management |
|
||||
| Web Search | Planned | Real-time web search and research |
|
||||
|
||||
## Links
|
||||
|
||||
- [Architecture Overview](./ARCHITECTURE.md) -- How AlphaHuman is built (no source code)
|
||||
- [Changelog](./CHANGELOG.md) -- Release history
|
||||
- [Website](https://alphahuman.xyz) -- Learn more
|
||||
|
||||
---
|
||||
|
||||
<p align="center">
|
||||
Made with love by a bunch of Web3 nerds
|
||||
</p>
|
||||
|
||||
<p align="center">
|
||||
<sub>AlphaHuman is in early beta. Features may change, break, or disappear. Use at your own risk.</sub>
|
||||
</p>
|
||||
+1
-1
Submodule skills updated: 9d257c1ece...bb0f1ebf9b
Reference in New Issue
Block a user