task-agent 1.3.0__tar.gz → 1.3.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 (148) hide show
  1. {task_agent-1.3.0 → task_agent-1.3.2}/PKG-INFO +1 -1
  2. {task_agent-1.3.0 → task_agent-1.3.2}/pyproject.toml +1 -1
  3. {task_agent-1.3.0 → task_agent-1.3.2}/src/taskagent/chat/last_used.py +39 -39
  4. {task_agent-1.3.0 → task_agent-1.3.2}/src/taskagent/cli.py +8 -9
  5. {task_agent-1.3.0 → task_agent-1.3.2}/uv.lock +1 -1
  6. {task_agent-1.3.0 → task_agent-1.3.2}/.agents/skills/next/SKILL.md +0 -0
  7. {task_agent-1.3.0 → task_agent-1.3.2}/.env +0 -0
  8. {task_agent-1.3.0 → task_agent-1.3.2}/.gemini/settings.json +0 -0
  9. {task_agent-1.3.0 → task_agent-1.3.2}/.github/workflows/ci.yml +0 -0
  10. {task_agent-1.3.0 → task_agent-1.3.2}/.github/workflows/publish.yml +0 -0
  11. {task_agent-1.3.0 → task_agent-1.3.2}/.gitignore +0 -0
  12. {task_agent-1.3.0 → task_agent-1.3.2}/.mise.toml +0 -0
  13. {task_agent-1.3.0 → task_agent-1.3.2}/.pre-commit-config.yaml +0 -0
  14. {task_agent-1.3.0 → task_agent-1.3.2}/.python-version +0 -0
  15. {task_agent-1.3.0 → task_agent-1.3.2}/.ta/agents/agy-cli/meta.toml +0 -0
  16. {task_agent-1.3.0 → task_agent-1.3.2}/.ta/agents/antigravity/meta.toml +0 -0
  17. {task_agent-1.3.0 → task_agent-1.3.2}/.ta/agents/gh/meta.toml +0 -0
  18. {task_agent-1.3.0 → task_agent-1.3.2}/.ta/agents/minimal/meta.toml +0 -0
  19. {task_agent-1.3.0 → task_agent-1.3.2}/.ta/agents/uat-aws/meta.toml +0 -0
  20. {task_agent-1.3.0 → task_agent-1.3.2}/.ta/worker +0 -0
  21. {task_agent-1.3.0 → task_agent-1.3.2}/.ta-config.json +0 -0
  22. {task_agent-1.3.0 → task_agent-1.3.2}/CLAUDE.md +0 -0
  23. {task_agent-1.3.0 → task_agent-1.3.2}/GEMINI.md +0 -0
  24. {task_agent-1.3.0 → task_agent-1.3.2}/Makefile +0 -0
  25. {task_agent-1.3.0 → task_agent-1.3.2}/README.md +0 -0
  26. {task_agent-1.3.0 → task_agent-1.3.2}/agent.env +0 -0
  27. {task_agent-1.3.0 → task_agent-1.3.2}/docs/README.md +0 -0
  28. {task_agent-1.3.0 → task_agent-1.3.2}/docs/STATION-MAP.md +0 -0
  29. {task_agent-1.3.0 → task_agent-1.3.2}/docs/architecture/README.md +0 -0
  30. {task_agent-1.3.0 → task_agent-1.3.2}/docs/chats/gemini-conversation-1773283034591.json +0 -0
  31. {task_agent-1.3.0 → task_agent-1.3.2}/docs/chats/project-init-to-v0.1.46.md +0 -0
  32. {task_agent-1.3.0 → task_agent-1.3.2}/docs/cli/README.md +0 -0
  33. {task_agent-1.3.0 → task_agent-1.3.2}/docs/development/README.md +0 -0
  34. {task_agent-1.3.0 → task_agent-1.3.2}/docs/task-agents.md +0 -0
  35. {task_agent-1.3.0 → task_agent-1.3.2}/docs/workflow/README.md +0 -0
  36. {task_agent-1.3.0 → task_agent-1.3.2}/docs/workflow/trivial_worker_policy.md +0 -0
  37. {task_agent-1.3.0 → task_agent-1.3.2}/opencode.json +0 -0
  38. {task_agent-1.3.0 → task_agent-1.3.2}/plugins/antigravity/.gemini-plugin/plugin.json +0 -0
  39. {task_agent-1.3.0 → task_agent-1.3.2}/plugins/antigravity/.mcp.json +0 -0
  40. {task_agent-1.3.0 → task_agent-1.3.2}/plugins/antigravity/README.md +0 -0
  41. {task_agent-1.3.0 → task_agent-1.3.2}/plugins/antigravity/hooks/hooks.json +0 -0
  42. {task_agent-1.3.0 → task_agent-1.3.2}/plugins/antigravity/hooks/session_start.sh +0 -0
  43. {task_agent-1.3.0 → task_agent-1.3.2}/plugins/antigravity/rules/task_agent.md +0 -0
  44. {task_agent-1.3.0 → task_agent-1.3.2}/plugins/antigravity/scripts/statusline.sh +0 -0
  45. {task_agent-1.3.0 → task_agent-1.3.2}/plugins/antigravity/skills/README.md +0 -0
  46. {task_agent-1.3.0 → task_agent-1.3.2}/plugins/antigravity/skills/agent-import/SKILL.md +0 -0
  47. {task_agent-1.3.0 → task_agent-1.3.2}/plugins/antigravity/skills/complete-task/SKILL.md +0 -0
  48. {task_agent-1.3.0 → task_agent-1.3.2}/plugins/antigravity/skills/mission-workflow/SKILL.md +0 -0
  49. {task_agent-1.3.0 → task_agent-1.3.2}/plugins/antigravity/skills/next/SKILL.md +0 -0
  50. {task_agent-1.3.0 → task_agent-1.3.2}/plugins/antigravity/skills/next-task/SKILL.md +0 -0
  51. {task_agent-1.3.0 → task_agent-1.3.2}/plugins/claude-code/.claude-plugin/plugin.json +0 -0
  52. {task_agent-1.3.0 → task_agent-1.3.2}/plugins/claude-code/.mcp.json +0 -0
  53. {task_agent-1.3.0 → task_agent-1.3.2}/plugins/claude-code/README.md +0 -0
  54. {task_agent-1.3.0 → task_agent-1.3.2}/plugins/claude-code/hooks/hooks.json +0 -0
  55. {task_agent-1.3.0 → task_agent-1.3.2}/plugins/claude-code/hooks/session_start.sh +0 -0
  56. {task_agent-1.3.0 → task_agent-1.3.2}/plugins/claude-code/scripts/statusline.sh +0 -0
  57. {task_agent-1.3.0 → task_agent-1.3.2}/plugins/claude-code/skills/agent-import/SKILL.md +0 -0
  58. {task_agent-1.3.0 → task_agent-1.3.2}/plugins/claude-code/skills/complete-task/SKILL.md +0 -0
  59. {task_agent-1.3.0 → task_agent-1.3.2}/plugins/claude-code/skills/mission-workflow/SKILL.md +0 -0
  60. {task_agent-1.3.0 → task_agent-1.3.2}/plugins/claude-code/skills/next-task/SKILL.md +0 -0
  61. {task_agent-1.3.0 → task_agent-1.3.2}/plugins/codex/.mcp.json +0 -0
  62. {task_agent-1.3.0 → task_agent-1.3.2}/plugins/codex/README.md +0 -0
  63. {task_agent-1.3.0 → task_agent-1.3.2}/plugins/copilot/.mcp.json +0 -0
  64. {task_agent-1.3.0 → task_agent-1.3.2}/plugins/copilot/README.md +0 -0
  65. {task_agent-1.3.0 → task_agent-1.3.2}/plugins/grok/.mcp.json +0 -0
  66. {task_agent-1.3.0 → task_agent-1.3.2}/plugins/grok/README.md +0 -0
  67. {task_agent-1.3.0 → task_agent-1.3.2}/scripts/clean_duplicates.py +0 -0
  68. {task_agent-1.3.0 → task_agent-1.3.2}/scripts/migrate_tasks.py +0 -0
  69. {task_agent-1.3.0 → task_agent-1.3.2}/scripts/recover_dates.py +0 -0
  70. {task_agent-1.3.0 → task_agent-1.3.2}/sidecars/adk-worker/.env.example +0 -0
  71. {task_agent-1.3.0 → task_agent-1.3.2}/sidecars/adk-worker/README.md +0 -0
  72. {task_agent-1.3.0 → task_agent-1.3.2}/sidecars/adk-worker/instructions/manager.md +0 -0
  73. {task_agent-1.3.0 → task_agent-1.3.2}/sidecars/adk-worker/instructions/validator.md +0 -0
  74. {task_agent-1.3.0 → task_agent-1.3.2}/sidecars/adk-worker/instructions/worker.md +0 -0
  75. {task_agent-1.3.0 → task_agent-1.3.2}/sidecars/adk-worker/profiles/default.json +0 -0
  76. {task_agent-1.3.0 → task_agent-1.3.2}/sidecars/adk-worker/pyproject.toml +0 -0
  77. {task_agent-1.3.0 → task_agent-1.3.2}/sidecars/adk-worker/uv.lock +0 -0
  78. {task_agent-1.3.0 → task_agent-1.3.2}/sidecars/adk-worker/worker.py +0 -0
  79. {task_agent-1.3.0 → task_agent-1.3.2}/skills/README.md +0 -0
  80. {task_agent-1.3.0 → task_agent-1.3.2}/skills/agent-import/SKILL.md +0 -0
  81. {task_agent-1.3.0 → task_agent-1.3.2}/skills/complete-task/SKILL.md +0 -0
  82. {task_agent-1.3.0 → task_agent-1.3.2}/skills/mission-workflow/SKILL.md +0 -0
  83. {task_agent-1.3.0 → task_agent-1.3.2}/skills/next/SKILL.md +0 -0
  84. {task_agent-1.3.0 → task_agent-1.3.2}/skills/next-task/SKILL.md +0 -0
  85. {task_agent-1.3.0 → task_agent-1.3.2}/src/taskagent/__init__.py +0 -0
  86. {task_agent-1.3.0 → task_agent-1.3.2}/src/taskagent/__main__.py +0 -0
  87. {task_agent-1.3.0 → task_agent-1.3.2}/src/taskagent/agent.py +0 -0
  88. {task_agent-1.3.0 → task_agent-1.3.2}/src/taskagent/agent_registry.py +0 -0
  89. {task_agent-1.3.0 → task_agent-1.3.2}/src/taskagent/audit.py +0 -0
  90. {task_agent-1.3.0 → task_agent-1.3.2}/src/taskagent/chat/__init__.py +0 -0
  91. {task_agent-1.3.0 → task_agent-1.3.2}/src/taskagent/chat/config.py +0 -0
  92. {task_agent-1.3.0 → task_agent-1.3.2}/src/taskagent/chat/discovery.py +0 -0
  93. {task_agent-1.3.0 → task_agent-1.3.2}/src/taskagent/config.py +0 -0
  94. {task_agent-1.3.0 → task_agent-1.3.2}/src/taskagent/discovery.py +0 -0
  95. {task_agent-1.3.0 → task_agent-1.3.2}/src/taskagent/importers/__init__.py +0 -0
  96. {task_agent-1.3.0 → task_agent-1.3.2}/src/taskagent/importers/antigravity.py +0 -0
  97. {task_agent-1.3.0 → task_agent-1.3.2}/src/taskagent/importers/base.py +0 -0
  98. {task_agent-1.3.0 → task_agent-1.3.2}/src/taskagent/importers/claude_code.py +0 -0
  99. {task_agent-1.3.0 → task_agent-1.3.2}/src/taskagent/importers/generic.py +0 -0
  100. {task_agent-1.3.0 → task_agent-1.3.2}/src/taskagent/inbox.py +0 -0
  101. {task_agent-1.3.0 → task_agent-1.3.2}/src/taskagent/manager.py +0 -0
  102. {task_agent-1.3.0 → task_agent-1.3.2}/src/taskagent/mcp.py +0 -0
  103. {task_agent-1.3.0 → task_agent-1.3.2}/src/taskagent/models/__init__.py +0 -0
  104. {task_agent-1.3.0 → task_agent-1.3.2}/src/taskagent/models/issue.py +0 -0
  105. {task_agent-1.3.0 → task_agent-1.3.2}/src/taskagent/models/metric.py +0 -0
  106. {task_agent-1.3.0 → task_agent-1.3.2}/src/taskagent/perf.py +0 -0
  107. {task_agent-1.3.0 → task_agent-1.3.2}/src/taskagent/plugins/__init__.py +0 -0
  108. {task_agent-1.3.0 → task_agent-1.3.2}/src/taskagent/plugins/github.py +0 -0
  109. {task_agent-1.3.0 → task_agent-1.3.2}/src/taskagent/runner.py +0 -0
  110. {task_agent-1.3.0 → task_agent-1.3.2}/src/taskagent/store_registry.py +0 -0
  111. {task_agent-1.3.0 → task_agent-1.3.2}/src/taskagent/templates.py +0 -0
  112. {task_agent-1.3.0 → task_agent-1.3.2}/src/taskagent/theme.py +0 -0
  113. {task_agent-1.3.0 → task_agent-1.3.2}/test-dir/opencode.json +0 -0
  114. {task_agent-1.3.0 → task_agent-1.3.2}/tests/conftest.py +0 -0
  115. {task_agent-1.3.0 → task_agent-1.3.2}/tests/e2e/test_agent_sandboxing.sh +0 -0
  116. {task_agent-1.3.0 → task_agent-1.3.2}/tests/test_agent.py +0 -0
  117. {task_agent-1.3.0 → task_agent-1.3.2}/tests/test_agent_registry.py +0 -0
  118. {task_agent-1.3.0 → task_agent-1.3.2}/tests/test_agy_cli_worker.py +0 -0
  119. {task_agent-1.3.0 → task_agent-1.3.2}/tests/test_atomic_mutations.py +0 -0
  120. {task_agent-1.3.0 → task_agent-1.3.2}/tests/test_auto_commit.py +0 -0
  121. {task_agent-1.3.0 → task_agent-1.3.2}/tests/test_chat_config.py +0 -0
  122. {task_agent-1.3.0 → task_agent-1.3.2}/tests/test_chat_discovery.py +0 -0
  123. {task_agent-1.3.0 → task_agent-1.3.2}/tests/test_chat_last_used.py +0 -0
  124. {task_agent-1.3.0 → task_agent-1.3.2}/tests/test_cli.py +0 -0
  125. {task_agent-1.3.0 → task_agent-1.3.2}/tests/test_cli_windows.py +0 -0
  126. {task_agent-1.3.0 → task_agent-1.3.2}/tests/test_discovery.py +0 -0
  127. {task_agent-1.3.0 → task_agent-1.3.2}/tests/test_github_token.py +0 -0
  128. {task_agent-1.3.0 → task_agent-1.3.2}/tests/test_importers.py +0 -0
  129. {task_agent-1.3.0 → task_agent-1.3.2}/tests/test_inbox.py +0 -0
  130. {task_agent-1.3.0 → task_agent-1.3.2}/tests/test_inbox_watch.py +0 -0
  131. {task_agent-1.3.0 → task_agent-1.3.2}/tests/test_lease.py +0 -0
  132. {task_agent-1.3.0 → task_agent-1.3.2}/tests/test_manager.py +0 -0
  133. {task_agent-1.3.0 → task_agent-1.3.2}/tests/test_manager_git.py +0 -0
  134. {task_agent-1.3.0 → task_agent-1.3.2}/tests/test_mcp.py +0 -0
  135. {task_agent-1.3.0 → task_agent-1.3.2}/tests/test_metrics.py +0 -0
  136. {task_agent-1.3.0 → task_agent-1.3.2}/tests/test_migration.py +0 -0
  137. {task_agent-1.3.0 → task_agent-1.3.2}/tests/test_perf.py +0 -0
  138. {task_agent-1.3.0 → task_agent-1.3.2}/tests/test_plugin_antigravity.py +0 -0
  139. {task_agent-1.3.0 → task_agent-1.3.2}/tests/test_plugin_claude.py +0 -0
  140. {task_agent-1.3.0 → task_agent-1.3.2}/tests/test_project_host_root.py +0 -0
  141. {task_agent-1.3.0 → task_agent-1.3.2}/tests/test_rebind.py +0 -0
  142. {task_agent-1.3.0 → task_agent-1.3.2}/tests/test_remote_attach.py +0 -0
  143. {task_agent-1.3.0 → task_agent-1.3.2}/tests/test_remote_create.py +0 -0
  144. {task_agent-1.3.0 → task_agent-1.3.2}/tests/test_repo_resolve.py +0 -0
  145. {task_agent-1.3.0 → task_agent-1.3.2}/tests/test_runner.py +0 -0
  146. {task_agent-1.3.0 → task_agent-1.3.2}/tests/test_store_registry.py +0 -0
  147. {task_agent-1.3.0 → task_agent-1.3.2}/tests/test_store_symlink.py +0 -0
  148. {task_agent-1.3.0 → task_agent-1.3.2}/tests/test_templates.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.5
2
2
  Name: task-agent
3
- Version: 1.3.0
3
+ Version: 1.3.2
4
4
  Summary: A prioritized, file-based task queue for autonomous agentic workers
5
5
  Author-email: Mark Stouffer <1802850+InTEGr8or@users.noreply.github.com>
6
6
  License: MIT
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "task-agent"
3
- version = "1.3.0"
3
+ version = "1.3.2"
4
4
  description = "A prioritized, file-based task queue for autonomous agentic workers"
5
5
  readme = "README.md"
6
6
  requires-python = ">=3.12"
@@ -4,7 +4,7 @@ import json
4
4
  from dataclasses import dataclass
5
5
  from datetime import datetime, timezone
6
6
  from pathlib import Path
7
- from typing import List, Optional, Tuple
7
+ from typing import Any, List, Optional, Tuple
8
8
 
9
9
  from agent_registry import (
10
10
  AgentCLIInfo,
@@ -27,6 +27,30 @@ class AgentLastUsedInfo:
27
27
  log_path: Path
28
28
 
29
29
 
30
+ def _extract_text(node: Any) -> str:
31
+ """Recursively extract string content from dicts, lists, or primitive strings."""
32
+ if isinstance(node, str):
33
+ return node
34
+ elif isinstance(node, dict):
35
+ if "text" in node and isinstance(node["text"], str):
36
+ return node["text"]
37
+ if "content" in node:
38
+ return _extract_text(node["content"])
39
+ if "message" in node:
40
+ return _extract_text(node["message"])
41
+ elif isinstance(node, list):
42
+ parts = [_extract_text(item) for item in node]
43
+ return " ".join(p for p in parts if p)
44
+ return ""
45
+
46
+
47
+ def _is_user_role(role_val: Any) -> bool:
48
+ if isinstance(role_val, str):
49
+ r = role_val.lower()
50
+ return r in ("user", "say", "user_input", "user_explicit", "human", "user_feedback")
51
+ return False
52
+
53
+
30
54
  def _parse_last_user_comment_and_timestamp(
31
55
  discovered: DiscoveredChat,
32
56
  ) -> Tuple[datetime, str]:
@@ -48,35 +72,21 @@ def _parse_last_user_comment_and_timestamp(
48
72
  try:
49
73
  data = json.loads(line)
50
74
  if isinstance(data, dict):
75
+ msg = data.get("message")
51
76
  role = (
52
77
  data.get("type")
53
78
  or data.get("role")
54
79
  or data.get("source")
80
+ or (msg.get("role") if isinstance(msg, dict) else None)
55
81
  )
56
- if role in (
57
- "user",
58
- "USER_INPUT",
59
- "USER_EXPLICIT",
60
- "human",
61
- ):
62
- content = (
63
- data.get("content")
64
- or data.get("text")
65
- or data.get("message")
66
- )
67
- if isinstance(content, list):
68
- text_parts = []
69
- for part in content:
70
- if (
71
- isinstance(part, dict)
72
- and part.get("type") == "text"
73
- ):
74
- text_parts.append(part.get("text", ""))
75
- elif isinstance(part, str):
76
- text_parts.append(part)
77
- content = " ".join(text_parts)
78
- if isinstance(content, str) and content.strip():
79
- user_comment = content.strip()
82
+ if _is_user_role(role):
83
+ raw_comment = _extract_text(msg if msg else data).strip()
84
+ if (
85
+ raw_comment
86
+ and not raw_comment.startswith("<local-command-")
87
+ and not raw_comment.startswith("<command-name>")
88
+ ):
89
+ user_comment = raw_comment
80
90
  break
81
91
  except Exception:
82
92
  continue
@@ -104,20 +114,10 @@ def _parse_last_user_comment_and_timestamp(
104
114
  or msg.get("type")
105
115
  or msg.get("source")
106
116
  )
107
- if role in (
108
- "user",
109
- "say",
110
- "user_feedback",
111
- "USER_INPUT",
112
- "human",
113
- ):
114
- content = (
115
- msg.get("text")
116
- or msg.get("content")
117
- or msg.get("message")
118
- )
119
- if isinstance(content, str) and content.strip():
120
- user_comment = content.strip()
117
+ if _is_user_role(role):
118
+ raw_comment = _extract_text(msg).strip()
119
+ if raw_comment:
120
+ user_comment = raw_comment
121
121
  break
122
122
 
123
123
  elif discovered.parser_type == "markdown":
@@ -4273,7 +4273,6 @@ def cmd_agent_last_used(
4273
4273
  table = Table(box=box.ROUNDED, show_header=True, header_style="bold cyan")
4274
4274
  table.add_column("#", style="dim", width=3)
4275
4275
  table.add_column("Agent CLI", style="bold yellow")
4276
- table.add_column("Description", style="white")
4277
4276
  table.add_column("Last Active", style="green")
4278
4277
  table.add_column("Last Comment Snippet", style="dim white")
4279
4278
 
@@ -4283,7 +4282,6 @@ def cmd_agent_last_used(
4283
4282
  table.add_row(
4284
4283
  str(idx),
4285
4284
  item.agent_name,
4286
- item.description,
4287
4285
  rel_time,
4288
4286
  comment_snippet,
4289
4287
  )
@@ -6114,23 +6112,24 @@ Start working on a task. This command automates the following workflow:
6114
6112
  action="store_true",
6115
6113
  help="Output result as JSON",
6116
6114
  )
6117
- agent_last_used_p = agent_sub.add_parser(
6118
- "last-used",
6115
+ agent_recent_p = agent_sub.add_parser(
6116
+ "recent",
6117
+ aliases=["last-used"],
6119
6118
  help="List AI coding agents recently active in this repository",
6120
6119
  )
6121
- agent_last_used_p.add_argument(
6120
+ agent_recent_p.add_argument(
6122
6121
  "path",
6123
6122
  nargs="?",
6124
6123
  default=None,
6125
6124
  help="Target repository directory (defaults to cwd)",
6126
6125
  )
6127
- agent_last_used_p.add_argument(
6126
+ agent_recent_p.add_argument(
6128
6127
  "--limit",
6129
6128
  type=int,
6130
6129
  default=5,
6131
6130
  help="Maximum number of active agents to return (default: 5)",
6132
6131
  )
6133
- agent_last_used_p.add_argument(
6132
+ agent_recent_p.add_argument(
6134
6133
  "--json",
6135
6134
  action="store_true",
6136
6135
  help="Output result as JSON",
@@ -6818,7 +6817,7 @@ TA_STRATEGY_COOLDOWN_HOURS environment variable.
6818
6817
  file_path=args.file,
6819
6818
  json_format=args.json,
6820
6819
  )
6821
- elif args.agent_subcommand == "last-used":
6820
+ elif args.agent_subcommand in ("recent", "last-used"):
6822
6821
  cmd_agent_last_used(
6823
6822
  console,
6824
6823
  path_arg=args.path,
@@ -6827,7 +6826,7 @@ TA_STRATEGY_COOLDOWN_HOURS environment variable.
6827
6826
  )
6828
6827
  else:
6829
6828
  console.print(
6830
- "[yellow]Unknown agent subcommand. Use 'ta agent import' or 'ta agent last-used'.[/yellow]"
6829
+ "[yellow]Unknown agent subcommand. Use 'ta agent import' or 'ta agent recent'.[/yellow]"
6831
6830
  )
6832
6831
  elif args.command == "push":
6833
6832
  cmd_push(console, manager)
@@ -1441,7 +1441,7 @@ wheels = [
1441
1441
 
1442
1442
  [[package]]
1443
1443
  name = "task-agent"
1444
- version = "1.3.0"
1444
+ version = "1.3.2"
1445
1445
  source = { editable = "." }
1446
1446
  dependencies = [
1447
1447
  { name = "agent-cli-registry" },
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes