oclaw/runtime/orchestration/inventory.py
oliver 420abac9f1 refactor: root-package imports (svc/runtime/interfaces) and fix PYTHONPATH
- Rename platform/ to svc/ to avoid shadowing stdlib platform.
- Replace from oclaw.* with from svc/runtime/interfaces; update -m CLI paths.
- tests/conftest: prepend repo root to sys.path (no parent-folder package name).
- CI: paths and offline_eval script under repo root.
- Ops scripts: PYTHONPATH must be repo root for python -m runtime.* (fixes gateway/WhatsApp sidecar startup).
- Fix default oclaw.json path in tabular/file attachment limits; stabilize attachment test config.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-05-13 14:51:17 +08:00

20 lines
791 B
Python

from __future__ import annotations
from typing import Any
from runtime.tools import tool_inventory
def inventory_snapshot() -> dict[str, Any]:
tools = tool_inventory()
data_sources = [
{"name": "sqlite", "scope": "chat_session/chat_message/tool_log/app_setting/llm_profile"},
{"name": "attachments", "scope": "user uploaded files parsed as text/image blocks"},
{"name": "external_api", "scope": "tool handlers (weather/geocode/http)"},
]
permissions = {
"tool_groups": ["ops", "system"],
"high_risk_actions": ["port_scan", "network write-like operations", "batch changes"],
"default_policy": "allow-read, review-before-high-risk",
}
return {"tools": tools, "data_sources": data_sources, "permissions": permissions}