roscoe 2.4.2__tar.gz → 2.4.4__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 (141) hide show
  1. {roscoe-2.4.2/roscoe.egg-info → roscoe-2.4.4}/PKG-INFO +1 -1
  2. {roscoe-2.4.2 → roscoe-2.4.4}/pyproject.toml +1 -1
  3. {roscoe-2.4.2 → roscoe-2.4.4}/roscoe/__init__.py +1 -1
  4. {roscoe-2.4.2 → roscoe-2.4.4}/roscoe/workflow/executor.py +9 -1
  5. {roscoe-2.4.2 → roscoe-2.4.4/roscoe.egg-info}/PKG-INFO +1 -1
  6. {roscoe-2.4.2 → roscoe-2.4.4}/LICENSE +0 -0
  7. {roscoe-2.4.2 → roscoe-2.4.4}/README.md +0 -0
  8. {roscoe-2.4.2 → roscoe-2.4.4}/roscoe/approval/__init__.py +0 -0
  9. {roscoe-2.4.2 → roscoe-2.4.4}/roscoe/approval/gate.py +0 -0
  10. {roscoe-2.4.2 → roscoe-2.4.4}/roscoe/cli/__init__.py +0 -0
  11. {roscoe-2.4.2 → roscoe-2.4.4}/roscoe/cli/build_command.py +0 -0
  12. {roscoe-2.4.2 → roscoe-2.4.4}/roscoe/cli/build_ui.py +0 -0
  13. {roscoe-2.4.2 → roscoe-2.4.4}/roscoe/cli/eval_command.py +0 -0
  14. {roscoe-2.4.2 → roscoe-2.4.4}/roscoe/cli/eval_gui.py +0 -0
  15. {roscoe-2.4.2 → roscoe-2.4.4}/roscoe/cli/google_auth_command.py +0 -0
  16. {roscoe-2.4.2 → roscoe-2.4.4}/roscoe/cli/graph_command.py +0 -0
  17. {roscoe-2.4.2 → roscoe-2.4.4}/roscoe/cli/gui_theme.py +0 -0
  18. {roscoe-2.4.2 → roscoe-2.4.4}/roscoe/cli/init_command.py +0 -0
  19. {roscoe-2.4.2 → roscoe-2.4.4}/roscoe/cli/main.py +0 -0
  20. {roscoe-2.4.2 → roscoe-2.4.4}/roscoe/cli/monitor_command.py +0 -0
  21. {roscoe-2.4.2 → roscoe-2.4.4}/roscoe/cli/monitor_gui.py +0 -0
  22. {roscoe-2.4.2 → roscoe-2.4.4}/roscoe/cli/pricing_command.py +0 -0
  23. {roscoe-2.4.2 → roscoe-2.4.4}/roscoe/cli/pricing_gui.py +0 -0
  24. {roscoe-2.4.2 → roscoe-2.4.4}/roscoe/cli/run_command.py +0 -0
  25. {roscoe-2.4.2 → roscoe-2.4.4}/roscoe/cli/run_web.py +0 -0
  26. {roscoe-2.4.2 → roscoe-2.4.4}/roscoe/cli/scaffold/.env.example +0 -0
  27. {roscoe-2.4.2 → roscoe-2.4.4}/roscoe/cli/scaffold/agent_config.yaml +0 -0
  28. {roscoe-2.4.2 → roscoe-2.4.4}/roscoe/cli/scaffold/custom_ui_example.py +0 -0
  29. {roscoe-2.4.2 → roscoe-2.4.4}/roscoe/cli/scaffold/db.py +0 -0
  30. {roscoe-2.4.2 → roscoe-2.4.4}/roscoe/cli/scaffold/docs.md +0 -0
  31. {roscoe-2.4.2 → roscoe-2.4.4}/roscoe/cli/scaffold/evals/test_cases.json +0 -0
  32. {roscoe-2.4.2 → roscoe-2.4.4}/roscoe/cli/scaffold/main.py +0 -0
  33. {roscoe-2.4.2 → roscoe-2.4.4}/roscoe/cli/scaffold/prompts/system.txt +0 -0
  34. {roscoe-2.4.2 → roscoe-2.4.4}/roscoe/cli/scaffold/tools/my_tools.py +0 -0
  35. {roscoe-2.4.2 → roscoe-2.4.4}/roscoe/cli/scaffold_nc/agent_config.yaml +0 -0
  36. {roscoe-2.4.2 → roscoe-2.4.4}/roscoe/cli/scaffold_nc/workflow.yaml +0 -0
  37. {roscoe-2.4.2 → roscoe-2.4.4}/roscoe/cli/validate_command.py +0 -0
  38. {roscoe-2.4.2 → roscoe-2.4.4}/roscoe/cli/wizard_gui.py +0 -0
  39. {roscoe-2.4.2 → roscoe-2.4.4}/roscoe/config/__init__.py +0 -0
  40. {roscoe-2.4.2 → roscoe-2.4.4}/roscoe/config/loader.py +0 -0
  41. {roscoe-2.4.2 → roscoe-2.4.4}/roscoe/connectors/__init__.py +0 -0
  42. {roscoe-2.4.2 → roscoe-2.4.4}/roscoe/connectors/_graph_base.py +0 -0
  43. {roscoe-2.4.2 → roscoe-2.4.4}/roscoe/connectors/base_connector.py +0 -0
  44. {roscoe-2.4.2 → roscoe-2.4.4}/roscoe/connectors/database.py +0 -0
  45. {roscoe-2.4.2 → roscoe-2.4.4}/roscoe/connectors/github.py +0 -0
  46. {roscoe-2.4.2 → roscoe-2.4.4}/roscoe/connectors/google_workspace.py +0 -0
  47. {roscoe-2.4.2 → roscoe-2.4.4}/roscoe/connectors/jira.py +0 -0
  48. {roscoe-2.4.2 → roscoe-2.4.4}/roscoe/connectors/notion.py +0 -0
  49. {roscoe-2.4.2 → roscoe-2.4.4}/roscoe/connectors/outlook.py +0 -0
  50. {roscoe-2.4.2 → roscoe-2.4.4}/roscoe/connectors/rest_api.py +0 -0
  51. {roscoe-2.4.2 → roscoe-2.4.4}/roscoe/connectors/servicenow.py +0 -0
  52. {roscoe-2.4.2 → roscoe-2.4.4}/roscoe/connectors/sharepoint.py +0 -0
  53. {roscoe-2.4.2 → roscoe-2.4.4}/roscoe/connectors/snowflake.py +0 -0
  54. {roscoe-2.4.2 → roscoe-2.4.4}/roscoe/connectors/ticktick.py +0 -0
  55. {roscoe-2.4.2 → roscoe-2.4.4}/roscoe/core/__init__.py +0 -0
  56. {roscoe-2.4.2 → roscoe-2.4.4}/roscoe/core/agent_base.py +0 -0
  57. {roscoe-2.4.2 → roscoe-2.4.4}/roscoe/core/agent_result.py +0 -0
  58. {roscoe-2.4.2 → roscoe-2.4.4}/roscoe/core/agent_runner.py +0 -0
  59. {roscoe-2.4.2 → roscoe-2.4.4}/roscoe/core/executor.py +0 -0
  60. {roscoe-2.4.2 → roscoe-2.4.4}/roscoe/core/state.py +0 -0
  61. {roscoe-2.4.2 → roscoe-2.4.4}/roscoe/evals/__init__.py +0 -0
  62. {roscoe-2.4.2 → roscoe-2.4.4}/roscoe/evals/dataset.py +0 -0
  63. {roscoe-2.4.2 → roscoe-2.4.4}/roscoe/evals/eval_runner.py +0 -0
  64. {roscoe-2.4.2 → roscoe-2.4.4}/roscoe/evals/regression.py +0 -0
  65. {roscoe-2.4.2 → roscoe-2.4.4}/roscoe/evals/report.py +0 -0
  66. {roscoe-2.4.2 → roscoe-2.4.4}/roscoe/evals/scorers/__init__.py +0 -0
  67. {roscoe-2.4.2 → roscoe-2.4.4}/roscoe/evals/scorers/_judge.py +0 -0
  68. {roscoe-2.4.2 → roscoe-2.4.4}/roscoe/evals/scorers/base.py +0 -0
  69. {roscoe-2.4.2 → roscoe-2.4.4}/roscoe/evals/scorers/hallucination.py +0 -0
  70. {roscoe-2.4.2 → roscoe-2.4.4}/roscoe/evals/scorers/output_quality.py +0 -0
  71. {roscoe-2.4.2 → roscoe-2.4.4}/roscoe/evals/scorers/tool_usage.py +0 -0
  72. {roscoe-2.4.2 → roscoe-2.4.4}/roscoe/llm/__init__.py +0 -0
  73. {roscoe-2.4.2 → roscoe-2.4.4}/roscoe/llm/base_provider.py +0 -0
  74. {roscoe-2.4.2 → roscoe-2.4.4}/roscoe/llm/capability_map.py +0 -0
  75. {roscoe-2.4.2 → roscoe-2.4.4}/roscoe/llm/provider_factory.py +0 -0
  76. {roscoe-2.4.2 → roscoe-2.4.4}/roscoe/memory/__init__.py +0 -0
  77. {roscoe-2.4.2 → roscoe-2.4.4}/roscoe/memory/conversation.py +0 -0
  78. {roscoe-2.4.2 → roscoe-2.4.4}/roscoe/memory/knowledge.py +0 -0
  79. {roscoe-2.4.2 → roscoe-2.4.4}/roscoe/memory/persistent.py +0 -0
  80. {roscoe-2.4.2 → roscoe-2.4.4}/roscoe/middleware/__init__.py +0 -0
  81. {roscoe-2.4.2 → roscoe-2.4.4}/roscoe/middleware/audit_logger.py +0 -0
  82. {roscoe-2.4.2 → roscoe-2.4.4}/roscoe/middleware/cost_tracker.py +0 -0
  83. {roscoe-2.4.2 → roscoe-2.4.4}/roscoe/middleware/rate_limiter.py +0 -0
  84. {roscoe-2.4.2 → roscoe-2.4.4}/roscoe/middleware/retry.py +0 -0
  85. {roscoe-2.4.2 → roscoe-2.4.4}/roscoe/monitoring/__init__.py +0 -0
  86. {roscoe-2.4.2 → roscoe-2.4.4}/roscoe/monitoring/alerts.py +0 -0
  87. {roscoe-2.4.2 → roscoe-2.4.4}/roscoe/monitoring/dashboard.py +0 -0
  88. {roscoe-2.4.2 → roscoe-2.4.4}/roscoe/monitoring/exporters/__init__.py +0 -0
  89. {roscoe-2.4.2 → roscoe-2.4.4}/roscoe/monitoring/exporters/azure_monitor.py +0 -0
  90. {roscoe-2.4.2 → roscoe-2.4.4}/roscoe/monitoring/exporters/prometheus.py +0 -0
  91. {roscoe-2.4.2 → roscoe-2.4.4}/roscoe/monitoring/metrics.py +0 -0
  92. {roscoe-2.4.2 → roscoe-2.4.4}/roscoe/monitoring/notifier.py +0 -0
  93. {roscoe-2.4.2 → roscoe-2.4.4}/roscoe/monitoring/web.py +0 -0
  94. {roscoe-2.4.2 → roscoe-2.4.4}/roscoe/pricing.py +0 -0
  95. {roscoe-2.4.2 → roscoe-2.4.4}/roscoe/templates/__init__.py +0 -0
  96. {roscoe-2.4.2 → roscoe-2.4.4}/roscoe/templates/exec_assistant_agent/__init__.py +0 -0
  97. {roscoe-2.4.2 → roscoe-2.4.4}/roscoe/templates/exec_assistant_agent/agent_config.yaml +0 -0
  98. {roscoe-2.4.2 → roscoe-2.4.4}/roscoe/templates/exec_assistant_agent/prompts/system.txt +0 -0
  99. {roscoe-2.4.2 → roscoe-2.4.4}/roscoe/templates/exec_assistant_agent/tools/__init__.py +0 -0
  100. {roscoe-2.4.2 → roscoe-2.4.4}/roscoe/templates/exec_assistant_agent/tools/exec_tools.py +0 -0
  101. {roscoe-2.4.2 → roscoe-2.4.4}/roscoe/templates/google_workspace_agent/agent_config.yaml +0 -0
  102. {roscoe-2.4.2 → roscoe-2.4.4}/roscoe/templates/google_workspace_agent/prompts/system.txt +0 -0
  103. {roscoe-2.4.2 → roscoe-2.4.4}/roscoe/templates/google_workspace_agent/tools/__init__.py +0 -0
  104. {roscoe-2.4.2 → roscoe-2.4.4}/roscoe/templates/google_workspace_agent/tools/gws_tools.py +0 -0
  105. {roscoe-2.4.2 → roscoe-2.4.4}/roscoe/templates/hr_agent/__init__.py +0 -0
  106. {roscoe-2.4.2 → roscoe-2.4.4}/roscoe/templates/hr_agent/agent_config.yaml +0 -0
  107. {roscoe-2.4.2 → roscoe-2.4.4}/roscoe/templates/hr_agent/prompts/system.txt +0 -0
  108. {roscoe-2.4.2 → roscoe-2.4.4}/roscoe/templates/hr_agent/tools/__init__.py +0 -0
  109. {roscoe-2.4.2 → roscoe-2.4.4}/roscoe/templates/hr_agent/tools/hr_tools.py +0 -0
  110. {roscoe-2.4.2 → roscoe-2.4.4}/roscoe/templates/it_support_agent/__init__.py +0 -0
  111. {roscoe-2.4.2 → roscoe-2.4.4}/roscoe/templates/it_support_agent/agent_config.yaml +0 -0
  112. {roscoe-2.4.2 → roscoe-2.4.4}/roscoe/templates/it_support_agent/prompts/system.txt +0 -0
  113. {roscoe-2.4.2 → roscoe-2.4.4}/roscoe/templates/it_support_agent/tools/__init__.py +0 -0
  114. {roscoe-2.4.2 → roscoe-2.4.4}/roscoe/templates/it_support_agent/tools/it_tools.py +0 -0
  115. {roscoe-2.4.2 → roscoe-2.4.4}/roscoe/templates/knowledge_base_agent/__init__.py +0 -0
  116. {roscoe-2.4.2 → roscoe-2.4.4}/roscoe/templates/knowledge_base_agent/agent_config.yaml +0 -0
  117. {roscoe-2.4.2 → roscoe-2.4.4}/roscoe/templates/knowledge_base_agent/prompts/system.txt +0 -0
  118. {roscoe-2.4.2 → roscoe-2.4.4}/roscoe/templates/knowledge_base_agent/tools/__init__.py +0 -0
  119. {roscoe-2.4.2 → roscoe-2.4.4}/roscoe/templates/knowledge_base_agent/tools/kb_tools.py +0 -0
  120. {roscoe-2.4.2 → roscoe-2.4.4}/roscoe/templates/legal_agent/__init__.py +0 -0
  121. {roscoe-2.4.2 → roscoe-2.4.4}/roscoe/templates/legal_agent/agent_config.yaml +0 -0
  122. {roscoe-2.4.2 → roscoe-2.4.4}/roscoe/templates/legal_agent/prompts/system.txt +0 -0
  123. {roscoe-2.4.2 → roscoe-2.4.4}/roscoe/templates/legal_agent/tools/__init__.py +0 -0
  124. {roscoe-2.4.2 → roscoe-2.4.4}/roscoe/templates/legal_agent/tools/legal_tools.py +0 -0
  125. {roscoe-2.4.2 → roscoe-2.4.4}/roscoe/tools/__init__.py +0 -0
  126. {roscoe-2.4.2 → roscoe-2.4.4}/roscoe/tools/decorator.py +0 -0
  127. {roscoe-2.4.2 → roscoe-2.4.4}/roscoe/workflow/__init__.py +0 -0
  128. {roscoe-2.4.2 → roscoe-2.4.4}/roscoe/workflow/diagram.py +0 -0
  129. {roscoe-2.4.2 → roscoe-2.4.4}/roscoe/workflow/expressions.py +0 -0
  130. {roscoe-2.4.2 → roscoe-2.4.4}/roscoe/workflow/loader.py +0 -0
  131. {roscoe-2.4.2 → roscoe-2.4.4}/roscoe/workflow/registry.py +0 -0
  132. {roscoe-2.4.2 → roscoe-2.4.4}/roscoe/workflow/runner.py +0 -0
  133. {roscoe-2.4.2 → roscoe-2.4.4}/roscoe/workflow/schema.py +0 -0
  134. {roscoe-2.4.2 → roscoe-2.4.4}/roscoe/workflow/validate.py +0 -0
  135. {roscoe-2.4.2 → roscoe-2.4.4}/roscoe.egg-info/SOURCES.txt +0 -0
  136. {roscoe-2.4.2 → roscoe-2.4.4}/roscoe.egg-info/dependency_links.txt +0 -0
  137. {roscoe-2.4.2 → roscoe-2.4.4}/roscoe.egg-info/entry_points.txt +0 -0
  138. {roscoe-2.4.2 → roscoe-2.4.4}/roscoe.egg-info/requires.txt +0 -0
  139. {roscoe-2.4.2 → roscoe-2.4.4}/roscoe.egg-info/top_level.txt +0 -0
  140. {roscoe-2.4.2 → roscoe-2.4.4}/setup.cfg +0 -0
  141. {roscoe-2.4.2 → roscoe-2.4.4}/tests/test_smoke.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: roscoe
3
- Version: 2.4.2
3
+ Version: 2.4.4
4
4
  Summary: roscoe — Ready-to-run Orchestration SDK: Configurable, Observable, Extensible.
5
5
  Author-email: rhealaloo <rhealaloo@gmail.com>
6
6
  License-Expression: MIT
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
4
4
 
5
5
  [project]
6
6
  name = "roscoe"
7
- version = "2.4.2"
7
+ version = "2.4.4"
8
8
  description = "roscoe — Ready-to-run Orchestration SDK: Configurable, Observable, Extensible."
9
9
  readme = "README.md"
10
10
  requires-python = ">=3.11"
@@ -13,6 +13,6 @@ os.environ.setdefault("USE_TORCH", "0")
13
13
  from roscoe.core.agent_result import AgentResult
14
14
  from roscoe.core.agent_runner import AgentRunner
15
15
 
16
- __version__ = "2.4.2"
16
+ __version__ = "2.4.4"
17
17
 
18
18
  __all__ = ["AgentRunner", "AgentResult", "__version__"]
@@ -216,6 +216,9 @@ class WorkflowExecutor:
216
216
  else pending.args
217
217
  )
218
218
  value = await self._call_tool(node, args)
219
+ if node.output_message:
220
+ scope = {**state, node.output: value} if node.output else state
221
+ value = render(node.output_message, scope)
219
222
  if node.output:
220
223
  state[node.output] = value
221
224
 
@@ -318,7 +321,12 @@ class WorkflowExecutor:
318
321
  if node.output_message:
319
322
  # A connector method's return is API-shaped — an id, a status
320
323
  # code — right for a later node to read, wrong to show a person.
321
- value = render(node.output_message, state)
324
+ # The call's own result isn't in `state` yet (that happens
325
+ # below), so make it available under this node's own output
326
+ # key — {{ result.created }} should work when output: result,
327
+ # same as referencing any other already-known state.
328
+ scope = {**state, node.output: value} if node.output else state
329
+ value = render(node.output_message, scope)
322
330
  elif isinstance(node, LLMStep):
323
331
  value = await self._call_llm(node, state, messages)
324
332
  elif isinstance(node, AgentStep):
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: roscoe
3
- Version: 2.4.2
3
+ Version: 2.4.4
4
4
  Summary: roscoe — Ready-to-run Orchestration SDK: Configurable, Observable, Extensible.
5
5
  Author-email: rhealaloo <rhealaloo@gmail.com>
6
6
  License-Expression: MIT
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
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
File without changes