HKUDS/DeepTutor · error · HTTPException
Both name and vault_path are required.
Error message
Both name and vault_path are required.
What it means
Error "Both name and vault_path are required." thrown in HKUDS/DeepTutor.
Source
Thrown at deeptutor/api/routers/knowledge.py:1722
class ConnectObsidianRequest(BaseModel):
name: str
vault_path: str
@router.post("/connect-obsidian")
async def connect_obsidian_vault(payload: ConnectObsidianRequest):
"""Connect an existing Obsidian vault as a knowledge base.
Registers a pointer to the user's vault directory (``type: obsidian``) — no
upload, no index. The vault must be a directory the server can reach (i.e. a
local/self-hosted deployment); the Obsidian capability reads it live.
"""
name = (payload.name or "").strip()
vault_path = (payload.vault_path or "").strip()
if not name or not vault_path:
raise HTTPException(status_code=400, detail="Both name and vault_path are required.")
try:
folder = assert_path_allowed(vault_path)
manager = get_kb_manager()
entry = manager.register_obsidian_vault(name, str(folder))
return {"status": "connected", "name": name, "vault_path": entry["vault_path"]}
except ValueError as e:
# Missing/invalid path, disallowed location, or a name clash → 400.
raise HTTPException(status_code=400, detail=str(e))
except HTTPException:
raise
except Exception as e:
logger.error(f"Error connecting Obsidian vault: {e}")
raise HTTPException(status_code=500, detail=str(e))
class ConnectMarginNote4Request(BaseModel):
name: str
db_path: str = ""View on GitHub (pinned to 3e82f13042)
When it happens
Trigger: Thrown at deeptutor/api/routers/knowledge.py:1722 when the library encounters an invalid state.
Common situations: See trigger scenarios.
AI-assisted analysis of HKUDS/DeepTutor@3e82f13042 (2026-08-27).
Data as JSON: /api/errors/b22731164322bd96.
Report an issue: GitHub.