langchain-ai/langgraph · error · ValueError
Invalid auth.path format
Error message
Invalid auth.path format: '{auth_conf['path']}'. Must be in format './path/to/file.py:attribute_name' What it means
Config validation in the CLI's validate_config (langgraph.json handling): the auth.path entry lacks a ':' separator, so it cannot be split into a Python module path and an attribute name. The CLI needs both parts to import your auth handler at container start ('./path/to/file.py:attribute_name'); a bare file path without ':handler' fails this check.
Solutions
- Use the format './path/to/file.py:attribute_name', e.g. "auth": {"path": "./src/auth.py:auth"}
- Ensure the named attribute exists in that file and is exposed at module level
Defensive patterns
Strategy: validation
When it happens
Trigger: Thrown at libs/cli/langgraph_cli/config.py:525 when the library encounters an invalid state.
Common situations: See trigger scenarios.
AI-assisted analysis of langchain-ai/langgraph@38031739e5 (2026-08-26).
Data as JSON: /api/errors/04c6fabcafb0519f.
Report an issue: GitHub.
Appendix: source
Thrown at libs/cli/langgraph_cli/config.py:525
errors.append("`source.package` must be a non-empty string.")
if errors:
detail = "\n".join(f" - {e}" for e in errors)
raise click.UsageError(
"source.kind 'uv' requires a different "
f"config shape than dependency-based installs:\n{detail}"
)
if legacy_project_root or legacy_package:
raise click.UsageError(
"Top-level `project_root` and `package` are no longer supported. "
"Use `source.root` and `source.package` instead."
)
# Validate auth config
if auth_conf := config.get("auth"):
if "path" in auth_conf:
if ":" not in auth_conf["path"]:
raise ValueError(
f"Invalid auth.path format: '{auth_conf['path']}'. "
"Must be in format './path/to/file.py:attribute_name'"
)
# Validate encryption config
if encryption_conf := config.get("encryption"):
if "path" in encryption_conf:
if ":" not in encryption_conf["path"]:
raise ValueError(
f"Invalid encryption.path format: '{encryption_conf['path']}'. "
"Must be in format './path/to/file.py:attribute_name'"
)
if http_conf := config.get("http"):
if "app" in http_conf:
if ":" not in http_conf["app"]:
raise ValueError(
f"Invalid http.app format: '{http_conf['app']}'. "
"Must be in format './path/to/file.py:attribute_name'"
)View on GitHub (pinned to 38031739e5)