https://github.com/offendingcommit/openconcho
Fast, privacy-first desktop & web UI for self-hosted Honcho — browse memories, peers, sessions, conclusions, and chat with memory context.
https://github.com/offendingcommit/openconcho
ai-agents ai-memory desktop-app honcho honcho-ui llm-memory memory-management open-source openapi privacy-first react self-hosted tanstack-router tauri typescript vite
Last synced: 16 days ago
JSON representation
Fast, privacy-first desktop & web UI for self-hosted Honcho — browse memories, peers, sessions, conclusions, and chat with memory context.
- Host: GitHub
- URL: https://github.com/offendingcommit/openconcho
- Owner: offendingcommit
- License: mit
- Created: 2026-04-24T15:49:38.000Z (about 2 months ago)
- Default Branch: main
- Last Pushed: 2026-05-15T03:07:46.000Z (29 days ago)
- Last Synced: 2026-05-15T05:52:11.171Z (29 days ago)
- Topics: ai-agents, ai-memory, desktop-app, honcho, honcho-ui, llm-memory, memory-management, open-source, openapi, privacy-first, react, self-hosted, tanstack-router, tauri, typescript, vite
- Language: TypeScript
- Homepage:
- Size: 2.34 MB
- Stars: 31
- Watchers: 0
- Forks: 1
- Open Issues: 3
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
- Code of conduct: CODE_OF_CONDUCT.md
- Security: SECURITY.md
- Agents: AGENTS.md
Awesome Lists containing this project
README
---
Browse memories, peers, sessions, and conclusions — or chat with full memory context — directly against your own Honcho instance. All connection details stay in your browser; nothing leaves except requests to the URL you configure.
## Features
| | |
|---|---|
| **Dashboard** | Workspace count and queue status, auto-refreshes every 10 s |
| **Workspaces** | Paginated list with per-workspace navigation |
| **Peers** | Browse peers, view representations, context, and peer cards |
| **Sessions** | Paginated message history with summaries and context |
| **Conclusions** | Semantic search across conclusions with observer/subject display |
| **Webhooks** | Manage and trigger webhooks per workspace |
| **Chat** | Conversational interface through Honcho's chat endpoint with memory context |
| **Schedule Dream** | Trigger Honcho's dream/consolidation pass on demand |
| **Dark / light mode** | Persisted per device, instant toggle |
| **Optional auth** | Token field is optional; connection health check auto-detects auth requirement |
## Download
Pre-built binaries are attached to every [GitHub Release](https://github.com/offendingcommit/openconcho/releases/latest):
| Platform | File |
|---|---|
| macOS (Apple Silicon) | `OpenConcho_*_aarch64.dmg` |
| macOS (Intel) | `OpenConcho_*_x64.dmg` |
| Linux | `openconcho_*_amd64.deb` / `openconcho_*_amd64.AppImage` |
| Windows | `OpenConcho_*_x64-setup.exe` / `OpenConcho_*_x64_en-US.msi` |
## Quick Start
### Prerequisites
- [Node.js](https://nodejs.org/) ≥ 20
- [pnpm](https://pnpm.io/) ≥ 9
- A running [Honcho](https://github.com/plastic-labs/honcho) instance (local or remote)
### Web app
```bash
git clone https://github.com/offendingcommit/openconcho.git
cd openconcho
pnpm install
pnpm dev
```
Open http://localhost:5173 and enter your Honcho URL when prompted.
### Desktop app (Tauri)
Additional prerequisites: [Rust](https://rustup.rs/) stable + [Tauri system dependencies](https://v2.tauri.app/start/prerequisites/) for your OS.
```bash
git clone https://github.com/offendingcommit/openconcho.git
cd openconcho
pnpm install
pnpm --filter @openconcho/desktop dev
```
### Connecting to your instance
1. Enter the base URL of your Honcho instance (e.g. `http://localhost:8000`)
2. Optionally enter an API token if your instance requires auth
3. Click **Test connection** — the UI reports whether auth is needed
4. Click **Save** — you're in
### Production build
```bash
pnpm build # web only → packages/web/dist/
pnpm --filter @openconcho/desktop build # desktop → packages/desktop/src-tauri/target/release/bundle/
```
## Stack
| Layer | Library |
|---|---|
| Desktop shell | [Tauri v2](https://v2.tauri.app/) |
| Framework | React 19 + Vite 8 |
| Routing | TanStack Router v1 (file-based) |
| Data fetching | TanStack Query v5 |
| API client | openapi-fetch (typed from `openapi.json`) |
| Styling | Tailwind CSS v4 + CSS custom properties |
| Animation | framer-motion |
| Icons | lucide-react |
| Lint / format | Biome 2 |
| Tests | Vitest 4 + Testing Library |
| Releases | semantic-release (conventional commits) |
## Development
```bash
pnpm dev # Vite dev server (web, http://localhost:5173)
pnpm test # Vitest test suite
pnpm lint:fix # Biome lint + format
pnpm typecheck # TypeScript strict check
pnpm generate:api # Regenerate src/api/schema.d.ts from openapi.json
```
### Regenerating API types
When your Honcho instance is updated, pull a fresh schema and regenerate:
```bash
curl http://your-honcho-url/openapi.json -o packages/web/openapi.json
pnpm --filter @openconcho/web generate:api
```
## Privacy
- Base URL and token stored in `localStorage` under `openconcho:config`
- Theme preference stored in `localStorage` under `openconcho:theme`
- No telemetry, no analytics, no external requests beyond your configured Honcho instance
## Contributing
Open an issue first for significant changes. PRs welcome.
## License
MIT