docs: clarify OpenViking local setup

(cherry picked from commit a6807170f1)
This commit is contained in:
Naveen Fernando 2026-06-02 15:28:04 +05:30 committed by Hao Zhe
parent 95fc3c6b45
commit 6fb4e9aa8a
2 changed files with 60 additions and 11 deletions

View file

@ -4,12 +4,23 @@ Context database by Volcengine (ByteDance) with filesystem-style knowledge hiera
## Requirements
- `pip install openviking`
- OpenViking server running (`openviking-server`)
- Embedding + VLM model configured in `~/.openviking/ov.conf`
- OpenViking installed with the `openviking-server` command available
- OpenViking server config initialized and validated (`openviking-server init`,
then `openviking-server doctor`)
- OpenViking server running and reachable from Hermes
## Setup
Prepare OpenViking first:
```bash
openviking-server init
openviking-server doctor
openviking-server
```
Then configure Hermes:
```bash
hermes memory setup # select "openviking"
```
@ -19,14 +30,36 @@ connection values into Hermes, or create a minimal `ovcli.conf` when one does
not exist.
Or manually:
```bash
hermes config set memory.provider openviking
echo "OPENVIKING_ENDPOINT=http://localhost:1933" >> ~/.hermes/.env
```
Add the connection settings to the active profile's `.env` file. For the
default profile that is `~/.hermes/.env`; for a named profile use
`~/.hermes/profiles/<profile>/.env`.
```text
OPENVIKING_ENDPOINT=http://127.0.0.1:1933
# OPENVIKING_API_KEY=...
# OPENVIKING_ACCOUNT=default
# OPENVIKING_USER=default
# OPENVIKING_AGENT=hermes
```
## Config
All config via environment variables in `.env`:
OpenViking's server config is separate from Hermes:
- `ov.conf` configures OpenViking storage, embedding/VLM models, auth, and
server behavior. OpenViking reads it from `--config`,
`OPENVIKING_CONFIG_FILE`, or `~/.openviking/ov.conf`.
- `ovcli.conf` stores client/CLI connection values such as `url`, `api_key`,
`account`, and `user`. It is read from `OPENVIKING_CLI_CONFIG_FILE` or
`~/.openviking/ovcli.conf`.
Hermes-side provider config is read from environment variables in the active
profile's `.env`:
| Env Var | Default | Description |
|---------|---------|-------------|

View file

@ -284,7 +284,7 @@ Context database by Volcengine (ByteDance) with filesystem-style knowledge hiera
| | |
|---|---|
| **Best for** | Self-hosted knowledge management with structured browsing |
| **Requires** | `pip install openviking` + running server |
| **Requires** | OpenViking initialized, validated, and running |
| **Data storage** | Self-hosted (local or cloud) |
| **Cost** | Free (open-source, AGPL-3.0) |
@ -292,19 +292,35 @@ Context database by Volcengine (ByteDance) with filesystem-style knowledge hiera
**Setup:**
```bash
# Start the OpenViking server first
pip install openviking
# Prepare OpenViking first
openviking-server init
openviking-server doctor
openviking-server
# Then configure Hermes
hermes memory setup # select "openviking"
# Or manually:
hermes config set memory.provider openviking
echo "OPENVIKING_ENDPOINT=http://localhost:1933" >> ~/.hermes/.env
# Authenticated servers should use a user/admin API key:
echo "OPENVIKING_API_KEY=..." >> ~/.hermes/.env
```
`hermes memory setup` can reuse or copy connection values from
`~/.openviking/ovcli.conf`. Manual setup uses the active profile's `.env` file;
for the default profile that is `~/.hermes/.env`, and for named profiles use
`~/.hermes/profiles/<profile>/.env`.
```text
OPENVIKING_ENDPOINT=http://127.0.0.1:1933
# OPENVIKING_API_KEY=...
# OPENVIKING_ACCOUNT=default
# OPENVIKING_USER=default
# OPENVIKING_AGENT=hermes
```
OpenViking server settings live in `ov.conf` (`--config`,
`OPENVIKING_CONFIG_FILE`, or `~/.openviking/ov.conf`). Client connection values
live in `ovcli.conf` (`OPENVIKING_CLI_CONFIG_FILE` or
`~/.openviking/ovcli.conf`).
**Key features:**
- Tiered context loading: L0 (~100 tokens) → L1 (~2k) → L2 (full)
- Automatic memory extraction on session commit (profile, preferences, entities, events, cases, patterns)