codemie-sdk-python 0.1.676__tar.gz → 0.1.678__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 (74) hide show
  1. {codemie_sdk_python-0.1.676 → codemie_sdk_python-0.1.678}/PKG-INFO +1 -1
  2. {codemie_sdk_python-0.1.676 → codemie_sdk_python-0.1.678}/pyproject.toml +1 -1
  3. {codemie_sdk_python-0.1.676 → codemie_sdk_python-0.1.678}/src/codemie_sdk/models/user.py +15 -7
  4. {codemie_sdk_python-0.1.676 → codemie_sdk_python-0.1.678}/src/codemie_sdk/services/skill.py +30 -0
  5. {codemie_sdk_python-0.1.676 → codemie_sdk_python-0.1.678}/src/codemie_sdk/services/user.py +29 -0
  6. {codemie_sdk_python-0.1.676 → codemie_sdk_python-0.1.678}/README.md +0 -0
  7. {codemie_sdk_python-0.1.676 → codemie_sdk_python-0.1.678}/src/codemie_sdk/__init__.py +0 -0
  8. {codemie_sdk_python-0.1.676 → codemie_sdk_python-0.1.678}/src/codemie_sdk/auth/__init__.py +0 -0
  9. {codemie_sdk_python-0.1.676 → codemie_sdk_python-0.1.678}/src/codemie_sdk/auth/credentials.py +0 -0
  10. {codemie_sdk_python-0.1.676 → codemie_sdk_python-0.1.678}/src/codemie_sdk/client/__init__.py +0 -0
  11. {codemie_sdk_python-0.1.676 → codemie_sdk_python-0.1.678}/src/codemie_sdk/client/client.py +0 -0
  12. {codemie_sdk_python-0.1.676 → codemie_sdk_python-0.1.678}/src/codemie_sdk/exceptions.py +0 -0
  13. {codemie_sdk_python-0.1.676 → codemie_sdk_python-0.1.678}/src/codemie_sdk/models/__init__.py +0 -0
  14. {codemie_sdk_python-0.1.676 → codemie_sdk_python-0.1.678}/src/codemie_sdk/models/a2a.py +0 -0
  15. {codemie_sdk_python-0.1.676 → codemie_sdk_python-0.1.678}/src/codemie_sdk/models/activity_event.py +0 -0
  16. {codemie_sdk_python-0.1.676 → codemie_sdk_python-0.1.678}/src/codemie_sdk/models/admin.py +0 -0
  17. {codemie_sdk_python-0.1.676 → codemie_sdk_python-0.1.678}/src/codemie_sdk/models/analytics.py +0 -0
  18. {codemie_sdk_python-0.1.676 → codemie_sdk_python-0.1.678}/src/codemie_sdk/models/assistant.py +0 -0
  19. {codemie_sdk_python-0.1.676 → codemie_sdk_python-0.1.678}/src/codemie_sdk/models/categories.py +0 -0
  20. {codemie_sdk_python-0.1.676 → codemie_sdk_python-0.1.678}/src/codemie_sdk/models/common.py +0 -0
  21. {codemie_sdk_python-0.1.676 → codemie_sdk_python-0.1.678}/src/codemie_sdk/models/conversation.py +0 -0
  22. {codemie_sdk_python-0.1.676 → codemie_sdk_python-0.1.678}/src/codemie_sdk/models/cost_center.py +0 -0
  23. {codemie_sdk_python-0.1.676 → codemie_sdk_python-0.1.678}/src/codemie_sdk/models/datasource.py +0 -0
  24. {codemie_sdk_python-0.1.676 → codemie_sdk_python-0.1.678}/src/codemie_sdk/models/errors.py +0 -0
  25. {codemie_sdk_python-0.1.676 → codemie_sdk_python-0.1.678}/src/codemie_sdk/models/file_operation.py +0 -0
  26. {codemie_sdk_python-0.1.676 → codemie_sdk_python-0.1.678}/src/codemie_sdk/models/guardrails.py +0 -0
  27. {codemie_sdk_python-0.1.676 → codemie_sdk_python-0.1.678}/src/codemie_sdk/models/integration.py +0 -0
  28. {codemie_sdk_python-0.1.676 → codemie_sdk_python-0.1.678}/src/codemie_sdk/models/llm.py +0 -0
  29. {codemie_sdk_python-0.1.676 → codemie_sdk_python-0.1.678}/src/codemie_sdk/models/mcp_config.py +0 -0
  30. {codemie_sdk_python-0.1.676 → codemie_sdk_python-0.1.678}/src/codemie_sdk/models/mermaid.py +0 -0
  31. {codemie_sdk_python-0.1.676 → codemie_sdk_python-0.1.678}/src/codemie_sdk/models/project.py +0 -0
  32. {codemie_sdk_python-0.1.676 → codemie_sdk_python-0.1.678}/src/codemie_sdk/models/skill.py +0 -0
  33. {codemie_sdk_python-0.1.676 → codemie_sdk_python-0.1.678}/src/codemie_sdk/models/task.py +0 -0
  34. {codemie_sdk_python-0.1.676 → codemie_sdk_python-0.1.678}/src/codemie_sdk/models/vendor_assistant.py +0 -0
  35. {codemie_sdk_python-0.1.676 → codemie_sdk_python-0.1.678}/src/codemie_sdk/models/vendor_guardrail.py +0 -0
  36. {codemie_sdk_python-0.1.676 → codemie_sdk_python-0.1.678}/src/codemie_sdk/models/vendor_knowledgebase.py +0 -0
  37. {codemie_sdk_python-0.1.676 → codemie_sdk_python-0.1.678}/src/codemie_sdk/models/vendor_runtime.py +0 -0
  38. {codemie_sdk_python-0.1.676 → codemie_sdk_python-0.1.678}/src/codemie_sdk/models/vendor_workflow.py +0 -0
  39. {codemie_sdk_python-0.1.676 → codemie_sdk_python-0.1.678}/src/codemie_sdk/models/workflow.py +0 -0
  40. {codemie_sdk_python-0.1.676 → codemie_sdk_python-0.1.678}/src/codemie_sdk/models/workflow_execution_payload.py +0 -0
  41. {codemie_sdk_python-0.1.676 → codemie_sdk_python-0.1.678}/src/codemie_sdk/models/workflow_state.py +0 -0
  42. {codemie_sdk_python-0.1.676 → codemie_sdk_python-0.1.678}/src/codemie_sdk/models/workflow_thoughts.py +0 -0
  43. {codemie_sdk_python-0.1.676 → codemie_sdk_python-0.1.678}/src/codemie_sdk/models/workflow_transition.py +0 -0
  44. {codemie_sdk_python-0.1.676 → codemie_sdk_python-0.1.678}/src/codemie_sdk/services/a2a.py +0 -0
  45. {codemie_sdk_python-0.1.676 → codemie_sdk_python-0.1.678}/src/codemie_sdk/services/activity_event.py +0 -0
  46. {codemie_sdk_python-0.1.676 → codemie_sdk_python-0.1.678}/src/codemie_sdk/services/admin.py +0 -0
  47. {codemie_sdk_python-0.1.676 → codemie_sdk_python-0.1.678}/src/codemie_sdk/services/analytics.py +0 -0
  48. {codemie_sdk_python-0.1.676 → codemie_sdk_python-0.1.678}/src/codemie_sdk/services/assistant.py +0 -0
  49. {codemie_sdk_python-0.1.676 → codemie_sdk_python-0.1.678}/src/codemie_sdk/services/categories.py +0 -0
  50. {codemie_sdk_python-0.1.676 → codemie_sdk_python-0.1.678}/src/codemie_sdk/services/codemie_guardrails.py +0 -0
  51. {codemie_sdk_python-0.1.676 → codemie_sdk_python-0.1.678}/src/codemie_sdk/services/conversation.py +0 -0
  52. {codemie_sdk_python-0.1.676 → codemie_sdk_python-0.1.678}/src/codemie_sdk/services/cost_center.py +0 -0
  53. {codemie_sdk_python-0.1.676 → codemie_sdk_python-0.1.678}/src/codemie_sdk/services/customer_config_service.py +0 -0
  54. {codemie_sdk_python-0.1.676 → codemie_sdk_python-0.1.678}/src/codemie_sdk/services/datasource.py +0 -0
  55. {codemie_sdk_python-0.1.676 → codemie_sdk_python-0.1.678}/src/codemie_sdk/services/dynamic_config.py +0 -0
  56. {codemie_sdk_python-0.1.676 → codemie_sdk_python-0.1.678}/src/codemie_sdk/services/files.py +0 -0
  57. {codemie_sdk_python-0.1.676 → codemie_sdk_python-0.1.678}/src/codemie_sdk/services/integration.py +0 -0
  58. {codemie_sdk_python-0.1.676 → codemie_sdk_python-0.1.678}/src/codemie_sdk/services/llm.py +0 -0
  59. {codemie_sdk_python-0.1.676 → codemie_sdk_python-0.1.678}/src/codemie_sdk/services/mcp_configs.py +0 -0
  60. {codemie_sdk_python-0.1.676 → codemie_sdk_python-0.1.678}/src/codemie_sdk/services/mermaid.py +0 -0
  61. {codemie_sdk_python-0.1.676 → codemie_sdk_python-0.1.678}/src/codemie_sdk/services/project.py +0 -0
  62. {codemie_sdk_python-0.1.676 → codemie_sdk_python-0.1.678}/src/codemie_sdk/services/project_budget_groups.py +0 -0
  63. {codemie_sdk_python-0.1.676 → codemie_sdk_python-0.1.678}/src/codemie_sdk/services/task.py +0 -0
  64. {codemie_sdk_python-0.1.676 → codemie_sdk_python-0.1.678}/src/codemie_sdk/services/vendor_assistant.py +0 -0
  65. {codemie_sdk_python-0.1.676 → codemie_sdk_python-0.1.678}/src/codemie_sdk/services/vendor_guardrail.py +0 -0
  66. {codemie_sdk_python-0.1.676 → codemie_sdk_python-0.1.678}/src/codemie_sdk/services/vendor_knowledgebase.py +0 -0
  67. {codemie_sdk_python-0.1.676 → codemie_sdk_python-0.1.678}/src/codemie_sdk/services/vendor_runtime.py +0 -0
  68. {codemie_sdk_python-0.1.676 → codemie_sdk_python-0.1.678}/src/codemie_sdk/services/vendor_workflow.py +0 -0
  69. {codemie_sdk_python-0.1.676 → codemie_sdk_python-0.1.678}/src/codemie_sdk/services/webhook.py +0 -0
  70. {codemie_sdk_python-0.1.676 → codemie_sdk_python-0.1.678}/src/codemie_sdk/services/workflow.py +0 -0
  71. {codemie_sdk_python-0.1.676 → codemie_sdk_python-0.1.678}/src/codemie_sdk/services/workflow_execution.py +0 -0
  72. {codemie_sdk_python-0.1.676 → codemie_sdk_python-0.1.678}/src/codemie_sdk/services/workflow_execution_state.py +0 -0
  73. {codemie_sdk_python-0.1.676 → codemie_sdk_python-0.1.678}/src/codemie_sdk/utils/__init__.py +0 -0
  74. {codemie_sdk_python-0.1.676 → codemie_sdk_python-0.1.678}/src/codemie_sdk/utils/http.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: codemie-sdk-python
3
- Version: 0.1.676
3
+ Version: 0.1.678
4
4
  Summary: CodeMie SDK for Python
5
5
  Author: Vadym Vlasenko
6
6
  Author-email: vadym_vlasenko@epam.com
@@ -1,6 +1,6 @@
1
1
  [tool.poetry]
2
2
  name = "codemie-sdk-python"
3
- version = "0.1.676"
3
+ version = "0.1.678"
4
4
  description = "CodeMie SDK for Python"
5
5
  authors = [
6
6
  "Vadym Vlasenko <vadym_vlasenko@epam.com>",
@@ -13,6 +13,15 @@ class PaginationInfo(BaseModel):
13
13
  per_page: int
14
14
 
15
15
 
16
+ class AdminUserProjectInfo(BaseModel):
17
+ model_config = ConfigDict(extra="ignore")
18
+
19
+ name: str
20
+ display_name: Optional[str] = None
21
+ is_project_admin: bool = False
22
+ is_default: bool = False
23
+
24
+
16
25
  class AdminUserListItem(BaseModel):
17
26
  model_config = ConfigDict(extra="ignore")
18
27
 
@@ -26,6 +35,7 @@ class AdminUserListItem(BaseModel):
26
35
  is_maintainer: bool = False
27
36
  auth_source: Optional[str] = None
28
37
  last_login_at: Optional[str] = None
38
+ projects: List[AdminUserProjectInfo] = []
29
39
  date: Optional[str] = None
30
40
 
31
41
 
@@ -36,13 +46,6 @@ class PaginatedUserListResponse(BaseModel):
36
46
  pagination: PaginationInfo
37
47
 
38
48
 
39
- class AdminUserProjectInfo(BaseModel):
40
- model_config = ConfigDict(extra="ignore")
41
-
42
- name: str
43
- is_project_admin: bool = False
44
-
45
-
46
49
  class CodeMieUserDetail(BaseModel):
47
50
  model_config = ConfigDict(extra="ignore")
48
51
 
@@ -71,6 +74,7 @@ class AdminUserProject(BaseModel):
71
74
 
72
75
  project_name: str
73
76
  is_project_admin: bool = False
77
+ is_default: bool = False
74
78
  date: Optional[str] = None
75
79
 
76
80
 
@@ -102,6 +106,10 @@ class User(BaseModel):
102
106
  description="List of applications where user has admin rights",
103
107
  validation_alias="applicationsAdmin",
104
108
  )
109
+ projects: list[AdminUserProjectInfo] = Field(
110
+ default_factory=list,
111
+ description="Projects the user belongs to, including the default-project flag",
112
+ )
105
113
  picture: str = Field(default="", description="URL to user's profile picture")
106
114
  knowledge_bases: list[str] = Field(
107
115
  default_factory=list,
@@ -397,3 +397,33 @@ class SkillService:
397
397
  Skill config with max_content_length and min_content_length
398
398
  """
399
399
  return self._api.get("/v1/skills/config", SkillConfigResponse)
400
+
401
+ def generate_instructions(
402
+ self,
403
+ description: str,
404
+ existing_instructions: str | None = None,
405
+ skill_name: str | None = None,
406
+ llm_model: str | None = None,
407
+ ) -> dict:
408
+ """Generate skill instructions from a description with AI.
409
+
410
+ Args:
411
+ description: User description of what the skill should do
412
+ existing_instructions: Existing instructions to refine (optional)
413
+ skill_name: Skill name for context (optional)
414
+ llm_model: LLM model to use; platform default when omitted
415
+
416
+ Returns:
417
+ Dict with generated `instructions` and generation `metadata`
418
+ """
419
+ return self._api.post(
420
+ "/v1/skills/instructions/generate",
421
+ dict,
422
+ json_data={
423
+ "description": description,
424
+ "existing_instructions": existing_instructions,
425
+ "skill_name": skill_name,
426
+ "llm_model": llm_model,
427
+ },
428
+ wrap_response=False,
429
+ )
@@ -159,6 +159,35 @@ class UserService:
159
159
  wrap_response=False,
160
160
  )
161
161
 
162
+ def set_default_project(self, user_id: str, project_name: str) -> dict:
163
+ """Mark a project as the user's default project (admin or maintainer).
164
+
165
+ Replaces any previously set default. The user must be a member of the project.
166
+
167
+ Args:
168
+ user_id: The user's unique identifier
169
+ project_name: Name of the project to mark as default
170
+ """
171
+ return self._api.put(
172
+ f"/v1/admin/users/{user_id}/projects/{project_name}/default",
173
+ dict,
174
+ json_data={},
175
+ wrap_response=False,
176
+ )
177
+
178
+ def clear_default_project(self, user_id: str, project_name: str) -> dict:
179
+ """Unset a project as the user's default project (admin or maintainer).
180
+
181
+ Args:
182
+ user_id: The user's unique identifier
183
+ project_name: Name of the project to unset as default
184
+ """
185
+ return self._api.delete(
186
+ f"/v1/admin/users/{user_id}/projects/{project_name}/default",
187
+ dict,
188
+ wrap_response=False,
189
+ )
190
+
162
191
  def deactivate_user(self, user_id: str) -> None:
163
192
  """Deactivate (soft-delete) a user (SuperAdmin only).
164
193