mirror of
https://github.com/tinyhumansai/openhuman.git
synced 2026-07-28 13:32:23 +00:00
* chore: add Cargo.toml and Cargo.lock for rust-core workspace - Introduced a new workspace for the rust-core module with its own Cargo.toml. - Added Cargo.lock to manage dependencies for the rust-core module. - Updated .gitignore to exclude the target directory generated by Cargo. - Modified GitHub Actions workflow to build from the new rust-core path instead of src-tauri. * feat: enhance memory and authentication models in rust-core - Added new `memory` module to handle persistent memory operations for skills, including methods for storing and querying skill data. - Introduced `models` module with `auth` and `socket` submodules to manage user session and socket connection states. - Updated `lib.rs` to include new modules and ensure proper integration within the rust-core workspace. - Modified `eslint.config.js` to ignore target directories in linting processes. * feat: integrate Tauri and QuickJS support in rust-core - Added `tauri` and `rquickjs` as optional dependencies in `Cargo.toml` to enable Tauri integration and JavaScript execution. - Introduced `CronScheduler` and `PingScheduler` modules for managing scheduled tasks and health checks for skills. - Implemented `MemoryState` struct for shared app-state management in the memory client. - Updated the runtime module to include new schedulers and ensure proper integration with Tauri features. - Enhanced the skill registry to support new functionalities related to skill management and communication. * chore: update ESLint configuration and refactor Rust module imports - Added 'rust-core/**' to ESLint ignore list to streamline linting processes. - Refactored import paths in Rust modules to directly reference the `memory` module, enhancing clarity and maintainability. - Improved formatting in JavaScript files for better readability and consistency. * refactor: rename rust-core to openhuman-core and update dependencies - Renamed the `rust-core` module to `openhuman-core` across all files for consistency. - Updated `Cargo.lock` to include `openhuman-core` as a new dependency and removed `rust-core`. - Adjusted import paths in the codebase to reflect the new module name, ensuring all references are updated. - Enhanced the Tauri integration by modifying dependencies in `src-tauri/Cargo.toml` to point to `openhuman-core`. * refactor: simplify platform detection using match statements - Replaced multiple if-else statements with match expressions in `current_platform`, `get_platform`, and `register` functions for improved readability and maintainability. - Removed unnecessary conditional compilation for Android and iOS in the `SocketManager` and `tauri_bridge` modules, streamlining the codebase. - Enhanced the `send_notification` function to handle platform checks more efficiently. * refactor: update platform detection to use std::env::consts - Replaced `cfg!(target_os = "os_name")` checks with `std::env::consts::OS` for improved clarity and consistency across the codebase. - Added `rppal` as an optional dependency in `Cargo.toml` for Raspberry Pi support. - Cleaned up platform-specific code in various modules, enhancing maintainability. * refactor: streamline platform-specific code and improve readability - Replaced conditional compilation with `std::env::consts::OS` checks in various modules to enhance clarity and maintainability. - Simplified platform detection logic in `available_disk_space_mb`, `ensure_arduino_cli`, and `open_in_brave` functions. - Updated `screenshot_command_exists` test to conditionally skip based on the operating system. - Cleaned up unnecessary `#[cfg]` attributes, focusing on a more consistent approach across the codebase. * feat: introduce comprehensive AI configuration and memory management - Added multiple configuration files for OpenHuman AI, including `AGENTS.md`, `BOOTSTRAP.md`, `CONSCIOUS_LOOP.md`, `IDENTITY.md`, `MEMORY.md`, `README.md`, `SOUL.md`, `TOOLS.md`, and `USER.md` to define agent roles, onboarding processes, identity, memory management, and tool capabilities. - Implemented an encryption layer for AI memory storage in `encryption.rs`, utilizing AES-256-GCM for secure data handling. - Updated `lib.rs` to include the new AI module structure, enhancing the overall architecture and maintainability of the codebase. * refactor: update dependencies and configuration for improved structure - Removed `android_logger` and related packages from `Cargo.lock` and `Cargo.toml`, streamlining the dependency list. - Adjusted the `APP_IDENTIFIER` constant in `config.rs` to reflect the new application identifier. - Updated resource paths in `tauri.conf.json` for better organization. - Enhanced platform-specific dependency management in `Cargo.toml` for clarity and maintainability. * fix(core): gate ai module behind tauri-host feature * refactor: update AI loading mechanisms and improve platform handling - Refactored the AI configuration loading in `loader.ts` and `tools/loader.ts` to utilize Tauri commands for desktop environments, enhancing performance and reliability. - Updated paths for AI markdown files to reflect the new `rust-core` structure. - Introduced a new end-to-end test for Tauri command interactions in `tauriCoreBridge.e2e.test.ts`. - Cleaned up platform-specific code across various modules, ensuring a more consistent approach to handling desktop and web contexts. * feat: add sidecar core binary build and staging for Tauri bundler - Implemented build steps for the sidecar core binary in multiple workflows, targeting both x86_64-unknown-linux-gnu and aarch64-apple-darwin architectures. - Added staging steps to copy the built binaries into the Tauri resources directory, ensuring proper integration for application bundling. - Updated relevant workflows to enhance the build process and streamline artifact management. * refactor: enhance AI loading logic for Tauri integration - Updated `loader.ts` and `tools/loader.ts` to prioritize Tauri commands for loading configurations in desktop environments, with a fallback to bundled markdown files for web contexts. - Adjusted test mocks to reflect the new file paths for tools markdown. - Improved test setup to mock Tauri API behavior accurately. * docs: update CLAUDE.md and remove Android build scripts from package.json - Added a new section in CLAUDE.md detailing the runtime scope, clarifying that Tauri is desktop-only and should not include mobile or web branches. - Removed Android development and build scripts from package.json to streamline the project for desktop platforms only. * refactor: streamline import statements and enhance test mock structure - Reordered import statements in `loader.ts` and `tools/loader.ts` for consistency. - Simplified mock implementation in `tauriCoreBridge.e2e.test.ts` to improve readability and maintainability. - Added external binary configuration in `build.rs` to support resource management during local builds. * test: stabilize core/unit test paths and tauri build-test config * chore: update subproject commit reference in skills * chore: update Tauri build configuration to include custom environment variable - Modified the Tauri build command in the GitHub Actions workflow to set a custom configuration for updater artifacts, enhancing the build process for the x86_64-unknown-linux-gnu target.
119 lines
4.5 KiB
JSON
119 lines
4.5 KiB
JSON
{
|
|
"name": "openhuman",
|
|
"version": "0.49.16",
|
|
"type": "module",
|
|
"scripts": {
|
|
"dev": "vite",
|
|
"dev:web": "vite",
|
|
"dev:app": "source scripts/load-dotenv.sh && tauri dev",
|
|
"build": "tsc && vite build",
|
|
"build:app": "yarn skills:build && tsc && vite build",
|
|
"compile": "tsc --noEmit",
|
|
"preview": "vite preview",
|
|
"tauri": "tauri",
|
|
"tauri:build:ui": "tauri build -- --bin OpenHuman",
|
|
"macos:build:intel": "source scripts/load-dotenv.sh && tauri build --bundles app dmg --target x86_64-apple-darwin -- --bin OpenHuman",
|
|
"macos:build:intel:debug": "yarn macos:build:intel --debug",
|
|
"macos:build:debug": "yarn macos:build:release --debug",
|
|
"macos:build:release": "source scripts/load-dotenv.sh && tauri build --bundles app dmg -- --bin OpenHuman",
|
|
"macos:build:release:signed": "source scripts/load-env.sh && tauri build --bundles app dmg -- --bin OpenHuman",
|
|
"macos:build:sign:release": "yarn macos:build:release:signed",
|
|
"macos:run": "open 'src-tauri/target/debug/bundle/macos/OpenHuman.app'",
|
|
"macos:dev": "yarn macos:build:debug && open 'src-tauri/target/debug/bundle/macos/OpenHuman.app'",
|
|
"test": "vitest run --config test/vitest.config.ts",
|
|
"test:unit": "vitest run --config test/vitest.config.ts",
|
|
"test:unit:watch": "vitest --config test/vitest.config.ts",
|
|
"test:watch": "vitest --config test/vitest.config.ts",
|
|
"test:coverage": "vitest run --config test/vitest.config.ts --coverage",
|
|
"test:rust": "source $HOME/.cargo/env 2>/dev/null; cargo test --manifest-path src-tauri/Cargo.toml",
|
|
"test:e2e:build": "bash scripts/e2e-build.sh",
|
|
"test:e2e:login": "bash scripts/e2e-login.sh",
|
|
"test:e2e:auth": "bash scripts/e2e-auth.sh",
|
|
"test:e2e": "yarn test:e2e:build && yarn test:e2e:login && yarn test:e2e:auth",
|
|
"test:all": "yarn test:coverage && yarn test:rust && yarn test:e2e",
|
|
"format": "prettier --write .",
|
|
"format:check": "prettier --check .",
|
|
"lint": "eslint . --ext .ts,.tsx",
|
|
"lint:fix": "eslint . --ext .ts,.tsx --fix",
|
|
"skills:build": "cd skills && yarn build",
|
|
"skills:watch": "cd skills && yarn build:watch",
|
|
"prepare": "husky"
|
|
},
|
|
"dependencies": {
|
|
"@heroicons/react": "^2.2.0",
|
|
"@noble/hashes": "^2.0.1",
|
|
"@noble/secp256k1": "^3.0.0",
|
|
"@reduxjs/toolkit": "^2.11.2",
|
|
"@scure/bip32": "^2.0.1",
|
|
"@scure/bip39": "^2.0.1",
|
|
"@sentry/react": "^10.38.0",
|
|
"@tauri-apps/api": "^2.10.0",
|
|
"@tauri-apps/plugin-deep-link": "^2",
|
|
"@tauri-apps/plugin-opener": "^2",
|
|
"@tauri-apps/plugin-os": "^2.3.2",
|
|
"@tauri-apps/plugin-shell": "~2",
|
|
"@types/react-router-dom": "^5.3.3",
|
|
"@types/three": "^0.183.1",
|
|
"buffer": "^6.0.3",
|
|
"debug": "^4.4.3",
|
|
"immer": "^11.1.3",
|
|
"lottie-react": "^2.4.1",
|
|
"os-browserify": "^0.3.0",
|
|
"process": "^0.11.10",
|
|
"qrcode.react": "^4.2.0",
|
|
"react": "^19.1.0",
|
|
"react-dom": "^19.1.0",
|
|
"react-markdown": "^10.1.0",
|
|
"react-redux": "^9.2.0",
|
|
"react-router-dom": "^7.13.0",
|
|
"redux-logger": "^3.0.6",
|
|
"redux-persist": "^6.0.0",
|
|
"socket.io-client": "^4.8.3",
|
|
"telegram": "^2.26.22",
|
|
"three": "^0.183.2",
|
|
"util": "^0.12.5",
|
|
"zustand": "^5.0.10"
|
|
},
|
|
"devDependencies": {
|
|
"@eslint/js": "^9.39.2",
|
|
"@tailwindcss/forms": "^0.5.11",
|
|
"@tailwindcss/typography": "^0.5.19",
|
|
"@tauri-apps/cli": "2.10.0",
|
|
"@testing-library/dom": "^10.4.1",
|
|
"@testing-library/jest-dom": "^6.9.1",
|
|
"@testing-library/react": "^16.3.2",
|
|
"@testing-library/user-event": "^14.6.1",
|
|
"@trivago/prettier-plugin-sort-imports": "^6.0.2",
|
|
"@types/debug": "^4.1.12",
|
|
"@types/node": "^25.0.10",
|
|
"@types/react": "^19.1.8",
|
|
"@types/react-dom": "^19.1.6",
|
|
"@types/redux-logger": "^3.0.13",
|
|
"@typescript-eslint/eslint-plugin": "^8.54.0",
|
|
"@typescript-eslint/parser": "^8.54.0",
|
|
"@vitejs/plugin-react": "^4.6.0",
|
|
"@vitest/coverage-v8": "^4.0.18",
|
|
"@wdio/appium-service": "^9.24.0",
|
|
"@wdio/cli": "^9.24.0",
|
|
"@wdio/local-runner": "^9.24.0",
|
|
"@wdio/mocha-framework": "^9.24.0",
|
|
"@wdio/spec-reporter": "^9.24.0",
|
|
"autoprefixer": "^10.4.23",
|
|
"eslint": "^9.39.2",
|
|
"eslint-config-prettier": "^10.1.8",
|
|
"eslint-plugin-import": "^2.32.0",
|
|
"eslint-plugin-react": "^7.37.5",
|
|
"eslint-plugin-react-hooks": "^7.0.1",
|
|
"husky": "^9.1.7",
|
|
"jsdom": "^28.0.0",
|
|
"msw": "^2.12.10",
|
|
"postcss": "^8.5.6",
|
|
"prettier": "^3.8.1",
|
|
"tailwindcss": "^3.4.19",
|
|
"typescript": "~5.8.3",
|
|
"vite": "^7.0.4",
|
|
"vite-plugin-node-polyfills": "^0.25.0",
|
|
"vitest": "^4.0.18"
|
|
}
|
|
}
|