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.
| Dashboard | Workspace count and queue status, auto-refreshes every 10 s |
| Multiple instances | Add and switch between several Honcho connections |
| Fleet dashboard | Cross-instance observability — workspaces/sessions/queue side-by-side with per-instance badges |
| Workspaces | Paginated list with per-workspace navigation |
| Peers | Browse peers, view representations, context, and peer cards |
| Peer display names | Set a friendly display_name (metadata) to replace raw peer ids |
| Peer Card Seed Kits | Author reusable peer-card kits and apply them across instances |
| Sessions | Paginated message history with summaries and context |
| Conclusions | Semantic search across conclusions with observer/subject display |
| Dream viewer | Browse dream/consolidation bursts with a recursive premise tree |
| Dialectic playground | Fan one query across all reasoning levels side-by-side |
| 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 |
| Demo mode | Mask identifiers/content for screenshots and screen-sharing |
| Dark / light mode | Persisted per device, instant toggle |
| Optional auth | Token field is optional; connection health check auto-detects auth requirement |
Pre-built binaries are attached to every GitHub Release:
| Platform | File |
|---|---|
| macOS (Apple Silicon) | OpenConcho_*_aarch64.dmg |
| macOS (Intel) | OpenConcho_*_x64.dmg |
| Linux | openconcho_*_amd64.deb / openconcho_*_amd64.AppImage / OpenConcho-*.x86_64.rpm |
| Windows | OpenConcho_*_x64-setup.exe / OpenConcho_*_x64_en-US.msi |
- Node.js ≥ 22
- pnpm 10 (pinned via
packageManager;corepack enablepicks it up) - A running Honcho instance (local or remote)
git clone https://github.com/offendingcommit/openconcho.git
cd openconcho
pnpm install
pnpm devOpen http://localhost:5173 and enter your Honcho URL when prompted.
Additional prerequisites: Rust stable + Tauri system dependencies for your OS.
git clone https://github.com/offendingcommit/openconcho.git
cd openconcho
pnpm install
pnpm --filter @openconcho/desktop devThe container serves the SPA and reverse-proxies the Honcho API under its own
origin: the browser calls /api same-origin and names the upstream in an
X-Honcho-Upstream header, so there's no browser CORS to configure.
Two Compose modes (the published image is ghcr.io/offendingcommit/openconcho-web):
# Dev-forward — build from this repo and run your local changes:
OPENCONCHO_DEFAULT_HONCHO_URL=https://honcho.example.net make up
# Production — pull the latest published image instead of building:
OPENCONCHO_DEFAULT_HONCHO_URL=https://honcho.example.net make prod
make down # stop + remove (dev or prod)
make clean # down + drop the locally built image
# → http://localhost:8080Both modes live in one docker-compose.yml as Compose
profiles: make up runs the dev profile (build: .), make prod runs the
prod profile (pulls ghcr…:latest). OPENCONCHO_DEFAULT_HONCHO_URL seeds the first instance
(absolute URL); OPENCONCHO_UPSTREAM_ALLOWLIST is an optional SSRF guard
(comma-separated host globs) for when you expose the proxy. Full details and env
vars are in docs/docker.md.
The chart is published as an OCI artifact to GHCR on every tagged release.
helm install openconcho oci://ghcr.io/offendingcommit/charts/openconcho \
--version 0.14.0 \
--create-namespace --namespace openconcho \
--set honcho.defaultUrl=https://honcho.example.comEnable an Ingress and TLS:
helm install openconcho oci://ghcr.io/offendingcommit/charts/openconcho \
--version 0.14.0 \
--create-namespace --namespace openconcho \
--set honcho.defaultUrl=https://honcho.example.com \
--set ingress.enabled=true \
--set ingress.className=nginx \
--set 'ingress.hosts[0].host=openconcho.example.com' \
--set 'ingress.hosts[0].paths[0].path=/' \
--set 'ingress.tls[0].secretName=openconcho-tls' \
--set 'ingress.tls[0].hosts[0]=openconcho.example.com'Full chart documentation, configuration reference, and an ArgoCD Application example are in charts/openconcho/README.md.
- Enter the base URL of your Honcho instance (e.g.
http://localhost:8000) - Optionally enter an API token if your instance requires auth
- Click Test connection — the UI reports whether auth is needed
- Click Save — you're in
pnpm build # web only → packages/web/dist/
pnpm --filter @openconcho/desktop build # desktop → packages/desktop/src-tauri/target/release/bundle/| Layer | Library |
|---|---|
| Desktop shell | Tauri v2 |
| 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) |
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.jsonWhen your Honcho instance is updated, pull a fresh schema and regenerate:
curl http://your-honcho-url/openapi.json -o packages/web/openapi.json
pnpm --filter @openconcho/web generate:api- Connection details (base URL + token, one or more instances) stored in
localStorageunderopenconcho:instances - Theme preference stored in
localStorageunderopenconcho:theme - No telemetry, no analytics, no external requests beyond your configured Honcho instance
Open an issue first for significant changes. PRs welcome.
MIT