codemie-sdk-python 0.1.596__tar.gz → 0.1.598__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 (69) hide show
  1. codemie_sdk_python-0.1.596/README.md → codemie_sdk_python-0.1.598/PKG-INFO +14 -43
  2. codemie_sdk_python-0.1.596/PKG-INFO → codemie_sdk_python-0.1.598/README.md +1 -56
  3. {codemie_sdk_python-0.1.596 → codemie_sdk_python-0.1.598}/pyproject.toml +1 -1
  4. {codemie_sdk_python-0.1.596 → codemie_sdk_python-0.1.598}/src/codemie_sdk/__init__.py +0 -8
  5. {codemie_sdk_python-0.1.596 → codemie_sdk_python-0.1.598}/src/codemie_sdk/models/assistant.py +0 -50
  6. {codemie_sdk_python-0.1.596 → codemie_sdk_python-0.1.598}/src/codemie_sdk/models/integration.py +1 -0
  7. {codemie_sdk_python-0.1.596 → codemie_sdk_python-0.1.598}/src/codemie_sdk/services/assistant.py +0 -96
  8. {codemie_sdk_python-0.1.596 → codemie_sdk_python-0.1.598}/src/codemie_sdk/auth/__init__.py +0 -0
  9. {codemie_sdk_python-0.1.596 → codemie_sdk_python-0.1.598}/src/codemie_sdk/auth/credentials.py +0 -0
  10. {codemie_sdk_python-0.1.596 → codemie_sdk_python-0.1.598}/src/codemie_sdk/client/__init__.py +0 -0
  11. {codemie_sdk_python-0.1.596 → codemie_sdk_python-0.1.598}/src/codemie_sdk/client/client.py +0 -0
  12. {codemie_sdk_python-0.1.596 → codemie_sdk_python-0.1.598}/src/codemie_sdk/exceptions.py +0 -0
  13. {codemie_sdk_python-0.1.596 → codemie_sdk_python-0.1.598}/src/codemie_sdk/models/__init__.py +0 -0
  14. {codemie_sdk_python-0.1.596 → codemie_sdk_python-0.1.598}/src/codemie_sdk/models/activity_event.py +0 -0
  15. {codemie_sdk_python-0.1.596 → codemie_sdk_python-0.1.598}/src/codemie_sdk/models/admin.py +0 -0
  16. {codemie_sdk_python-0.1.596 → codemie_sdk_python-0.1.598}/src/codemie_sdk/models/analytics.py +0 -0
  17. {codemie_sdk_python-0.1.596 → codemie_sdk_python-0.1.598}/src/codemie_sdk/models/categories.py +0 -0
  18. {codemie_sdk_python-0.1.596 → codemie_sdk_python-0.1.598}/src/codemie_sdk/models/common.py +0 -0
  19. {codemie_sdk_python-0.1.596 → codemie_sdk_python-0.1.598}/src/codemie_sdk/models/conversation.py +0 -0
  20. {codemie_sdk_python-0.1.596 → codemie_sdk_python-0.1.598}/src/codemie_sdk/models/datasource.py +0 -0
  21. {codemie_sdk_python-0.1.596 → codemie_sdk_python-0.1.598}/src/codemie_sdk/models/errors.py +0 -0
  22. {codemie_sdk_python-0.1.596 → codemie_sdk_python-0.1.598}/src/codemie_sdk/models/file_operation.py +0 -0
  23. {codemie_sdk_python-0.1.596 → codemie_sdk_python-0.1.598}/src/codemie_sdk/models/guardrails.py +0 -0
  24. {codemie_sdk_python-0.1.596 → codemie_sdk_python-0.1.598}/src/codemie_sdk/models/llm.py +0 -0
  25. {codemie_sdk_python-0.1.596 → codemie_sdk_python-0.1.598}/src/codemie_sdk/models/mcp_config.py +0 -0
  26. {codemie_sdk_python-0.1.596 → codemie_sdk_python-0.1.598}/src/codemie_sdk/models/mermaid.py +0 -0
  27. {codemie_sdk_python-0.1.596 → codemie_sdk_python-0.1.598}/src/codemie_sdk/models/project.py +0 -0
  28. {codemie_sdk_python-0.1.596 → codemie_sdk_python-0.1.598}/src/codemie_sdk/models/skill.py +0 -0
  29. {codemie_sdk_python-0.1.596 → codemie_sdk_python-0.1.598}/src/codemie_sdk/models/task.py +0 -0
  30. {codemie_sdk_python-0.1.596 → codemie_sdk_python-0.1.598}/src/codemie_sdk/models/user.py +0 -0
  31. {codemie_sdk_python-0.1.596 → codemie_sdk_python-0.1.598}/src/codemie_sdk/models/vendor_assistant.py +0 -0
  32. {codemie_sdk_python-0.1.596 → codemie_sdk_python-0.1.598}/src/codemie_sdk/models/vendor_guardrail.py +0 -0
  33. {codemie_sdk_python-0.1.596 → codemie_sdk_python-0.1.598}/src/codemie_sdk/models/vendor_knowledgebase.py +0 -0
  34. {codemie_sdk_python-0.1.596 → codemie_sdk_python-0.1.598}/src/codemie_sdk/models/vendor_runtime.py +0 -0
  35. {codemie_sdk_python-0.1.596 → codemie_sdk_python-0.1.598}/src/codemie_sdk/models/vendor_workflow.py +0 -0
  36. {codemie_sdk_python-0.1.596 → codemie_sdk_python-0.1.598}/src/codemie_sdk/models/workflow.py +0 -0
  37. {codemie_sdk_python-0.1.596 → codemie_sdk_python-0.1.598}/src/codemie_sdk/models/workflow_execution_payload.py +0 -0
  38. {codemie_sdk_python-0.1.596 → codemie_sdk_python-0.1.598}/src/codemie_sdk/models/workflow_state.py +0 -0
  39. {codemie_sdk_python-0.1.596 → codemie_sdk_python-0.1.598}/src/codemie_sdk/models/workflow_thoughts.py +0 -0
  40. {codemie_sdk_python-0.1.596 → codemie_sdk_python-0.1.598}/src/codemie_sdk/models/workflow_transition.py +0 -0
  41. {codemie_sdk_python-0.1.596 → codemie_sdk_python-0.1.598}/src/codemie_sdk/services/activity_event.py +0 -0
  42. {codemie_sdk_python-0.1.596 → codemie_sdk_python-0.1.598}/src/codemie_sdk/services/admin.py +0 -0
  43. {codemie_sdk_python-0.1.596 → codemie_sdk_python-0.1.598}/src/codemie_sdk/services/analytics.py +0 -0
  44. {codemie_sdk_python-0.1.596 → codemie_sdk_python-0.1.598}/src/codemie_sdk/services/categories.py +0 -0
  45. {codemie_sdk_python-0.1.596 → codemie_sdk_python-0.1.598}/src/codemie_sdk/services/codemie_guardrails.py +0 -0
  46. {codemie_sdk_python-0.1.596 → codemie_sdk_python-0.1.598}/src/codemie_sdk/services/conversation.py +0 -0
  47. {codemie_sdk_python-0.1.596 → codemie_sdk_python-0.1.598}/src/codemie_sdk/services/customer_config_service.py +0 -0
  48. {codemie_sdk_python-0.1.596 → codemie_sdk_python-0.1.598}/src/codemie_sdk/services/datasource.py +0 -0
  49. {codemie_sdk_python-0.1.596 → codemie_sdk_python-0.1.598}/src/codemie_sdk/services/dynamic_config.py +0 -0
  50. {codemie_sdk_python-0.1.596 → codemie_sdk_python-0.1.598}/src/codemie_sdk/services/files.py +0 -0
  51. {codemie_sdk_python-0.1.596 → codemie_sdk_python-0.1.598}/src/codemie_sdk/services/integration.py +0 -0
  52. {codemie_sdk_python-0.1.596 → codemie_sdk_python-0.1.598}/src/codemie_sdk/services/llm.py +0 -0
  53. {codemie_sdk_python-0.1.596 → codemie_sdk_python-0.1.598}/src/codemie_sdk/services/mcp_configs.py +0 -0
  54. {codemie_sdk_python-0.1.596 → codemie_sdk_python-0.1.598}/src/codemie_sdk/services/mermaid.py +0 -0
  55. {codemie_sdk_python-0.1.596 → codemie_sdk_python-0.1.598}/src/codemie_sdk/services/project.py +0 -0
  56. {codemie_sdk_python-0.1.596 → codemie_sdk_python-0.1.598}/src/codemie_sdk/services/skill.py +0 -0
  57. {codemie_sdk_python-0.1.596 → codemie_sdk_python-0.1.598}/src/codemie_sdk/services/task.py +0 -0
  58. {codemie_sdk_python-0.1.596 → codemie_sdk_python-0.1.598}/src/codemie_sdk/services/user.py +0 -0
  59. {codemie_sdk_python-0.1.596 → codemie_sdk_python-0.1.598}/src/codemie_sdk/services/vendor_assistant.py +0 -0
  60. {codemie_sdk_python-0.1.596 → codemie_sdk_python-0.1.598}/src/codemie_sdk/services/vendor_guardrail.py +0 -0
  61. {codemie_sdk_python-0.1.596 → codemie_sdk_python-0.1.598}/src/codemie_sdk/services/vendor_knowledgebase.py +0 -0
  62. {codemie_sdk_python-0.1.596 → codemie_sdk_python-0.1.598}/src/codemie_sdk/services/vendor_runtime.py +0 -0
  63. {codemie_sdk_python-0.1.596 → codemie_sdk_python-0.1.598}/src/codemie_sdk/services/vendor_workflow.py +0 -0
  64. {codemie_sdk_python-0.1.596 → codemie_sdk_python-0.1.598}/src/codemie_sdk/services/webhook.py +0 -0
  65. {codemie_sdk_python-0.1.596 → codemie_sdk_python-0.1.598}/src/codemie_sdk/services/workflow.py +0 -0
  66. {codemie_sdk_python-0.1.596 → codemie_sdk_python-0.1.598}/src/codemie_sdk/services/workflow_execution.py +0 -0
  67. {codemie_sdk_python-0.1.596 → codemie_sdk_python-0.1.598}/src/codemie_sdk/services/workflow_execution_state.py +0 -0
  68. {codemie_sdk_python-0.1.596 → codemie_sdk_python-0.1.598}/src/codemie_sdk/utils/__init__.py +0 -0
  69. {codemie_sdk_python-0.1.596 → codemie_sdk_python-0.1.598}/src/codemie_sdk/utils/http.py +0 -0
@@ -1,3 +1,16 @@
1
+ Metadata-Version: 2.1
2
+ Name: codemie-sdk-python
3
+ Version: 0.1.598
4
+ Summary: CodeMie SDK for Python
5
+ Author: Vadym Vlasenko
6
+ Author-email: vadym_vlasenko@epam.com
7
+ Requires-Python: >=3.12,<4.0
8
+ Classifier: Programming Language :: Python :: 3
9
+ Classifier: Programming Language :: Python :: 3.12
10
+ Requires-Dist: pydantic (>=2.12.2,<3.0.0)
11
+ Requires-Dist: requests (>=2.31.0,<3.0.0)
12
+ Description-Content-Type: text/markdown
13
+
1
14
  # CodeMie Python SDK
2
15
 
3
16
  Python SDK for CodeMie services. This SDK provides a comprehensive interface to interact with CodeMie services, including LLM (Large Language Models), assistants, workflows, and tools.
@@ -340,48 +353,6 @@ response = client.assistants.chat_with_version("assistant-id", version_number=2,
340
353
  print(response.generated)
341
354
  ```
342
355
 
343
- #### Project Feature Mapping
344
-
345
- Control which assistants have a feature enabled per project. Currently the only supported feature is `teams`.
346
-
347
- 1. **List assistants with a feature enabled for a project**
348
- ```python
349
- from codemie_sdk import AssistantProjectFeature
350
-
351
- assistants = client.assistants.list_project_mapping(
352
- feature=AssistantProjectFeature.teams,
353
- project="my-project",
354
- page=0,
355
- per_page=12,
356
- )
357
- for a in assistants:
358
- print(a.name)
359
- ```
360
-
361
- 2. **Enable a feature for an assistant on a project**
362
- ```python
363
- from codemie_sdk import AssistantProjectFeature, AssistantProjectMappingRequest
364
-
365
- request = AssistantProjectMappingRequest(
366
- project_name="my-project",
367
- feature=AssistantProjectFeature.teams,
368
- )
369
- response = client.assistants.enable_project_mapping("assistant-id", request)
370
- print(response.message)
371
- ```
372
-
373
- 3. **Disable a feature for an assistant on a project**
374
- ```python
375
- from codemie_sdk import AssistantProjectFeature
376
-
377
- response = client.assistants.disable_project_mapping(
378
- "assistant-id",
379
- project="my-project",
380
- feature=AssistantProjectFeature.teams,
381
- )
382
- print(response.message)
383
- ```
384
-
385
356
  ### Datasource Service
386
357
 
387
358
  The Datasource service enables managing various types of data sources in CodeMie, including code repositories, Confluence spaces, Jira projects, files, and Google documents.
@@ -1430,4 +1401,4 @@ poetry build
1430
1401
 
1431
1402
  # Publish to PyPI
1432
1403
  make publish
1433
- ```
1404
+ ```
@@ -1,16 +1,3 @@
1
- Metadata-Version: 2.1
2
- Name: codemie-sdk-python
3
- Version: 0.1.596
4
- Summary: CodeMie SDK for Python
5
- Author: Vadym Vlasenko
6
- Author-email: vadym_vlasenko@epam.com
7
- Requires-Python: >=3.12,<4.0
8
- Classifier: Programming Language :: Python :: 3
9
- Classifier: Programming Language :: Python :: 3.12
10
- Requires-Dist: pydantic (>=2.12.2,<3.0.0)
11
- Requires-Dist: requests (>=2.31.0,<3.0.0)
12
- Description-Content-Type: text/markdown
13
-
14
1
  # CodeMie Python SDK
15
2
 
16
3
  Python SDK for CodeMie services. This SDK provides a comprehensive interface to interact with CodeMie services, including LLM (Large Language Models), assistants, workflows, and tools.
@@ -353,48 +340,6 @@ response = client.assistants.chat_with_version("assistant-id", version_number=2,
353
340
  print(response.generated)
354
341
  ```
355
342
 
356
- #### Project Feature Mapping
357
-
358
- Control which assistants have a feature enabled per project. Currently the only supported feature is `teams`.
359
-
360
- 1. **List assistants with a feature enabled for a project**
361
- ```python
362
- from codemie_sdk import AssistantProjectFeature
363
-
364
- assistants = client.assistants.list_project_mapping(
365
- feature=AssistantProjectFeature.teams,
366
- project="my-project",
367
- page=0,
368
- per_page=12,
369
- )
370
- for a in assistants:
371
- print(a.name)
372
- ```
373
-
374
- 2. **Enable a feature for an assistant on a project**
375
- ```python
376
- from codemie_sdk import AssistantProjectFeature, AssistantProjectMappingRequest
377
-
378
- request = AssistantProjectMappingRequest(
379
- project_name="my-project",
380
- feature=AssistantProjectFeature.teams,
381
- )
382
- response = client.assistants.enable_project_mapping("assistant-id", request)
383
- print(response.message)
384
- ```
385
-
386
- 3. **Disable a feature for an assistant on a project**
387
- ```python
388
- from codemie_sdk import AssistantProjectFeature
389
-
390
- response = client.assistants.disable_project_mapping(
391
- "assistant-id",
392
- project="my-project",
393
- feature=AssistantProjectFeature.teams,
394
- )
395
- print(response.message)
396
- ```
397
-
398
343
  ### Datasource Service
399
344
 
400
345
  The Datasource service enables managing various types of data sources in CodeMie, including code repositories, Confluence spaces, Jira projects, files, and Google documents.
@@ -1443,4 +1388,4 @@ poetry build
1443
1388
 
1444
1389
  # Publish to PyPI
1445
1390
  make publish
1446
- ```
1391
+ ```
@@ -1,6 +1,6 @@
1
1
  [tool.poetry]
2
2
  name = "codemie-sdk-python"
3
- version = "0.1.596"
3
+ version = "0.1.598"
4
4
  description = "CodeMie SDK for Python"
5
5
  authors = [
6
6
  "Vadym Vlasenko <vadym_vlasenko@epam.com>",
@@ -151,10 +151,6 @@ from .models.skill import (
151
151
  from .services.skill import SkillService
152
152
  from .models.assistant import (
153
153
  BuiltinSubagent,
154
- AssistantProjectFeature,
155
- AssistantProjectMappingRequest,
156
- AssistantProjectMappingPagination,
157
- AssistantProjectMappingListResponse,
158
154
  )
159
155
  from .models.integration import (
160
156
  TransferMode,
@@ -165,10 +161,6 @@ from .models.integration import (
165
161
  __version__ = "0.2.12"
166
162
  __all__ = [
167
163
  "CodeMieClient",
168
- "AssistantProjectFeature",
169
- "AssistantProjectMappingRequest",
170
- "AssistantProjectMappingPagination",
171
- "AssistantProjectMappingListResponse",
172
164
  "VendorType",
173
165
  "VendorAssistantSetting",
174
166
  "VendorAssistantSettingsResponse",
@@ -612,53 +612,3 @@ class ReactionRequest(BaseModel):
612
612
  model_config = ConfigDict(extra="ignore", use_enum_values=True)
613
613
 
614
614
  reaction: ReactionType = Field(description="Reaction type: 'like' or 'dislike'")
615
-
616
-
617
- class AssistantProjectFeature(str, Enum):
618
- """Feature discriminator for assistant/project mappings (e.g. Teams bot).
619
-
620
- This enum is expected to grow over time on the backend; treat unrecognized
621
- wire values defensively rather than assuming this is the complete set.
622
- """
623
-
624
- TEAMS = "teams"
625
-
626
-
627
- class AssistantProjectMappingRequest(BaseModel):
628
- """Request body for POST /v1/assistants/{assistant_id}/projects/mapping."""
629
-
630
- model_config = ConfigDict(extra="ignore", use_enum_values=True)
631
-
632
- project_name: str = Field(description="Project (application) name")
633
- feature: AssistantProjectFeature = Field(
634
- description="Feature discriminator this mapping is for, e.g. 'teams'"
635
- )
636
-
637
-
638
- class AssistantProjectMappingPagination(BaseModel):
639
- """Pagination metadata returned by GET /v1/assistants/projects/mapping."""
640
-
641
- model_config = ConfigDict(extra="ignore")
642
-
643
- page: int = Field(description="Current page, 0-indexed")
644
- per_page: int = Field(description="Items per page")
645
- total: int = Field(description="Total matching assistants across all pages")
646
-
647
-
648
- class AssistantProjectMappingListResponse(BaseModel):
649
- """Response for GET /v1/assistants/projects/mapping.
650
-
651
- List items are intentionally typed as ``dict[str, Any]`` rather than
652
- ``Assistant``/``AssistantBase``. The backend contract documents this
653
- endpoint as returning "the same shape as GET /v1/assistants", but that
654
- endpoint's own shape is parameterized by a ``minimal_response`` flag that
655
- this new endpoint does not expose, and the exact per-item fields returned
656
- here are not otherwise confirmed. Rather than guess the wire format,
657
- callers get the raw dict and can assert on whichever fields they need
658
- (e.g. ``item["id"]``).
659
- """
660
-
661
- model_config = ConfigDict(extra="ignore")
662
-
663
- data: list[dict[str, Any]] = Field(default_factory=list)
664
- pagination: AssistantProjectMappingPagination
@@ -41,6 +41,7 @@ class CredentialTypes(str, Enum):
41
41
  SHAREPOINT = "SharePoint"
42
42
  GOOGLE_OAUTH = "GoogleOAuth"
43
43
  XWIKI = "XWiki"
44
+ MS_TEAMS = "MSTeams"
44
45
 
45
46
 
46
47
  class IntegrationType(str, Enum):
@@ -28,12 +28,8 @@ from ..models.assistant import (
28
28
  ExportAssistantPayload,
29
29
  AssistantEvaluationRequest,
30
30
  ReactionRequest,
31
- AssistantProjectFeature,
32
- AssistantProjectMappingRequest,
33
- AssistantProjectMappingListResponse,
34
31
  )
35
32
  from ..models.common import PaginationParams
36
- from ..models.conversation import BaseResponse
37
33
  from ..utils import ApiRequestHandler, TokenSource
38
34
 
39
35
 
@@ -618,95 +614,3 @@ class AssistantService:
618
614
  Response from the API
619
615
  """
620
616
  return self._api.delete(f"/v1/assistants/{assistant_id}/reactions", dict)
621
-
622
- def list_project_mapping(
623
- self,
624
- project_name: str,
625
- feature: AssistantProjectFeature = AssistantProjectFeature.TEAMS,
626
- page: int = 0,
627
- per_page: int = 12,
628
- ) -> AssistantProjectMappingListResponse:
629
- """List assistants enabled for a project feature (e.g. Teams bot).
630
-
631
- Accessible to any member of ``project_name``, not just project admins.
632
-
633
- Args:
634
- project_name: Project (application) name to list mappings for
635
- feature: Feature discriminator, currently only "teams"
636
- page: Page number, 0-indexed
637
- per_page: Items per page (default 12, max 10000)
638
-
639
- Returns:
640
- Paginated list of assistants enabled for the project feature
641
- """
642
- feature_value = (
643
- feature.value if isinstance(feature, AssistantProjectFeature) else feature
644
- )
645
- params = PaginationParams(page=page, per_page=per_page).to_dict()
646
- params["feature"] = feature_value
647
- params["project"] = project_name
648
- return self._api.get(
649
- "/v1/assistants/projects/mapping",
650
- AssistantProjectMappingListResponse,
651
- params=params,
652
- wrap_response=False,
653
- )
654
-
655
- def enable_for_project(
656
- self,
657
- assistant_id: str,
658
- project_name: str,
659
- feature: AssistantProjectFeature = AssistantProjectFeature.TEAMS,
660
- ) -> BaseResponse:
661
- """Enable an assistant for a project feature (e.g. Teams bot).
662
-
663
- Idempotent — calling this when the mapping already exists returns 200
664
- with no error. Requires the caller to be a project admin/maintainer
665
- (or application admin) for ``project_name``.
666
-
667
- Args:
668
- assistant_id: ID of the assistant to enable
669
- project_name: Project (application) name to enable the mapping for
670
- feature: Feature discriminator, currently only "teams"
671
-
672
- Returns:
673
- Response confirming the assistant was enabled
674
- """
675
- request = AssistantProjectMappingRequest(
676
- project_name=project_name, feature=feature
677
- )
678
- return self._api.post(
679
- f"/v1/assistants/{assistant_id}/projects/mapping",
680
- BaseResponse,
681
- json_data=request.model_dump(exclude_none=True),
682
- )
683
-
684
- def disable_for_project(
685
- self,
686
- assistant_id: str,
687
- project_name: str,
688
- feature: AssistantProjectFeature = AssistantProjectFeature.TEAMS,
689
- ) -> BaseResponse:
690
- """Disable an assistant for a project feature (e.g. Teams bot).
691
-
692
- Raises an HTTP error (404) if the mapping does not exist. Requires the
693
- caller to be a project admin/maintainer (or application admin) for
694
- ``project_name``.
695
-
696
- Args:
697
- assistant_id: ID of the assistant to disable
698
- project_name: Project (application) name to disable the mapping for
699
- feature: Feature discriminator, currently only "teams"
700
-
701
- Returns:
702
- Response confirming the assistant was disabled
703
- """
704
- feature_value = (
705
- feature.value if isinstance(feature, AssistantProjectFeature) else feature
706
- )
707
- params = {"project": project_name, "feature": feature_value}
708
- return self._api.delete(
709
- f"/v1/assistants/{assistant_id}/projects/mapping",
710
- BaseResponse,
711
- params=params,
712
- )