* fix: allow --sudo for ov admin commands
* fix: allow --sudo for ov admin commands
* fix: allow --sudo for ov admin commands
* fix: allow --sudo for ov admin commands
---------
Co-authored-by: openviking <openviking@example.com>
* feat(session): add account namespace policy and shared sessions
Unify namespace resolution across filesystem, indexing, and session storage.
Add account-shared session paths, role_id auth semantics, and an HTTP demo
script for the four namespace-policy combinations.
* space
* fix(pack): skip derived semantic files in ovpack transfer
Keep ovpack imports resilient to stale sidecars and rebuild semantics through the normal queue instead of restoring derived files verbatim.
* Revert "fix(pack): skip derived semantic files in ovpack transfer"
This reverts commit f4e4db8401.
* fix(namespace): default legacy accounts to agent-shared policy
Clarify that memory.agent_scope_mode is deprecated and document the supported agent memory migration paths.
Sync the English and Chinese API reference pages with the current HTTP routes,
request fields, and documented examples so raw API usage matches the server.
Align docs, examples, the setup wizard, and telemetry tests with the
current Doubao multimodal embedding model so generated configs keep
referencing the supported default consistently.
* feat(rerank): add extra_headers field to RerankConfig
Add support for extra_headers configuration in RerankConfig, following the same pattern as EmbeddingConfig and VLMConfig. This allows users to specify custom HTTP headers for OpenAI-compatible rerank providers.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
* fix: add copyright header to test file
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
* feat(rerank): OpenAIRerankClient accepts and stores extra_headers
- Add extra_headers parameter to __init__ method
- Add extra_headers to from_config classmethod
- Default to empty dict when extra_headers is None
- Add comprehensive unit tests
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
* feat(rerank): merge extra_headers into API requests
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
* docs: add `extra_headers` param in doc
---------
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
* docs: fix docker deployment
* reorg: remove third_party/agfs
* feat(s3fs): add disable_batch_delete option for OSS compatibility
Port of PR #1333 from Go version to Rust:
- Add disable_batch_delete config option to S3Client
- When enabled, use sequential single-object deletes instead of DeleteObjects
- This is for S3-compatible services like Alibaba Cloud OSS that require
Content-MD5 for DeleteObjects but AWS SDK v2 does not send it by default
- Add documentation and config example for OSS
* fix(s3fs): pass disable_batch_delete config from Python to Rust
Add disable_batch_delete to the s3_plugin_config dict in _generate_plugin_config
so that the Python config can properly control the Rust S3FS plugin's behavior.
* reorg: remove third_party/agfs
* reorg: remove third_party/agfs
* change some docs
* change some docs
---------
Co-authored-by: openviking <openviking@example.com>
add support for trailing slash rules in resource URIs to control file/directory placement
update CLI, API, and documentation to reflect new URI handling semantics
add comprehensive tests for all URI semantics cases
* feat(sessions): support specifying session_id when creating session
* feat(session): validate session_id uniqueness on create
Add AlreadyExistsError check in session_service.create() when a specific
session_id is provided, ensuring idempotent behavior and preventing
accidental overwrites of existing sessions.
- Correct the rerank provider list (from 'volcengine' to 'vikingdb')
- Update authentication fields (from 'api_key' to 'ak'/'sk' for vikingdb)
- Add 'cohere', 'openai', and 'litellm' as supported rerank providers
- Include numeric range (0.0 to 1.0) for the threshold parameter
- Add Pydantic range validation for the threshold field in rerank_config.py
Update docs, tests, and example integrations to reflect accepted + task_id
session commits with task polling for completed results.
Also fix the local PR-Agent model provider prefix in .pr_agent.toml.
Use lock_expire as the single inactivity threshold for both lock files
and in-process handles, so long-running tasks are no longer released just
because the handle was created a long time ago. Make refresh/release and
handle lookup ownership-aware to avoid zombie handles and prevent stale
owners from deleting locks that have already been reclaimed.
* Add concise OVPack guide in Chinese and English
* Document OVPack workflow for memories
* Broaden OVPack guide: context (resources & memories), not just resources
* Add memories import/export via Python SDK and HTTP API
* refactor(model): unify config-driven retry across VLM and embedding
Move retry behavior into shared model-call utilities and config defaults so VLM and embedding providers handle transient failures consistently.
Co-Authored-By: Claude Opus 4.6
* fix
* docs(config): document model retry settings
Return the latest archive through pre_archive_abstracts and drop the
separate latest_archive_id field so session context consumers only need
one archive index path.
* lisence: change the main lisence from Apache-2.0 to AGPL-v3
* lisence: change the main lisence from Apache-2.0 to AGPL-v3
* lisence: change the main lisence from Apache-2.0 to AGPL-v3
---------
Co-authored-by: openviking <openviking@example.com>
The quickstart-server.md auth section previously just said "pass api_key"
without distinguishing user_key from root_key. This causes users to
mistakenly use root_key for tenant-scoped APIs (add_resource, find, ls),
which fails with "ROOT requests to tenant-scoped APIs must include
X-OpenViking-Account and X-OpenViking-User headers".
Changes:
- docs/zh/getting-started/03-quickstart-server.md: expanded auth section
with user_key (recommended) and root_key (must pass account/user)
examples, plus warning about the common pitfall
- docs/en/getting-started/03-quickstart-server.md: same changes in English
- examples/basic-usage/README.md: added multi-tenant auth note after
HTTP client example
- examples/basic-usage/README_CN.md: same note in Chinese
Closes#1022
Co-authored-by: wzr <2668940489@qq.com>
* fix(http): replace temp paths with upload ids
Stop exposing server filesystem paths through temp uploads and require
HTTP callers to use temp_file_id across server, clients, tests, and docs.
* fix(cli): upload local ovpacks in http mode
Make the Rust HTTP client import local ovpack files through temp uploads
and cover the flow with an end-to-end SDK regression test.
* fix(api): align integration client with temp upload contract
* fix(client): fail fast for invalid ovpack imports