mirror of
https://github.com/tinyhumansai/openhuman.git
synced 2026-07-27 21:08:00 +00:00
* feat: add react-icons support and refactor skill category handling - Added `react-icons` dependency to the project for enhanced icon usage. - Introduced new skill icons in the `toolkitMeta.tsx` component, replacing SVG icons with `react-icons` for improved maintainability and consistency. - Created a new `skillCategories.ts` file to define skill categories and their order, streamlining the management of skill categories across the application. - Refactored the `SkillCategoryFilter` component to utilize the new skill categories structure, enhancing clarity and reducing redundancy in the codebase. - Updated the `Skills` page to leverage the new icon rendering method and skill categories, improving the overall user experience. - Added tests to ensure the correct functionality of the new skill category and icon implementations. * feat: update environment configuration and enhance settings UI - Updated `.env.example` and `app/.env.example` to reflect new backend URL and added optional environment selector for staging. - Enhanced `SettingsHome` component by separating account and billing sections for improved clarity. - Introduced a new billing section in the settings menu to streamline user navigation. - Updated `useSettingsNavigation` hook to accommodate changes in settings structure. - Improved `BillingPanel` to handle session token checks and ensure accurate billing state retrieval. - Refactored `Rewards` page to enhance user experience with clearer progress indicators and improved layout. - Added tests to validate changes in the rewards and settings components. * feat(config): enhance API base URL handling and environment configuration - Introduced a new staging API base URL constant for better environment management. - Added app environment variable constants to streamline environment detection. - Refactored effective API URL resolution to accommodate environment-specific defaults. - Implemented functions to resolve app environment from process environment variables. - Added tests to validate the correct behavior of staging and production API URL handling. * feat(rewards): add community and referrals tabs for rewards management - Introduced `RewardsCommunityTab` and `RewardsReferralsTab` components to enhance the rewards management interface. - The `RewardsCommunityTab` displays user progress, Discord role statuses, and connection options, improving user engagement with rewards. - The `RewardsReferralsTab` allows users to manage their referral program, track progress, and access coupon rewards in a streamlined layout. - Updated the `Rewards` page to integrate these new tabs, enhancing overall user experience and navigation. * feat(rewards): introduce ReferralRewardsSection and RewardsRedeemTab components - Added `ReferralRewardsSection` to manage referral statistics and code application, enhancing user engagement with the referral program. - Created `RewardsRedeemTab` to streamline the process of applying reward codes, improving the overall rewards management experience. - Updated `Rewards` page to include the new redeem tab, allowing users to easily switch between referral and redeem functionalities. - Refactored `RewardsCommunityTab` to adjust the referral selection handler, ensuring consistent navigation across the rewards interface. - Removed redundant UI elements in `RewardsCouponSection` for a cleaner layout. - Enhanced tests to cover new functionalities and ensure robust performance across the rewards system. * feat(ui): introduce PillTabBar component and refactor SkillCategoryFilter and Rewards pages - Added a new `PillTabBar` component to enhance tab navigation with customizable styles and item rendering. - Refactored `SkillCategoryFilter` to utilize `PillTabBar`, improving code clarity and reducing redundancy in button rendering. - Updated the `Rewards` page to replace the existing tab navigation with `PillTabBar`, streamlining the user interface for switching between referral, rewards, and redeem tabs. - Enhanced the `ReferralRewardsSection` layout for better user experience and consistency across the rewards management interface. - Improved tests to cover the new `PillTabBar` functionality and ensure robust performance across the updated components. * fix(rewards): update placeholder and button text in RewardsCouponSection - Changed the input placeholder from "Promo code" to "Coupon code" for clarity. - Updated button text from "Apply code" to "Redeem Code" to better reflect the action being performed. - Adjusted loading state text from "Applying…" to "Redeeming..." for consistency in user feedback. * feat(composio): enhance toolkit handling and improve user messaging - Updated the `ComposioConnectModal` to simplify the connection message, removing unnecessary wording for clarity. - Introduced a `TOOLKIT_ALIASES` mapping in `toolkitMeta.tsx` to standardize toolkit slugs, improving consistency across the application. - Refactored the `composioToolkitMeta` function to utilize the new slug mapping, enhancing toolkit metadata retrieval. - Improved the `useComposioIntegrations` hook to leverage the canonicalized toolkit slugs for better integration handling. - Adjusted the `Skills` page to normalize toolkit slugs during rendering, ensuring a consistent user experience. - Updated tests to reflect changes in messaging and toolkit handling, ensuring robust functionality across the application. * feat(intelligence): add new tabs for Dreams, Memory, and Subconscious features - Introduced `IntelligenceDreamsTab`, which displays generated dreams based on daily life events, enhancing user engagement with a visually appealing layout. - Added `IntelligenceMemoryTab` to manage actionable items, featuring search and filter capabilities for improved user interaction with memory data. - Created `IntelligenceSubconsciousTab` to handle subconscious tasks and logs, providing users with insights and management options for their subconscious activities. - Refactored the `RewardsCommunityTab` to remove unused Discord role status logic, streamlining the component for better performance. - Implemented a new `PageBackButton` component for consistent navigation across settings pages. - Enhanced the `BillingPanel` and its subcomponents to improve user experience in managing billing and subscription details, including transaction history and payment methods. - Added new billing-related tabs for better organization and access to billing features, including `BillingOverviewTab`, `BillingPaymentsTab`, and `BillingPlansTab`. - Updated tests to ensure functionality across new and refactored components, maintaining robust application performance. * refactor(billing): update BillingPanel and BillingPlansTab for improved user experience - Changed the default selected tab in `BillingPanel` from 'overview' to 'plans' to prioritize subscription management. - Removed the `BillingOverviewTab` from the `BillingPanel`, streamlining the billing interface. - Enhanced the `BillingPlansTab` header to clarify the purpose, changing "Explore tiers" to "Choose a Subscription Plan". - Updated the description in `BillingPlansTab` for better clarity on payment options. - Improved the layout of the `SubscriptionPlans` component to better highlight crypto payment options and their availability. - Cleaned up unused code and comments for better maintainability. * refactor(billing): streamline BillingPanel and BillingPlansTab components - Removed unused `teamUsage` state and related API call from `BillingPanel` to simplify data management. - Adjusted layout in `BillingPlansTab` for improved visual hierarchy and user experience. - Cleaned up code by eliminating unnecessary comments and enhancing maintainability. * refactor(billing): enhance SubscriptionPlans layout for improved responsiveness - Updated the layout of the `SubscriptionPlans` component to ensure better responsiveness and visual consistency. - Adjusted class names to include minimum height and width properties for better alignment across different screen sizes. - Enhanced the layout of the pricing display section for improved clarity and user experience. * refactor(billing): update subscription plans and billing components for improved clarity and user experience - Adjusted pricing for BASIC and PRO plans to reflect new monthly and annual rates. - Enhanced feature descriptions for subscription plans to better communicate value. - Removed redundant UI elements in the BillingPaymentsTab and PayAsYouGoCard for a cleaner layout. - Added loading and confirmation messages in SubscriptionPlans to improve user feedback during payment processes. - Updated class names for better responsiveness and visual consistency across billing components. * refactor(billing): improve error messaging and UI consistency in billing components - Updated error message in BillingPanel to specify adding a payment card on Stripe for clarity. - Changed header text in AutoRechargeSection to "Enable Auto-Recharge" for better user understanding. - Modified button text in AutoRechargeSection to "Add card on Stripe" for consistency. - Enhanced styling in PayAsYouGoCard for improved visual appeal and user interaction. - Removed redundant UI elements in PayAsYouGoCard for a cleaner layout. * refactor(billing): remove unused error handling and improve UI consistency across billing components - Eliminated `setArError` prop from BillingPanel, AutoRechargeSection, and BillingPaymentsTab to streamline error handling. - Enhanced layout and styling in BillingHistoryTab and SubscriptionPlans for better visual consistency and user experience. - Removed the BillingOverviewTab component to simplify the billing interface and improve maintainability. * refactor(billing): update feature descriptions and enhance SubscriptionPlans display - Revised feature descriptions in the PLANS array for clarity and conciseness. - Increased the number of displayed features in the SubscriptionPlans component to provide users with more information at a glance. * refactor(billing): update billing components for improved clarity and functionality - Revised feature descriptions in the PLANS array to reflect increased usage limits. - Renamed header in BillingHistoryTab to "Transaction History" and updated description for clarity. - Adjusted transaction amount formatting in BillingHistoryTab to display five decimal places. - Removed redundant UI elements in BillingPaymentsTab to streamline the layout. - Enhanced PayAsYouGoCard with improved credit balance display and top-up options, including validation for custom amounts. * feat(usage): add budget completion message logic and update tests - Introduced `shouldShowBudgetCompletedMessage` to the `UsageState` interface to indicate when the budget completion message should be displayed. - Updated the `useUsageState` hook to calculate the budget completion message based on user credits and budget status. - Enhanced tests for `useUsageState` to verify the correct behavior of the budget completion message under various scenarios. - Modified the `Conversations` component to display the budget completion message appropriately based on the new logic. * style: apply formatter fixes from pre-push hook * refactor(rewards): update coupon section and test cases for clarity and consistency - Renamed placeholder text and button labels in the RewardsCouponSection test to reflect updated terminology. - Adjusted test assertions to ensure they align with the new button and placeholder names. - Updated pricing details in billingHelpers tests to reflect new monthly and annual rates for BASIC and PRO plans. - Enhanced the ContextGatheringStep labels for better clarity regarding email and LinkedIn processing stages. * style(tests): format coupon code input changes for consistency - Reformatted the coupon code input changes in the RewardsCouponSection test for improved readability and consistency. - Ensured that the test cases maintain a uniform style for better maintainability. * refactor: enhance accessibility and improve code structure in various components - Added ARIA roles and attributes to the PillTabBar for better accessibility. - Refactored the canonicalization logic for toolkit slugs into a new file for improved organization. - Updated the IntelligenceDreamsTab and IntelligenceMemoryTab components for better readability and accessibility. - Enhanced error handling and logging in the IntelligenceSubconsciousTab for improved debugging. - Streamlined the ReferralRewardsSection and RewardsCommunityTab components by normalizing referral code input handling. - Removed unused props and improved layout consistency in BillingPanel and related components. - Updated the Skills page to handle subconscious escalation dismissals more effectively. * feat(release): configure staging environment for deployment - Added steps to configure the staging app environment in the release workflow. - Set environment variables for staging, including OPENHUMAN_APP_ENV and VITE_OPENHUMAN_APP_ENV. - Updated build and deployment steps to conditionally use staging settings based on the build target. - Ensured proper handling of workspace paths for staging deployments. * chore(env): add optional staging environment variable to .env.example - Introduced OPENHUMAN_APP_ENV variable to specify the app environment as 'staging'. - Updated .env.example to include new environment configuration for clarity. * refactor(intelligence): streamline navigation and improve text formatting - Simplified the navigation logic in the IntelligenceSubconsciousTab for better readability. - Improved text formatting in the IntelligenceDreamsTab for enhanced clarity and consistency. - Refactored import statements in toolkitMeta.tsx for better organization.
184 lines
8.0 KiB
Bash
184 lines
8.0 KiB
Bash
# Root environment variables — Rust core, Tauri shell, and shared settings.
|
|
# Copy to .env and fill in values as needed.
|
|
# Loaded via: source scripts/load-dotenv.sh
|
|
#
|
|
# Tags: [required] must be set, [optional] has a sensible default or can be blank
|
|
|
|
|
|
# ---------------------------------------------------------------------------
|
|
# App environment
|
|
# ---------------------------------------------------------------------------
|
|
# [optional] set to either 'production' or 'staging'
|
|
OPENHUMAN_APP_ENV=staging
|
|
|
|
# ---------------------------------------------------------------------------
|
|
# Backend API
|
|
# ---------------------------------------------------------------------------
|
|
# [optional] App environment selector for default paths/URLs: production | staging
|
|
OPENHUMAN_APP_ENV=staging
|
|
# [required] Primary backend URL (read by Rust core and QuickJS skills sandbox)
|
|
BACKEND_URL=https://staging-api.tinyhumans.ai
|
|
# [required] Also read by Vite frontend (VITE_ prefix required for browser exposure)
|
|
VITE_OPENHUMAN_APP_ENV=staging
|
|
VITE_BACKEND_URL=https://staging-api.tinyhumans.ai
|
|
|
|
# ---------------------------------------------------------------------------
|
|
# Authentication (for skills OAuth proxy and debug scripts)
|
|
# ---------------------------------------------------------------------------
|
|
# [optional] Session JWT — used by QuickJS skills sandbox for oauth.fetch proxy calls.
|
|
# Also used by debug scripts (scripts/debug-skill.sh, scripts/debug-notion-live.sh).
|
|
# Get from login flow or browser devtools.
|
|
JWT_TOKEN=
|
|
|
|
# ---------------------------------------------------------------------------
|
|
# Core process
|
|
# ---------------------------------------------------------------------------
|
|
# [optional] Default: 127.0.0.1 (use 0.0.0.0 for Docker / cloud).
|
|
# Leave unset to keep the default; the Docker image sets 0.0.0.0 automatically.
|
|
# OPENHUMAN_CORE_HOST=
|
|
# [optional] Default: 7788
|
|
OPENHUMAN_CORE_PORT=7788
|
|
# [optional] Default: http://127.0.0.1:7788/rpc
|
|
OPENHUMAN_CORE_RPC_URL=http://127.0.0.1:7788/rpc
|
|
# [optional] Run mode: child (default, spawns sidecar) | inprocess
|
|
OPENHUMAN_CORE_RUN_MODE=child
|
|
# [optional] Override path to openhuman core binary (leave blank for auto-detection)
|
|
OPENHUMAN_CORE_BIN=
|
|
# [optional] Explicit .env path for `openhuman serve` / `openhuman run` (loaded before the server starts).
|
|
# Must be set in the parent environment (exported in your shell or service manager). It is read before
|
|
# any dotenv file is loaded, so defining OPENHUMAN_DOTENV_PATH inside a .env file cannot select that file.
|
|
# OPENHUMAN_DOTENV_PATH=
|
|
|
|
# ---------------------------------------------------------------------------
|
|
# Config overrides (override config.toml values at runtime)
|
|
# ---------------------------------------------------------------------------
|
|
# [required] API key for the LLM provider
|
|
OPENHUMAN_API_KEY=
|
|
# [optional] Default model to use
|
|
OPENHUMAN_MODEL=
|
|
# [optional] Workspace directory (default: ~/.openhuman or ~/.openhuman-staging when OPENHUMAN_APP_ENV=staging)
|
|
OPENHUMAN_WORKSPACE=
|
|
# [optional] Default: 0.7
|
|
OPENHUMAN_TEMPERATURE=0.7
|
|
# [optional] Skill + agent tool execution timeout in seconds (default 120, max 3600)
|
|
# OPENHUMAN_TOOL_TIMEOUT_SECS=
|
|
|
|
# ---------------------------------------------------------------------------
|
|
# Runtime flags
|
|
# ---------------------------------------------------------------------------
|
|
# [optional] Default: 0
|
|
OPENHUMAN_BROWSER_ALLOW_ALL=0
|
|
# [optional] Default: 0
|
|
OPENHUMAN_LOG_PROMPTS=0
|
|
# [optional] Enable reasoning mode
|
|
OPENHUMAN_REASONING_ENABLED=
|
|
|
|
# ---------------------------------------------------------------------------
|
|
# Web search
|
|
# ---------------------------------------------------------------------------
|
|
# [optional] Default: false
|
|
OPENHUMAN_WEB_SEARCH_ENABLED=false
|
|
# [optional] Search provider name
|
|
OPENHUMAN_WEB_SEARCH_PROVIDER=
|
|
# [optional] Required if web search provider is Brave
|
|
OPENHUMAN_BRAVE_API_KEY=
|
|
# [optional] Default: 5
|
|
OPENHUMAN_WEB_SEARCH_MAX_RESULTS=5
|
|
# [optional] Default: 10
|
|
OPENHUMAN_WEB_SEARCH_TIMEOUT_SECS=10
|
|
|
|
# ---------------------------------------------------------------------------
|
|
# Storage
|
|
# ---------------------------------------------------------------------------
|
|
# [optional] Storage backend (default: SQLite)
|
|
OPENHUMAN_STORAGE_PROVIDER=
|
|
# [optional] Database connection URL
|
|
OPENHUMAN_STORAGE_DB_URL=
|
|
# [optional] Connection timeout in seconds
|
|
OPENHUMAN_STORAGE_CONNECT_TIMEOUT_SECS=
|
|
|
|
# ---------------------------------------------------------------------------
|
|
# Proxy
|
|
# ---------------------------------------------------------------------------
|
|
# [optional] Default: false
|
|
OPENHUMAN_PROXY_ENABLED=false
|
|
# [optional] HTTP proxy URL
|
|
OPENHUMAN_HTTP_PROXY=
|
|
# [optional] HTTPS proxy URL
|
|
OPENHUMAN_HTTPS_PROXY=
|
|
# [optional] Catch-all proxy URL
|
|
OPENHUMAN_ALL_PROXY=
|
|
# [optional] Comma-separated hosts to bypass proxy
|
|
OPENHUMAN_NO_PROXY=
|
|
# [optional] Proxy scope
|
|
OPENHUMAN_PROXY_SCOPE=
|
|
# [optional] Comma-separated services to proxy
|
|
OPENHUMAN_PROXY_SERVICES=
|
|
|
|
# ---------------------------------------------------------------------------
|
|
# Local AI model tier
|
|
# ---------------------------------------------------------------------------
|
|
# [optional] Override selected model tier: low, medium, high
|
|
# Applies the corresponding preset at config load time (overrides config.toml).
|
|
OPENHUMAN_LOCAL_AI_TIER=
|
|
|
|
# ---------------------------------------------------------------------------
|
|
# Local AI binary overrides
|
|
# ---------------------------------------------------------------------------
|
|
# [optional] Override path to whisper binary
|
|
WHISPER_BIN=
|
|
# [optional] Override path to piper binary
|
|
PIPER_BIN=
|
|
# [optional] Override path to ollama binary
|
|
OLLAMA_BIN=
|
|
|
|
# ---------------------------------------------------------------------------
|
|
# Telegram managed login
|
|
# ---------------------------------------------------------------------------
|
|
# [optional] Bot username for managed Telegram DM linking (default: openhuman_bot)
|
|
OPENHUMAN_TELEGRAM_BOT_USERNAME=openhuman_bot
|
|
|
|
# ---------------------------------------------------------------------------
|
|
# Skills
|
|
# ---------------------------------------------------------------------------
|
|
# [optional] Override skills registry URL.
|
|
# Supports remote HTTP URLs and local file paths for development:
|
|
# SKILLS_REGISTRY_URL=https://example.com/registry.json (remote)
|
|
# SKILLS_REGISTRY_URL=/path/to/openhuman-skills/skills/registry.json (local)
|
|
# When set to a local path, the registry is read directly from disk on every
|
|
# call (no caching), so changes are picked up immediately.
|
|
SKILLS_REGISTRY_URL=
|
|
# [optional] Local skills source directory for development.
|
|
# Points to the built skills directory (the folder containing per-skill subdirs
|
|
# with manifest.json + index.js). When set, this takes highest priority for
|
|
# skill discovery and install will copy from this directory instead of downloading.
|
|
# Example: SKILLS_LOCAL_DIR=/Users/you/work/openhuman-skills/skills
|
|
SKILLS_LOCAL_DIR=
|
|
# [optional] Enable sync-derived user working memory extraction (default: true).
|
|
# Set to false to disable persisting `working.user.*` docs from skill sync payloads.
|
|
OPENHUMAN_SKILLS_WORKING_MEMORY_ENABLED=true
|
|
|
|
# ---------------------------------------------------------------------------
|
|
# Error Reporting (Sentry)
|
|
# ---------------------------------------------------------------------------
|
|
# [optional] Sentry DSN for Rust core error reporting (no PII is sent)
|
|
OPENHUMAN_SENTRY_DSN=
|
|
# [optional] Default: true — set to false to disable anonymized analytics & crash reports
|
|
OPENHUMAN_ANALYTICS_ENABLED=true
|
|
|
|
# ---------------------------------------------------------------------------
|
|
# Logging
|
|
# ---------------------------------------------------------------------------
|
|
# [optional] Default: info
|
|
RUST_LOG=info
|
|
# [optional] Default: 0 (set to 1 for full backtraces)
|
|
RUST_BACKTRACE=1
|
|
|
|
# ---------------------------------------------------------------------------
|
|
# Testing (do not set in production)
|
|
# ---------------------------------------------------------------------------
|
|
# [optional] Enable mock service mode
|
|
# OPENHUMAN_SERVICE_MOCK=0
|
|
# [optional] Path to mock state file
|
|
# OPENHUMAN_SERVICE_MOCK_STATE_FILE=
|