dailybot-cli 3.1.0__tar.gz → 3.1.2__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (49) hide show
  1. {dailybot_cli-3.1.0 → dailybot_cli-3.1.2}/PKG-INFO +3 -3
  2. {dailybot_cli-3.1.0 → dailybot_cli-3.1.2}/README.md +2 -2
  3. {dailybot_cli-3.1.0 → dailybot_cli-3.1.2}/dailybot_cli/commands/chat.py +6 -1
  4. {dailybot_cli-3.1.0 → dailybot_cli-3.1.2}/dailybot_cli/commands/kudos.py +26 -2
  5. {dailybot_cli-3.1.0 → dailybot_cli-3.1.2}/dailybot_cli/commands/public_api_helpers.py +8 -2
  6. {dailybot_cli-3.1.0 → dailybot_cli-3.1.2}/dailybot_cli.egg-info/PKG-INFO +3 -3
  7. {dailybot_cli-3.1.0 → dailybot_cli-3.1.2}/pyproject.toml +1 -1
  8. {dailybot_cli-3.1.0 → dailybot_cli-3.1.2}/LICENSE +0 -0
  9. {dailybot_cli-3.1.0 → dailybot_cli-3.1.2}/dailybot_cli/__init__.py +0 -0
  10. {dailybot_cli-3.1.0 → dailybot_cli-3.1.2}/dailybot_cli/api_client.py +0 -0
  11. {dailybot_cli-3.1.0 → dailybot_cli-3.1.2}/dailybot_cli/commands/__init__.py +0 -0
  12. {dailybot_cli-3.1.0 → dailybot_cli-3.1.2}/dailybot_cli/commands/agent.py +0 -0
  13. {dailybot_cli-3.1.0 → dailybot_cli-3.1.2}/dailybot_cli/commands/ask.py +0 -0
  14. {dailybot_cli-3.1.0 → dailybot_cli-3.1.2}/dailybot_cli/commands/auth.py +0 -0
  15. {dailybot_cli-3.1.0 → dailybot_cli-3.1.2}/dailybot_cli/commands/authoring_helpers.py +0 -0
  16. {dailybot_cli-3.1.0 → dailybot_cli-3.1.2}/dailybot_cli/commands/channels.py +0 -0
  17. {dailybot_cli-3.1.0 → dailybot_cli-3.1.2}/dailybot_cli/commands/checkin.py +0 -0
  18. {dailybot_cli-3.1.0 → dailybot_cli-3.1.2}/dailybot_cli/commands/config.py +0 -0
  19. {dailybot_cli-3.1.0 → dailybot_cli-3.1.2}/dailybot_cli/commands/form.py +0 -0
  20. {dailybot_cli-3.1.0 → dailybot_cli-3.1.2}/dailybot_cli/commands/hook.py +0 -0
  21. {dailybot_cli-3.1.0 → dailybot_cli-3.1.2}/dailybot_cli/commands/identity.py +0 -0
  22. {dailybot_cli-3.1.0 → dailybot_cli-3.1.2}/dailybot_cli/commands/interactive.py +0 -0
  23. {dailybot_cli-3.1.0 → dailybot_cli-3.1.2}/dailybot_cli/commands/interactive_chat.py +0 -0
  24. {dailybot_cli-3.1.0 → dailybot_cli-3.1.2}/dailybot_cli/commands/query_options.py +0 -0
  25. {dailybot_cli-3.1.0 → dailybot_cli-3.1.2}/dailybot_cli/commands/status.py +0 -0
  26. {dailybot_cli-3.1.0 → dailybot_cli-3.1.2}/dailybot_cli/commands/team.py +0 -0
  27. {dailybot_cli-3.1.0 → dailybot_cli-3.1.2}/dailybot_cli/commands/uninstall.py +0 -0
  28. {dailybot_cli-3.1.0 → dailybot_cli-3.1.2}/dailybot_cli/commands/update.py +0 -0
  29. {dailybot_cli-3.1.0 → dailybot_cli-3.1.2}/dailybot_cli/commands/upgrade.py +0 -0
  30. {dailybot_cli-3.1.0 → dailybot_cli-3.1.2}/dailybot_cli/commands/user.py +0 -0
  31. {dailybot_cli-3.1.0 → dailybot_cli-3.1.2}/dailybot_cli/commands/user_scoped_actions.py +0 -0
  32. {dailybot_cli-3.1.0 → dailybot_cli-3.1.2}/dailybot_cli/commands/version.py +0 -0
  33. {dailybot_cli-3.1.0 → dailybot_cli-3.1.2}/dailybot_cli/commands/workflow.py +0 -0
  34. {dailybot_cli-3.1.0 → dailybot_cli-3.1.2}/dailybot_cli/config.py +0 -0
  35. {dailybot_cli-3.1.0 → dailybot_cli-3.1.2}/dailybot_cli/display.py +0 -0
  36. {dailybot_cli-3.1.0 → dailybot_cli-3.1.2}/dailybot_cli/install_method.py +0 -0
  37. {dailybot_cli-3.1.0 → dailybot_cli-3.1.2}/dailybot_cli/ledger.py +0 -0
  38. {dailybot_cli-3.1.0 → dailybot_cli-3.1.2}/dailybot_cli/main.py +0 -0
  39. {dailybot_cli-3.1.0 → dailybot_cli-3.1.2}/dailybot_cli/tui/__init__.py +0 -0
  40. {dailybot_cli-3.1.0 → dailybot_cli-3.1.2}/dailybot_cli/tui/app.py +0 -0
  41. {dailybot_cli-3.1.0 → dailybot_cli-3.1.2}/dailybot_cli/tui/commands.py +0 -0
  42. {dailybot_cli-3.1.0 → dailybot_cli-3.1.2}/dailybot_cli/tui/conversation.py +0 -0
  43. {dailybot_cli-3.1.0 → dailybot_cli-3.1.2}/dailybot_cli/tui/intents.py +0 -0
  44. {dailybot_cli-3.1.0 → dailybot_cli-3.1.2}/dailybot_cli.egg-info/SOURCES.txt +0 -0
  45. {dailybot_cli-3.1.0 → dailybot_cli-3.1.2}/dailybot_cli.egg-info/dependency_links.txt +0 -0
  46. {dailybot_cli-3.1.0 → dailybot_cli-3.1.2}/dailybot_cli.egg-info/entry_points.txt +0 -0
  47. {dailybot_cli-3.1.0 → dailybot_cli-3.1.2}/dailybot_cli.egg-info/requires.txt +0 -0
  48. {dailybot_cli-3.1.0 → dailybot_cli-3.1.2}/dailybot_cli.egg-info/top_level.txt +0 -0
  49. {dailybot_cli-3.1.0 → dailybot_cli-3.1.2}/setup.cfg +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: dailybot-cli
3
- Version: 3.1.0
3
+ Version: 3.1.2
4
4
  Summary: Dailybot CLI - The command-line bridge between humans and agents. Progress reports, observability, and workflow automation for modern teams across Slack, Google Chat, Discord, MS Teams, and more.
5
5
  Author-email: Dailybot <support@dailybot.com>
6
6
  License: MIT
@@ -485,8 +485,8 @@ Team kudos pass through the backend's team manager, which expands the team into
485
485
  ```bash
486
486
  # List kudos you've received or given (paginated, searchable, date-filterable)
487
487
  dailybot kudos list
488
- dailybot kudos list --filter KUDOS_RECEIVED
489
- dailybot kudos list --filter KUDOS_GIVEN --since 2026-01-01 --until 2026-06-30
488
+ dailybot kudos list --filter received # KUDOS_RECEIVED also accepted
489
+ dailybot kudos list --filter given --since 2026-01-01 --until 2026-06-30
490
490
  dailybot kudos list --search "release" --all --json
491
491
 
492
492
  # Every kudos in the organization (admin-only)
@@ -446,8 +446,8 @@ Team kudos pass through the backend's team manager, which expands the team into
446
446
  ```bash
447
447
  # List kudos you've received or given (paginated, searchable, date-filterable)
448
448
  dailybot kudos list
449
- dailybot kudos list --filter KUDOS_RECEIVED
450
- dailybot kudos list --filter KUDOS_GIVEN --since 2026-01-01 --until 2026-06-30
449
+ dailybot kudos list --filter received # KUDOS_RECEIVED also accepted
450
+ dailybot kudos list --filter given --since 2026-01-01 --until 2026-06-30
451
451
  dailybot kudos list --search "release" --all --json
452
452
 
453
453
  # Every kudos in the organization (admin-only)
@@ -233,7 +233,12 @@ def _execute_send(
233
233
  with console.status(status):
234
234
  return client.send_chat_message(payload)
235
235
  except APIError as e:
236
- if e.code == "cli_send_message_target_not_allowed":
236
+ if e.code == "org_admin_required":
237
+ print_error(
238
+ "Sending as another user (--send-as-user / --send-as-me) requires organization "
239
+ "admin privileges. Run it with an admin account or an org admin's API key."
240
+ )
241
+ elif e.code == "cli_send_message_target_not_allowed":
237
242
  print_error(
238
243
  f"{e.detail}\n Your role can only reach teammates, public channels, and teams "
239
244
  "you belong to. Use an allowed target, or an org API key for org-wide reach."
@@ -211,9 +211,33 @@ def kudos_give(
211
211
  )
212
212
 
213
213
 
214
+ _KUDOS_FILTER_ALIASES: dict[str, str] = {
215
+ "kudos_received": "kudos_received",
216
+ "received": "kudos_received",
217
+ "kudos_given": "kudos_given",
218
+ "given": "kudos_given",
219
+ }
220
+
221
+
222
+ def normalize_kudos_filter(value: str | None) -> str | None:
223
+ """Map a friendly ``--filter`` value to the token the API accepts.
224
+
225
+ The API accepts only lowercase ``kudos_received`` / ``kudos_given``. The CLI
226
+ has long advertised the uppercase ``KUDOS_RECEIVED`` / ``KUDOS_GIVEN`` forms,
227
+ which the server rejects with ``400 "Not valid kudos filter"``. Unknown
228
+ values pass through so the server stays the source of truth.
229
+ """
230
+ if value is None:
231
+ return None
232
+ return _KUDOS_FILTER_ALIASES.get(value.strip().lower(), value.strip())
233
+
234
+
214
235
  @kudos.command("list")
215
236
  @click.option(
216
- "--filter", "kudos_filter", default=None, help="Filter (e.g. KUDOS_RECEIVED, KUDOS_GIVEN)."
237
+ "--filter",
238
+ "kudos_filter",
239
+ default=None,
240
+ help="Filter direction: received or given (KUDOS_RECEIVED / KUDOS_GIVEN also accepted).",
217
241
  )
218
242
  @query_options
219
243
  @click.option("--json", "json_mode", is_flag=True, help="Emit machine-readable JSON to stdout.")
@@ -262,7 +286,7 @@ def kudos_list(
262
286
  try:
263
287
  with console.status("Fetching kudos..."):
264
288
  kudos_items: list[dict[str, Any]] = client.list_kudos(
265
- kudos_filter=kudos_filter,
289
+ kudos_filter=normalize_kudos_filter(kudos_filter),
266
290
  search=spec.params.get("search"),
267
291
  start_date=spec.params.get("start_date"),
268
292
  end_date=spec.params.get("end_date"),
@@ -246,9 +246,15 @@ ERROR_CODE_MESSAGES: dict[str, str] = {
246
246
  "You've reached today's free-plan limit for this action. Wait for it to reset "
247
247
  "or upgrade your plan."
248
248
  ),
249
- # send-message: send_as_user identity (chat send)
249
+ # Returned by every admin-only endpoint (kudos org, webhooks, team member
250
+ # management, followup create, chat send-as-user). Keep it generic — a
251
+ # command with a more specific hint overrides it (see chat send).
250
252
  "org_admin_required": (
251
- "Only organization admins can send a message as another user (--send-as-user)."
253
+ "This action requires organization admin privileges. Run it with an admin "
254
+ "account, or set an org admin's API key with `dailybot config key=<API_KEY>`."
255
+ ),
256
+ "invalid_kudos_filter": (
257
+ "Invalid --filter. Use `received` or `given` (KUDOS_RECEIVED / KUDOS_GIVEN also accepted)."
252
258
  ),
253
259
  "send_as_user_conflict": (
254
260
  "--send-as-user can't be combined with --bot-name / --bot-icon-url / --bot-icon-emoji."
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: dailybot-cli
3
- Version: 3.1.0
3
+ Version: 3.1.2
4
4
  Summary: Dailybot CLI - The command-line bridge between humans and agents. Progress reports, observability, and workflow automation for modern teams across Slack, Google Chat, Discord, MS Teams, and more.
5
5
  Author-email: Dailybot <support@dailybot.com>
6
6
  License: MIT
@@ -485,8 +485,8 @@ Team kudos pass through the backend's team manager, which expands the team into
485
485
  ```bash
486
486
  # List kudos you've received or given (paginated, searchable, date-filterable)
487
487
  dailybot kudos list
488
- dailybot kudos list --filter KUDOS_RECEIVED
489
- dailybot kudos list --filter KUDOS_GIVEN --since 2026-01-01 --until 2026-06-30
488
+ dailybot kudos list --filter received # KUDOS_RECEIVED also accepted
489
+ dailybot kudos list --filter given --since 2026-01-01 --until 2026-06-30
490
490
  dailybot kudos list --search "release" --all --json
491
491
 
492
492
  # Every kudos in the organization (admin-only)
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
4
4
 
5
5
  [project]
6
6
  name = "dailybot-cli"
7
- version = "3.1.0"
7
+ version = "3.1.2"
8
8
  description = "Dailybot CLI - The command-line bridge between humans and agents. Progress reports, observability, and workflow automation for modern teams across Slack, Google Chat, Discord, MS Teams, and more."
9
9
  readme = "README.md"
10
10
  license = {text = "MIT"}
File without changes
File without changes