OpenViking is an open-source context database designed specifically for AI Agents(such as openclaw). OpenViking unifies the management of context (memory, resources, and skills) that Agents need through a file system paradigm, enabling hierarchical context delivery and self-evolving.
9867 matches across 19 categories. Click a row to expand file-level details.
| Severity | File | Line | Snippet |
|---|---|---|---|
| LOW | setup.py | 38 | def _sanitize_native_build_env(env): |
| LOW | setup.py | 71 | def _get_windows_python_sabi_library() -> Path: |
| LOW | setup.py | 125 | def _copy_artifacts_to_build_lib(self, target_binary=None, target_lib=None): |
| LOW | setup.py | 142 | def _run_stage_with_artifact_checks( |
| LOW | setup.py | 152 | def _resolve_cargo_target_dir(self, cargo_project_dir, env): |
| LOW | setup.py | 189 | def _build_ov_cli_artifact_impl(self, ov_cli_dir, binary_name, ov_target_binary): |
| LOW | setup.py | 261 | def build_ragfs_python_artifact(self): |
| LOW | setup.py | 388 | def _should_require_ragfs_artifact(self) -> bool: |
| LOW | setup.py | 413 | def _clean_stale_engine_artifacts(self, ext_dir: Path): |
| LOW | benchmark/tau2/llm/scripts/run_eval.py | 104 | def _require_fixed_first_user(config: dict[str, Any]) -> bool: |
| LOW | benchmark/tau2/llm/scripts/run_eval.py | 210 | def _train_tool_output_max_chars(strategy: dict[str, Any]) -> int: |
| LOW | benchmark/tau2/llm/scripts/run_eval.py | 217 | def _train_skip_failed_sessions(strategy: dict[str, Any]) -> bool: |
| LOW | benchmark/tau2/llm/scripts/run_eval.py | 221 | def _manifest_openviking_identity(corpus_dir: Path) -> dict[str, str] | None: |
| LOW | benchmark/tau2/llm/scripts/run_memory_v2_eval.py | 205 | def _compact_train_tool_output(content: Any, *, max_chars: int) -> str: |
| LOW | benchmark/tau2/llm/scripts/run_memory_v2_eval.py | 216 | def _message_text_openviking_text(message: dict[str, Any]) -> tuple[str, str]: |
| LOW | benchmark/tau2/llm/scripts/run_memory_v2_eval.py | 233 | def _message_texts_role_tool_blocks( |
| LOW | benchmark/tau2/llm/scripts/run_memory_v2_eval.py | 311 | def _load_fixed_first_user_fixture(path: Path) -> dict[str, str]: |
| LOW | benchmark/tau2/llm/scripts/run_memory_v2_eval.py | 329 | def _append_incoming_user_context(message: Any, state: Any) -> None: |
| LOW | benchmark/tau2/llm/scripts/run_memory_v2_eval.py | 342 | def _register_fixed_first_user(args: argparse.Namespace) -> str: |
| LOW | benchmark/tau2/llm/scripts/run_memory_v2_eval.py | 904 | def create_openviking_memory_agent(tools, domain_policy, **kwargs): |
| LOW | benchmark/tau2/llm/scripts/tau2_common.py | 251 | def _has_confirmation_aware_prompt(prompt_text: str) -> bool: |
| LOW | benchmark/tau2/llm/scripts/tau2_common.py | 259 | def _ensure_confirmation_aware_prompt(repo: Path) -> bool: |
| LOW | benchmark/locomo/vikingbot/import_to_ov.py | 703 | async def process_sample_with_limit(item, sample_index): |
| LOW | benchmark/locomo/vikingbot/preflight_eval_config.py | 100 | def _ensure_server_root_api_key(ov_data: dict) -> tuple[bool, bool]: |
| LOW | benchmark/locomo/vikingbot/preflight_eval_config.py | 160 | def _check_ovcli_keys_and_account(server_root_key: str, ov_data: dict) -> tuple[bool, bool, str]: |
| LOW | benchmark/locomo/vikingbot/preflight_eval_runtime.py | 119 | def _ensure_server_and_account_ready(url: str, account: str, interactive: bool) -> None: |
| LOW | benchmark/locomo/openclaw/eval.py | 475 | def calculate_session_metrics_from_jsonl(jsonl_filename: str, agent_id: str = "main") -> dict: |
| LOW | benchmark/locomo/openclaw/eval.py | 615 | def build_openresponses_main_session_key(agent_id: str, user: str) -> str: |
| LOW | benchmark/locomo/openclaw/eval.py | 622 | def parse_json_from_cli_output(stdout: str) -> dict: |
| LOW | benchmark/locomo/claudecode/ingest_e2e.py | 85 | def build_session_speaker_prompts(item: dict) -> List[dict]: |
| LOW | benchmark/locomo/mem0/eval.py | 76 | def _restart_openclaw_gateway(base_url: str, sample_id: str, startup_timeout: int = 30) -> None: |
| LOW | benchmark/locomo/mem0/eval.py | 203 | def get_sample_last_session_date(sample: dict) -> Optional[str]: |
| LOW | benchmark/locomo/hermes/import_to_ov.py | 71 | def _parse_locomo_session_datetime(date_time: str) -> Optional[datetime]: |
| LOW | benchmark/locomo/hermes/import_to_ov.py | 98 | def _normalize_locomo_session_time(date_time: str) -> str: |
| LOW | benchmark/locomo/hermes/import_to_ov.py | 118 | def _build_session_transcript( |
| LOW | benchmark/locomo/hermes/import_to_ov.py | 384 | def parse_observer_model_totals(status_text: str) -> tuple[int, int, int, int]: |
| LOW | benchmark/locomo/hermes/import_to_ov.py | 563 | async def wait_for_queues_and_record_totals( |
| LOW | benchmark/locomo/hermes/import_e2e.py | 410 | def _wait_for_done_after_task_completion(session_id: str) -> bool: |
| LOW | benchmark/locomo/hermes/import_e2e.py | 418 | def _wait_for_task_completion( |
| LOW | benchmark/locomo/hermes/import_e2e.py | 104 | def _normalize_locomo_session_time(date_time: str) -> str: |
| LOW | benchmark/locomo/hermes/import_e2e.py | 156 | def build_session_transcripts( |
| LOW | benchmark/locomo/hermes/import_e2e.py | 302 | def _resolve_openviking_workspace() -> Path | None: |
| LOW | benchmark/locomo/hermes/import_e2e.py | 362 | def _wait_for_session_write_barrier(base_url: str, session_id: str) -> tuple[bool, int, int]: |
| LOW | benchmark/locomo/hermes/import_e2e.py | 443 | def _await_existing_or_ambiguous_commit(base_url: str, session_id: str, deadline: float) -> bool: |
| LOW | benchmark/locomo/hermes/import_e2e.py | 474 | def commit_openviking_session( |
| LOW | benchmark/locomo/hermes/import_e2e.py | 579 | def parse_observer_model_totals(status_text: str) -> tuple[int, int, int, int]: |
| LOW | benchmark/locomo/hermes/import_e2e.py | 658 | def _append_true_token_record(output_file: str, record: dict) -> None: |
| LOW | benchmark/locomo/hermes/import_e2e.py | 684 | async def wait_for_queues_and_record_totals( |
| LOW | benchmark/locomo/hermes/stat_judge_result.py | 293 | def summarize_qa_hermes_usage( |
| LOW | benchmark/locomo/hermes/stat_judge_result.py | 384 | def summarize_import_hermes_usage( |
| LOW | benchmark/locomo/hermes/import_to_native.py | 84 | def _normalize_locomo_session_time(date_time: str) -> str: |
| LOW | benchmark/locomo/hermes/import_to_native.py | 140 | def format_session_transcript(sample: dict, session_key: str) -> str: |
| LOW | benchmark/locomo/hermes/eval.py | 478 | def parse_observer_model_totals(status_text: str) -> tuple[int, int, int, int]: |
| LOW | benchmark/locomo/hermes/eval.py | 552 | def _append_true_token_record(output_file: str, record: dict) -> None: |
| LOW | benchmark/locomo/hermes/eval.py | 578 | async def wait_for_queues_and_record_totals( |
| LOW | benchmark/locomo/supermemory/eval.py | 76 | def _update_openclaw_supermemory_container(sample_id: str) -> None: |
| LOW | benchmark/locomo/supermemory/eval.py | 106 | def _restart_openclaw_gateway(base_url: str, startup_timeout: int = 30) -> None: |
| LOW | benchmark/locomo/supermemory/eval.py | 176 | def get_sample_last_session_date(sample: dict) -> Optional[str]: |
| LOW | benchmark/RAG/scripts/sample_dataset.py | 51 | def calculate_category_targets( |
| LOW | benchmark/RAG/scripts/sample_dataset.py | 96 | def stratified_sample_with_reallocation( |
| 4399 more matches not shown… | |||
| Severity | File | Line | Snippet |
|---|---|---|---|
| MEDIUM | .pr_agent.toml | 1 | # ============================================================================= |
| MEDIUM | .pr_agent.toml | 3 | # ============================================================================= |
| MEDIUM | .pr_agent.toml | 13 | # ============================================================================= |
| MEDIUM | .pr_agent.toml | 15 | # --------------------------------------------------------------------------- |
| MEDIUM | .pr_agent.toml | 17 | # --------------------------------------------------------------------------- |
| MEDIUM | .pr_agent.toml | 39 | # --------------------------------------------------------------------------- |
| MEDIUM | .pr_agent.toml | 42 | # --------------------------------------------------------------------------- |
| MEDIUM | .pr_agent.toml | 63 | # --------------------------------------------------------------------------- |
| MEDIUM | .pr_agent.toml | 65 | # --------------------------------------------------------------------------- |
| MEDIUM | .pr_agent.toml | 78 | # --------------------------------------------------------------------------- |
| MEDIUM | .pr_agent.toml | 82 | # --------------------------------------------------------------------------- |
| MEDIUM | .pr_agent.toml | 107 | # --------------------------------------------------------------------------- |
| MEDIUM | .pr_agent.toml | 109 | # --------------------------------------------------------------------------- |
| MEDIUM | .pr_agent.toml | 287 | # --------------------------------------------------------------------------- |
| MEDIUM | .pr_agent.toml | 289 | # --------------------------------------------------------------------------- |
| MEDIUM | .pr_agent.toml | 330 | # --------------------------------------------------------------------------- |
| MEDIUM | .pr_agent.toml | 332 | # --------------------------------------------------------------------------- |
| MEDIUM | benchmark/locomo/vikingbot/import_to_ov.py | 135 | # -------------------------------------------------------------------------- |
| MEDIUM | benchmark/locomo/vikingbot/import_to_ov.py | 137 | # --------------------------------------------------------------------------- |
| MEDIUM | benchmark/locomo/vikingbot/import_to_ov.py | 254 | # --------------------------------------------------------------------------- |
| MEDIUM | benchmark/locomo/vikingbot/import_to_ov.py | 256 | # --------------------------------------------------------------------------- |
| MEDIUM | benchmark/locomo/vikingbot/import_to_ov.py | 813 | # --------------------------------------------------------------------------- |
| MEDIUM | benchmark/locomo/vikingbot/import_to_ov.py | 815 | # --------------------------------------------------------------------------- |
| MEDIUM | benchmark/locomo/openclaw/import_to_ov.py | 128 | # --------------------------------------------------------------------------- |
| MEDIUM | benchmark/locomo/openclaw/import_to_ov.py | 130 | # --------------------------------------------------------------------------- |
| MEDIUM | benchmark/locomo/openclaw/import_to_ov.py | 208 | # --------------------------------------------------------------------------- |
| MEDIUM | benchmark/locomo/openclaw/import_to_ov.py | 210 | # --------------------------------------------------------------------------- |
| MEDIUM | benchmark/locomo/openclaw/import_to_ov.py | 602 | # --------------------------------------------------------------------------- |
| MEDIUM | benchmark/locomo/openclaw/import_to_ov.py | 604 | # --------------------------------------------------------------------------- |
| MEDIUM | benchmark/locomo/openclaw/eval.py | 45 | # --------------------------------------------------------------------------- |
| MEDIUM | benchmark/locomo/openclaw/eval.py | 47 | # --------------------------------------------------------------------------- |
| MEDIUM | benchmark/locomo/openclaw/eval.py | 89 | # --------------------------------------------------------------------------- |
| MEDIUM | benchmark/locomo/openclaw/eval.py | 91 | # --------------------------------------------------------------------------- |
| MEDIUM | benchmark/locomo/openclaw/eval.py | 199 | # --------------------------------------------------------------------------- |
| MEDIUM | benchmark/locomo/openclaw/eval.py | 201 | # --------------------------------------------------------------------------- |
| MEDIUM | benchmark/locomo/openclaw/eval.py | 250 | # --------------------------------------------------------------------------- |
| MEDIUM | benchmark/locomo/openclaw/eval.py | 252 | # --------------------------------------------------------------------------- |
| MEDIUM | benchmark/locomo/openclaw/eval.py | 352 | # --------------------------------------------------------------------------- |
| MEDIUM | benchmark/locomo/openclaw/eval.py | 354 | # --------------------------------------------------------------------------- |
| MEDIUM | benchmark/locomo/openclaw/eval.py | 747 | # --------------------------------------------------------------------------- |
| MEDIUM | benchmark/locomo/openclaw/eval.py | 749 | # --------------------------------------------------------------------------- |
| MEDIUM | benchmark/locomo/openclaw/eval.py | 931 | # --------------------------------------------------------------------------- |
| MEDIUM | benchmark/locomo/openclaw/eval.py | 933 | # --------------------------------------------------------------------------- |
| MEDIUM | benchmark/locomo/openclaw/eval.py | 1284 | # --------------------------------------------------------------------------- |
| MEDIUM | benchmark/locomo/openclaw/eval.py | 1286 | # --------------------------------------------------------------------------- |
| MEDIUM | benchmark/locomo/claudecode/ingest.py | 55 | # --------------------------------------------------------------------------- |
| MEDIUM | benchmark/locomo/claudecode/ingest.py | 57 | # --------------------------------------------------------------------------- |
| MEDIUM | benchmark/locomo/claudecode/ingest.py | 142 | # --------------------------------------------------------------------------- |
| MEDIUM | benchmark/locomo/claudecode/ingest.py | 144 | # --------------------------------------------------------------------------- |
| MEDIUM | benchmark/locomo/claudecode/ingest.py | 188 | # --------------------------------------------------------------------------- |
| MEDIUM | benchmark/locomo/claudecode/ingest.py | 190 | # --------------------------------------------------------------------------- |
| MEDIUM | benchmark/locomo/claudecode/ingest.py | 320 | # --------------------------------------------------------------------------- |
| MEDIUM | benchmark/locomo/claudecode/ingest.py | 322 | # --------------------------------------------------------------------------- |
| MEDIUM | benchmark/locomo/claudecode/import_to_ov.py | 128 | # --------------------------------------------------------------------------- |
| MEDIUM | benchmark/locomo/claudecode/import_to_ov.py | 130 | # --------------------------------------------------------------------------- |
| MEDIUM | benchmark/locomo/claudecode/import_to_ov.py | 208 | # --------------------------------------------------------------------------- |
| MEDIUM | benchmark/locomo/claudecode/import_to_ov.py | 210 | # --------------------------------------------------------------------------- |
| MEDIUM | benchmark/locomo/claudecode/import_to_ov.py | 602 | # --------------------------------------------------------------------------- |
| MEDIUM | benchmark/locomo/claudecode/import_to_ov.py | 604 | # --------------------------------------------------------------------------- |
| MEDIUM | benchmark/locomo/claudecode/eval.py | 70 | # --------------------------------------------------------------------------- |
| 877 more matches not shown… | |||
| Severity | File | Line | Snippet |
|---|---|---|---|
| LOW | setup.py | 171 | except Exception as exc: |
| LOW | setup.py | 240 | except Exception as exc: |
| LOW | setup.py | 372 | except Exception as exc: |
| MEDIUM | benchmark/skillsbench/skill_bench_eval.py | 673 | print("Error: --task cannot be combined with --count/--start/--end", file=sys.stderr) |
| MEDIUM | benchmark/skillsbench/skill_bench_eval.py | 676 | print("Error: --count cannot be combined with --start/--end", file=sys.stderr) |
| MEDIUM | benchmark/skillsbench/skill_bench_eval.py | 689 | print(f"Error: invalid range --start {start} --end {end}", file=sys.stderr) |
| MEDIUM | benchmark/skillsbench/skill_bench_eval.py | 692 | print(f"Error: --start {start} exceeds available tasks ({len(tasks)})", file=sys.stderr) |
| MEDIUM | benchmark/skillsbench/skill_bench_eval.py | 62 | def _onerror(func, p, exc_info): |
| LOW | benchmark/skillsbench/skill_bench_eval.py | 68 | except Exception: |
| LOW | benchmark/skillsbench/skill_bench_eval.py | 72 | except Exception: |
| LOW | benchmark/skillsbench/skill_bench_eval.py | 77 | except Exception: |
| LOW | benchmark/skillsbench/skill_bench_eval.py | 362 | except Exception: |
| LOW | benchmark/skillsbench/skill_bench_eval.py | 429 | except Exception as e: |
| LOW | benchmark/skillsbench/skill_bench_eval.py | 470 | except Exception: |
| LOW | benchmark/skillsbench/skill_bench_eval.py | 596 | except Exception: |
| LOW | benchmark/skillsbench/skill_bench_eval.py | 608 | except Exception as e: |
| LOW | benchmark/skillsbench/skill_bench_eval.py | 649 | except Exception as e: |
| LOW | benchmark/skillsbench/skill_bench_eval.py | 713 | except Exception as e: |
| LOW | benchmark/skillsbench/skill_bench_eval.py | 854 | except Exception as e: |
| LOW | benchmark/tau2/vikingbot/scripts/run_eval_reward.sh | 52 | except Exception: |
| LOW | …/tau2/vikingbot/scripts/commit_trajectory_to_memory.py | 99 | except Exception as exc: |
| LOW | …chmark/tau2/vikingbot/scripts/vikingbot_tau2_runner.py | 279 | except Exception: |
| LOW | benchmark/tau2/llm/scripts/run_eval.py | 1120 | except Exception as exc: |
| LOW | benchmark/tau2/llm/scripts/run_memory_v2_eval.py | 460 | except Exception as exc: |
| LOW | benchmark/locomo/vikingbot/run_eval.py | 262 | except Exception: |
| LOW | benchmark/locomo/vikingbot/run_eval.py | 607 | except Exception as e: |
| MEDIUM | benchmark/locomo/vikingbot/run_eval.py | 608 | print(f"Error processing QA item: {str(e)}") |
| MEDIUM | benchmark/locomo/vikingbot/run_eval.py | 72 | def get_session_num(key): |
| LOW | benchmark/locomo/vikingbot/import_to_ov.py | 474 | except Exception as e: |
| MEDIUM | benchmark/locomo/vikingbot/import_to_ov.py | 915 | print(f"Error: {e}", file=sys.stderr) |
| LOW | benchmark/locomo/vikingbot/preflight_eval_config.py | 185 | except Exception as exc: |
| LOW | benchmark/locomo/vikingbot/preflight_eval_config.py | 266 | except Exception as exc: |
| LOW | benchmark/locomo/vikingbot/judge.py | 69 | except Exception as e: |
| MEDIUM | benchmark/locomo/vikingbot/judge.py | 118 | print("Error: API token is required") |
| MEDIUM | benchmark/locomo/vikingbot/stat_judge_result.py | 35 | print(f"Error: File not found: {args.input}") |
| LOW | benchmark/locomo/vikingbot/preflight_eval_runtime.py | 40 | except Exception: |
| LOW | benchmark/locomo/vikingbot/preflight_eval_runtime.py | 63 | except Exception: |
| LOW | benchmark/locomo/vikingbot/preflight_eval_runtime.py | 77 | except Exception as exc: |
| LOW | benchmark/locomo/vikingbot/preflight_eval_runtime.py | 85 | except Exception as exc: |
| LOW | benchmark/locomo/vikingbot/preflight_eval_runtime.py | 113 | except Exception as exc: |
| LOW | benchmark/locomo/vikingbot/preflight_eval_runtime.py | 147 | except Exception as exc: |
| LOW | benchmark/locomo/vikingbot/preflight_eval_runtime.py | 181 | except Exception as exc: |
| LOW | benchmark/locomo/vikingbot/preflight_eval_runtime.py | 187 | except Exception: |
| LOW | benchmark/locomo/openclaw/import_to_ov.py | 392 | except Exception as e: |
| MEDIUM | benchmark/locomo/openclaw/import_to_ov.py | 671 | print(f"Error: {e}", file=sys.stderr) |
| LOW | benchmark/locomo/openclaw/judge.py | 69 | except Exception as e: |
| MEDIUM | benchmark/locomo/openclaw/judge.py | 118 | print("Error: API token is required") |
| MEDIUM | benchmark/locomo/openclaw/eval.py | 129 | print(f"Error: LoCoMo JSON file not found: {path}", file=sys.stderr) |
| MEDIUM | benchmark/locomo/openclaw/eval.py | 132 | print(f"Error parsing LoCoMo JSON file: {e}", file=sys.stderr) |
| MEDIUM | benchmark/locomo/openclaw/eval.py | 135 | print(f"Error reading LoCoMo JSON file: {e}", file=sys.stderr) |
| MEDIUM | benchmark/locomo/openclaw/eval.py | 61 | print(f"Error: Test file not found: {path}", file=sys.stderr) |
| MEDIUM | benchmark/locomo/openclaw/eval.py | 64 | print(f"Error reading test file: {e}", file=sys.stderr) |
| MEDIUM | benchmark/locomo/openclaw/eval.py | 1200 | print("Error: QA mode only works with LoCoMo JSON files", file=sys.stderr) |
| MEDIUM | benchmark/locomo/openclaw/eval.py | 1387 | print("Error: --token or OPENCLAW_GATEWAY_TOKEN env var is required", file=sys.stderr) |
| MEDIUM | benchmark/locomo/openclaw/eval.py | 228 | def get_session_num(key): |
| LOW | benchmark/locomo/openclaw/eval.py | 535 | except Exception as e: |
| LOW | benchmark/locomo/openclaw/eval.py | 841 | except Exception as e: |
| LOW | benchmark/locomo/openclaw/eval.py | 903 | except Exception as e: |
| LOW | benchmark/locomo/openclaw/eval.py | 1012 | except Exception as e: |
| LOW | benchmark/locomo/openclaw/eval.py | 1119 | except Exception as e: |
| 1740 more matches not shown… | |||
| Severity | File | Line | Snippet |
|---|---|---|---|
| LOW | …/tau2/vikingbot/scripts/commit_trajectory_to_memory.py | 12 | |
| LOW | …chmark/tau2/vikingbot/scripts/vikingbot_tau2_runner.py | 10 | |
| LOW | benchmark/tau2/vikingbot/tau2_env/tau2_environment.py | 3 | |
| LOW | benchmark/tau2/vikingbot/tau2_env/tau2_tool_provider.py | 4 | |
| LOW | benchmark/tau2/llm/scripts/run_eval.py | 2 | |
| LOW | …ark/tau2/llm/scripts/build_fixed_first_user_fixture.py | 4 | |
| LOW | benchmark/tau2/llm/scripts/run_memory_v2_eval.py | 2 | |
| LOW | benchmark/tau2/llm/scripts/tau2_common.py | 1 | |
| LOW | benchmark/locomo/vikingbot/run_eval.py | 7 | |
| LOW | benchmark/locomo/mem0/ingest.py | 26 | |
| LOW | benchmark/locomo/hermes/import_to_ov.py | 5 | |
| LOW | benchmark/locomo/hermes/import_e2e.py | 5 | |
| LOW | benchmark/locomo/hermes/stat_judge_result.py | 1 | |
| LOW | benchmark/locomo/hermes/import_to_native.py | 9 | |
| LOW | benchmark/locomo/hermes/eval.py | 5 | |
| LOW | benchmark/locomo/supermemory/ingest.py | 35 | |
| LOW | benchmark/RAG/scripts/prepare_dataset.py | 10 | |
| LOW | benchmark/RAG/scripts/sample_dataset.py | 9 | |
| LOW | benchmark/RAG/scripts/sample_dataset.py | 14 | |
| LOW | benchmark/RAG/src/pipeline.py | 4 | |
| LOW | benchmark/RAG/src/pipeline.py | 5 | |
| LOW | benchmark/RAG/src/core/vector_store.py | 9 | |
| LOW | benchmark/custom/session_contention_benchmark.py | 4 | |
| LOW | docker/pending_health_server.py | 18 | |
| LOW | openviking/client.py | 8 | |
| LOW | openviking/client.py | 9 | |
| LOW | openviking/client.py | 10 | |
| LOW | openviking/client.py | 11 | |
| LOW | openviking/__init__.py | 22 | |
| LOW | openviking/async_client.py | 9 | |
| LOW | openviking/sync_client.py | 7 | |
| LOW | openviking/sync_client.py | 12 | |
| LOW | openviking/metrics/bootstrap.py | 27 | |
| LOW | openviking/metrics/__init__.py | 14 | |
| LOW | openviking/metrics/__init__.py | 14 | |
| LOW | openviking/metrics/__init__.py | 14 | |
| LOW | openviking/metrics/__init__.py | 15 | |
| LOW | openviking/metrics/__init__.py | 16 | |
| LOW | openviking/metrics/global_api.py | 20 | |
| LOW | openviking/metrics/account_dimension.py | 11 | |
| LOW | openviking/metrics/datasources/queue.py | 4 | |
| LOW | openviking/metrics/datasources/task.py | 4 | |
| LOW | openviking/metrics/datasources/encryption.py | 17 | |
| LOW | openviking/metrics/datasources/session.py | 4 | |
| LOW | openviking/metrics/datasources/cache.py | 11 | |
| LOW | openviking/metrics/datasources/resource.py | 4 | |
| LOW | openviking/metrics/datasources/__init__.py | 6 | |
| LOW | openviking/metrics/datasources/__init__.py | 6 | |
| LOW | openviking/metrics/datasources/__init__.py | 6 | |
| LOW | openviking/metrics/datasources/__init__.py | 6 | |
| LOW | openviking/metrics/datasources/__init__.py | 12 | |
| LOW | openviking/metrics/datasources/__init__.py | 13 | |
| LOW | openviking/metrics/datasources/__init__.py | 14 | |
| LOW | openviking/metrics/datasources/__init__.py | 15 | |
| LOW | openviking/metrics/datasources/__init__.py | 15 | |
| LOW | openviking/metrics/datasources/__init__.py | 15 | |
| LOW | openviking/metrics/datasources/__init__.py | 16 | |
| LOW | openviking/metrics/datasources/__init__.py | 17 | |
| LOW | openviking/metrics/datasources/__init__.py | 18 | |
| LOW | openviking/metrics/datasources/__init__.py | 19 | |
| 953 more matches not shown… | |||
| Severity | File | Line | Snippet |
|---|---|---|---|
| HIGH | README_JA.md | 119 | "api_key": "your-api-key", |
| HIGH | README_JA.md | 132 | "api_key": "your-api-key", |
| HIGH | README_JA.md | 150 | "api_key": "your-api-key", |
| HIGH | README_JA.md | 163 | "api_key": "your-api-key", |
| HIGH | README_JA.md | 189 | "api_key" : "<your-api-key>", // モデルサービスAPIキー |
| HIGH | README_JA.md | 198 | "api_key" : "<your-api-key>", // モデルサービスAPIキー |
| HIGH | CONTRIBUTING_JA.md | 78 | "api_key": "your-api-key", |
| HIGH | CONTRIBUTING_JA.md | 86 | "api_key": "your-api-key", |
| HIGH | README.md | 123 | "api_key": "your-api-key", |
| HIGH | README.md | 136 | "api_key": "your-api-key", |
| HIGH | README.md | 154 | "api_key": "your-api-key", |
| HIGH | README.md | 167 | "api_key": "your-api-key", |
| HIGH | README.md | 321 | "api_key" : "<your-api-key>", // Model service API Key |
| HIGH | README.md | 332 | "api_key" : "<your-api-key>", // Model service API Key (optional for openai-codex) |
| HIGH | README_CN.md | 121 | "api_key": "your-api-key", |
| HIGH | README_CN.md | 134 | "api_key": "your-api-key", |
| HIGH | README_CN.md | 152 | "api_key": "your-api-key", |
| HIGH | README_CN.md | 165 | "api_key": "your-api-key", |
| HIGH | README_CN.md | 277 | "api_key" : "<your-api-key>", // 模型服务 API Key |
| HIGH | README_CN.md | 287 | "api_key" : "<your-api-key>", // 模型服务 API Key(openai-codex 可选) |
| HIGH | CONTRIBUTING.md | 78 | "api_key": "your-api-key", |
| HIGH | CONTRIBUTING.md | 86 | "api_key": "your-api-key", |
| HIGH | CONTRIBUTING_CN.md | 78 | "api_key": "your-api-key", |
| HIGH | CONTRIBUTING_CN.md | 86 | "api_key": "your-api-key", |
| HIGH | crates/ov_cli/README.md | 28 | "api_key": "your-api-key", |
| HIGH | openviking/models/embedder/openai_embedders.py | 47 | ... api_key="your-api-key", |
| HIGH | openviking/models/embedder/openai_embedders.py | 58 | ... api_key="your-api-key", |
| HIGH | openviking/models/embedder/minimax_embedders.py | 26 | ... api_key="your-api-key", |
| HIGH | tests/cli/test_doctor.py | 280 | "api_key": "{your-api-key}", |
| HIGH | docs/zh/faq/faq.md | 93 | "api_key": "your-api-key", |
| HIGH | docs/zh/faq/faq.md | 101 | "api_key": "your-api-key", |
| HIGH | docs/zh/faq/faq.md | 107 | "api_key": "your-api-key", |
| HIGH | docs/zh/getting-started/02-quickstart.md | 104 | "api_key" : "<your-api-key>", |
| HIGH | docs/zh/getting-started/02-quickstart.md | 112 | "api_key" : "<your-api-key>", |
| HIGH | docs/zh/getting-started/03-quickstart-server.md | 285 | "api_key" : "<your-api-key>", // Model service API Key |
| HIGH | docs/zh/getting-started/03-quickstart-server.md | 294 | "api_key" : "<your-api-key>", // Model service API Key |
| HIGH | docs/zh/guides/02-volcengine-purchase-guide.md | 99 | "api_key": "<your-api-key>", |
| HIGH | docs/zh/guides/02-volcengine-purchase-guide.md | 108 | "api_key": "<your-api-key>", |
| HIGH | docs/zh/guides/03-deployment.md | 287 | --set openviking.config.embedding.dense.api_key="YOUR_API_KEY" \ |
| HIGH | docs/zh/guides/03-deployment.md | 288 | --set openviking.config.vlm.api_key="YOUR_API_KEY" |
| HIGH | docs/zh/guides/01-configuration.md | 33 | "api_key" : "<your-api-key>", |
| HIGH | docs/zh/guides/01-configuration.md | 41 | "api_key" : "<your-api-key>", |
| HIGH | docs/zh/guides/01-configuration.md | 201 | "api_key": "your-api-key", |
| HIGH | docs/zh/guides/01-configuration.md | 282 | "api_key": "your-api-key", |
| HIGH | docs/zh/guides/01-configuration.md | 488 | "api_key": "your-api-key", |
| HIGH | docs/zh/guides/01-configuration.md | 506 | "api_key": "your-api-key", |
| HIGH | docs/zh/guides/01-configuration.md | 521 | "api_key": "your-api-key", |
| HIGH | docs/zh/guides/01-configuration.md | 527 | "api_key": "your-api-key", |
| HIGH | docs/zh/guides/01-configuration.md | 542 | "api_key": "your-api-key", |
| HIGH | docs/zh/guides/01-configuration.md | 606 | "api_key": "your-api-key", |
| HIGH | docs/zh/guides/01-configuration.md | 649 | "api_key": "your-api-key", |
| HIGH | docs/zh/guides/01-configuration.md | 768 | "api_key": "your-api-key", |
| HIGH | docs/zh/guides/06-mcp-integration.md | 50 | "Authorization": "Bearer your-api-key-here" |
| HIGH | docs/zh/guides/06-mcp-integration.md | 64 | --header "Authorization: Bearer your-api-key-here" |
| HIGH | docs/zh/guides/06-mcp-integration.md | 76 | "Authorization": "Bearer your-api-key-here" |
| HIGH | docs/zh/agent-integrations/03-openclaw.md | 103 | openclaw config set plugins.entries.openviking.config.apiKey your-api-key |
| HIGH | docs/zh/agent-integrations/06-mcp-clients.md | 15 | "Authorization": "Bearer your-api-key-here" |
| HIGH | docs/zh/agent-integrations/06-mcp-clients.md | 33 | --header "Authorization: Bearer your-api-key-here" |
| HIGH | docs/zh/api/01-overview.md | 41 | "api_key": "<your-api-key>", |
| HIGH | docs/zh/api/01-overview.md | 49 | "api_key": "<your-api-key>", |
| 59 more matches not shown… | |||
| Severity | File | Line | Snippet |
|---|---|---|---|
| HIGH | benchmark/locomo/vikingbot/import_to_ov.py | 0 | openviking data import tool. import conversations from locomo json or plain text files into openviking memory. usage: # |
| HIGH | benchmark/locomo/openclaw/import_to_ov.py | 0 | openviking data import tool. import conversations from locomo json or plain text files into openviking memory. usage: # |
| HIGH | benchmark/locomo/claudecode/import_to_ov.py | 0 | openviking data import tool. import conversations from locomo json or plain text files into openviking memory. usage: # |
| HIGH | benchmark/locomo/vikingbot/import_to_ov.py | 0 | parse txt test file into sessions. each session is a dict with: - messages: list of user message strings |
| HIGH | benchmark/locomo/openclaw/import_to_ov.py | 0 | parse txt test file into sessions. each session is a dict with: - messages: list of user message strings |
| HIGH | benchmark/locomo/claudecode/import_to_ov.py | 0 | parse txt test file into sessions. each session is a dict with: - messages: list of user message strings |
| HIGH | benchmark/locomo/vikingbot/import_to_ov.py | 0 | load locomo json and optionally filter to one sample. |
| HIGH | benchmark/locomo/openclaw/import_to_ov.py | 0 | load locomo json and optionally filter to one sample. |
| HIGH | benchmark/locomo/openclaw/eval.py | 0 | load locomo json and optionally filter to one sample. |
| HIGH | benchmark/locomo/claudecode/import_to_ov.py | 0 | load locomo json and optionally filter to one sample. |
| HIGH | benchmark/locomo/vikingbot/import_to_ov.py | 0 | check if a specific session has already been successfully ingested. |
| HIGH | benchmark/locomo/openclaw/import_to_ov.py | 0 | check if a specific session has already been successfully ingested. |
| HIGH | benchmark/locomo/openclaw/eval.py | 0 | check if a specific session has already been successfully ingested. |
| HIGH | benchmark/locomo/claudecode/import_to_ov.py | 0 | check if a specific session has already been successfully ingested. |
| HIGH | benchmark/locomo/vikingbot/judge.py | 0 | you are an expert grader that determines if answers to questions match a gold standard answer |
| HIGH | benchmark/locomo/openclaw/judge.py | 0 | you are an expert grader that determines if answers to questions match a gold standard answer |
| HIGH | benchmark/locomo/hermes/judge.py | 0 | you are an expert grader that determines if answers to questions match a gold standard answer |
| HIGH | benchmark/RAG/src/core/judge_util.py | 0 | you are an expert grader that determines if answers to questions match a gold standard answer |
| HIGH | benchmark/locomo/vikingbot/judge.py | 0 | your task is to label an answer to a question as 'correct' or 'wrong'. you will be given the following data: (1) a quest |
| HIGH | benchmark/locomo/openclaw/judge.py | 0 | your task is to label an answer to a question as 'correct' or 'wrong'. you will be given the following data: (1) a quest |
| HIGH | benchmark/locomo/claudecode/judge.py | 0 | your task is to label an answer to a question as 'correct' or 'wrong'. you will be given the following data: (1) a quest |
| HIGH | benchmark/locomo/hermes/judge.py | 0 | your task is to label an answer to a question as 'correct' or 'wrong'. you will be given the following data: (1) a quest |
| HIGH | openviking/async_client.py | 0 | check whether a session exists in storage. args: session_id: session id to check returns: true if the session exists, fa |
| HIGH | openviking/client/local.py | 0 | check whether a session exists in storage. args: session_id: session id to check returns: true if the session exists, fa |
| HIGH | openviking_cli/client/http.py | 0 | check whether a session exists in storage. args: session_id: session id to check returns: true if the session exists, fa |
| HIGH | openviking_cli/client/base.py | 0 | check whether a session exists in storage. args: session_id: session id to check returns: true if the session exists, fa |
| HIGH | openviking/async_client.py | 0 | create a new session. args: session_id: optional session id. if provided, creates a session with the given id. if none, |
| HIGH | openviking/sync_client.py | 0 | create a new session. args: session_id: optional session id. if provided, creates a session with the given id. if none, |
| HIGH | openviking/client/local.py | 0 | create a new session. args: session_id: optional session id. if provided, creates a session with the given id. if none, |
| HIGH | openviking_cli/client/http.py | 0 | create a new session. args: session_id: optional session id. if provided, creates a session with the given id. if none, |
| HIGH | openviking_cli/client/sync_http.py | 0 | create a new session. args: session_id: optional session id. if provided, creates a session with the given id. if none, |
| HIGH | openviking/async_client.py | 0 | write text content to an existing file and refresh semantics/vectors. |
| HIGH | openviking/sync_client.py | 0 | write text content to an existing file and refresh semantics/vectors. |
| HIGH | openviking/client/local.py | 0 | write text content to an existing file and refresh semantics/vectors. |
| HIGH | openviking_cli/client/http.py | 0 | write text content to an existing file and refresh semantics/vectors. |
| HIGH | openviking_cli/client/sync_http.py | 0 | write text content to an existing file and refresh semantics/vectors. |
| HIGH | openviking_cli/client/base.py | 0 | write text content to an existing file and refresh semantics/vectors. |
| HIGH | openviking/async_client.py | 0 | check filesystem/vector-index consistency for a uri subtree. |
| HIGH | openviking/sync_client.py | 0 | check filesystem/vector-index consistency for a uri subtree. |
| HIGH | openviking/server/routers/system.py | 0 | check filesystem/vector-index consistency for a uri subtree. |
| HIGH | openviking/service/core.py | 0 | check filesystem/vector-index consistency for a uri subtree. |
| HIGH | openviking/client/local.py | 0 | check filesystem/vector-index consistency for a uri subtree. |
| HIGH | openviking_cli/client/http.py | 0 | check filesystem/vector-index consistency for a uri subtree. |
| HIGH | openviking_cli/client/sync_http.py | 0 | check filesystem/vector-index consistency for a uri subtree. |
| HIGH | openviking_cli/client/base.py | 0 | check filesystem/vector-index consistency for a uri subtree. |
| HIGH | openviking/async_client.py | 0 | get system status. returns: systemstatus containing health status of all components. |
| HIGH | openviking/sync_client.py | 0 | get system status. returns: systemstatus containing health status of all components. |
| HIGH | openviking/client/local.py | 0 | get system status. returns: systemstatus containing health status of all components. |
| HIGH | openviking/sync_client.py | 0 | back up public scopes as a restore-only .ovpack file. |
| HIGH | openviking/client/local.py | 0 | back up public scopes as a restore-only .ovpack file. |
| HIGH | openviking_cli/client/http.py | 0 | back up public scopes as a restore-only .ovpack file. |
| HIGH | openviking_cli/client/sync_http.py | 0 | back up public scopes as a restore-only .ovpack file. |
| HIGH | openviking_cli/client/base.py | 0 | back up public scopes as a restore-only .ovpack file. |
| HIGH | openviking/metrics/core/registry.py | 0 | normalize label input and enforce the family label contract. |
| HIGH | openviking/metrics/core/registry.py | 0 | normalize label input and enforce the family label contract. |
| HIGH | openviking/metrics/core/registry.py | 0 | normalize label input and enforce the family label contract. |
| HIGH | openviking/metrics/core/registry.py | 0 | ensure subsequent family lookups use the original declared label keys. |
| HIGH | openviking/metrics/core/registry.py | 0 | ensure subsequent family lookups use the original declared label keys. |
| HIGH | openviking/metrics/core/registry.py | 0 | ensure subsequent family lookups use the original declared label keys. |
| HIGH | openviking/metrics/core/registry.py | 0 | ensure a concrete series write uses exactly the configured label keys. |
| 60 more matches not shown… | |||
| Severity | File | Line | Snippet |
|---|---|---|---|
| LOW | setup.py | 189 | |
| LOW | setup.py | 261 | |
| LOW | benchmark/skillsbench/skill_bench_eval.py | 88 | |
| LOW | benchmark/skillsbench/skill_bench_eval.py | 196 | |
| LOW | benchmark/skillsbench/skill_bench_eval.py | 442 | |
| LOW | benchmark/skillsbench/skill_bench_eval.py | 664 | |
| LOW | benchmark/tau2/llm/scripts/run_eval.py | 488 | |
| LOW | benchmark/tau2/llm/scripts/run_memory_v2_eval.py | 493 | |
| LOW | benchmark/tau2/llm/scripts/run_memory_v2_eval.py | 652 | |
| LOW | benchmark/tau2/llm/scripts/run_memory_v2_eval.py | 675 | |
| LOW | benchmark/locomo/vikingbot/run_eval.py | 60 | |
| LOW | benchmark/locomo/vikingbot/run_eval.py | 349 | |
| LOW | benchmark/locomo/vikingbot/run_eval.py | 519 | |
| LOW | benchmark/locomo/vikingbot/import_to_ov.py | 300 | |
| LOW | benchmark/locomo/vikingbot/import_to_ov.py | 534 | |
| LOW | benchmark/locomo/vikingbot/preflight_eval_config.py | 160 | |
| LOW | benchmark/locomo/vikingbot/stat_judge_result.py | 25 | |
| LOW | benchmark/locomo/vikingbot/preflight_eval_runtime.py | 46 | |
| LOW | benchmark/locomo/openclaw/import_to_ov.py | 243 | |
| LOW | benchmark/locomo/openclaw/stat_judge_result.py | 56 | |
| LOW | benchmark/locomo/openclaw/eval.py | 216 | |
| LOW | benchmark/locomo/openclaw/eval.py | 357 | |
| LOW | benchmark/locomo/openclaw/eval.py | 376 | |
| LOW | benchmark/locomo/openclaw/eval.py | 475 | |
| LOW | benchmark/locomo/openclaw/eval.py | 752 | |
| LOW | benchmark/locomo/openclaw/eval.py | 1042 | |
| LOW | benchmark/locomo/openclaw/eval.py | 1125 | |
| LOW | benchmark/locomo/claudecode/ingest_e2e.py | 120 | |
| LOW | benchmark/locomo/claudecode/import_to_ov.py | 243 | |
| LOW | benchmark/locomo/claudecode/stat_judge_result.py | 60 | |
| LOW | benchmark/locomo/claudecode/eval.py | 105 | |
| LOW | benchmark/locomo/claudecode/eval.py | 171 | |
| LOW | benchmark/locomo/mem0/ingest.py | 214 | |
| LOW | benchmark/locomo/mem0/eval.py | 203 | |
| LOW | benchmark/locomo/mem0/eval.py | 292 | |
| LOW | benchmark/locomo/mem0/eval.py | 321 | |
| LOW | benchmark/locomo/mem0/eval.py | 352 | |
| LOW | benchmark/locomo/mem0/eval.py | 542 | |
| LOW | benchmark/locomo/hermes/import_to_ov.py | 297 | |
| LOW | benchmark/locomo/hermes/import_e2e.py | 474 | |
| LOW | benchmark/locomo/hermes/stat_judge_result.py | 315 | |
| LOW | benchmark/locomo/hermes/import_to_native.py | 211 | |
| LOW | benchmark/locomo/hermes/eval.py | 419 | |
| LOW | benchmark/locomo/supermemory/eval.py | 176 | |
| LOW | benchmark/locomo/supermemory/eval.py | 265 | |
| LOW | benchmark/locomo/supermemory/eval.py | 294 | |
| LOW | benchmark/locomo/supermemory/eval.py | 323 | |
| LOW | benchmark/locomo/supermemory/eval.py | 504 | |
| LOW | benchmark/RAG/scripts/download_dataset.py | 76 | |
| LOW | benchmark/RAG/scripts/download_dataset.py | 108 | |
| LOW | benchmark/RAG/scripts/sample_dataset.py | 96 | |
| LOW | benchmark/RAG/scripts/sample_dataset.py | 321 | |
| LOW | benchmark/RAG/scripts/sample_dataset.py | 496 | |
| LOW | benchmark/RAG/scripts/sample_dataset.py | 714 | |
| LOW | benchmark/RAG/scripts/sample_dataset.py | 998 | |
| LOW | benchmark/RAG/src/adapters/qasper_adapter.py | 116 | |
| LOW | benchmark/RAG/src/adapters/syllabusqa_adapter.py | 166 | |
| LOW | benchmark/RAG/src/adapters/syllabusqa_adapter.py | 211 | |
| LOW | benchmark/RAG/src/adapters/syllabusqa_adapter.py | 291 | |
| LOW | benchmark/RAG/src/adapters/syllabusqa_adapter.py | 356 | |
| 505 more matches not shown… | |||
| Severity | File | Line | Snippet |
|---|---|---|---|
| HIGH | openviking/session/memory/graph_view.py | 480 | rendered.push(`<ul>${{listItems.join('')}}</ul>`); |
| HIGH | openviking/session/memory/graph_view.py | 488 | rendered.push(line); |
| HIGH | openviking/session/memory/graph_view.py | 492 | listItems.push(`<li>${{line.replace(/^[-*]\s+/, '')}}</li>`); |
| HIGH | openviking/session/memory/graph_view.py | 500 | rendered.push(`<p>${{line}}</p>`); |
| HIGH | openviking/session/memory/graph_view.py | 538 | detailTitle.textContent = node.label || node.id; |
| HIGH | openviking/session/memory/graph_view.py | 540 | detailContent.innerHTML = renderMarkdown(node.content_full || node.content_preview || '', node.uri || ''); |
| HIGH | openviking/session/memory/graph_view.py | 546 | const sourceUri = edge.from || edge.source || ''; |
| HIGH | openviking/session/memory/graph_view.py | 547 | const targetUri = edge.to || edge.target || ''; |
| HIGH | openviking/session/memory/graph_view.py | 610 | if (activeMemoryTypes.size === 0 && activeLinkTypes.size === 0) {{ |
| HIGH | openviking/session/memory/graph_view.py | 615 | const visibleNodes = originalNodes.filter(node => activeMemoryTypes.size === 0 || activeMemoryTypes.has(node.memory_ty |
| HIGH | openviking/session/memory/graph_view.py | 617 | const visibleEdges = originalEdges.filter(edge => (activeLinkTypes.size === 0 || activeLinkTypes.has(edge.link_type)) |
| HIGH | openviking/session/memory/graph_view.py | 381 | values.size = Math.max(values.size || 18, 34); |
| HIGH | openviking/session/memory/graph_view.py | 390 | values.size = Math.max(values.size || 12, 18); |
| HIGH | openviking/session/memory/graph_view.py | 418 | if (!segment || segment === '.') {{ |
| HIGH | openviking/session/memory/graph_view.py | 427 | baseParts.push(segment); |
| HIGH | openviking/session/memory/graph_view.py | 455 | codeBlocks.push(`<pre><code>${{code.trim()}}</code></pre>`); |
| HIGH | openviking/session/memory/graph_view.py | 653 | showTooltip(params.event.srcEvent.clientX, params.event.srcEvent.clientY, node.label || node.id, meta, desc, node.uri |
| HIGH | openviking/session/memory/graph_view.py | 660 | showTooltip(params.event.srcEvent.clientX, params.event.srcEvent.clientY, edge.description || edge.link_type, meta, ed |
| HIGH | tests/parse/test_ast_extractor.py | 196 | return null; |
| HIGH | tests/parse/test_ast_extractor.py | 1317 | return title.length > 0 && title.length < 100; |
| HIGH | tests/cli/conftest.py | 144 | ["bash", "-lc", "command -v openviking || command -v ov"], |
| HIGH | tests/api_test/conftest.py | 577 | if (!aFailed && bFailed) return 1; |
| HIGH | tests/api_test/conftest.py | 582 | if (row.nextElementSibling && row.nextElementSibling.classList.contains('extras-row')) { |
| HIGH | tests/api_test/resources/test_add_resource.py | 42 | f"Expected error to be null, got {data.get('error')}" |
| HIGH | tests/api_test/resources/test_wait_processed.py | 37 | assert data.get("error") is None, f"Expected error to be null, got {data.get('error')}" |
| HIGH | tests/api_test/admin/test_admin_users.py | 19 | assert data.get("error") is None, f"Expected error to be null, got {data.get('error')}" |
| HIGH | tests/api_test/admin/test_admin_users.py | 43 | assert data.get("error") is None, f"Expected error to be null, got {data.get('error')}" |
| HIGH | tests/api_test/admin/test_admin_users.py | 58 | assert data.get("error") is None, f"Expected error to be null, got {data.get('error')}" |
| HIGH | tests/api_test/admin/test_admin_regenerate_key.py | 16 | assert data.get("error") is None, f"Expected error to be null, got {data.get('error')}" |
| HIGH | tests/api_test/admin/test_admin_regenerate_key.py | 29 | assert data.get("error") is None, f"Expected error to be null, got {data.get('error')}" |
| HIGH | tests/api_test/admin/test_admin_accounts.py | 19 | assert data.get("error") is None, f"Expected error to be null, got {data.get('error')}" |
| HIGH | tests/api_test/admin/test_admin_accounts.py | 44 | assert data.get("error") is None, f"Expected error to be null, got {data.get('error')}" |
| HIGH | tests/api_test/admin/test_admin_accounts.py | 60 | assert data.get("error") is None, f"Expected error to be null, got {data.get('error')}" |
| HIGH | tests/api_test/admin/test_admin_role.py | 16 | assert data.get("error") is None, f"Expected error to be null, got {data.get('error')}" |
| HIGH | tests/api_test/admin/test_admin_role.py | 29 | assert data.get("error") is None, f"Expected error to be null, got {data.get('error')}" |
| HIGH | tests/api_test/filesystem/test_fs_read_write.py | 39 | assert data.get("error") is None, f"Expected error to be null, got {data.get('error')}" |
| HIGH | tests/api_test/filesystem/test_link_relations.py | 15 | assert data.get("error") is None, f"Expected error to be null, got {data.get('error')}" |
| HIGH | tests/api_test/filesystem/test_link_relations.py | 37 | assert data.get("error") is None, f"Expected error to be null, got {data.get('error')}" |
| HIGH | tests/api_test/filesystem/test_link_relations.py | 48 | assert data.get("error") is None, f"Expected error to be null, got {data.get('error')}" |
| HIGH | tests/api_test/filesystem/test_link_relations.py | 59 | assert data.get("error") is None, f"Expected error to be null, got {data.get('error')}" |
| HIGH | tests/api_test/filesystem/test_get_abstract.py | 15 | assert data.get("error") is None, f"Expected error to be null, got {data.get('error')}" |
| HIGH | tests/api_test/filesystem/test_get_abstract.py | 34 | assert data.get("error") is None, f"Expected error to be null, got {data.get('error')}" |
| HIGH | tests/api_test/filesystem/test_fs_mv.py | 29 | assert data.get("error") is None, f"Expected error to be null, got {data.get('error')}" |
| HIGH | tests/api_test/filesystem/test_fs_mkdir_basic.py | 27 | f"Expected error to be null, got {data.get('error')}" |
| HIGH | tests/api_test/filesystem/test_fs_rm.py | 28 | assert data.get("error") is None, f"Expected error to be null, got {data.get('error')}" |
| HIGH | tests/api_test/filesystem/test_fs_ls.py | 25 | assert data.get("error") is None, f"Expected error to be null, got {data.get('error')}" |
| HIGH | tests/api_test/filesystem/test_fs_tree_basic.py | 25 | assert data.get("error") is None, f"Expected error to be null, got {data.get('error')}" |
| HIGH | tests/api_test/filesystem/test_get_overview.py | 51 | assert data.get("error") is None, f"Expected error to be null, got {data.get('error')}" |
| HIGH | tests/api_test/filesystem/test_fs_stat.py | 25 | assert data.get("error") is None, f"Expected error to be null, got {data.get('error')}" |
| HIGH | tests/api_test/system/test_observer.py | 18 | assert data.get("error") is None, f"Expected error to be null, got {data.get('error')}" |
| HIGH | tests/api_test/system/test_observer.py | 38 | assert data.get("error") is None, f"Expected error to be null, got {data.get('error')}" |
| HIGH | tests/api_test/system/test_observer.py | 58 | assert data.get("error") is None, f"Expected error to be null, got {data.get('error')}" |
| HIGH | tests/api_test/system/test_observer.py | 78 | assert data.get("error") is None, f"Expected error to be null, got {data.get('error')}" |
| HIGH | tests/api_test/system/test_system_status.py | 18 | assert data.get("error") is None, f"Expected error to be null, got {data.get('error')}" |
| HIGH | tests/api_test/system/test_system_wait.py | 18 | assert data.get("error") is None, f"Expected error to be null, got {data.get('error')}" |
| HIGH | tests/api_test/system/test_is_healthy.py | 18 | assert data.get("error") is None, f"Expected error to be null, got {data.get('error')}" |
| HIGH | tests/api_test/sessions/test_session_used_commit.py | 22 | assert data.get("error") is None, f"Expected error to be null, got {data.get('error')}" |
| HIGH | tests/api_test/sessions/test_session_used_commit.py | 33 | assert data.get("error") is None, f"Expected error to be null, got {data.get('error')}" |
| HIGH | tests/api_test/sessions/test_session_used_commit.py | 45 | assert data.get("error") is None, f"Expected error to be null, got {data.get('error')}" |
| HIGH | tests/api_test/sessions/test_list_sessions.py | 27 | assert data.get("error") is None, f"Expected error to be null, got {data.get('error')}" |
| 18 more matches not shown… | |||
| Severity | File | Line | Snippet |
|---|---|---|---|
| HIGH | benchmark/RAG/src/adapters/qasper_adapter.py | 67 | Load raw data and convert to OpenViking-friendly format. Converts each paper to Markdown docum |
| HIGH | benchmark/RAG/src/adapters/syllabusqa_adapter.py | 110 | Load raw docx files and convert to OpenViking-friendly format. Only process syllabus documents |
| HIGH | openviking/metrics/core/types.py | 38 | Normalize a label mapping into the canonical internal representation. Args: labels: Optional label dic |
| HIGH | openviking/core/path_variables.py | 144 | Resolve variables in a URI template. Args: uri_template: URI template with variables (e.g. |
| HIGH | openviking/parse/custom.py | 119 | Parse the source using the custom parser. Args: source: File path or content string |
| HIGH | openviking/parse/custom.py | 142 | Parse content string. Note: Most custom parsers work with file paths, so this may not be suppo |
| HIGH | openviking/parse/directory_scan.py | 184 | Traverse directory tree and classify every file (phase-one validation). - Skips directories in IGNORE_DIRS (or |
| HIGH | openviking/parse/base.py | 80 | Unified lazy import utility. Args: module_name: Module name package_name: pip package name (if |
| HIGH | openviking/parse/parsers/pdf.py | 92 | Parse PDF file. Args: source: Path to PDF file **kwargs: Additional options (r |
| HIGH | openviking/parse/parsers/pdf.py | 172 | Convert PDF to Markdown using configured strategy. Args: pdf_path: Path to PDF file |
| HIGH | openviking/parse/parsers/pdf.py | 642 | Convert PDF to Markdown using MinerU API. Args: pdf_path: Path to PDF file res |
| HIGH | openviking/parse/parsers/pdf.py | 715 | Convert table data to Markdown table format. Args: table: 2D array of table cells |
| HIGH | openviking/parse/parsers/media/audio.py | 66 | Parse audio file - only copy original file and extract basic metadata, no content understanding. Args: |
| HIGH | openviking/parse/parsers/media/audio.py | 390 | Parse audio from base64 content string. Args: content: Audio content (base64 or binary str |
| HIGH | openviking/parse/parsers/media/video.py | 57 | Parse video file - only copy original file and extract basic metadata, no content understanding. Args: |
| HIGH | openviking/parse/parsers/media/video.py | 242 | Parse video from content string - Not yet implemented. Args: content: Video content (base6 |
| HIGH | openviking/parse/parsers/media/image.py | 78 | Parse image file - only copy original file and extract basic metadata, no content understanding. Args: |
| HIGH | openviking/parse/parsers/media/image.py | 286 | Parse image from content string - Not yet implemented. Args: content: Image content (base6 |
| HIGH | openviking/parse/accessors/local_accessor.py | 66 | Access a local file or directory. Simply wraps the local path in a LocalResource without any f |
| HIGH | openviking/pyagfs/helpers.py | 19 | Copy a file or directory within AGFS. Args: client: AGFSClient instance src: Source path in AGFS |
| HIGH | openviking/pyagfs/helpers.py | 55 | Upload a file or directory from local filesystem to AGFS. Args: client: AGFSClient instance local_p |
| HIGH | openviking/pyagfs/helpers.py | 93 | Download a file or directory from AGFS to local filesystem. Args: client: AGFSClient instance remot |
| HIGH | openviking/server/config.py | 200 | Load server configuration from ov.conf. Reads the ``server`` section of ov.conf and also ensures the full ov.co |
| HIGH | openviking/models/embedder/openai_embedders.py | 295 | Perform dense embedding on text Args: text: Input text is_query: Flag to indicate if th |
| HIGH | openviking/models/embedder/openai_embedders.py | 349 | Batch embedding (OpenAI native support) Args: texts: List of texts is_query: Flag to in |
| HIGH | openviking/models/embedder/volcengine_embedders.py | 146 | Perform dense embedding on text Args: text: Input text is_query: Flag to indicate if th |
| HIGH | openviking/models/embedder/volcengine_embedders.py | 217 | Batch embedding Args: texts: List of texts is_query: Flag to indicate if these are quer |
| HIGH | openviking/models/embedder/volcengine_embedders.py | 374 | Perform sparse embedding on text Args: text: Input text is_query: Flag to indicate if t |
| HIGH | openviking/models/embedder/volcengine_embedders.py | 437 | Batch sparse embedding Args: texts: List of texts is_query: Flag to indicate if these a |
| HIGH | openviking/models/embedder/volcengine_embedders.py | 563 | Perform hybrid embedding on text Args: text: Input text is_query: Flag to indicate if t |
| HIGH | openviking/models/embedder/volcengine_embedders.py | 635 | Batch hybrid embedding Args: texts: List of texts is_query: Flag to indicate if these a |
| HIGH | openviking/models/embedder/litellm_embedders.py | 170 | Perform dense embedding on text via litellm. Args: text: Input text is_query: Flag to i |
| HIGH | openviking/models/embedder/litellm_embedders.py | 221 | Batch embedding via litellm. Args: texts: List of texts is_query: Flag to indicate if t |
| HIGH | openviking/models/embedder/jina_embedders.py | 180 | Perform dense embedding on text Args: text: Input text is_query: Flag to indicate if th |
| HIGH | openviking/models/embedder/jina_embedders.py | 248 | Batch embedding (Jina native support) Args: texts: List of texts is_query: Flag to indi |
| HIGH | openviking/models/embedder/base.py | 588 | 指数退避重试函数 Args: func: 要执行的函数 max_wait: 最大总等待时间(秒) base_delay: 基础延迟时间(秒) max_del |
| HIGH | openviking/models/vlm/base.py | 286 | Create VLM instance Args: config: VLM config, must contain 'provider' field Returns: |
| HIGH | openviking/models/vlm/base.py | 377 | Execute a VLM method with failover support. Args: method_name: Name of the method to call on VLM in |
| HIGH | openviking/models/vlm/base.py | 419 | Execute an async VLM method with failover support. Args: method_name: Name of the async method to c |
| HIGH | …nviking/observability/http_observability_middleware.py | 745 | Execute the request with optional span context management. This function encapsulates the common logic for bot |
| HIGH | …nviking/storage/vectordb/collection/http_collection.py | 27 | Create or retrieve a Collection via HTTP. Args: host: Host address of the HTTP service. port: Port |
| HIGH | …viking/storage/vectordb/collection/local_collection.py | 66 | Create or retrieve a local Collection. Args: meta_data: Collection metadata configuration path: Per |
| HIGH | openviking/storage/vectordb/meta/collection_meta.py | 15 | Create a CollectionMeta instance. Args: path (str): The path to store metadata. If empty, creates a volatil |
| HIGH | openviking/storage/vectordb/meta/index_meta.py | 18 | Create an IndexMeta instance. Args: collection_meta (CollectionMeta): The metadata of the collection this i |
| HIGH | openviking/storage/vectordb/project/http_project.py | 149 | Create a new collection Args: collection_name: Collection name meta_data: Coll |
| HIGH | openviking/storage/vectordb/project/http_project.py | 212 | Get or create collection Args: collection_name: Collection name meta_data: Col |
| HIGH | openviking/storage/vectordb/project/project_group.py | 179 | Create new project Args: project_name: Project name Returns: Newly cr |
| HIGH | …nviking/storage/vectordb/project/volcengine_project.py | 121 | Create a new collection Args: collection_name: Collection name meta_data: Coll |
| HIGH | openviking/storage/vectordb/project/local_project.py | 162 | Create new collection. Args: collection_name: Collection name meta_data: Collection met |
| HIGH | openviking/storage/vectordb/project/local_project.py | 225 | Get or create collection. Args: collection_name: Collection name meta_data: Collection |
| HIGH | openviking/storage/vectordb/project/project.py | 141 | Create a new collection in the project. Args: collection_name (str): Name for the new collection. M |
| HIGH | openviking/storage/vectordb/index/index.py | 99 | Perform vector similarity search with optional filtering. Searches the index for vectors most similar to the qu |
| HIGH | openviking/storage/vectordb/index/index.py | 135 | Perform aggregation operations on the index data. Computes aggregate statistics over index records, optionally |
| HIGH | openviking/storage/vectordb/index/index.py | 335 | Perform a similarity search on the index using dense vector, sparse vector, and/or filtered criteria. |
| HIGH | openviking/storage/vectordb/index/index.py | 464 | Perform aggregation operations on the index. Args: filters: Aggregation configuration containing: |
| HIGH | …ng/storage/vectordb/vectorize/volcengine_vectorizer.py | 185 | Text vectorization core method Args: data: Data list to vectorize Returns: |
| HIGH | openviking/storage/vectordb/store/store.py | 20 | Retrieve a value by its key. Args: key: The key to retrieve the value for. Returns: |
| HIGH | openviking/storage/vectordb/store/store.py | 124 | Read values for multiple keys from a specific table. Args: keys (List[str]): List of keys to read. |
| HIGH | openviking/storage/vectordb/store/store.py | 179 | Read all key-value pairs from a table. Args: table_name (str): Table name prefix. Returns: |
| HIGH | openviking/storage/vectordb/store/store.py | 194 | Retrieve all entries from a starting key to the end of the table. Args: key (str): Starting key for |
| 30 more matches not shown… | |||
| Severity | File | Line | Snippet |
|---|---|---|---|
| LOW | .pr_agent.toml | 1 | # ============================================================================= |
| LOW | docker-compose.yml | 1 | version: "3.8" |
| LOW | docker-compose.yml | 61 | # Uncomment for public HTTPS: |
| LOW | benchmark/tau2/vikingbot/setup_env.sh | 1 | #!/usr/bin/env bash |
| LOW | benchmark/tau2/vikingbot/setup_env.sh | 21 | # (or when --reinstall is passed); later sources just activate + export. |
| LOW | benchmark/locomo/vikingbot/run_full_eval.sh | 1 | #!/bin/bash |
| LOW | benchmark/locomo/claudecode/run_e2e.sh | 1 | #!/bin/bash |
| LOW | benchmark/locomo/claudecode/run_sdk_iso.sh | 1 | #!/bin/bash |
| LOW | benchmark/locomo/claudecode/run_prompted.sh | 1 | #!/bin/bash |
| LOW | benchmark/RAG/config/config.yaml | 21 | # Number of concurrent worker threads for document ingestion |
| LOW | crates/ov_cli/src/main.rs | 221 | // |
| LOW | crates/ov_cli/src/main.rs | 241 | reason: String, |
| LOW | crates/ov_cli/src/main.rs | 261 | #[arg(long)] |
| LOW | crates/ov_cli/src/main.rs | 281 | timeout: Option<f64>, |
| LOW | crates/ov_cli/src/main.rs | 381 | /// Viking URI |
| LOW | crates/ov_cli/src/main.rs | 461 | /// Only include results on or before this time (e.g. 24h, 2026-03-15, ISO-8601) |
| LOW | crates/ov_cli/src/main.rs | 581 | /// Input backup .ovpack file path |
| LOW | crates/ov_cli/src/main.rs | 601 | message: Option<String>, |
| LOW | crates/ov_cli/src/main.rs | 861 | /// task_id (UUID) or to_uri (viking:// URI) |
| LOW | crates/ov_cli/src/main.rs | 901 | /// Privacy config category |
| LOW | crates/ragfs-python/src/lib.rs | 201 | /// RAGFS Python Binding Client. |
| LOW | crates/ragfs/src/lib.rs | 1 | //! RAGFS - Rust implementation of AGFS (Aggregated File System) |
| LOW | crates/ragfs/src/lib.rs | 21 | //! async fn main() -> ragfs::core::Result<()> { |
| LOW | crates/ragfs/src/core/filesystem.rs | 81 | #[async_trait] |
| LOW | crates/ragfs/src/core/filesystem.rs | 101 | /// * `Error::AlreadyExists` - If a directory already exists at the path |
| LOW | crates/ragfs/src/core/filesystem.rs | 121 | /// * `Error::NotFound` - If the path doesn't exist |
| LOW | crates/ragfs/src/core/filesystem.rs | 141 | /// # Arguments |
| LOW | crates/ragfs/src/core/filesystem.rs | 161 | /// A vector of FileInfo for each entry in the directory |
| LOW | crates/ragfs/src/core/filesystem.rs | 181 | /// |
| LOW | crates/ragfs/src/core/filesystem.rs | 201 | /// Truncate a file to a specified size |
| LOW | crates/ragfs/src/core/filesystem.rs | 221 | /// * `path` - The path to check |
| LOW | crates/ragfs/src/core/errors.rs | 1 | //! Error types for RAGFS |
| LOW | crates/ragfs/src/core/mountable.rs | 141 | /// List all mount points |
| LOW | crates/ragfs/src/core/mountable.rs | 181 | result.insert(path.clone(), (info.plugin_name.clone(), stats)); |
| LOW | crates/ragfs/src/core/plugin.rs | 1 | //! Plugin system for RAGFS |
| LOW | crates/ragfs/src/core/plugin.rs | 41 | /// and any special considerations. |
| LOW | crates/ragfs/src/core/plugin.rs | 61 | /// |
| LOW | crates/ragfs/src/core/plugin.rs | 121 | |
| LOW | crates/ragfs/src/plugins/s3fs/mod.rs | 1 | //! S3FS - S3-backed File System |
| LOW | crates/ragfs/src/server/handlers.rs | 121 | |
| LOW | web-studio/public/service-worker.js | 1 | // OpenViking Studio service worker. |
| LOW | openviking/parse/parsers/code/code.py | 181 | content_path=None, |
| LOW | openviking/parse/parsers/code/ast/languages/__init__.py | 1 | # Copyright (c) 2026 Beijing Volcano Engine Technology Co., Ltd. |
| LOW | openviking/parse/parsers/media/utils.py | 21 | |
| LOW | openviking/parse/parsers/media/utils.py | 41 | # except OSError: |
| LOW | openviking/parse/accessors/http_accessor.py | 101 | # === IANA Media Type to URL type mapping === |
| LOW | openviking/parse/resource_detector/visit.py | 1 | # Copyright (c) 2026 Beijing Volcano Engine Technology Co., Ltd. |
| LOW | openviking/parse/resource_detector/recursive.py | 1 | # Copyright (c) 2026 Beijing Volcano Engine Technology Co., Ltd. |
| LOW | openviking/parse/resource_detector/size.py | 1 | # Copyright (c) 2026 Beijing Volcano Engine Technology Co., Ltd. |
| LOW | openviking/models/__init__.py | 1 | # Copyright (c) 2026 Beijing Volcano Engine Technology Co., Ltd. |
| LOW | openviking/storage/collection_schemas.py | 81 | # - URI 包含 "memories" → "memory" |
| LOW | openviking/storage/vectordb/meta/__init__.py | 1 | # Copyright (c) 2026 Beijing Volcano Engine Technology Co., Ltd. |
| LOW | openviking/storage/vectordb/utils/__init__.py | 1 | # Copyright (c) 2026 Beijing Volcano Engine Technology Co., Ltd. |
| LOW | openviking/storage/vectordb/project/__init__.py | 1 | # Copyright (c) 2026 Beijing Volcano Engine Technology Co., Ltd. |
| LOW | openviking/storage/vectordb/index/__init__.py | 1 | # Copyright (c) 2026 Beijing Volcano Engine Technology Co., Ltd. |
| LOW | openviking/storage/vectordb/service/__init__.py | 1 | # Copyright (c) 2026 Beijing Volcano Engine Technology Co., Ltd. |
| LOW | openviking/storage/vectordb/vectorize/__init__.py | 1 | # Copyright (c) 2026 Beijing Volcano Engine Technology Co., Ltd. |
| LOW | openviking/storage/vectordb/store/__init__.py | 1 | # Copyright (c) 2026 Beijing Volcano Engine Technology Co., Ltd. |
| LOW | openviking/session/memory/graph_view.py | 281 | #detail-content p, #detail-content ul, #detail-content ol, #detail-content pre, #detail-content blockquote, #detail-co |
| LOW | tests/unit/__init__.py | 1 | # Copyright (c) 2026 Beijing Volcano Engine Technology Co., Ltd. |
| 386 more matches not shown… | |||
| Severity | File | Line | Snippet |
|---|---|---|---|
| CRITICAL | …chmark/tau2/vikingbot/scripts/vikingbot_tau2_runner.py | 35 | from vikingbot.utils.helpers import get_source_workspace_path |
| CRITICAL | bot/vikingbot/config/loader.py | 38 | from vikingbot.utils.helpers import get_data_path |
| CRITICAL | bot/vikingbot/providers/openai_compatible_provider.py | 18 | from vikingbot.utils.helpers import cal_str_tokens |
| CRITICAL | bot/vikingbot/providers/litellm_provider.py | 14 | from vikingbot.utils.helpers import cal_str_tokens |
| CRITICAL | bot/vikingbot/agent/subagent.py | 17 | from vikingbot.utils.helpers import ensure_non_empty_assistant_content |
| CRITICAL | bot/vikingbot/agent/memory.py | 12 | from vikingbot.utils.helpers import ensure_dir |
| CRITICAL | bot/vikingbot/agent/context.py | 17 | from vikingbot.utils.helpers import ensure_non_empty_assistant_content |
| CRITICAL | bot/vikingbot/agent/context.py | 68 | from vikingbot.utils.helpers import ensure_workspace_templates |
| CRITICAL | bot/vikingbot/agent/loop.py | 41 | from vikingbot.utils.helpers import cal_str_tokens, ensure_non_empty_assistant_content |
| CRITICAL | bot/vikingbot/openviking_mount/session_integration.py | 18 | from vikingbot.utils.helpers import get_workspace_path |
| CRITICAL | bot/vikingbot/openviking_mount/manager.py | 16 | from vikingbot.utils.helpers import get_mounts_path, get_bot_data_path |
| CRITICAL | bot/vikingbot/hooks/builtins/openviking_hooks.py | 18 | from vikingbot.utils.helpers import cal_str_tokens |
| CRITICAL | bot/vikingbot/channels/telegram.py | 322 | from vikingbot.utils.helpers import get_media_path |
| CRITICAL | bot/vikingbot/channels/discord.py | 207 | from vikingbot.utils.helpers import get_media_path |
| CRITICAL | bot/vikingbot/channels/mochat.py | 19 | from vikingbot.utils.helpers import get_data_path |
| CRITICAL | bot/vikingbot/channels/feishu.py | 191 | response = await self._client.im.v1.message_resource.aget(request) |
| CRITICAL | bot/vikingbot/channels/feishu.py | 195 | response = await self._client.im.v1.image.aget(request) |
| CRITICAL | bot/vikingbot/channels/feishu.py | 229 | response = await self._client.im.v1.chat.aget(request) |
| CRITICAL | bot/vikingbot/channels/feishu.py | 344 | response = self._client.im.v1.message_reaction.create(request) |
| CRITICAL | bot/vikingbot/channels/feishu.py | 640 | response = self._client.im.v1.message.reply(request) |
| CRITICAL | bot/vikingbot/channels/feishu.py | 655 | response = self._client.im.v1.message.create(request) |
| CRITICAL | bot/vikingbot/channels/feishu.py | 844 | response = await self._client.im.v1.chat_members.aget(request) |
| CRITICAL | bot/vikingbot/channels/feishu.py | 908 | user_response = self._client.contact.v3.user.get(user_request) |
| CRITICAL | bot/vikingbot/session/manager.py | 15 | from vikingbot.utils.helpers import ensure_dir, ensure_non_empty_assistant_content |
| CRITICAL | bot/vikingbot/session/manager.py | 182 | from vikingbot.utils.helpers import ensure_session_workspace |
| Severity | File | Line | Snippet |
|---|---|---|---|
| LOW | .pr_agent.toml | 122 | require_tests_review = true # Check if tests are present (default: true) |
| LOW | benchmark/locomo/openclaw/eval.py | 451 | # Check if session_path is already a full path |
| LOW | benchmark/locomo/openclaw/eval.py | 477 | # Check if jsonl_filename is already a full path |
| LOW | benchmark/RAG/scripts/download_dataset.py | 182 | # Check if path exists (either file or directory) |
| LOW | benchmark/RAG/scripts/download_dataset.py | 291 | # Check if any datasets are configured |
| LOW | benchmark/RAG/src/adapters/qasper_adapter.py | 162 | # Check if all answers are marked as unanswerable |
| LOW | benchmark/RAG/src/adapters/syllabusqa_adapter.py | 238 | # Check if heading style |
| LOW | benchmark/RAG/src/adapters/financebench_adapter.py | 54 | # Check if pdfs is in data directory or parent directory |
| LOW | openviking/crypto/config.py | 69 | # Check if file exists or can be created |
| LOW | openviking/crypto/config.py | 77 | # Check if parent directory exists or can be written to |
| LOW | openviking/crypto/config.py | 83 | # Check if we can write to the closest existing ancestor directory |
| LOW | openviking/crypto/providers.py | 240 | # Write file with permissions 0600 |
| LOW | openviking/crypto/providers.py | 329 | # Check if transit engine is already enabled |
| LOW | openviking/parse/registry.py | 229 | # Check if source looks like a file path (short enough and no newlines) |
| LOW | openviking/parse/tree_builder.py | 69 | # Check if it's a media file first |
| LOW | openviking/parse/tree_builder.py | 129 | # Check if source_path is a GitHub/GitLab URL and extract org/repo |
| LOW | openviking/parse/vlm.py | 328 | # Check if we have images to process |
| LOW | openviking/parse/parsers/markdown.py | 333 | # Check if in excluded range |
| LOW | openviking/parse/parsers/markdown.py | 338 | # Check if escaped \# |
| LOW | openviking/parse/parsers/zip_parser.py | 59 | # Check if it's a valid ZIP file (non-blocking) |
| LOW | openviking/parse/parsers/zip_parser.py | 76 | # Check if extracted content has a single root directory (non-blocking) |
| LOW | openviking/parse/parsers/directory.py | 90 | # Check if this is a git repository, delegate to CodeRepositoryParser |
| LOW | openviking/parse/parsers/directory.py | 172 | # Check if this is a media parser and we should directly upload |
| LOW | openviking/parse/parsers/code/code.py | 129 | # Check if source is already a local directory (should always be true) |
| LOW | openviking/pyagfs/client.py | 234 | # Check if it's a server error (5xx) which might be retryable |
| LOW | openviking/pyagfs/helpers.py | 36 | # Check if source exists and get its type |
| LOW | openviking/pyagfs/helpers.py | 110 | # Check if remote path exists and get its type |
| LOW | openviking/pyagfs/helpers.py | 177 | # Read file in chunks for memory efficiency |
| LOW | openviking/pyagfs/helpers.py | 272 | # Check if directory already exists |
| LOW | openviking/server/bootstrap.py | 325 | # Check if vikingbot is available |
| LOW | openviking/server/bootstrap.py | 373 | # Set environment to ensure it uses the same Python environment |
| LOW | openviking/server/auth.py | 298 | # Check if this is an admin path without identity |
| LOW | openviking/server/api_keys/legacy.py | 114 | # Check if it's a hashed key |
| LOW | openviking/utils/network_guard.py | 133 | # Check if private networks are allowed globally |
| LOW | openviking/utils/network_guard.py | 137 | # Check if host is in allowed code hosting domains |
| LOW | openviking/models/embedder/cohere_embedders.py | 67 | # Check if server-side dimension reduction is supported |
| LOW | openviking/observability/log_trace_bridge.py | 73 | # Check if all elements are of the same primitive type |
| LOW | openviking/storage/viking_fs.py | 605 | # Check if it's temp directory (files already encrypted) |
| LOW | openviking/storage/queuefs/semantic_processor.py | 189 | # Check if file is a code file |
| LOW | openviking/storage/queuefs/semantic_processor.py | 194 | # Check if file is a documentation file |
| LOW | …viking/storage/vectordb/collection/local_collection.py | 811 | # Check if the index needs rebuilding |
| LOW | openviking/storage/vectordb/project/local_project.py | 91 | # Check if it's a collection directory (should contain collection_meta.json) |
| LOW | openviking/storage/vectordb/service/api_fastapi.py | 210 | # Check if exists before deleting? The original code didn't check existence explicitly before calling drop, |
| LOW | openviking/storage/vectordb/store/file_store.py | 64 | # Open file in binary read-only mode |
| LOW | openviking/storage/vectordb/store/serializable.py | 84 | # Check if it's the correct C++ enum type |
| LOW | openviking/session/memory/extract_loop.py | 209 | # Check if this is the last iteration - force final result |
| LOW | openviking/session/memory/extract_loop.py | 242 | # Check if any write_uris target existing files that weren't read |
| LOW | openviking/session/memory/memory_type_registry.py | 270 | # Check if any field has init_value |
| LOW | openviking/session/memory/memory_type_registry.py | 298 | # Check if file already exists |
| LOW | openviking/session/memory/memory_type_registry.py | 319 | # Write the file |
| LOW | openviking/session/memory/utils/uri.py | 165 | # Check if URI starts with any allowed directory |
| LOW | openviking/session/memory/utils/uri.py | 169 | # Check if URI matches any allowed pattern |
| LOW | openviking/session/memory/merge_op/patch_handler.py | 762 | # Check if all results are successful (including no-change cases) |
| LOW | openviking/session/memory/merge_op/patch_handler.py | 818 | # Check if first line is :start_line: |
| LOW | openviking/session/memory/merge_op/patch_handler.py | 1152 | # Check if all results are successful (including no-change cases) |
| LOW | openviking_cli/utils/logger.py | 557 | # Check if this logger should be excluded |
| LOW | openviking_cli/utils/logger.py | 561 | # Check if log level is below the minimum threshold for span events |
| LOW | openviking_cli/utils/logger.py | 565 | # Check if OTel is available |
| LOW | openviking_cli/utils/logger.py | 386 | # Check if the handler has already been added |
| LOW | tests/debug_trace.py | 265 | # Check if any descendant is an error |
| 29 more matches not shown… | |||
| Severity | File | Line | Snippet |
|---|---|---|---|
| LOW | benchmark/locomo/openclaw/run_full_eval.sh | 77 | # Step 1: 导入数据 |
| LOW | benchmark/locomo/openclaw/run_full_eval.sh | 101 | # Step 2: 运行 QA 模型(默认输出到 result/qa_results.csv) |
| LOW | benchmark/locomo/openclaw/run_full_eval.sh | 105 | # Step 3: 裁判打分 |
| LOW | benchmark/locomo/openclaw/run_full_eval.sh | 109 | # Step 4: 计算结果 |
| LOW | benchmark/RAG/scripts/prepare_dataset.py | 38 | # Step 1: Download |
| LOW | benchmark/RAG/scripts/prepare_dataset.py | 53 | # Step 2: Sample |
| LOW | openviking/parse/parsers/pdf.py | 123 | # Step 1: Convert PDF to Markdown |
| LOW | openviking/parse/parsers/pdf.py | 129 | # Step 2: Parse Markdown using MarkdownParser, pass through resource name |
| LOW | openviking/parse/parsers/pdf.py | 138 | # Step 3: Update metadata for PDF origin |
| LOW | openviking/parse/parsers/pdf.py | 484 | # Step 1: Sample font size distribution (every 5th page) |
| LOW | openviking/parse/parsers/pdf.py | 499 | # Step 2: Determine body font size and heading font sizes |
| LOW | openviking/parse/parsers/pdf.py | 525 | # Step 3: Extract heading text page by page |
| LOW | openviking/parse/parsers/pdf.py | 585 | # Step 4: Deduplicate - filter headers appearing on >30% of pages |
| LOW | …iking/prompts/templates/retrieval/intent_analysis.yaml | 138 | ### Step 1: Identify Task Type |
| LOW | …iking/prompts/templates/retrieval/intent_analysis.yaml | 163 | ### Step 2: Check Context Coverage |
| LOW | …iking/prompts/templates/retrieval/intent_analysis.yaml | 173 | ### Step 3: Generate Queries |
| LOW | openviking/retrieve/hierarchical_retriever.py | 143 | # Step 1: Determine starting directories based on target_directories or context_type |
| LOW | openviking/retrieve/hierarchical_retriever.py | 149 | # Step 2: Global vector search to supplement starting points |
| LOW | openviking/retrieve/hierarchical_retriever.py | 177 | # Step 3: Merge starting points |
| LOW | openviking/retrieve/hierarchical_retriever.py | 197 | # Step 4: Recursive search |
| LOW | openviking/retrieve/hierarchical_retriever.py | 215 | # Step 6: Convert results |
| LOW | …ing/session/memory/session_extract_context_provider.py | 407 | # Step 1: Separate schemas into multi-file (ls) and single-file (direct read) |
| LOW | …ing/session/memory/session_extract_context_provider.py | 440 | # Step 2: Execute search for each ls directory (instead of ls) |
| LOW | tests/vectordb/test_recall.py | 504 | # We need to check if the data came back. |
| LOW | tests/oc2ov_test/upgrade_openviking.sh | 444 | # Step 1: Stop OpenClaw gateway completely |
| LOW | tests/oc2ov_test/upgrade_openviking.sh | 472 | # Step 2: Clean up OpenClaw stale state (lock files, session locks, cache) |
| LOW | tests/oc2ov_test/upgrade_openviking.sh | 563 | # Step 3: Verify OpenViking installation path before starting |
| LOW | tests/oc2ov_test/upgrade_openviking.sh | 759 | # Step 4: Clean up stale OV sessions with failed archives |
| LOW | tests/oc2ov_test/upgrade_openviking.sh | 788 | # Step 5: Start OpenClaw gateway |
| LOW | tests/oc2ov_test/upgrade_openviking.sh | 849 | # Step 5: Verify OpenViking is correctly loaded by OpenClaw |
| LOW | …/spdlog-1.14.1/include/spdlog/fmt/bundled/format-inl.h | 1244 | // Step 1: integer promotion & Schubfach multiplier calculation. |
| LOW | …/spdlog-1.14.1/include/spdlog/fmt/bundled/format-inl.h | 1299 | // Step 2: Try larger divisor; remove trailing zeros if necessary. |
| LOW | …/spdlog-1.14.1/include/spdlog/fmt/bundled/format-inl.h | 1331 | // Step 3: Find the significand with the smaller divisor. |
| LOW | examples/openclaw-plugin/setup-helper/install.js | 2602 | // Step 1: Stop gateway |
| LOW | examples/openclaw-plugin/setup-helper/install.js | 2606 | // Step 2: Backup config |
| LOW | examples/openclaw-plugin/setup-helper/install.js | 2611 | // Step 3: Clean plugin config from openclaw.json |
| LOW | examples/openclaw-plugin/setup-helper/install.js | 2615 | // Step 4: Backup and remove plugin directories |
| LOW | examples/openclaw-plugin/setup-helper/install.js | 2625 | // Step 5: Remove env files |
| LOW | examples/openclaw-plugin/setup-helper/install.js | 2647 | // Step 6: Write uninstall audit |
| LOW | …aw-plugin/upgrade_scripts/uninstall-openclaw-plugin.sh | 110 | # Step 1: 停止 OpenClaw gateway |
| LOW | …aw-plugin/upgrade_scripts/uninstall-openclaw-plugin.sh | 121 | # Step 2: 备份当前配置 |
| LOW | …aw-plugin/upgrade_scripts/uninstall-openclaw-plugin.sh | 130 | # Step 3: 清理 openclaw.json 中的新版插件配置 |
| LOW | …aw-plugin/upgrade_scripts/uninstall-openclaw-plugin.sh | 253 | # Step 4: 恢复 OpenClaw memory 为 memory-core |
| LOW | …aw-plugin/upgrade_scripts/uninstall-openclaw-plugin.sh | 261 | # Step 5: 备份插件目录 |
| LOW | …aw-plugin/upgrade_scripts/uninstall-openclaw-plugin.sh | 275 | # Step 6: 保留 OpenViking 服务/运行时 |
| LOW | …aw-plugin/upgrade_scripts/cleanup-memory-openviking.sh | 62 | # Step 1: 停止 OpenClaw gateway |
| LOW | …aw-plugin/upgrade_scripts/cleanup-memory-openviking.sh | 73 | # Step 2: 备份配置文件和旧版插件目录 |
| LOW | …aw-plugin/upgrade_scripts/cleanup-memory-openviking.sh | 92 | # Step 3: 清理 openclaw.json 中的旧版插件配置 |
| LOW | examples/common/recipe.py | 179 | # Step 1: Search for relevant content (timed) |
| LOW | examples/common/recipe.py | 186 | # Step 2: Build context from search results |
| LOW | examples/common/recipe.py | 200 | # Step 3: Build messages array for chat completion API |
| LOW | examples/common/recipe.py | 225 | # Step 4: Call LLM with messages array (timed) |
| LOW | bot/scripts/test_restart_openviking_server.sh | 42 | # Step 0: Clean up test data directory |
| LOW | bot/scripts/test_restart_openviking_server.sh | 51 | # Step 1: Clean up test data directory (skip vikingbot kill) |
| LOW | bot/scripts/test_restart_openviking_server.sh | 55 | # Step 2: Kill existing openviking-server on specific port |
| LOW | bot/scripts/test_restart_openviking_server.sh | 74 | # Step 3: Wait for port to be released |
| LOW | bot/scripts/test_restart_openviking_server.sh | 85 | # Step 4: Verify test config exists |
| LOW | bot/scripts/test_restart_openviking_server.sh | 99 | # Step 5: Start openviking-server with test config |
| LOW | bot/scripts/test_restart_openviking_server.sh | 115 | # Step 6: Wait for server to start |
| LOW | bot/scripts/restart_openviking_server.sh | 38 | # Step 0: Kill process on port and delete data directory |
| 3 more matches not shown… | |||
| Severity | File | Line | Snippet |
|---|---|---|---|
| MEDIUM | openviking/core/path_variables.py | 162 | # Create a temporary resolver with the custom datetime |
| MEDIUM | openviking/parse/tree_builder.py | 193 | # Create a minimal Context object for the root so that tree.root is not None |
| MEDIUM | openviking/storage/vectordb/project/http_project.py | 168 | # Create a new dict with required fields without modifying the input dict |
| MEDIUM | openviking/telemetry/execution.py | 144 | # Create a new instance from the snapshot |
| MEDIUM | openviking/session/memory/schema_model_generator.py | 144 | # Create the model |
| MEDIUM | openviking/session/memory/merge_op/patch_handler.py | 587 | # Initialize search variables |
| MEDIUM | openviking/session/memory/merge_op/patch_handler.py | 978 | # Initialize search variables |
| MEDIUM | tests/test_edge_cases.py | 92 | # Create a filename that's exactly 255 bytes in UTF-8 |
| MEDIUM | tests/misc/test_zip_safe.py | 137 | # Create a zip with raw bytes: write CJK UTF-8 bytes as the filename |
| MEDIUM | tests/unit/crypto/test_providers_mock.py | 110 | # Create a minimal mock provider that just needs type detection |
| MEDIUM | tests/unit/crypto/test_providers_mock.py | 120 | # Create a minimal mock provider that just needs type detection |
| MEDIUM | tests/integration/test_encryption_integration.py | 679 | # Create a test directory |
| MEDIUM | tests/integration/test_quick_start_lite.py | 79 | # Create a temporary config file |
| MEDIUM | tests/integration/test_quick_start_lite.py | 83 | # Create a dummy config structure (minimal valid config for Volcengine provider) |
| MEDIUM | tests/vectordb/test_bytes_row.py | 20 | # Define a complex data structure for testing consistency |
| MEDIUM | tests/server/test_api_sessions.py | 142 | # Create a session first |
| MEDIUM | tests/server/test_api_relations.py | 18 | # Create a second resource to link to |
| MEDIUM | tests/server/test_api_search.py | 528 | # Create a session first |
| MEDIUM | tests/storage/mock_backend.py | 39 | # Create a dummy collection wrapping MockCollection |
| MEDIUM | tests/storage/test_vectordb_adaptor.py | 24 | # Create a valid config file |
| MEDIUM | tests/telemetry/test_observability_context.py | 487 | # Create a custom context |
| MEDIUM | tests/client/test_windows_path_handling.py | 20 | # Create a directory structure with nested subdirectories |
| MEDIUM | tests/client/test_windows_path_handling.py | 52 | # Create a complex directory structure |
| MEDIUM | tests/client/test_windows_path_handling.py | 91 | # Create a ZIP with backslash paths (simulating Windows-created ZIP) |
| MEDIUM | tests/session/memory/test_schema_models.py | 359 | # Create a temporary YAML file for a new memory type |
| MEDIUM | examples/multi_tenant/admin_workflow.sh | 233 | # Create a second account to test that ADMIN of one account cannot manage another |
| MEDIUM | examples/basic-usage/basic_usage.py | 240 | # Create a new session |
| MEDIUM | bot/vikingbot/providers/openai_compatible_provider.py | 60 | # Create a copy to avoid modifying the original list |
| MEDIUM | bot/vikingbot/providers/litellm_provider.py | 117 | # Create a copy to avoid modifying the original list |
| MEDIUM | bot/tests/test_chat_functionality.py | 64 | # Create a test response |
| MEDIUM | bot/tests/test_chat_functionality.py | 154 | # Create a test response |
| Severity | File | Line | Snippet |
|---|---|---|---|
| MEDIUM | web-studio/package-lock.json | 12869 | "resolved": "https://registry.npmjs.org/robust-predicates/-/robust-predicates-3.0.3.tgz", |
| MEDIUM | openviking/utils/media_processor.py | 26 | # 1. IANA media type mappings (comprehensive) |
| LOW | openviking/storage/vectordb/utils/validation.py | 202 | # Let's normalize everything to lower case if the Literal allows it, or just pass through. |
| MEDIUM | openviking/prompts/templates/memory/tools.yaml | 96 | - "## Guidelines" - best practices |
| MEDIUM | openviking/prompts/templates/memory/skills.yaml | 90 | - "## Guidelines" - best practices |
| LOW | openviking/eval/ragas/generator.py | 66 | # For demonstration, we'll just return an empty dataset or mock some logic |
| MEDIUM | tests/vectordb/test_crash_recovery.py | 72 | """Helper to setup collection config for robust test""" |
| MEDIUM | tests/server/oauth/test_auth_integration.py | 342 | # Token's USER role is preserved — promotion doesn't auto-elevate. |
| MEDIUM | …est/scenarios/slow/test_resource_search_consistency.py | 51 | f"# {kw}\n\nDetailed analysis of GraphQL vs REST API design patterns and best practices." |
| LOW | tests/session/memory/test_compressor_v2.py | 48 | # For testing purposes, we'll just return the URI as-is |
| MEDIUM | …arty/spdlog-1.14.1/include/spdlog/fmt/bundled/format.h | 3501 | // Compilers are not aware of how to leverage the maximum value of |
| MEDIUM | bot/vikingbot/channels/dingtalk.py | 49 | # Parse using SDK's ChatbotMessage for robust handling |
| LOW | bot/vikingbot/channels/base.py | 344 | # Fallback: just return a link if we have it |
| LOW | bot/demo/werewolf/werewolf_server.py | 896 | # We don't have the date, just use current time |
| Severity | File | Line | Snippet |
|---|---|---|---|
| HIGH | examples/opencode/plugin/skills/openviking/SKILL.md | 14 | OpenViking stores content in a virtual filesystem under the `viking://` namespace. Each URI maps to a file or directory, |
| HIGH | examples/opencode/plugin/skills/openviking/SKILL.md | 55 | # Directories: AI-generated summaries |
| Severity | File | Line | Snippet |
|---|---|---|---|
| LOW | benchmark/tau2/vikingbot/run_full_test.sh | 9 | # Usage: |
| LOW | benchmark/tau2/vikingbot/setup_env.sh | 16 | # Usage: |
| LOW | benchmark/tau2/vikingbot/scripts/run_tau2_domain.sh | 5 | # Usage: |
| LOW | benchmark/locomo/vikingbot/run_full_eval.sh | 4 | # Usage: |
| LOW | third_party/spdlog-1.14.1/include/spdlog/mdc.h | 14 | // Usage example: |
| LOW | examples/multi_tenant/admin_workflow.sh | 26 | # Usage: |
| Severity | File | Line | Snippet |
|---|---|---|---|
| LOW | docs/design/memory-link-design.md | 853 | title: "Acme Corp" |
| LOW | third_party/spdlog-1.14.1/bench/bench.cpp | 223 | const char *msg = "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vestibulum pharetra |
| LOW | third_party/spdlog-1.14.1/bench/bench.cpp | 223 | const char *msg = "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vestibulum pharetra |
| LOW | third_party/spdlog-1.14.1/bench/latency.cpp | 21 | "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vestibulum pharetra metus cursus " |
| LOW | third_party/spdlog-1.14.1/bench/latency.cpp | 21 | "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vestibulum pharetra metus cursus " |
| Severity | File | Line | Snippet |
|---|---|---|---|
| LOW | benchmark/skillsbench/skill_bench_eval.py | 442 | def run_task( |
| LOW | openviking/telemetry/tracer.py | 385 | async def my_function(): |
| LOW | openviking/telemetry/tracer.py | 642 | async def my_function(): |
| LOW | tests/parse/test_ast_extractor.py | 1249 | assert "def helper(x: int) -> bool" in text |
| LOW | tests/parse/test_code_tools.py | 289 | def helper(self): |