dd2e33e1c6 fix: onboarding flow - registry skills, config-based flag, dead code cleanup (#177)
* feat(onboarding): enhance onboarding steps with back navigation and UI improvements

- Added back navigation functionality to all onboarding steps (LocalAIStep, ScreenPermissionsStep, SkillsStep, ToolsStep, MnemonicStep) for improved user experience.
- Updated Onboarding component to adjust total steps from 7 to 6.
- Modified ProgressIndicator to reflect the change in total steps.
- Enhanced LocalAIStep UI by removing unnecessary state and improving layout.
- Improved error handling and user feedback in MnemonicStep and ScreenPermissionsStep.
- General UI refinements across onboarding steps for better consistency and usability.

* refactor(onboarding): update skip button and UI elements for improved user experience

- Replaced "Set up later" button with a "Skip" button in the Onboarding component for better clarity.
- Removed unnecessary back navigation buttons from LocalAIStep to streamline the UI.
- Enhanced messaging in ScreenPermissionsStep to clarify data processing and permissions.
- Adjusted button layouts for improved accessibility and consistency across onboarding steps.

* refactor(onboarding): streamline button layout and styling in onboarding steps

- Updated button styles in ScreenPermissionsStep and ToolsStep for consistency and improved user experience.
- Replaced the back navigation button in ToolsStep with a full-width continue button, enhancing layout and accessibility.

* refactor(onboarding): update ProgressIndicator and button styles for improved consistency

- Adjusted ProgressIndicator component to use 'bg-sage-500' for active steps and increased height for better visibility.
- Streamlined button styles in LocalAIStep and SkillsStep for a more cohesive user experience, including removing unnecessary margins and ensuring full-width buttons where applicable.
- Enhanced ToolsStep to focus on skill installation, updating UI elements and descriptions for clarity and improved user engagement.

* refactor(onboarding): update SkillsStep title and description for clarity

- Changed the title from "Install Skills" to "Connect Skills" to better reflect the action.
- Revised the description to clarify that skills interact with the user's workflow and that all data is processed locally, enhancing user understanding of the feature.

* refactor(onboarding): enhance onboarding steps with UI improvements and functionality updates

- Integrated useUser hook in Onboarding component for better user state management.
- Updated MnemonicStep title and messaging for clarity, emphasizing the importance of the recovery phrase.
- Streamlined button layout in MnemonicStep and ScreenPermissionsStep for improved accessibility and consistency.
- Refactored SkillsStep to utilize available skills more effectively, enhancing the user experience with clearer skill descriptions and connection statuses.
- Transitioned ToolsStep to focus on enabling tools, updating UI elements and descriptions for better user guidance.

* refactor(onboarding): replace workspace flag checks with onboarding_completed config

- Removed Redux state checks for onboarding status and workspace flags.
- Integrated new core config methods to read and write onboarding completion status.
- Updated OnboardingOverlay and Onboarding components to utilize onboarding_completed for flow control.
- Enhanced error handling and user feedback during onboarding state persistence.

* refactor(onboarding): remove deferred flow and dead workspace flag code

The onboarding_completed config field is now the sole source of truth.
Skip and complete both write the same flag. Remove SetupBanner,
onboardingDeferredByUser, selectOnboardingDeferred, and the old
workspace flag file functions (openhumanWorkspaceOnboardingFlagExists/Set).

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>

* fix: resolve lint errors for unused onBack params in onboarding steps

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>

* fix: remove unused handleSkip in LocalAIStep

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>

---------

Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-01 13:29:19 -07:00
2026-03-29 10:30:18 -07:00
2026-03-26 17:04:46 -07:00
2026-02-20 13:03:15 +04:00
2026-02-20 13:03:15 +04:00

OpenHuman

The age of super intelligence is here. OpenHuman is your Personal AI super intelligence. Private, Simple and extremely powerful.

DiscordRedditX/TwitterDocs

Early Beta Platforms: desktop only Latest Release

The Tet

"The Tet. What a brilliant machine" — Morgan Freeman as he reminisces about alien superintelligence in the movie Oblivion

Early Beta — Under active development. Expect rough edges.

OpenHuman is an open-source agentic assistant that is designed to integrate with you in your daily life. Here's what makes OpenHuman special:

  • One subscription, many providers — One assistant wired to skills and backend models so you are not juggling a separate subscription stack for every integration surface.

  • Incredible memoryRust-side memory (store / recall / namespaces) plus optional TinyHumans Neocortex-backed context when configured, so the agent can retain and retrieve more than a single chat window. Channels and ongoing conversations feed the same loop so day-to-day context does not reset every session.

  • Screen intelligence — Regular screen capture (on a cadence or when triggered) feeds an on-device pipeline that understands what is on screen, distills it into memory (facts, UI state, workflows), and can propose actions the agent executes for you. OS permissions and capture APIs vary by platform; the goal is your machine first, not shipping raw frames to the cloud by default.

  • Voice & meetings — A Local-model speech stack (listen / TTS) let the assistant talk back and capture or work with meeting audio with a privacy-first default when you route inference locally. Transcripts and summaries land in the same memory + agent loop so OpenHuman can follow up: tasks, drafts, calendar nudges, or skill-backed workflows—without treating a meeting as a one-off chat.

  • Memory-aware autocompleteKeyboard autocomplete is built for right-context suggestions: it consults memory namespaces and recent context so completions stay aligned with you, your workspace, and prior sessions—not a blank model every keystroke.

  • Runs a local AI model — The Rust core exposes local AI paths (and the desktop bundle can ship local/bundled runners where applicable) for the workloads above—vision snippets, speech helpers, summarization, tooling—so sensitive steps can stay off the cloud when you choose.

  • Simple or advancedSkill setup wizards and defaults for common tools, with room to go deeper via settings, credentials, and core RPC when you need control and privacy.

Architecture: docs/ARCHITECTURE.md. Contributor orientation: CONTRIBUTING.md.

Download

Early Beta — Under active development. Expect rough edges.

You can download the latest desktop build from the website at tinyhuman.ai/openhuman. You can also grab it from the latest GitHub release, which includes all current artifacts (.dmg, .deb, .AppImage, .app.tar.gz, and more).

If you need an older version, browse all releases.

If you want to build from source, see docs/BUILDING.md.

Install with one command:

curl -fsSL https://raw.githubusercontent.com/tinyhumansai/openhuman/main/scripts/install.sh | bash

On Windows, use PowerShell: irm https://raw.githubusercontent.com/tinyhumansai/openhuman/main/scripts/install.ps1 | iex

What setup does:

  • Resolves the latest stable release for your OS/arch
  • Verifies release digest when available
  • Installs locally without requiring system-wide admin rights by default
  • macOS: installs OpenHuman.app in ~/Applications
  • Linux: installs openhuman AppImage in ~/.local/bin/openhuman and creates a desktop entry
  • Windows: installs from latest release MSI/EXE in per-user mode where supported

Under the hood (Architecture)

OpenHuman is a desktop monorepo: Rust owns business logic and execution; the UI owns interaction, layout, and OS integration.

Rust (openhuman / openhuman_core). The repo root src/ crate is the brain: JSON-RPC over HTTP (core_server), domain modules (auth, config, memory, skills, channels, screen intelligence, local AI, cron, …), and a QuickJS runtime for sandboxed JavaScript skills. The openhuman binary is built and staged next to the Tauri app so the desktop shell can spawn it as a sidecar. Heavy work—SQLite, sockets, crypto, skill lifecycle—runs there under Tokio, not in the WebView.

UI (app/). Vite + React (TypeScript) implements screens, onboarding, settings, and realtime UX. Redux Toolkit holds client state; Socket.io and the MCP-style client stack stay in sync with the cores realtime surface. Tauri v2 (app/src-tauri/) is a thin Rust host: windowing, filesystem hooks where needed, and core_rpc_relay—forwarding JSON-RPC from the WebView to the openhuman process so the UI never re-implements domain rules.

Controllers and the RPC surface. Features are exposed as registered controllers: each domain declares schemas (namespace, function name, parameter shapes) and a handler. At runtime, calls are validated, dispatched by method name (e.g. openhuman.auth_get_state, openhuman.local_ai_agent_chat), and return structured outcomes. CLI and HTTP share the same controller catalog, so automation, tests, and the app all hit one contract.

What ties it together: one registry of controllers, one sidecar process for execution, Tauri IPC for shell-only capabilities, and HTTP JSON-RPC for everything else—plus skills and dual-socket behavior documented in the architecture guide.

Read more: docs/ARCHITECTURE.md · Frontend tree: docs/src/README.md · Tauri commands: docs/src-tauri/README.md

Star us on GitHub

Building toward AGI and artificial consciousness? Star the repo and help others find the path.

Star History Chart

Contributors Hall of Fame

Show some love and end up in the hall of fame

OpenHuman contributors
S
Description
No description provided
Readme GPL-3.0
220 MiB
Languages
Rust 59.1%
TypeScript 37.9%
JavaScript 1.6%
Shell 1.2%
CSS 0.1%