mirror of
https://github.com/tinyhumansai/openhuman.git
synced 2026-07-30 06:32:24 +00:00
82fa03a8a2b9d497be9ff02e817c98d7bf086da0
15
Commits
| Author | SHA1 | Message | Date | |
|---|---|---|---|---|
|
|
829bfc251e |
chore: update project name and dependencies in Cargo files
- Changed project name from 'tauri-app' to 'AlphaHuman' in Cargo.toml and Cargo.lock. - Updated project description to reflect the new branding. - Adjusted version extraction in the GitHub Actions workflow to use the version from package.json instead of Cargo.toml. These changes align the project with its new identity and improve the workflow configuration. |
||
|
|
8da646a898 |
refactor: standardize cache keys in workflows
- Updated cache keys in both build and package-and-publish workflows to reference 'src-tauri/Cargo.lock' instead of using a wildcard pattern. - Changed quotes from single to double for consistency across the workflows. These changes enhance clarity and maintainability of the workflow configurations. |
||
|
|
10ec1b3ea1 |
Feat/skills advanced (#13)
* Update skills submodule and enhance skill management interface - Updated the skills submodule to the latest commit, ensuring alignment with project dependencies. - Refactored the SkillSetupModal to conditionally render either the SkillSetupWizard or SkillManagementPanel based on the skill's setup status, improving user experience. - Introduced the SkillManagementPanel component to manage connected skills, allowing users to view connection status and configurable options. - Enhanced the package-and-publish workflow by updating the release name for better clarity. These changes improve the overall functionality and maintainability of the skill management system. * Remove skills catalog JSON and refactor skills loading mechanism - Deleted the `skills-catalog.json` file from the public directory, as it is no longer needed. - Updated the `SkillsGrid` component to load the skills catalog directly from the local skills directory via Rust, improving the skills management process. - Enhanced the `SkillProvider` to discover skills from the local directory and sync from GitHub if no local skills are found, streamlining the skill lifecycle management. These changes improve the overall efficiency and maintainability of the skill management system. * Update skills submodule and enhance skill management features - Updated the skills submodule to the latest commit, ensuring alignment with project dependencies. - Modified the `ConnectionIndicator` component's description for clarity. - Refactored the `SkillsGrid` component to improve type definitions and streamline skill processing, including the addition of a `hasSetup` property for better skill management. - Enhanced the `SkillManagementPanel` to conditionally render the "Re-run Setup" button based on the presence of setup hooks. - Updated the `SkillSetupModal` to handle skills without setup hooks more effectively. - Implemented a background update check in the `SkillProvider` to ensure skills are kept up to date with the latest changes from GitHub. These changes improve the overall functionality and maintainability of the skill management system. * Enhance skill management interface and update dependencies - Added new CSS styles for the skills table, improving layout and user experience. - Updated the SkillsGrid component to utilize new props and improve type definitions. - Enhanced the SkillSetupModal to include skill descriptions for better context. - Updated the Home component to include a call-to-action for upgrading to premium plans. - Added new entries to .gitignore for mypy and ruff caches to streamline development. These changes improve the overall functionality and maintainability of the skill management system. * Update skills submodule and refine billing plan features - Updated the skills submodule to the latest commit for improved functionality. - Simplified CSS styles in `index.css` for better readability and consistency. - Refactored billing plan features in `billingHelpers.ts` to streamline plan metadata and improve clarity. - Enhanced the `BillingPanel` component by adjusting layout and improving user feedback on current plan status and usage metrics. These changes enhance the overall user experience and maintainability of the billing and skills management systems. * Enhance SettingsLayout and BillingPanel components for improved user experience - Updated the backdrop blur effect in SettingsLayout for a more visually appealing modal. - Adjusted CSS styles in SettingsHeader for better spacing and layout consistency. - Refined billing plan features in billingHelpers to clarify plan descriptions and improve user understanding. - Enhanced the BillingPanel layout, including improved token usage display and subscription management options. These changes collectively enhance the overall user interface and experience within the settings and billing sections. * Add team management features to settings interface - Introduced a new "Team" section in the SettingsHome component, allowing users to manage their team and invite members. - Added TeamPanel, TeamMembersPanel, and TeamInvitesPanel components for comprehensive team management functionalities. - Updated routing in SettingsModal to include new team-related paths. - Enhanced useSettingsNavigation hook to support navigation for team management. - Integrated Redux state management for teams, members, and invites, improving data handling and user experience. These changes collectively enhance the settings interface by providing robust team management capabilities. * Update skills submodule and enhance App component layout - Updated the skills submodule to the latest commit for improved functionality. - Wrapped the AppRoutes component in a new div for better spacing and layout consistency. - Added a dead code allowance for the McpRequest struct in socket.rs to improve code clarity. - Introduced a dead code allowance for the is_permission_granted function in notification_service.rs to maintain future extensibility. These changes collectively enhance the overall structure and maintainability of the application. * Update skills submodule to latest commit for improved functionality and alignment with project dependencies. |
||
|
|
cd9ebcd927 |
Feat/skills advanced (#12)
* Update skills submodule and enhance skill management interface - Updated the skills submodule to the latest commit, ensuring alignment with project dependencies. - Refactored the SkillSetupModal to conditionally render either the SkillSetupWizard or SkillManagementPanel based on the skill's setup status, improving user experience. - Introduced the SkillManagementPanel component to manage connected skills, allowing users to view connection status and configurable options. - Enhanced the package-and-publish workflow by updating the release name for better clarity. These changes improve the overall functionality and maintainability of the skill management system. * Remove skills catalog JSON and refactor skills loading mechanism - Deleted the `skills-catalog.json` file from the public directory, as it is no longer needed. - Updated the `SkillsGrid` component to load the skills catalog directly from the local skills directory via Rust, improving the skills management process. - Enhanced the `SkillProvider` to discover skills from the local directory and sync from GitHub if no local skills are found, streamlining the skill lifecycle management. These changes improve the overall efficiency and maintainability of the skill management system. * Update skills submodule and enhance skill management features - Updated the skills submodule to the latest commit, ensuring alignment with project dependencies. - Modified the `ConnectionIndicator` component's description for clarity. - Refactored the `SkillsGrid` component to improve type definitions and streamline skill processing, including the addition of a `hasSetup` property for better skill management. - Enhanced the `SkillManagementPanel` to conditionally render the "Re-run Setup" button based on the presence of setup hooks. - Updated the `SkillSetupModal` to handle skills without setup hooks more effectively. - Implemented a background update check in the `SkillProvider` to ensure skills are kept up to date with the latest changes from GitHub. These changes improve the overall functionality and maintainability of the skill management system. * Enhance skill management interface and update dependencies - Added new CSS styles for the skills table, improving layout and user experience. - Updated the SkillsGrid component to utilize new props and improve type definitions. - Enhanced the SkillSetupModal to include skill descriptions for better context. - Updated the Home component to include a call-to-action for upgrading to premium plans. - Added new entries to .gitignore for mypy and ruff caches to streamline development. These changes improve the overall functionality and maintainability of the skill management system. |
||
|
|
e2833f27e0 |
Adopt supermemory patterns into AI memory system (#11)
* Add submodule for skills and initialize skills repository - Created a new .gitmodules file to include the skills submodule. - Initialized the skills submodule with a commit reference, linking to the skills repository on GitHub. This update integrates the skills component into the project, enhancing the AI system's capabilities. * Implement subscription billing UI with Stripe and Coinbase integration Replace the placeholder BillingPanel with a working subscription billing interface. Users can view their current plan and token usage, upgrade via Stripe (card) or Coinbase (crypto, annual-only), and manage subscriptions through Stripe's Customer Portal. Adds billing API service and types. Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com> * Add unified skill system with core type definitions and management features - Introduced a comprehensive skill system that includes lifecycle management, tool definitions, state management, entity extensions, and intelligence rules. - Implemented a skill state manager using Zustand for managing skill-specific state. - Created an entity extension registry for registering new entity and relation types. - Developed an intelligence engine for evaluating rules and executing actions based on events. - Established a unified tool registry to streamline tool management across various integrations. This update enhances the AI system's capabilities by providing a robust framework for skill management and interaction. * Add billing helpers and refactor BillingPanel for improved plan management - Introduced a new `billingHelpers.ts` file containing plan metadata, utility functions for plan management, and pricing calculations. - Refactored `BillingPanel` to utilize the new billing helpers, streamlining the display of plan information and pricing. - Added unit tests for billing helpers to ensure functionality and correctness of plan-related operations. This update enhances the billing system's structure and maintainability, providing a clearer separation of concerns for plan management. * Enhance skill management system with new features and integrations - Added path aliases in `tsconfig.json` for improved module resolution. - Updated `vite.config.ts` to include skill types path for better integration. - Integrated `SkillsProvider` into the application to manage skill lifecycle, including registration and activation of virtual skills like Telegram, bulk operations, and reminders. - Implemented a unified skill system with a new orchestrator for managing skill states and tool definitions. - Enhanced bundled skill loading mechanism to utilize a unified skill system, improving the overall architecture and maintainability. This update strengthens the skill management framework, enabling better organization and functionality within the AI system. * Adopt supermemory patterns into AI memory system Port 5 patterns from claude-supermemory reference implementation to fill gaps in the existing memory pipeline: 1. Tool observation compression — compress verbose tool outputs before compaction summarization and memory flush, saving tokens and signal 2. Categorized memory context — render memory as structured XML with profile facts, recent context, and search results with dedup 3. Relative timestamps — surface updated_at from FTS chunks and display human-readable relative times in search results 4. Memory deduplication on write — filter duplicate facts before appending to memory files during flush 5. Auto-capture on session end — lightweight memory flush for short sessions that never trigger compaction Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com> * Refactor TelegramMCPServer to delegate entirely to unified tool registry The server was still maintaining its own tool map with 80+ handler entries and legacy fallback paths. Now it delegates all tool listing and execution to skillOrchestrator.toolRegistry, matching the architecture established in the skills system. Updated tests to mock the unified registry instead of individual tool handlers. Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com> * Consolidate skill system and migrate Telegram state to Zustand Remove legacy skill implementations (src/lib/ai/skills/, src/lib/mcp/skills/) and consolidate everything into the unified skill orchestrator at src/lib/skills/. Add runtime skill subprocess support with stdio JSON-RPC transport for Python/Node/Deno skills. Key changes: - Delete old SkillRegistry, installer, loader, runner, frontmatter parser - Delete MCP skills layer (bulk.ts, reminders.ts, index.ts) and move skill definitions to src/lib/skills/definitions/ - Add RuntimeHost and StdioTransport for subprocess-based skills - Add shell plugin (tauri-plugin-shell) with scoped permissions for python3, node, deno, npx executables - Extend orchestrator with runtime skill lifecycle (spawn, load, activate, tick, deactivate, shutdown) and reverse RPC handling - Add overrideTier parameter to enforceRateLimit for unified registry - Decouple prompt system from old SkillEntry type - Remove old SkillRegistry from AIProvider - Migrate Telegram state functions from Redux dispatch to Zustand store - Add Telegram Zustand store, selectors, actions, migration utilities - Add hello-python example skill Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com> * Migrate Telegram state from Redux to Zustand Replace the Redux telegram slice with a Zustand store using immer middleware. All 49 reducers ported as store methods, 5 thunks converted to standalone async functions, and 30+ selectors migrated to Zustand hooks and plain functions. Updates all consumers: services, API helpers, tool adapters, and UI components. Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com> * Refactor skill management and remove Telegram components - Updated TODO.md to include integration of the payments flow. - Refactored App.tsx to remove unused TelegramProvider and SkillsProvider, streamlining the component structure. - Deleted obsolete test fixtures related to Telegram state and skills, including mcpContext.ts, rootState.ts, telegramState.ts, and TelegramConnection components. - Removed legacy skill loading and entity extension files, consolidating the skill system into a unified orchestrator. - Updated documentation to reflect changes in skill management and structure. This commit enhances the overall architecture by eliminating deprecated components and improving the skill management framework. * Update skills submodule to latest commit 22e42c9, ensuring alignment with the current project structure and dependencies. * Integrate Python skills system with JSON-RPC IPC and interactive setup UI Wire the Python skills runtime into the Tauri frontend via the shell plugin, communicating over JSON-RPC 2.0 stdin/stdout. Replace "Coming Soon" Telegram entries in onboarding and settings with a live setup wizard that drives the skill's multi-step authentication flow. - Phase 0: Create skill.py SkillDefinition for Telegram, update __main__.py to use SkillServer (MCP preserved via --mcp flag) - Phase 1: Add skills lib (types, transport, runtime, manager, paths), Redux skillsSlice with persistence, setup UI components (SetupFormRenderer, SkillSetupWizard, SkillSetupModal) - Phase 2: Add SkillProvider to provider chain, Rust skill data I/O commands - Phase 3: Tool bridge for AI registry integration in AIProvider Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com> * Update skill management and billing helpers - Updated skills submodule to the latest commit, ensuring alignment with project dependencies. - Refactored SkillSetupWizard to ensure the skill is running before starting the setup flow, improving user experience. - Adjusted billingHelpers test to import PlanTier from the correct path, enhancing type safety. - Modified embedQuery method in NullEmbeddingProvider to accept a parameter, improving method signature clarity. These changes enhance the overall functionality and maintainability of the skill management and billing systems. * Enhance deep link handling and skill setup error management - Added a note in CLAUDE.md regarding the requirement to run the .app for deep link testing on macOS. - Introduced a simulation feature for deep links in development mode within desktopDeepLinkListener.ts. - Updated SkillSetupWizard to throw descriptive errors if a skill fails to start, improving error handling and user feedback. These changes improve the development experience and robustness of the skill setup process. * Add Python sidecar setup script and update dependencies - Introduced a new script `setup-python-sidecar.mjs` to symlink the system Python to the Tauri runtime for local development. - Updated the `package.json` to include a new npm script for setting up the Python sidecar. - Changed the version specification for `@tauri-apps/plugin-shell` from `^2` to `~2` for more controlled updates. - Updated the `tauri.conf.json` to include the new Python sidecar in the external binaries list. - Updated the skills submodule to the latest commit for alignment with project dependencies. These changes enhance the development workflow for Python skills integration and improve dependency management. * Update skills submodule to latest commit and modify TODO.md - Updated the skills submodule to the latest commit for better alignment with project dependencies. - Added a note in TODO.md to skip the connect account page and redirect to the home page during the payment flow integration. These changes ensure the project remains up-to-date and clarify the next steps for the payment flow implementation. * Refactor Python sidecar integration and enhance skill runtime management - Updated `setup-python-sidecar.mjs` to symlink system Python to `src-tauri/runtime-skill-python-<target>` for local development. - Introduced new commands in Rust for retrieving the current working directory and virtual environment site-packages for Python skills. - Modified `SkillTransport` to support spawning skills using the sidecar for bundled runtimes, improving the execution flow. - Updated `tauri.conf.json` to reflect changes in external binaries and added documentation for the Python sidecar setup. - Adjusted skill management to ensure proper error handling and logging during skill execution. These changes streamline the development process for Python skills and enhance the overall robustness of the skill management system. * Enhance skill connection indicators and logging - Added a new `TelegramConnectionIndicator` component to display real-time connection status for the Telegram skill. - Integrated `useSkillConnectionStatus` hook across various components to provide unified connection status for skills. - Updated `ConnectionsPanel` and `ConnectStep` to utilize the new connection status logic, improving user feedback during skill setup. - Enhanced logging in `SocketService` and `SocketProvider` for better debugging and error tracking. - Introduced utility functions for sanitizing sensitive data before logging, ensuring security during error handling. These changes improve the user experience by providing clear connection statuses and enhance the robustness of the logging system. * Remove console logging from SocketProvider for cleaner code - Eliminated console log statements related to socket connection and disconnection events, as well as error handling, to streamline the codebase. - This change enhances the maintainability of the SocketProvider component by reducing unnecessary logging clutter. * Enhance SocketService with MCP transport and tool management - Introduced `SocketIOMCPTransportImpl` for handling client-server MCP requests, improving communication efficiency. - Updated the `mcp:listTools` event to aggregate tools from all ready skills, providing a comprehensive tool list in response to requests. - Enhanced the `mcp:toolCall` event to validate tool name formats and handle tool calls asynchronously, improving error handling and logging. - Added a method to retrieve the MCP transport instance, enhancing the SocketService's functionality. These changes improve the robustness and usability of the SocketService in managing MCP interactions. * Remove logger service and replace with debug package in SocketService - Deleted the custom logger implementation in favor of using the `debug` package for logging in the SocketService. - Updated the SocketService to enable logging based on the development environment, improving debugging capabilities. These changes streamline the logging process and enhance the maintainability of the codebase. * Add SkillsGrid component to enhance skill management interface - Introduced a new SkillsGrid component to display a grid of skills with connection statuses and setup options. - Implemented skill icons and status badges for better visual representation of skill states. - Integrated skills catalog loading functionality to dynamically fetch and display available skills. - Updated Home component to include the SkillsGrid, improving user interaction with skills. These changes enhance the user experience by providing a clear and interactive skills management interface. * Update skills submodule and add skills catalog JSON - Updated the skills submodule to the latest commit for improved functionality. - Introduced a new `skills-catalog.json` file containing detailed descriptions and configurations for various skills, enhancing the skills management system. - Enhanced the `SkillsGrid` component to validate skill names, ensuring they do not contain underscores, which are reserved for tool namespacing. These changes improve the robustness of the skills management interface and ensure better adherence to naming conventions. * Update skills submodule and modify tool name formatting in SocketService - Updated the skills submodule to the latest commit for improved functionality. - Changed the tool name formatting in SocketService to use double underscores instead of single underscores, enhancing clarity in tool identification. These changes ensure better alignment with naming conventions and improve the overall functionality of the skills management system. * Add DownloadScreen component and update Welcome page - Introduced a new DownloadScreen component to provide users with platform-specific download options for the application. - Updated the Welcome page to conditionally display the DownloadScreen for web users while showing the Telegram login button for Tauri users. - Modified the greeting text and adjusted layout for improved user experience. These changes enhance the onboarding process by offering clear download options based on the user's platform. * Enhance AppRoutes and Welcome component for web detection - Added logic in AppRoutes to determine if the application is running on the web or Tauri, using the `isTauri` utility. - Updated the Welcome component to accept a prop indicating the platform, allowing for tailored rendering based on the environment. - This change improves the onboarding experience by providing a more context-aware interface for users depending on their platform. * Refactor SkillsGrid and Home components for improved clarity - Removed unused Telegram and Gmail connection indicators from the Home component to streamline the interface. - Simplified the SkillCard function in SkillsGrid by renaming the description parameter for better clarity. - These changes enhance code readability and maintainability by eliminating unnecessary components and improving parameter naming. --------- Co-authored-by: Claude Opus 4.5 <noreply@anthropic.com> |
||
|
|
d668a3a66a |
Migrate entity graph from SQLite to Neo4j backend API (#9)
* Migrate entity graph from local SQLite to remote Neo4j backend API Replace Tauri IPC invoke() calls with REST API calls to /api/entity-graph/ endpoints. EntityManager public API is unchanged so all consumers (AIProvider, EntityQuery, SkillRegistry) need no modifications. - Rewrite manager.ts to use apiClient instead of Tauri invoke() - Add Neo4j response types and conversion helpers in types.ts - Remove Rust entity_db.rs (607 lines) and rusqlite dependency - Remove 12 ai_entity_* commands from Tauri generate_handler Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com> * Add Git workflow guidelines to CLAUDE.md - Introduced a new section outlining the requirement for all pull requests to target the `develop` branch instead of `main`. This update aims to standardize the contribution process and improve collaboration among developers. * Enhance EntityManager with optimistic concurrency control for tag management - Introduced MAX_TAG_RETRIES constant to handle HTTP 409 Conflict errors during tag addition and removal. - Refactored addTag and removeTag methods to implement retry logic using If-Match headers for optimistic concurrency control. - Updated search and getByTag methods to utilize URLSearchParams for improved query handling. - Simplified entity fetching logic in getById and search methods to enhance performance and clarity. --------- Co-authored-by: Claude Opus 4.5 <noreply@anthropic.com> |
||
|
|
6e4eeecc0c |
Fetch constitution from public GitHub repo and enhance AI system (#8)
* Add AI intelligence system with memory, sessions, skills and constitution Implements a client-side AI system inspired by OpenClaw's architecture: Rust backend (src-tauri/src/ai/): - SQLite memory database with FTS5 full-text search (memory_db.rs) - AES-256-GCM encryption with Argon2id key derivation (encryption.rs) - Session JSONL file I/O and memory file management (sessions.rs) - 30 new Tauri commands for memory, encryption, and session operations TypeScript AI modules (src/lib/ai/): - Constitution framework: safety rules, memory principles, action validation - Memory system: markdown chunking, hybrid FTS5+vector search, encryption - Prompt system: modular builder with 7 sections (constitution, identity, crypto-intelligence, memory-recall, skills, tools, context) - Session system: JSONL transcripts, context compaction, memory flush - Skills framework: SKILL.md loader, registry, GitHub installer - LLM providers: pluggable interface with custom and OpenAI implementations - AI tools: memory_search, memory_read, memory_write, web_search Integration: - Redux aiSlice with persisted config - AIProvider in the app provider chain - All data encrypted at rest, zero-knowledge architecture Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com> * Apply cargo fmt formatting Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com> * Add unit tests for AI intelligence system Cover constitution (loader, validator), memory (chunker), prompts (system-prompt, sections), providers (embeddings), sessions (types), skills (frontmatter, registry), tools (registry), and Redux aiSlice. Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com> * Enhance AI system with entity management and constitution updates - Introduced EntityManager and EntityQuery classes for managing entity relationships and queries within the AI platform. - Updated constitution loader to fetch the constitution from a public GitHub repository, with fallback to a bundled default. - Enhanced constitution parsing to support new formats and improved error handling. - Updated memory schema to reflect changes in storage management. - Added support for loading skill definitions from TypeScript files, improving skill lifecycle management. This update strengthens the AI system's capabilities in entity management and constitution handling, ensuring better compliance and functionality. --------- Co-authored-by: Claude Opus 4.5 <noreply@anthropic.com> |
||
|
|
00688926d3 |
Add TelegramSyncService for continuous chat and update synchronization
Implements a sync service that loads all chats via GetDialogs in batched 100-chat requests, preloads messages for the top 20 chats with rate-limit pacing, and processes real-time Telegram updates through the existing UpdateManager's PTS/SEQ state machine. The service is triggered automatically by TelegramProvider when the connection is established and authenticated. New files: syncService, entityBuilders, updateHandler, schedulers (all under src/services/telegram/). Redux state extended with isSyncing, isSynced, users map, and batch chat reducers (replaceChats, addChats, setSyncStatus, etc.). Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com> |
||
|
|
c46cf127e9 |
Update deep link scheme from outsourced:// to alphahuman:// for improved desktop authentication flow
- Changed all references of the deep link scheme in documentation and code to `alphahuman://` to align with the new branding. - Updated the Telegram login flow documentation to reflect the new deep link handling. - Adjusted various files to ensure consistency in the authentication process across platforms. This update enhances the clarity and branding of the authentication flow for the desktop application. |
||
|
|
03f4af637f |
Add Telegram login documentation and enhance desktop integration
- Introduced a new documentation file detailing the Telegram login flow for the desktop client, including system-browser authentication and deep link handling. - Updated the TelegramLoginButton component to initiate the login process using the backend URL for Tauri desktop applications. - Enhanced deep link listener to validate incoming URLs and manage session tokens more effectively. - Refactored utility functions to streamline Tauri environment checks and improve code clarity. This update improves the onboarding experience for desktop users and provides comprehensive guidance on implementing Telegram login functionality. |
||
|
|
632ecc05b7 |
Add comprehensive documentation for application architecture, state management, services layer, MCP system, pages and routing, components, and providers
- Introduced detailed architecture overview outlining system components and entry points. - Documented state management using Redux Toolkit and Redux-Persist, including store configuration and slice structures. - Described services layer architecture, detailing API client, socket service, and MTProto service functionalities. - Explained the Model Context Protocol (MCP) system, including tool categories and implementation examples. - Outlined routing structure and page components, emphasizing protected and public routes. - Organized reusable components by feature, detailing their structure and usage. - Provided insights into provider management for service lifecycle and shared state. This documentation enhances understanding of the application's structure and improves onboarding for new developers, ensuring clarity in the system's design and functionality. |
||
|
|
28480ab531 |
Update application icon and implement macOS background execution features
- Replaced the favicon in index.html with a new alpha.svg icon. - Enhanced package.json with new macOS-specific build and run scripts for Tauri. - Added a comprehensive macOS background execution implementation, including a system tray menu and autostart functionality. - Updated Tauri configuration to support tray icon and macOS private API features. - Introduced new capabilities for autostart and tray management in the application. This update improves the user experience on macOS by providing a seamless background execution feature and a visually updated application icon. |
||
|
|
4f05041e05 |
Fix deep link auth flow with Rust token exchange and platform workarounds
Replace browser fetch() with Rust invoke() for token exchange to bypass CORS restrictions. Fix deep link listener by removing premature __TAURI__ guard (not available at module load), using lazy dynamic import instead. Add deepLinkHandled localStorage flag to prevent infinite reload loops from getCurrent() re-delivering the same URL after navigation. Add backend auth implementation guide and platform-specific deep link docs. Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com> |
||
|
|
098cf17d44 |
Add deep link functionality and backend integration for authentication
- Introduced @tauri-apps/plugin-deep-link for handling deep link events - Implemented setup for deep link listener in main application entry - Enhanced Login page to support Telegram authentication via deep links - Created utility functions for building and handling deep links - Added configuration for backend URL management - Updated Tauri configuration to support deep link plugin This update enhances the user experience by allowing seamless transitions between web and desktop applications through deep linking. |
||
|
|
577ffcd27c | Initialize Tauri application with React and TypeScript setup, including essential configuration files, project structure, and initial assets. Added .gitignore, package.json, and README.md for project documentation and setup instructions. |