codemie-sdk-python 0.1.515__tar.gz → 0.1.516__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.
- {codemie_sdk_python-0.1.515 → codemie_sdk_python-0.1.516}/PKG-INFO +1 -1
- {codemie_sdk_python-0.1.515 → codemie_sdk_python-0.1.516}/pyproject.toml +1 -1
- {codemie_sdk_python-0.1.515 → codemie_sdk_python-0.1.516}/src/codemie_sdk/models/workflow.py +70 -0
- {codemie_sdk_python-0.1.515 → codemie_sdk_python-0.1.516}/src/codemie_sdk/services/workflow.py +41 -0
- {codemie_sdk_python-0.1.515 → codemie_sdk_python-0.1.516}/README.md +0 -0
- {codemie_sdk_python-0.1.515 → codemie_sdk_python-0.1.516}/src/codemie_sdk/__init__.py +0 -0
- {codemie_sdk_python-0.1.515 → codemie_sdk_python-0.1.516}/src/codemie_sdk/auth/__init__.py +0 -0
- {codemie_sdk_python-0.1.515 → codemie_sdk_python-0.1.516}/src/codemie_sdk/auth/credentials.py +0 -0
- {codemie_sdk_python-0.1.515 → codemie_sdk_python-0.1.516}/src/codemie_sdk/client/__init__.py +0 -0
- {codemie_sdk_python-0.1.515 → codemie_sdk_python-0.1.516}/src/codemie_sdk/client/client.py +0 -0
- {codemie_sdk_python-0.1.515 → codemie_sdk_python-0.1.516}/src/codemie_sdk/exceptions.py +0 -0
- {codemie_sdk_python-0.1.515 → codemie_sdk_python-0.1.516}/src/codemie_sdk/models/__init__.py +0 -0
- {codemie_sdk_python-0.1.515 → codemie_sdk_python-0.1.516}/src/codemie_sdk/models/activity_event.py +0 -0
- {codemie_sdk_python-0.1.515 → codemie_sdk_python-0.1.516}/src/codemie_sdk/models/admin.py +0 -0
- {codemie_sdk_python-0.1.515 → codemie_sdk_python-0.1.516}/src/codemie_sdk/models/analytics.py +0 -0
- {codemie_sdk_python-0.1.515 → codemie_sdk_python-0.1.516}/src/codemie_sdk/models/assistant.py +0 -0
- {codemie_sdk_python-0.1.515 → codemie_sdk_python-0.1.516}/src/codemie_sdk/models/categories.py +0 -0
- {codemie_sdk_python-0.1.515 → codemie_sdk_python-0.1.516}/src/codemie_sdk/models/common.py +0 -0
- {codemie_sdk_python-0.1.515 → codemie_sdk_python-0.1.516}/src/codemie_sdk/models/conversation.py +0 -0
- {codemie_sdk_python-0.1.515 → codemie_sdk_python-0.1.516}/src/codemie_sdk/models/datasource.py +0 -0
- {codemie_sdk_python-0.1.515 → codemie_sdk_python-0.1.516}/src/codemie_sdk/models/errors.py +0 -0
- {codemie_sdk_python-0.1.515 → codemie_sdk_python-0.1.516}/src/codemie_sdk/models/file_operation.py +0 -0
- {codemie_sdk_python-0.1.515 → codemie_sdk_python-0.1.516}/src/codemie_sdk/models/guardrails.py +0 -0
- {codemie_sdk_python-0.1.515 → codemie_sdk_python-0.1.516}/src/codemie_sdk/models/integration.py +0 -0
- {codemie_sdk_python-0.1.515 → codemie_sdk_python-0.1.516}/src/codemie_sdk/models/llm.py +0 -0
- {codemie_sdk_python-0.1.515 → codemie_sdk_python-0.1.516}/src/codemie_sdk/models/mermaid.py +0 -0
- {codemie_sdk_python-0.1.515 → codemie_sdk_python-0.1.516}/src/codemie_sdk/models/project.py +0 -0
- {codemie_sdk_python-0.1.515 → codemie_sdk_python-0.1.516}/src/codemie_sdk/models/skill.py +0 -0
- {codemie_sdk_python-0.1.515 → codemie_sdk_python-0.1.516}/src/codemie_sdk/models/task.py +0 -0
- {codemie_sdk_python-0.1.515 → codemie_sdk_python-0.1.516}/src/codemie_sdk/models/user.py +0 -0
- {codemie_sdk_python-0.1.515 → codemie_sdk_python-0.1.516}/src/codemie_sdk/models/vendor_assistant.py +0 -0
- {codemie_sdk_python-0.1.515 → codemie_sdk_python-0.1.516}/src/codemie_sdk/models/vendor_guardrail.py +0 -0
- {codemie_sdk_python-0.1.515 → codemie_sdk_python-0.1.516}/src/codemie_sdk/models/vendor_knowledgebase.py +0 -0
- {codemie_sdk_python-0.1.515 → codemie_sdk_python-0.1.516}/src/codemie_sdk/models/vendor_runtime.py +0 -0
- {codemie_sdk_python-0.1.515 → codemie_sdk_python-0.1.516}/src/codemie_sdk/models/vendor_workflow.py +0 -0
- {codemie_sdk_python-0.1.515 → codemie_sdk_python-0.1.516}/src/codemie_sdk/models/workflow_execution_payload.py +0 -0
- {codemie_sdk_python-0.1.515 → codemie_sdk_python-0.1.516}/src/codemie_sdk/models/workflow_state.py +0 -0
- {codemie_sdk_python-0.1.515 → codemie_sdk_python-0.1.516}/src/codemie_sdk/models/workflow_thoughts.py +0 -0
- {codemie_sdk_python-0.1.515 → codemie_sdk_python-0.1.516}/src/codemie_sdk/services/activity_event.py +0 -0
- {codemie_sdk_python-0.1.515 → codemie_sdk_python-0.1.516}/src/codemie_sdk/services/admin.py +0 -0
- {codemie_sdk_python-0.1.515 → codemie_sdk_python-0.1.516}/src/codemie_sdk/services/analytics.py +0 -0
- {codemie_sdk_python-0.1.515 → codemie_sdk_python-0.1.516}/src/codemie_sdk/services/assistant.py +0 -0
- {codemie_sdk_python-0.1.515 → codemie_sdk_python-0.1.516}/src/codemie_sdk/services/categories.py +0 -0
- {codemie_sdk_python-0.1.515 → codemie_sdk_python-0.1.516}/src/codemie_sdk/services/codemie_guardrails.py +0 -0
- {codemie_sdk_python-0.1.515 → codemie_sdk_python-0.1.516}/src/codemie_sdk/services/conversation.py +0 -0
- {codemie_sdk_python-0.1.515 → codemie_sdk_python-0.1.516}/src/codemie_sdk/services/datasource.py +0 -0
- {codemie_sdk_python-0.1.515 → codemie_sdk_python-0.1.516}/src/codemie_sdk/services/files.py +0 -0
- {codemie_sdk_python-0.1.515 → codemie_sdk_python-0.1.516}/src/codemie_sdk/services/integration.py +0 -0
- {codemie_sdk_python-0.1.515 → codemie_sdk_python-0.1.516}/src/codemie_sdk/services/llm.py +0 -0
- {codemie_sdk_python-0.1.515 → codemie_sdk_python-0.1.516}/src/codemie_sdk/services/mermaid.py +0 -0
- {codemie_sdk_python-0.1.515 → codemie_sdk_python-0.1.516}/src/codemie_sdk/services/project.py +0 -0
- {codemie_sdk_python-0.1.515 → codemie_sdk_python-0.1.516}/src/codemie_sdk/services/skill.py +0 -0
- {codemie_sdk_python-0.1.515 → codemie_sdk_python-0.1.516}/src/codemie_sdk/services/task.py +0 -0
- {codemie_sdk_python-0.1.515 → codemie_sdk_python-0.1.516}/src/codemie_sdk/services/user.py +0 -0
- {codemie_sdk_python-0.1.515 → codemie_sdk_python-0.1.516}/src/codemie_sdk/services/vendor_assistant.py +0 -0
- {codemie_sdk_python-0.1.515 → codemie_sdk_python-0.1.516}/src/codemie_sdk/services/vendor_guardrail.py +0 -0
- {codemie_sdk_python-0.1.515 → codemie_sdk_python-0.1.516}/src/codemie_sdk/services/vendor_knowledgebase.py +0 -0
- {codemie_sdk_python-0.1.515 → codemie_sdk_python-0.1.516}/src/codemie_sdk/services/vendor_runtime.py +0 -0
- {codemie_sdk_python-0.1.515 → codemie_sdk_python-0.1.516}/src/codemie_sdk/services/vendor_workflow.py +0 -0
- {codemie_sdk_python-0.1.515 → codemie_sdk_python-0.1.516}/src/codemie_sdk/services/webhook.py +0 -0
- {codemie_sdk_python-0.1.515 → codemie_sdk_python-0.1.516}/src/codemie_sdk/services/workflow_execution.py +0 -0
- {codemie_sdk_python-0.1.515 → codemie_sdk_python-0.1.516}/src/codemie_sdk/services/workflow_execution_state.py +0 -0
- {codemie_sdk_python-0.1.515 → codemie_sdk_python-0.1.516}/src/codemie_sdk/utils/__init__.py +0 -0
- {codemie_sdk_python-0.1.515 → codemie_sdk_python-0.1.516}/src/codemie_sdk/utils/http.py +0 -0
{codemie_sdk_python-0.1.515 → codemie_sdk_python-0.1.516}/src/codemie_sdk/models/workflow.py
RENAMED
|
@@ -100,3 +100,73 @@ class WorkflowEvaluationRequest(BaseModel):
|
|
|
100
100
|
max_concurrency: int = Field(
|
|
101
101
|
default=1, ge=1, le=5, description="Maximum number of concurrent evaluations"
|
|
102
102
|
)
|
|
103
|
+
|
|
104
|
+
|
|
105
|
+
class WorkflowGeneratorRequest(BaseModel):
|
|
106
|
+
"""Request model for generating a workflow from a natural language description.
|
|
107
|
+
|
|
108
|
+
Maps to the backend's ``WorkflowGeneratorRequest``
|
|
109
|
+
(``src/codemie/rest_api/models/workflow_generator.py``), where the wire field
|
|
110
|
+
for the natural language description is ``text`` (not ``nl_query`` — that name
|
|
111
|
+
is only used internally as the service-layer parameter).
|
|
112
|
+
"""
|
|
113
|
+
|
|
114
|
+
text: str = Field(..., min_length=1)
|
|
115
|
+
llm_model: str | None = None
|
|
116
|
+
persist: bool = False
|
|
117
|
+
guardrail_ids: list[str] | None = None
|
|
118
|
+
|
|
119
|
+
|
|
120
|
+
class WorkflowGeneratedState(BaseModel):
|
|
121
|
+
"""A single generated state (node) inside a generated workflow config."""
|
|
122
|
+
|
|
123
|
+
model_config = ConfigDict(extra="allow")
|
|
124
|
+
|
|
125
|
+
id: str | None = None
|
|
126
|
+
assistant_id: str | None = None
|
|
127
|
+
tool_id: str | None = None
|
|
128
|
+
custom_node_id: str | None = None
|
|
129
|
+
task: str | None = None
|
|
130
|
+
next: dict | None = None
|
|
131
|
+
|
|
132
|
+
|
|
133
|
+
class WorkflowGeneratedAssistant(BaseModel):
|
|
134
|
+
"""A single generated assistant reference inside a generated workflow config."""
|
|
135
|
+
|
|
136
|
+
model_config = ConfigDict(extra="allow")
|
|
137
|
+
|
|
138
|
+
id: str | None = None
|
|
139
|
+
assistant_id: str | None = None
|
|
140
|
+
|
|
141
|
+
|
|
142
|
+
class WorkflowGeneratorConfig(BaseModel):
|
|
143
|
+
"""The generated workflow configuration returned by the generator.
|
|
144
|
+
|
|
145
|
+
Mirrors the backend's ``CreateWorkflowRequest`` shape
|
|
146
|
+
(``src/codemie/core/workflow_models/workflow_models.py``). Uses
|
|
147
|
+
``extra="allow"`` since the backend model carries additional fields (e.g.
|
|
148
|
+
``guardrail_assignments``) that are not required for test assertions.
|
|
149
|
+
"""
|
|
150
|
+
|
|
151
|
+
model_config = ConfigDict(populate_by_name=True, extra="allow")
|
|
152
|
+
|
|
153
|
+
name: str
|
|
154
|
+
description: str | None = None
|
|
155
|
+
project: str | None = None
|
|
156
|
+
mode: WorkflowMode = WorkflowMode.SEQUENTIAL
|
|
157
|
+
yaml_config: str | None = None
|
|
158
|
+
shared: bool = True
|
|
159
|
+
assistants: list[WorkflowGeneratedAssistant] = Field(default_factory=list)
|
|
160
|
+
tools: list[dict] = Field(default_factory=list)
|
|
161
|
+
states: list[WorkflowGeneratedState] = Field(default_factory=list)
|
|
162
|
+
supervisor_prompt: str | None = ""
|
|
163
|
+
meta_config: str | None = None
|
|
164
|
+
|
|
165
|
+
|
|
166
|
+
class WorkflowGeneratorResponse(BaseModel):
|
|
167
|
+
"""Response model for ``POST /v1/workflows/generate``."""
|
|
168
|
+
|
|
169
|
+
model_config = ConfigDict(populate_by_name=True)
|
|
170
|
+
|
|
171
|
+
workflow_config: WorkflowGeneratorConfig
|
|
172
|
+
workflow_id: str | None = None
|
{codemie_sdk_python-0.1.515 → codemie_sdk_python-0.1.516}/src/codemie_sdk/services/workflow.py
RENAMED
|
@@ -11,6 +11,8 @@ from ..models.workflow import (
|
|
|
11
11
|
WorkflowCreateRequest,
|
|
12
12
|
WorkflowUpdateRequest,
|
|
13
13
|
WorkflowEvaluationRequest,
|
|
14
|
+
WorkflowGeneratorRequest,
|
|
15
|
+
WorkflowGeneratorResponse,
|
|
14
16
|
Workflow,
|
|
15
17
|
)
|
|
16
18
|
from ..utils import ApiRequestHandler, TokenSource
|
|
@@ -56,6 +58,45 @@ class WorkflowService:
|
|
|
56
58
|
"""
|
|
57
59
|
return self._api.post("/v1/workflows", dict, json_data=request.model_dump())
|
|
58
60
|
|
|
61
|
+
def generate(
|
|
62
|
+
self,
|
|
63
|
+
text: str,
|
|
64
|
+
llm_model: str | None = None,
|
|
65
|
+
persist: bool = False,
|
|
66
|
+
guardrail_ids: list[str] | None = None,
|
|
67
|
+
) -> WorkflowGeneratorResponse:
|
|
68
|
+
"""Generate a workflow configuration from a natural language description.
|
|
69
|
+
|
|
70
|
+
Args:
|
|
71
|
+
text: Natural language description of the desired workflow.
|
|
72
|
+
llm_model: Optional LLM model to use for generation. Falls back to
|
|
73
|
+
the platform default (``WORKFLOW_GENERATOR_LLM_MODEL`` or the
|
|
74
|
+
global default LLM) when not provided.
|
|
75
|
+
persist: When True, the generated workflow is validated
|
|
76
|
+
(``WorkflowExecutor.validate_workflow``) and saved on the
|
|
77
|
+
backend, and the response includes ``workflow_id``. When False
|
|
78
|
+
(default), only the in-memory ``workflow_config`` is returned
|
|
79
|
+
for client-side review/edit before an explicit
|
|
80
|
+
``create_workflow`` call.
|
|
81
|
+
guardrail_ids: Optional guardrail IDs to attach to the generated
|
|
82
|
+
workflow's guardrail assignments.
|
|
83
|
+
|
|
84
|
+
Returns:
|
|
85
|
+
WorkflowGeneratorResponse containing the generated ``workflow_config``
|
|
86
|
+
and, when ``persist=True``, the created ``workflow_id``.
|
|
87
|
+
"""
|
|
88
|
+
request = WorkflowGeneratorRequest(
|
|
89
|
+
text=text,
|
|
90
|
+
llm_model=llm_model,
|
|
91
|
+
persist=persist,
|
|
92
|
+
guardrail_ids=guardrail_ids,
|
|
93
|
+
)
|
|
94
|
+
return self._api.post(
|
|
95
|
+
"/v1/workflows/generate",
|
|
96
|
+
WorkflowGeneratorResponse,
|
|
97
|
+
json_data=request.model_dump(exclude_none=True),
|
|
98
|
+
)
|
|
99
|
+
|
|
59
100
|
def update(self, workflow_id: str, request: WorkflowUpdateRequest) -> dict:
|
|
60
101
|
"""Update an existing workflow.
|
|
61
102
|
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{codemie_sdk_python-0.1.515 → codemie_sdk_python-0.1.516}/src/codemie_sdk/auth/credentials.py
RENAMED
|
File without changes
|
{codemie_sdk_python-0.1.515 → codemie_sdk_python-0.1.516}/src/codemie_sdk/client/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{codemie_sdk_python-0.1.515 → codemie_sdk_python-0.1.516}/src/codemie_sdk/models/__init__.py
RENAMED
|
File without changes
|
{codemie_sdk_python-0.1.515 → codemie_sdk_python-0.1.516}/src/codemie_sdk/models/activity_event.py
RENAMED
|
File without changes
|
|
File without changes
|
{codemie_sdk_python-0.1.515 → codemie_sdk_python-0.1.516}/src/codemie_sdk/models/analytics.py
RENAMED
|
File without changes
|
{codemie_sdk_python-0.1.515 → codemie_sdk_python-0.1.516}/src/codemie_sdk/models/assistant.py
RENAMED
|
File without changes
|
{codemie_sdk_python-0.1.515 → codemie_sdk_python-0.1.516}/src/codemie_sdk/models/categories.py
RENAMED
|
File without changes
|
|
File without changes
|
{codemie_sdk_python-0.1.515 → codemie_sdk_python-0.1.516}/src/codemie_sdk/models/conversation.py
RENAMED
|
File without changes
|
{codemie_sdk_python-0.1.515 → codemie_sdk_python-0.1.516}/src/codemie_sdk/models/datasource.py
RENAMED
|
File without changes
|
|
File without changes
|
{codemie_sdk_python-0.1.515 → codemie_sdk_python-0.1.516}/src/codemie_sdk/models/file_operation.py
RENAMED
|
File without changes
|
{codemie_sdk_python-0.1.515 → codemie_sdk_python-0.1.516}/src/codemie_sdk/models/guardrails.py
RENAMED
|
File without changes
|
{codemie_sdk_python-0.1.515 → codemie_sdk_python-0.1.516}/src/codemie_sdk/models/integration.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{codemie_sdk_python-0.1.515 → codemie_sdk_python-0.1.516}/src/codemie_sdk/models/vendor_assistant.py
RENAMED
|
File without changes
|
{codemie_sdk_python-0.1.515 → codemie_sdk_python-0.1.516}/src/codemie_sdk/models/vendor_guardrail.py
RENAMED
|
File without changes
|
|
File without changes
|
{codemie_sdk_python-0.1.515 → codemie_sdk_python-0.1.516}/src/codemie_sdk/models/vendor_runtime.py
RENAMED
|
File without changes
|
{codemie_sdk_python-0.1.515 → codemie_sdk_python-0.1.516}/src/codemie_sdk/models/vendor_workflow.py
RENAMED
|
File without changes
|
|
File without changes
|
{codemie_sdk_python-0.1.515 → codemie_sdk_python-0.1.516}/src/codemie_sdk/models/workflow_state.py
RENAMED
|
File without changes
|
|
File without changes
|
{codemie_sdk_python-0.1.515 → codemie_sdk_python-0.1.516}/src/codemie_sdk/services/activity_event.py
RENAMED
|
File without changes
|
|
File without changes
|
{codemie_sdk_python-0.1.515 → codemie_sdk_python-0.1.516}/src/codemie_sdk/services/analytics.py
RENAMED
|
File without changes
|
{codemie_sdk_python-0.1.515 → codemie_sdk_python-0.1.516}/src/codemie_sdk/services/assistant.py
RENAMED
|
File without changes
|
{codemie_sdk_python-0.1.515 → codemie_sdk_python-0.1.516}/src/codemie_sdk/services/categories.py
RENAMED
|
File without changes
|
|
File without changes
|
{codemie_sdk_python-0.1.515 → codemie_sdk_python-0.1.516}/src/codemie_sdk/services/conversation.py
RENAMED
|
File without changes
|
{codemie_sdk_python-0.1.515 → codemie_sdk_python-0.1.516}/src/codemie_sdk/services/datasource.py
RENAMED
|
File without changes
|
|
File without changes
|
{codemie_sdk_python-0.1.515 → codemie_sdk_python-0.1.516}/src/codemie_sdk/services/integration.py
RENAMED
|
File without changes
|
|
File without changes
|
{codemie_sdk_python-0.1.515 → codemie_sdk_python-0.1.516}/src/codemie_sdk/services/mermaid.py
RENAMED
|
File without changes
|
{codemie_sdk_python-0.1.515 → codemie_sdk_python-0.1.516}/src/codemie_sdk/services/project.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{codemie_sdk_python-0.1.515 → codemie_sdk_python-0.1.516}/src/codemie_sdk/services/vendor_runtime.py
RENAMED
|
File without changes
|
|
File without changes
|
{codemie_sdk_python-0.1.515 → codemie_sdk_python-0.1.516}/src/codemie_sdk/services/webhook.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|