Commit Graph
295 Commits
Author SHA1 Message Date
Steven Enamakel f86dc7ded9 Refactor SkillSetupWizard API call for OAuth URL retrieval
- Updated the API endpoint in SkillSetupWizard to remove the unnecessary responseType parameter, streamlining the OAuth URL request.
- This change enhances the clarity of the API call while maintaining functionality for OAuth integration.
2026-02-06 06:37:06 +05:30
Steven Enamakel cbdc6051d0 Refactor SkillSetupWizard to utilize apiClient for OAuth URL retrieval
- Replaced direct URL construction with a call to apiClient to fetch the OAuth authorization URL from the backend.
- Improved error handling for OAuth connection failures, providing clearer feedback in case of issues.
- Updated state management to reflect the new OAuth flow, enhancing user experience during the setup process.
2026-02-06 06:12:06 +05:30
Steven Enamakel 3f6431f457 Enhance SkillSetupWizard and SkillManager for OAuth-only skills
- Updated SkillSetupWizard to handle cases where no setup steps are returned, indicating an OAuth-only skill.
- Modified SkillManager's startSetup method to return null for skills that do not implement setup/start.
- Enhanced SkillRuntime's setupStart method to return null if no setup step is available, improving error handling.
- Updated SkillProvider to include OAuth configuration details in skill discovery.
2026-02-06 06:06:39 +05:30
Steven Enamakel 65d42f2526 Implement OAuth flow in SkillSetupWizard and enhance skill manager
- Added support for OAuth in the SkillSetupWizard, allowing skills to handle OAuth login and state management.
- Introduced new OAuthLoginView component for user interaction during OAuth processes.
- Updated SkillManager to notify skills of successful OAuth completion and manage OAuth credentials.
- Enhanced deep link handling to support OAuth success and error states.
- Modified SkillManifest to include OAuth configuration details.
- Updated runtime and backend to accommodate OAuth functionality, ensuring skills can utilize OAuth for authentication.
2026-02-06 05:48:10 +05:30
Steven Enamakel b3838625a9 Update subproject reference in skills file to latest commit 2026-02-06 05:29:33 +05:30
Steven Enamakel 6b7aaa1375 Update SkillsGrid and transport logic to utilize QuickJS runtime
- Changed the runtime specification in SkillsGrid from 'v8' to 'quickjs'.
- Updated documentation in the SkillRuntime class to reflect the transition to QuickJS.
- Modified transport logic to clarify that reverse RPC handling is now managed by QuickJS bridge globals, ensuring compatibility with the new runtime.
2026-02-06 02:06:45 +05:30
Steven Enamakel 556107b31c Update skill runtime to use QuickJS and enhance TODO list
- Updated the skill runtime documentation to reflect the transition from V8 to the Rust QuickJS runtime engine.
- Modified the SkillManifest interface to specify "quickjs" as the only runtime option.
- Enhanced the SkillProvider to discover skills using the QuickJS runtime and added filtering for production builds.
- Expanded the TODO list with new tasks for Android version release, background processes, AI message summarization, and remaining skills implementation.
2026-02-06 02:04:45 +05:30
Steven Enamakel aeb9626db1 Update .gitignore, refactor UI components, and enhance model download logic
- Added CLAUDE.local.md to .gitignore to prevent local configuration files from being tracked.
- Refactored the App component layout for improved responsiveness and user experience.
- Updated ModelDownloadProgress to include a new `isDownloaded` state for better visibility of download status.
- Simplified SettingsHome by commenting out unused functions and improving the organization of settings options.
- Adjusted PrivacyPanel to ensure analytics settings are correctly evaluated.
- Modified various page components to use `min-h-full` for consistent height management across the application.
2026-02-06 01:59:56 +05:30
Steven Enamakel af7ca87831 Refactor PublicRoute and ModelProvider for improved user flow and state management
- Simplified the `PublicRoute` component by removing the onboarding status check, allowing the `Home` component to handle redirection based on user profile loading.
- Enhanced the `ModelProvider` component by consolidating the initialization logic and improving error handling during model status checks and downloads.
- Introduced cancellation logic in the `ModelProvider` to prevent state updates after component unmounting, ensuring better resource management and preventing memory leaks.
2026-02-06 01:59:39 +05:30
Steven Enamakel cdb416192f Refactor routing logic for onboarding and home navigation
- Introduced a new `HomeRoute` component to manage user redirection based on onboarding status.
- Updated `DefaultRedirect` and `PublicRoute` components to simplify navigation logic, ensuring users are directed to the home page if logged in, while handling onboarding within the `HomeRoute`.
- Removed redundant checks for onboarding status in `DefaultRedirect` and `PublicRoute`, streamlining the routing process.
2026-02-06 01:48:33 +05:30
Steven Enamakel 14b330a17d Integrate ModelProvider for enhanced model management and state synchronization
- Introduced a new `ModelProvider` component to manage model download and status synchronization with the Rust backend.
- Updated the `useModelStatus` hook to utilize Redux for state management, improving error handling and download control.
- Refactored the `App` component to include `ModelProvider`, ensuring proper context for model-related operations.
- Simplified the `Welcome` component by removing auto-trigger logic for model downloads, relying on the new provider for state management.
- Added a new `modelSlice` to the Redux store to handle model status and actions, enhancing overall state management.
2026-02-06 01:46:30 +05:30
Steven Enamakel 2309021bbd Enforce static imports and improve error handling for Tauri API calls
- Updated the codebase to replace dynamic imports with static imports for Tauri API calls, enhancing performance and compliance with new coding standards.
- Implemented try/catch blocks around Tauri API calls to handle errors gracefully in non-Tauri environments.
- Refactored components to ensure consistent usage of static imports, improving code clarity and maintainability.
- Adjusted the `activeTeamId` property in the User interface to be required, ensuring better type safety.
2026-02-06 01:40:08 +05:30
Steven Enamakel e70b3d1ab9 Enhance model download functionality and UI feedback
- Added a new `downloaded` status to the `ModelStatus` interface to track if the model file has been downloaded.
- Implemented `startDownload` function in the `useModelStatus` hook to initiate model downloads without loading into memory.
- Updated the `Welcome` component to automatically trigger model downloads on desktop and provide visual feedback on download progress.
- Enhanced the Tauri backend with a new `model_start_download` command to support the download process.
- Improved the model status management to reflect the current download state and handle errors effectively.
2026-02-06 01:37:09 +05:30
Steven Enamakel 2613e9b3cb Merge branch 'develop' of github.com:vezuresdotxyz/frontend-runner-alphahuman into develop 2026-02-05 22:28:18 +05:30
Steven Enamakel 9e88195c74 Update subproject reference and clean up GitHub Actions workflows
- Updated the subproject reference in the `skills` file to the latest commit.
- Standardized quotes in the `deploy-gh-pages.yml` and `package-android.yml` workflows for consistency.
- Removed unused Telegram API credentials from environment variables in workflows and example configuration files to streamline the setup.
2026-02-05 22:27:34 +05:30
Steven Enamakel f8f202c494 Add Telegram API credentials to GitHub Actions workflow
- Included `TELEGRAM_API_ID` and `TELEGRAM_API_HASH` as environment variables in the `package-and-publish.yml` workflow to facilitate Telegram integration.
- Removed the `dotenvy` dependency from `Cargo.toml` and `Cargo.lock` to streamline the project and eliminate unnecessary packages.
2026-02-05 22:19:37 +05:30
Steven EnamakelandGitHub fd4f61f6d9 fix: replace rust_socketio with direct WebSocket Socket.IO client (#52)
* Enhance socket connection logging and URL handling

- Added logging for the backend URL in the `runtime_socket_connect` function to improve traceability.
- Updated the `SocketManager` to convert HTTP/HTTPS URLs to WebSocket URLs, enhancing connection handling.
- Improved error logging to capture detailed error chains during connection failures, aiding in debugging.

* Enhance TDLib integration and macOS bundling process

- Updated build.rs to include a setup function for TDLib, ensuring the correct version is used based on the target OS.
- Added a new script, build-tdlib-from-source.sh, to facilitate building TDLib from source for macOS with the appropriate deployment target.
- Modified .gitignore to exclude the new tdlib-local and tdlib-build directories.
- Updated tauri.conf.json to streamline TDLib references and ensure compatibility with the new bundling process.
- Removed outdated bundling scripts to simplify the build workflow.

* Refactor socket management and update dependencies

- Updated `build.rs` to correctly reference architecture-specific paths for local TDLib builds.
- Replaced `rust_socketio` with `tf-rust-socketio` in `Cargo.toml` and `socket_manager.rs` to align with the new dependency structure.
- Enhanced logging in `socket_manager.rs` for better connection diagnostics and pre-flight checks.
- Updated `build-tdlib-from-source.sh` to define architecture-specific build and install directories, improving build isolation.

* Update TDLib installation process and refine socket payload handling

- Modified `build-tdlib-from-source.sh` to manually install `tdjson` libraries, addressing potential installation failures.
- Updated `socket_manager.rs` to handle payloads with an additional parameter in `Payload::Text`, improving data extraction and connection management.

* Add macOS TDLib binary for version 1.8.29

- Introduced the `libtdjson.1.8.29.dylib` binary to the macOS TDLib prebuilt directory, enabling integration with the latest TDLib features and improvements.

* Refactor SocketManager to use WebSocket and update dependencies

- Replaced `tf-rust-socketio` with a WebSocket-based implementation using `tokio-tungstenite`, enhancing connection stability and compatibility.
- Updated `Cargo.toml` to include new features for `reqwest` and removed deprecated dependencies.
- Improved documentation in `socket_manager.rs` to clarify the new WebSocket connection handling and its implications for Android.
- Streamlined connection lifecycle management and error handling for better performance and maintainability.
2026-02-05 21:17:43 +05:30
Steven Enamakel caa85528b5 Refactor SocketManager to use WebSocket and update dependencies
- Replaced `tf-rust-socketio` with a WebSocket-based implementation using `tokio-tungstenite`, enhancing connection stability and compatibility.
- Updated `Cargo.toml` to include new features for `reqwest` and removed deprecated dependencies.
- Improved documentation in `socket_manager.rs` to clarify the new WebSocket connection handling and its implications for Android.
- Streamlined connection lifecycle management and error handling for better performance and maintainability.
2026-02-05 21:16:36 +05:30
Steven Enamakel 4bb6ff05c7 Add macOS TDLib binary for version 1.8.29
- Introduced the `libtdjson.1.8.29.dylib` binary to the macOS TDLib prebuilt directory, enabling integration with the latest TDLib features and improvements.
2026-02-05 20:57:23 +05:30
Steven Enamakel 54e0fc059a Update TDLib installation process and refine socket payload handling
- Modified `build-tdlib-from-source.sh` to manually install `tdjson` libraries, addressing potential installation failures.
- Updated `socket_manager.rs` to handle payloads with an additional parameter in `Payload::Text`, improving data extraction and connection management.
2026-02-05 20:56:51 +05:30
Steven Enamakel 58b820c308 Refactor socket management and update dependencies
- Updated `build.rs` to correctly reference architecture-specific paths for local TDLib builds.
- Replaced `rust_socketio` with `tf-rust-socketio` in `Cargo.toml` and `socket_manager.rs` to align with the new dependency structure.
- Enhanced logging in `socket_manager.rs` for better connection diagnostics and pre-flight checks.
- Updated `build-tdlib-from-source.sh` to define architecture-specific build and install directories, improving build isolation.
2026-02-05 20:44:27 +05:30
Steven Enamakel d0fdcb43fc Enhance TDLib integration and macOS bundling process
- Updated build.rs to include a setup function for TDLib, ensuring the correct version is used based on the target OS.
- Added a new script, build-tdlib-from-source.sh, to facilitate building TDLib from source for macOS with the appropriate deployment target.
- Modified .gitignore to exclude the new tdlib-local and tdlib-build directories.
- Updated tauri.conf.json to streamline TDLib references and ensure compatibility with the new bundling process.
- Removed outdated bundling scripts to simplify the build workflow.
2026-02-05 20:32:23 +05:30
Steven Enamakel 9e678a08a6 Enhance socket connection logging and URL handling
- Added logging for the backend URL in the `runtime_socket_connect` function to improve traceability.
- Updated the `SocketManager` to convert HTTP/HTTPS URLs to WebSocket URLs, enhancing connection handling.
- Improved error logging to capture detailed error chains during connection failures, aiding in debugging.
2026-02-05 20:12:42 +05:30
Steven Enamakel 339334466a Refactor socket user ID selection and update QuickJS register function signatures
- Replaced the `selectCurrentUserId` function with `selectSocketUserId` to derive the socket user ID from the JWT token, improving clarity and functionality.
- Updated the `register` function signatures across multiple QuickJS operation files to use a generic lifetime parameter, enhancing type safety and consistency.
2026-02-05 19:45:35 +05:30
Steven Enamakel 851d9feb63 Update QuickJS ops and remove deprecated files
- Updated the QuickJS operations by introducing new modules for core functionality, network operations, state management, storage, and TDLib integration.
- Removed the obsolete `qjs_ops.rs` file and replaced it with modularized implementations for better organization and maintainability.
- Deleted the `qjs_ops.rs` file, which contained outdated code, and added new files for improved structure and clarity in the QuickJS integration.
- Updated the subproject reference in the `skills` file to reflect the latest commit.
2026-02-05 19:42:52 +05:30
Steven EnamakelandGitHub ceb03fb2bc Fix/prod build (#51)
* chore: add CI secrets management and local testing script

- Added ci-secrets.example.json to provide a template for CI secrets configuration.
- Introduced test-ci-local.sh script to facilitate local testing of the package-and-publish workflow using act.
- Updated .gitignore to exclude the actual ci-secrets.json file containing sensitive tokens.

* chore: enhance local testing and environment loading scripts

- Added scripts to load environment variables from .env and JSON files, improving local development setup.
- Introduced ci-event.json to simulate GitHub event payloads for local CI testing.
- Updated test-ci-local.sh to utilize the new event JSON for better integration with local testing workflows.
- Modified .gitignore to include ci-secrets.local.json for local secret management.

* chore: enhance environment loading and improve V8 memory management

- Updated load-env.sh to conditionally load ci-secrets.local.json and set APPLE_PASSWORD for notarization.
- Introduced a delay in auto-starting skills to prevent memory spikes during initialization.
- Adjusted V8 runtime memory settings to minimize initial heap allocation, reducing the risk of OOM errors.

* chore: update version bump workflow to modify tauri.conf.json

- Changed the version update process to reflect changes in tauri.conf.json instead of Cargo.toml.
- Adjusted the commit message to indicate the inclusion of tauri.conf.json in the version bump process.

* chore: migrate from V8 to QuickJS runtime and update related configurations

- Replaced V8 runtime references with QuickJS throughout the codebase, including updates to initialization and error handling.
- Modified package.json to change the build command for macOS to source environment variables correctly.
- Updated Cargo.toml to remove deno_core dependency and include rquickjs with appropriate features.
- Cleaned up unused V8-related code and comments in the runtime modules.
- Adjusted skill manifest checks to support QuickJS compatibility.

* refactor: implement QuickJS runtime and remove V8 references

- Replaced V8 engine with QuickJS in the runtime module, updating related imports and initialization logic.
- Introduced new `qjs_engine.rs` and `qjs_skill_instance.rs` files to handle QuickJS-specific functionality.
- Removed the deprecated `v8_skill_instance.rs` and associated V8-related code.
- Updated JavaScript bootstrap code to align with QuickJS operations and APIs.
- Adjusted documentation and comments to reflect the transition to QuickJS.

* refactor: update IdbStorage to use parking_lot::Mutex for improved concurrency

- Changed the connection management in IdbStorage from RwLock to parking_lot::Mutex for better performance.
- Updated related methods to reflect the new locking mechanism, enhancing the efficiency of database operations.
- Adjusted the IdbOpenResult struct to include serde::Serialize for potential serialization needs.

* refactor: update QuickJS skill instance and timer management

- Modified memory limit and stack size settings in QjsSkillInstance to be asynchronous, improving performance.
- Cleaned up imports in qjs_ops.rs by removing unused dependencies and enhancing function definitions for clarity.
- Refactored timer management functions for better readability and efficiency, including renaming and restructuring comments.

* chore: update package.json scripts and clean up build.rs

- Added a new script for running the Tauri app with environment variable loading.
- Simplified the macOS development command to use a dedicated build script.
- Removed unnecessary environment variable logging from build.rs to streamline the build process.
- Cleaned up commented-out sections in the GitHub Actions workflow for Android packaging.
2026-02-05 19:29:21 +05:30
Steven Enamakel 29d62544d6 refactor: improve macOS event handling and TDLib shutdown process
- Updated the event handling in the Tauri application to use a match statement for better clarity and maintainability.
- Added graceful shutdown logic for TDLib during application exit to prevent crashes related to C++ destructors.
- Enhanced the TDLib manager to signal shutdown and exit the receive loop cleanly, improving application stability.
2026-02-05 16:21:03 +05:30
Steven Enamakel 532eae1bdc chore: replace SVG background with PNG for macOS DMG
- Added a new PNG background image for the DMG installer, replacing the previous SVG file to improve compatibility and performance.
2026-02-05 16:17:40 +05:30
Steven Enamakel 864dce5c8d fix: update memory limit for skills and improve V8 runtime creation
- Increased the default memory limit for skills from 64 MB to 256 MB, allowing for better performance and resource management.
- Enhanced the V8 runtime creation process to include memory limits, preventing out-of-memory crashes when multiple skills are active.
2026-02-05 15:42:15 +05:30
Steven Enamakel de77740a23 chore: add custom DMG background for macOS app
- Updated tauri.conf.json to include a custom background image for the DMG installer on macOS, enhancing the visual presentation of the application.
2026-02-05 15:26:14 +05:30
Steven Enamakel a4b61d305d chore: enhance macOS bundling process for TDLib
- Updated the package-and-publish.yml workflow to utilize Tauri's native bundling for TDLib on macOS, removing the need for post-build scripts.
- Modified build.rs to copy TDLib and its dependencies to the libraries/ directory, ensuring they are included in the app bundle.
- Updated tauri.conf.json to reference the newly bundled TDLib and its dependencies.
- Added entries to .gitignore for the new libraries directory.
2026-02-05 15:24:41 +05:30
Steven Enamakel ff84c69006 Merge remote-tracking branch 'upstream' into develop 2026-02-05 14:45:22 +05:30
Steven Enamakel 3e19e9542a fix: correct indentation for push trigger in package-android.yml
- Adjusted the indentation of the push trigger section in the package-android.yml workflow to ensure proper YAML formatting and functionality.
2026-02-05 14:43:10 +05:30
Steven Enamakel 57d5478ac2 fix: adjust workflow_run and pull_request triggers in package-android.yml
- Reformatted the workflow_run and pull_request sections for clarity and consistency in the package-android.yml workflow, ensuring proper trigger conditions for CI processes.
2026-02-05 14:42:56 +05:30
Steven Enamakel 8ba6636341 chore: standardize quote styles and add new scripts for macOS app handling
- Updated quote styles in package-and-publish.yml for consistency by converting single quotes to double quotes.
- Introduced new scripts: recreate-dmg-macos.sh for DMG recreation after TDLib bundling and resign-macos.sh for re-signing the macOS app bundle, ensuring proper code signing after modifications.
2026-02-05 14:36:58 +05:30
github-actions[bot] d772594b84 chore: bump version to 0.30.0 [skip ci] 2026-02-05 08:48:20 +00:00
Steven EnamakelandGitHub 3466ca1f83 Merge pull request #48 from vezuresdotxyz/develop
chore: merge develop into main (v0.30.0)
2026-02-05 14:18:07 +05:30
Steven Enamakel f1bf78aafc fix: update DMG creation paths in CI workflow
- Adjusted the paths for locating the app bundle and original DMG in the package-and-publish.yml workflow to reflect the new directory structure introduced by Tauri v2, ensuring correct DMG recreation.
2026-02-05 14:03:50 +05:30
github-actions[bot] ad1300e5ec chore: bump version to 0.29.0 [skip ci] 2026-02-04 19:46:42 +00:00
Steven EnamakelandGitHub be41b94493 Merge pull request #43 from vezuresdotxyz/develop
chore: merge develop into main (v0.29.0)
2026-02-05 01:16:29 +05:30
Steven Enamakel 2f99dec73d fix: update Google Play upload condition in CI workflow
- Modified the condition for uploading AAB files to Google Play in package-android.yml to check for the GOOGLE_PLAY_UPLOAD_ENABLED variable instead of the GOOGLE_PLAY_SERVICE_ACCOUNT_JSON secret, ensuring proper configuration for the upload process.
2026-02-05 01:14:59 +05:30
Steven Enamakel 484a99ea8f fix: correct conditional syntax in Google Play upload step
- Fixed the conditional syntax in the package-android.yml workflow to ensure proper evaluation of the GOOGLE_PLAY_SERVICE_ACCOUNT_JSON secret before uploading the AAB to Google Play.
2026-02-05 01:13:15 +05:30
Steven Enamakel 00301b3bd9 chore: unify quote styles in package-android.yml
- Standardized quote styles in the package-android.yml workflow by converting single quotes to double quotes for consistency across descriptions and configuration options.
2026-02-05 01:11:35 +05:30
Steven Enamakel 119084c45a chore: standardize quote styles in package-android.yml
- Updated quote styles in the package-android.yml workflow for consistency, changing double quotes to single quotes in descriptions and configuration options.
2026-02-05 01:09:36 +05:30
Steven Enamakel ffa9d99951 refactor: update Android CI workflow triggers and standardize quotes
- Added push and pull request triggers for the develop branch in package-android.yml to enhance CI automation.
- Standardized quote styles in the workflow configuration for consistency.
2026-02-05 01:09:28 +05:30
Steven Enamakel 90ac41d9e4 feat: enhance Android CI workflow with skills module caching and build steps
- Added support for caching node modules in the skills directory to improve build performance.
- Introduced steps to install and build skills dependencies within the Android CI workflow.
2026-02-05 01:07:08 +05:30
Steven Enamakel e71bdc17ae feat: enhance macOS and Android CI workflows for app packaging
- Updated the package-and-publish.yml to improve macOS app re-signing by adding certificate handling and keychain management.
- Modified package-android.yml to transition from APK to AAB packaging, including updates to artifact handling and Google Play upload.
- Enhanced the bundle-tdlib-macos.sh script to fix binary rpaths, ensuring proper runtime behavior of bundled frameworks.
2026-02-05 01:05:55 +05:30
github-actions[bot] 6f1069d0fb chore: bump version to 0.28.0 [skip ci] 2026-02-04 18:54:56 +00:00
Steven EnamakelandGitHub 372862d7ce Merge pull request #42 from vezuresdotxyz/develop
chore: merge develop into main (v0.28.0)
2026-02-05 00:24:42 +05:30
Steven Enamakel 76ef0e7f3a chore: automate version bumping in CI workflow
- Enhanced the version-bump.yml workflow to automatically update the version in package.json and Cargo.toml files.
- Implemented logic to compute the new minor version and create a single commit and tag for both npm and Cargo.
- Ensured the workflow prevents triggering itself by including [skip ci] in the commit message.
2026-02-05 00:24:08 +05:30