HKUDS/nanobot · error · ValueError
Slack target channel name is empty
Error message
Slack target channel name is empty
What it means
Error "Slack target channel name is empty" thrown in HKUDS/nanobot.
Source
Thrown at nanobot/channels/slack/runtime.py:305
if self._SLACK_ID_RE.fullmatch(target):
if target.startswith(("U", "W")):
return await self._open_dm_for_user(target)
return target
if target.startswith("#"):
return await self._resolve_channel_name(target[1:])
if target.startswith("@"):
return await self._resolve_user_handle(target[1:])
try:
return await self._resolve_channel_name(target)
except ValueError:
return await self._resolve_user_handle(target)
async def _resolve_channel_name(self, name: str) -> str:
normalized = self._normalize_target_name(name)
if not normalized:
raise ValueError("Slack target channel name is empty")
cache_key = f"channel:{normalized}"
if cache_key in self._target_cache:
return self._target_cache[cache_key]
cursor: str | None = None
web_api = self._require_web_api()
while True:
response = cast(dict[str, Any], await web_api.conversations_list(
types="public_channel,private_channel",
exclude_archived=True,
limit=200,
cursor=cursor,
))
for channel_value in cast(list[object], response.get("channels", [])):
channel = cast(dict[str, Any], channel_value)
if self._normalize_target_name(str(channel.get("name") or "")) == normalized:
channel_id = str(channel.get("id") or "")View on GitHub (pinned to 42f37dc4c0)
When it happens
Trigger: Thrown at nanobot/channels/slack/runtime.py:305 when the library encounters an invalid state.
Common situations: See trigger scenarios.
AI-assisted analysis of HKUDS/nanobot@42f37dc4c0 (2026-08-26).
Data as JSON: /api/errors/2910a36b33c252e4.
Report an issue: GitHub.