flowsh-cli 0.4.1__tar.gz → 0.4.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.
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: flowsh-cli
3
- Version: 0.4.1
3
+ Version: 0.4.2
4
4
  Summary: Generate Bash harness scripts from workflow YAML files.
5
5
  License-Expression: MIT
6
6
  Classifier: Programming Language :: Python :: 3.11
@@ -4,7 +4,7 @@ build-backend = "uv_build"
4
4
 
5
5
  [project]
6
6
  name = "flowsh-cli"
7
- version = "0.4.1"
7
+ version = "0.4.2"
8
8
  description = "Generate Bash harness scripts from workflow YAML files."
9
9
  readme = "README.md"
10
10
  requires-python = ">=3.11"
@@ -3,7 +3,7 @@
3
3
  from flowsh_cli.models import Workflow, WorkflowParseError, parse_workflows
4
4
  from flowsh_cli.render import harness_path, render_harness
5
5
 
6
- __version__ = "0.4.1"
6
+ __version__ = "0.4.2"
7
7
 
8
8
  __all__ = [
9
9
  "Workflow",
@@ -73,7 +73,14 @@ class BashStep(BaseStep):
73
73
 
74
74
  class AgentStep(BaseStep):
75
75
  type: Literal["agent"]
76
- prompt: str
76
+ prompt: str = Field(
77
+ description=(
78
+ "The prompt text sent to the agent. "
79
+ "May contain markdown, code fences, backticks, $(...), and other shell syntax freely — "
80
+ "the prompt is never passed through a shell. "
81
+ "Use expandPrompt: true to substitute ${VAR} / $VAR tokens from vars steps."
82
+ )
83
+ )
77
84
  agent: str | None = None
78
85
  model: str | None = None
79
86
  command: str | None = None
@@ -84,7 +91,17 @@ class AgentStep(BaseStep):
84
91
  "dangerously-skip-permissions",
85
92
  ),
86
93
  )
87
- expandPrompt: bool = False
94
+ expandPrompt: bool = Field(
95
+ default=False,
96
+ description=(
97
+ "When true, substitutes ${VAR} and $VAR tokens from vars steps into the prompt "
98
+ "at runtime using safe plain-text replacement. "
99
+ "Shell expressions such as $(cmd), `cmd`, $((expr)), and globs are NOT evaluated — "
100
+ "they pass through to the agent literally. "
101
+ "Only uppercase variable names matching [A-Z_][A-Z0-9_]* found in the prompt text "
102
+ "are replaced. All other shell syntax in the prompt is safe to use."
103
+ ),
104
+ )
88
105
 
89
106
  @model_validator(mode="before")
90
107
  @classmethod
File without changes