synapse-sdk 1.0.0a13__py3-none-any.whl → 2025.11.7__py3-none-any.whl

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.

Potentially problematic release.


This version of synapse-sdk might be problematic. Click here for more details.

Files changed (339) hide show
  1. synapse_sdk/__init__.py +24 -0
  2. synapse_sdk/cli/__init__.py +310 -5
  3. synapse_sdk/cli/alias/__init__.py +22 -0
  4. synapse_sdk/cli/alias/create.py +36 -0
  5. synapse_sdk/cli/alias/dataclass.py +31 -0
  6. synapse_sdk/cli/alias/default.py +16 -0
  7. synapse_sdk/cli/alias/delete.py +15 -0
  8. synapse_sdk/cli/alias/list.py +19 -0
  9. synapse_sdk/cli/alias/read.py +15 -0
  10. synapse_sdk/cli/alias/update.py +17 -0
  11. synapse_sdk/cli/alias/utils.py +61 -0
  12. synapse_sdk/cli/code_server.py +687 -0
  13. synapse_sdk/cli/config.py +440 -0
  14. synapse_sdk/cli/devtools.py +90 -0
  15. synapse_sdk/cli/plugin/__init__.py +33 -0
  16. synapse_sdk/cli/{create_plugin.py → plugin/create.py} +2 -2
  17. synapse_sdk/cli/plugin/publish.py +45 -0
  18. synapse_sdk/{plugins/cli → cli/plugin}/run.py +12 -5
  19. synapse_sdk/clients/agent/__init__.py +9 -3
  20. synapse_sdk/clients/agent/container.py +133 -0
  21. synapse_sdk/clients/agent/core.py +19 -0
  22. synapse_sdk/clients/agent/ray.py +298 -9
  23. synapse_sdk/clients/backend/__init__.py +41 -12
  24. synapse_sdk/clients/backend/annotation.py +13 -5
  25. synapse_sdk/clients/backend/core.py +59 -0
  26. synapse_sdk/clients/backend/data_collection.py +186 -0
  27. synapse_sdk/clients/backend/hitl.py +17 -0
  28. synapse_sdk/clients/backend/integration.py +19 -4
  29. synapse_sdk/clients/backend/ml.py +10 -7
  30. synapse_sdk/clients/backend/models.py +78 -0
  31. synapse_sdk/clients/base.py +381 -34
  32. synapse_sdk/clients/ray/serve.py +2 -0
  33. synapse_sdk/clients/validators/collections.py +31 -0
  34. synapse_sdk/devtools/config.py +94 -0
  35. synapse_sdk/devtools/docs/.gitignore +20 -0
  36. synapse_sdk/devtools/docs/README.md +41 -0
  37. synapse_sdk/devtools/docs/blog/2019-05-28-first-blog-post.md +12 -0
  38. synapse_sdk/devtools/docs/blog/2019-05-29-long-blog-post.md +44 -0
  39. synapse_sdk/devtools/docs/blog/2021-08-01-mdx-blog-post.mdx +24 -0
  40. synapse_sdk/devtools/docs/blog/2021-08-26-welcome/docusaurus-plushie-banner.jpeg +0 -0
  41. synapse_sdk/devtools/docs/blog/2021-08-26-welcome/index.md +29 -0
  42. synapse_sdk/devtools/docs/blog/authors.yml +25 -0
  43. synapse_sdk/devtools/docs/blog/tags.yml +19 -0
  44. synapse_sdk/devtools/docs/docs/api/clients/agent.md +43 -0
  45. synapse_sdk/devtools/docs/docs/api/clients/annotation-mixin.md +378 -0
  46. synapse_sdk/devtools/docs/docs/api/clients/backend.md +420 -0
  47. synapse_sdk/devtools/docs/docs/api/clients/base.md +257 -0
  48. synapse_sdk/devtools/docs/docs/api/clients/core-mixin.md +477 -0
  49. synapse_sdk/devtools/docs/docs/api/clients/data-collection-mixin.md +422 -0
  50. synapse_sdk/devtools/docs/docs/api/clients/hitl-mixin.md +554 -0
  51. synapse_sdk/devtools/docs/docs/api/clients/index.md +391 -0
  52. synapse_sdk/devtools/docs/docs/api/clients/integration-mixin.md +571 -0
  53. synapse_sdk/devtools/docs/docs/api/clients/ml-mixin.md +578 -0
  54. synapse_sdk/devtools/docs/docs/api/clients/ray.md +342 -0
  55. synapse_sdk/devtools/docs/docs/api/index.md +52 -0
  56. synapse_sdk/devtools/docs/docs/api/plugins/categories.md +43 -0
  57. synapse_sdk/devtools/docs/docs/api/plugins/models.md +114 -0
  58. synapse_sdk/devtools/docs/docs/api/plugins/utils.md +328 -0
  59. synapse_sdk/devtools/docs/docs/categories.md +0 -0
  60. synapse_sdk/devtools/docs/docs/cli-usage.md +280 -0
  61. synapse_sdk/devtools/docs/docs/concepts/index.md +38 -0
  62. synapse_sdk/devtools/docs/docs/configuration.md +83 -0
  63. synapse_sdk/devtools/docs/docs/contributing.md +306 -0
  64. synapse_sdk/devtools/docs/docs/examples/index.md +29 -0
  65. synapse_sdk/devtools/docs/docs/faq.md +179 -0
  66. synapse_sdk/devtools/docs/docs/features/converters/index.md +455 -0
  67. synapse_sdk/devtools/docs/docs/features/index.md +24 -0
  68. synapse_sdk/devtools/docs/docs/features/utils/file.md +415 -0
  69. synapse_sdk/devtools/docs/docs/features/utils/network.md +378 -0
  70. synapse_sdk/devtools/docs/docs/features/utils/storage.md +57 -0
  71. synapse_sdk/devtools/docs/docs/features/utils/types.md +51 -0
  72. synapse_sdk/devtools/docs/docs/installation.md +94 -0
  73. synapse_sdk/devtools/docs/docs/introduction.md +47 -0
  74. synapse_sdk/devtools/docs/docs/plugins/categories/neural-net-plugins/train-action-overview.md +814 -0
  75. synapse_sdk/devtools/docs/docs/plugins/categories/pre-annotation-plugins/pre-annotation-plugin-overview.md +198 -0
  76. synapse_sdk/devtools/docs/docs/plugins/categories/pre-annotation-plugins/to-task-action-development.md +1645 -0
  77. synapse_sdk/devtools/docs/docs/plugins/categories/pre-annotation-plugins/to-task-overview.md +717 -0
  78. synapse_sdk/devtools/docs/docs/plugins/categories/pre-annotation-plugins/to-task-template-development.md +1380 -0
  79. synapse_sdk/devtools/docs/docs/plugins/categories/upload-plugins/upload-plugin-action.md +948 -0
  80. synapse_sdk/devtools/docs/docs/plugins/categories/upload-plugins/upload-plugin-overview.md +544 -0
  81. synapse_sdk/devtools/docs/docs/plugins/categories/upload-plugins/upload-plugin-template.md +766 -0
  82. synapse_sdk/devtools/docs/docs/plugins/export-plugins.md +1092 -0
  83. synapse_sdk/devtools/docs/docs/plugins/plugins.md +852 -0
  84. synapse_sdk/devtools/docs/docs/quickstart.md +78 -0
  85. synapse_sdk/devtools/docs/docs/troubleshooting.md +519 -0
  86. synapse_sdk/devtools/docs/docs/tutorial-basics/_category_.json +8 -0
  87. synapse_sdk/devtools/docs/docs/tutorial-basics/congratulations.md +23 -0
  88. synapse_sdk/devtools/docs/docs/tutorial-basics/create-a-blog-post.md +34 -0
  89. synapse_sdk/devtools/docs/docs/tutorial-basics/create-a-document.md +57 -0
  90. synapse_sdk/devtools/docs/docs/tutorial-basics/create-a-page.md +43 -0
  91. synapse_sdk/devtools/docs/docs/tutorial-basics/deploy-your-site.md +31 -0
  92. synapse_sdk/devtools/docs/docs/tutorial-basics/markdown-features.mdx +152 -0
  93. synapse_sdk/devtools/docs/docs/tutorial-extras/_category_.json +7 -0
  94. synapse_sdk/devtools/docs/docs/tutorial-extras/img/docsVersionDropdown.png +0 -0
  95. synapse_sdk/devtools/docs/docs/tutorial-extras/img/localeDropdown.png +0 -0
  96. synapse_sdk/devtools/docs/docs/tutorial-extras/manage-docs-versions.md +55 -0
  97. synapse_sdk/devtools/docs/docs/tutorial-extras/translate-your-site.md +88 -0
  98. synapse_sdk/devtools/docs/docusaurus.config.ts +148 -0
  99. synapse_sdk/devtools/docs/i18n/ko/code.json +325 -0
  100. synapse_sdk/devtools/docs/i18n/ko/docusaurus-plugin-content-docs/current/api/clients/agent.md +43 -0
  101. synapse_sdk/devtools/docs/i18n/ko/docusaurus-plugin-content-docs/current/api/clients/annotation-mixin.md +289 -0
  102. synapse_sdk/devtools/docs/i18n/ko/docusaurus-plugin-content-docs/current/api/clients/backend.md +420 -0
  103. synapse_sdk/devtools/docs/i18n/ko/docusaurus-plugin-content-docs/current/api/clients/base.md +257 -0
  104. synapse_sdk/devtools/docs/i18n/ko/docusaurus-plugin-content-docs/current/api/clients/core-mixin.md +417 -0
  105. synapse_sdk/devtools/docs/i18n/ko/docusaurus-plugin-content-docs/current/api/clients/data-collection-mixin.md +356 -0
  106. synapse_sdk/devtools/docs/i18n/ko/docusaurus-plugin-content-docs/current/api/clients/hitl-mixin.md +192 -0
  107. synapse_sdk/devtools/docs/i18n/ko/docusaurus-plugin-content-docs/current/api/clients/index.md +391 -0
  108. synapse_sdk/devtools/docs/i18n/ko/docusaurus-plugin-content-docs/current/api/clients/integration-mixin.md +479 -0
  109. synapse_sdk/devtools/docs/i18n/ko/docusaurus-plugin-content-docs/current/api/clients/ml-mixin.md +284 -0
  110. synapse_sdk/devtools/docs/i18n/ko/docusaurus-plugin-content-docs/current/api/clients/ray.md +342 -0
  111. synapse_sdk/devtools/docs/i18n/ko/docusaurus-plugin-content-docs/current/api/index.md +52 -0
  112. synapse_sdk/devtools/docs/i18n/ko/docusaurus-plugin-content-docs/current/api/plugins/models.md +114 -0
  113. synapse_sdk/devtools/docs/i18n/ko/docusaurus-plugin-content-docs/current/categories.md +0 -0
  114. synapse_sdk/devtools/docs/i18n/ko/docusaurus-plugin-content-docs/current/cli-usage.md +280 -0
  115. synapse_sdk/devtools/docs/i18n/ko/docusaurus-plugin-content-docs/current/concepts/index.md +38 -0
  116. synapse_sdk/devtools/docs/i18n/ko/docusaurus-plugin-content-docs/current/configuration.md +83 -0
  117. synapse_sdk/devtools/docs/i18n/ko/docusaurus-plugin-content-docs/current/contributing.md +306 -0
  118. synapse_sdk/devtools/docs/i18n/ko/docusaurus-plugin-content-docs/current/examples/index.md +29 -0
  119. synapse_sdk/devtools/docs/i18n/ko/docusaurus-plugin-content-docs/current/faq.md +179 -0
  120. synapse_sdk/devtools/docs/i18n/ko/docusaurus-plugin-content-docs/current/features/converters/index.md +30 -0
  121. synapse_sdk/devtools/docs/i18n/ko/docusaurus-plugin-content-docs/current/features/index.md +24 -0
  122. synapse_sdk/devtools/docs/i18n/ko/docusaurus-plugin-content-docs/current/features/utils/file.md +415 -0
  123. synapse_sdk/devtools/docs/i18n/ko/docusaurus-plugin-content-docs/current/features/utils/network.md +378 -0
  124. synapse_sdk/devtools/docs/i18n/ko/docusaurus-plugin-content-docs/current/features/utils/storage.md +60 -0
  125. synapse_sdk/devtools/docs/i18n/ko/docusaurus-plugin-content-docs/current/features/utils/types.md +51 -0
  126. synapse_sdk/devtools/docs/i18n/ko/docusaurus-plugin-content-docs/current/installation.md +94 -0
  127. synapse_sdk/devtools/docs/i18n/ko/docusaurus-plugin-content-docs/current/introduction.md +47 -0
  128. synapse_sdk/devtools/docs/i18n/ko/docusaurus-plugin-content-docs/current/plugins/categories/neural-net-plugins/train-action-overview.md +815 -0
  129. synapse_sdk/devtools/docs/i18n/ko/docusaurus-plugin-content-docs/current/plugins/categories/pre-annotation-plugins/pre-annotation-plugin-overview.md +198 -0
  130. synapse_sdk/devtools/docs/i18n/ko/docusaurus-plugin-content-docs/current/plugins/categories/pre-annotation-plugins/to-task-action-development.md +1645 -0
  131. synapse_sdk/devtools/docs/i18n/ko/docusaurus-plugin-content-docs/current/plugins/categories/pre-annotation-plugins/to-task-overview.md +717 -0
  132. synapse_sdk/devtools/docs/i18n/ko/docusaurus-plugin-content-docs/current/plugins/categories/pre-annotation-plugins/to-task-template-development.md +1380 -0
  133. synapse_sdk/devtools/docs/i18n/ko/docusaurus-plugin-content-docs/current/plugins/categories/upload-plugins/upload-plugin-action.md +948 -0
  134. synapse_sdk/devtools/docs/i18n/ko/docusaurus-plugin-content-docs/current/plugins/categories/upload-plugins/upload-plugin-overview.md +544 -0
  135. synapse_sdk/devtools/docs/i18n/ko/docusaurus-plugin-content-docs/current/plugins/categories/upload-plugins/upload-plugin-template.md +766 -0
  136. synapse_sdk/devtools/docs/i18n/ko/docusaurus-plugin-content-docs/current/plugins/export-plugins.md +1092 -0
  137. synapse_sdk/devtools/docs/i18n/ko/docusaurus-plugin-content-docs/current/plugins/plugins.md +117 -0
  138. synapse_sdk/devtools/docs/i18n/ko/docusaurus-plugin-content-docs/current/quickstart.md +78 -0
  139. synapse_sdk/devtools/docs/i18n/ko/docusaurus-plugin-content-docs/current/troubleshooting.md +519 -0
  140. synapse_sdk/devtools/docs/i18n/ko/docusaurus-plugin-content-docs/current.json +34 -0
  141. synapse_sdk/devtools/docs/i18n/ko/docusaurus-theme-classic/footer.json +42 -0
  142. synapse_sdk/devtools/docs/i18n/ko/docusaurus-theme-classic/navbar.json +18 -0
  143. synapse_sdk/devtools/docs/package-lock.json +18784 -0
  144. synapse_sdk/devtools/docs/package.json +48 -0
  145. synapse_sdk/devtools/docs/sidebars.ts +122 -0
  146. synapse_sdk/devtools/docs/src/components/HomepageFeatures/index.tsx +71 -0
  147. synapse_sdk/devtools/docs/src/components/HomepageFeatures/styles.module.css +11 -0
  148. synapse_sdk/devtools/docs/src/css/custom.css +30 -0
  149. synapse_sdk/devtools/docs/src/pages/index.module.css +23 -0
  150. synapse_sdk/devtools/docs/src/pages/index.tsx +21 -0
  151. synapse_sdk/devtools/docs/src/pages/markdown-page.md +7 -0
  152. synapse_sdk/devtools/docs/static/.nojekyll +0 -0
  153. synapse_sdk/devtools/docs/static/img/docusaurus-social-card.jpg +0 -0
  154. synapse_sdk/devtools/docs/static/img/docusaurus.png +0 -0
  155. synapse_sdk/devtools/docs/static/img/favicon.ico +0 -0
  156. synapse_sdk/devtools/docs/static/img/logo.png +0 -0
  157. synapse_sdk/devtools/docs/static/img/undraw_docusaurus_mountain.svg +171 -0
  158. synapse_sdk/devtools/docs/static/img/undraw_docusaurus_react.svg +170 -0
  159. synapse_sdk/devtools/docs/static/img/undraw_docusaurus_tree.svg +40 -0
  160. synapse_sdk/devtools/docs/tsconfig.json +8 -0
  161. synapse_sdk/devtools/server.py +41 -0
  162. synapse_sdk/devtools/streamlit_app/__init__.py +5 -0
  163. synapse_sdk/devtools/streamlit_app/app.py +128 -0
  164. synapse_sdk/devtools/streamlit_app/services/__init__.py +11 -0
  165. synapse_sdk/devtools/streamlit_app/services/job_service.py +233 -0
  166. synapse_sdk/devtools/streamlit_app/services/plugin_service.py +236 -0
  167. synapse_sdk/devtools/streamlit_app/services/serve_service.py +95 -0
  168. synapse_sdk/devtools/streamlit_app/ui/__init__.py +15 -0
  169. synapse_sdk/devtools/streamlit_app/ui/config_tab.py +76 -0
  170. synapse_sdk/devtools/streamlit_app/ui/deployment_tab.py +66 -0
  171. synapse_sdk/devtools/streamlit_app/ui/http_tab.py +125 -0
  172. synapse_sdk/devtools/streamlit_app/ui/jobs_tab.py +573 -0
  173. synapse_sdk/devtools/streamlit_app/ui/serve_tab.py +346 -0
  174. synapse_sdk/devtools/streamlit_app/ui/status_bar.py +118 -0
  175. synapse_sdk/devtools/streamlit_app/utils/__init__.py +40 -0
  176. synapse_sdk/devtools/streamlit_app/utils/json_viewer.py +197 -0
  177. synapse_sdk/devtools/streamlit_app/utils/log_formatter.py +38 -0
  178. synapse_sdk/devtools/streamlit_app/utils/styles.py +241 -0
  179. synapse_sdk/devtools/streamlit_app/utils/ui_components.py +289 -0
  180. synapse_sdk/devtools/streamlit_app.py +10 -0
  181. synapse_sdk/loggers.py +74 -9
  182. synapse_sdk/plugins/README.md +1340 -0
  183. synapse_sdk/plugins/__init__.py +0 -13
  184. synapse_sdk/plugins/categories/base.py +145 -30
  185. synapse_sdk/plugins/categories/data_validation/actions/validation.py +72 -0
  186. synapse_sdk/plugins/categories/data_validation/templates/plugin/validation.py +33 -5
  187. synapse_sdk/plugins/categories/export/actions/__init__.py +3 -0
  188. synapse_sdk/plugins/categories/export/actions/export/__init__.py +28 -0
  189. synapse_sdk/plugins/categories/export/actions/export/action.py +165 -0
  190. synapse_sdk/plugins/categories/export/actions/export/enums.py +113 -0
  191. synapse_sdk/plugins/categories/export/actions/export/exceptions.py +53 -0
  192. synapse_sdk/plugins/categories/export/actions/export/models.py +74 -0
  193. synapse_sdk/plugins/categories/export/actions/export/run.py +195 -0
  194. synapse_sdk/plugins/categories/export/actions/export/utils.py +187 -0
  195. synapse_sdk/plugins/categories/export/templates/config.yaml +21 -0
  196. synapse_sdk/plugins/categories/export/templates/plugin/__init__.py +390 -0
  197. synapse_sdk/plugins/categories/export/templates/plugin/export.py +160 -0
  198. synapse_sdk/plugins/categories/neural_net/actions/deployment.py +29 -14
  199. synapse_sdk/plugins/categories/neural_net/actions/inference.py +13 -1
  200. synapse_sdk/plugins/categories/neural_net/actions/train.py +1084 -38
  201. synapse_sdk/plugins/categories/neural_net/actions/tune.py +534 -0
  202. synapse_sdk/plugins/categories/neural_net/base/__init__.py +0 -0
  203. synapse_sdk/plugins/categories/neural_net/base/inference.py +37 -0
  204. synapse_sdk/plugins/categories/neural_net/templates/config.yaml +30 -5
  205. synapse_sdk/plugins/categories/neural_net/templates/plugin/inference.py +26 -10
  206. synapse_sdk/plugins/categories/pre_annotation/actions/__init__.py +4 -0
  207. synapse_sdk/plugins/categories/pre_annotation/actions/pre_annotation/__init__.py +3 -0
  208. synapse_sdk/plugins/categories/{export/actions/export.py → pre_annotation/actions/pre_annotation/action.py} +4 -4
  209. synapse_sdk/plugins/categories/pre_annotation/actions/to_task/__init__.py +28 -0
  210. synapse_sdk/plugins/categories/pre_annotation/actions/to_task/action.py +145 -0
  211. synapse_sdk/plugins/categories/pre_annotation/actions/to_task/enums.py +269 -0
  212. synapse_sdk/plugins/categories/pre_annotation/actions/to_task/exceptions.py +14 -0
  213. synapse_sdk/plugins/categories/pre_annotation/actions/to_task/factory.py +76 -0
  214. synapse_sdk/plugins/categories/pre_annotation/actions/to_task/models.py +97 -0
  215. synapse_sdk/plugins/categories/pre_annotation/actions/to_task/orchestrator.py +250 -0
  216. synapse_sdk/plugins/categories/pre_annotation/actions/to_task/run.py +64 -0
  217. synapse_sdk/plugins/categories/pre_annotation/actions/to_task/strategies/__init__.py +17 -0
  218. synapse_sdk/plugins/categories/pre_annotation/actions/to_task/strategies/annotation.py +287 -0
  219. synapse_sdk/plugins/categories/pre_annotation/actions/to_task/strategies/base.py +170 -0
  220. synapse_sdk/plugins/categories/pre_annotation/actions/to_task/strategies/extraction.py +83 -0
  221. synapse_sdk/plugins/categories/pre_annotation/actions/to_task/strategies/metrics.py +87 -0
  222. synapse_sdk/plugins/categories/pre_annotation/actions/to_task/strategies/preprocessor.py +127 -0
  223. synapse_sdk/plugins/categories/pre_annotation/actions/to_task/strategies/validation.py +143 -0
  224. synapse_sdk/plugins/categories/pre_annotation/actions/to_task.py +966 -0
  225. synapse_sdk/plugins/categories/pre_annotation/templates/config.yaml +19 -0
  226. synapse_sdk/plugins/categories/pre_annotation/templates/plugin/to_task.py +40 -0
  227. synapse_sdk/plugins/categories/smart_tool/templates/config.yaml +5 -2
  228. synapse_sdk/plugins/categories/upload/__init__.py +0 -0
  229. synapse_sdk/plugins/categories/upload/actions/__init__.py +0 -0
  230. synapse_sdk/plugins/categories/upload/actions/upload/__init__.py +19 -0
  231. synapse_sdk/plugins/categories/upload/actions/upload/action.py +232 -0
  232. synapse_sdk/plugins/categories/upload/actions/upload/context.py +185 -0
  233. synapse_sdk/plugins/categories/upload/actions/upload/enums.py +471 -0
  234. synapse_sdk/plugins/categories/upload/actions/upload/exceptions.py +36 -0
  235. synapse_sdk/plugins/categories/upload/actions/upload/factory.py +138 -0
  236. synapse_sdk/plugins/categories/upload/actions/upload/models.py +203 -0
  237. synapse_sdk/plugins/categories/upload/actions/upload/orchestrator.py +183 -0
  238. synapse_sdk/plugins/categories/upload/actions/upload/registry.py +113 -0
  239. synapse_sdk/plugins/categories/upload/actions/upload/run.py +179 -0
  240. synapse_sdk/plugins/categories/upload/actions/upload/steps/__init__.py +1 -0
  241. synapse_sdk/plugins/categories/upload/actions/upload/steps/base.py +107 -0
  242. synapse_sdk/plugins/categories/upload/actions/upload/steps/cleanup.py +62 -0
  243. synapse_sdk/plugins/categories/upload/actions/upload/steps/collection.py +63 -0
  244. synapse_sdk/plugins/categories/upload/actions/upload/steps/generate.py +84 -0
  245. synapse_sdk/plugins/categories/upload/actions/upload/steps/initialize.py +82 -0
  246. synapse_sdk/plugins/categories/upload/actions/upload/steps/metadata.py +235 -0
  247. synapse_sdk/plugins/categories/upload/actions/upload/steps/organize.py +203 -0
  248. synapse_sdk/plugins/categories/upload/actions/upload/steps/upload.py +97 -0
  249. synapse_sdk/plugins/categories/upload/actions/upload/steps/validate.py +71 -0
  250. synapse_sdk/plugins/categories/upload/actions/upload/strategies/__init__.py +1 -0
  251. synapse_sdk/plugins/categories/upload/actions/upload/strategies/base.py +82 -0
  252. synapse_sdk/plugins/categories/upload/actions/upload/strategies/data_unit/__init__.py +1 -0
  253. synapse_sdk/plugins/categories/upload/actions/upload/strategies/data_unit/batch.py +39 -0
  254. synapse_sdk/plugins/categories/upload/actions/upload/strategies/data_unit/single.py +29 -0
  255. synapse_sdk/plugins/categories/upload/actions/upload/strategies/file_discovery/__init__.py +1 -0
  256. synapse_sdk/plugins/categories/upload/actions/upload/strategies/file_discovery/flat.py +258 -0
  257. synapse_sdk/plugins/categories/upload/actions/upload/strategies/file_discovery/recursive.py +281 -0
  258. synapse_sdk/plugins/categories/upload/actions/upload/strategies/metadata/__init__.py +1 -0
  259. synapse_sdk/plugins/categories/upload/actions/upload/strategies/metadata/excel.py +174 -0
  260. synapse_sdk/plugins/categories/upload/actions/upload/strategies/metadata/none.py +16 -0
  261. synapse_sdk/plugins/categories/upload/actions/upload/strategies/upload/__init__.py +1 -0
  262. synapse_sdk/plugins/categories/upload/actions/upload/strategies/upload/sync.py +84 -0
  263. synapse_sdk/plugins/categories/upload/actions/upload/strategies/validation/__init__.py +1 -0
  264. synapse_sdk/plugins/categories/upload/actions/upload/strategies/validation/default.py +60 -0
  265. synapse_sdk/plugins/categories/upload/actions/upload/utils.py +250 -0
  266. synapse_sdk/plugins/categories/upload/templates/README.md +470 -0
  267. synapse_sdk/plugins/categories/upload/templates/config.yaml +33 -0
  268. synapse_sdk/plugins/categories/upload/templates/plugin/__init__.py +294 -0
  269. synapse_sdk/plugins/categories/upload/templates/plugin/upload.py +102 -0
  270. synapse_sdk/plugins/enums.py +3 -1
  271. synapse_sdk/plugins/models.py +140 -16
  272. synapse_sdk/plugins/templates/plugin-config-schema.json +406 -0
  273. synapse_sdk/plugins/templates/schema.json +491 -0
  274. synapse_sdk/plugins/templates/synapse-{{cookiecutter.plugin_code}}-plugin/config.yaml +1 -0
  275. synapse_sdk/plugins/templates/synapse-{{cookiecutter.plugin_code}}-plugin/requirements.txt +1 -1
  276. synapse_sdk/plugins/utils/__init__.py +46 -0
  277. synapse_sdk/plugins/utils/actions.py +119 -0
  278. synapse_sdk/plugins/utils/config.py +203 -0
  279. synapse_sdk/plugins/utils/legacy.py +95 -0
  280. synapse_sdk/plugins/utils/ray_gcs.py +66 -0
  281. synapse_sdk/plugins/utils/registry.py +58 -0
  282. synapse_sdk/shared/__init__.py +25 -0
  283. synapse_sdk/shared/enums.py +93 -0
  284. synapse_sdk/types.py +19 -0
  285. synapse_sdk/utils/converters/__init__.py +240 -0
  286. synapse_sdk/utils/converters/coco/__init__.py +0 -0
  287. synapse_sdk/utils/converters/coco/from_dm.py +322 -0
  288. synapse_sdk/utils/converters/coco/to_dm.py +215 -0
  289. synapse_sdk/utils/converters/dm/__init__.py +56 -0
  290. synapse_sdk/utils/converters/dm/from_v1.py +627 -0
  291. synapse_sdk/utils/converters/dm/to_v1.py +367 -0
  292. synapse_sdk/utils/converters/pascal/__init__.py +0 -0
  293. synapse_sdk/utils/converters/pascal/from_dm.py +244 -0
  294. synapse_sdk/utils/converters/pascal/to_dm.py +214 -0
  295. synapse_sdk/utils/converters/yolo/__init__.py +0 -0
  296. synapse_sdk/utils/converters/yolo/from_dm.py +384 -0
  297. synapse_sdk/utils/converters/yolo/to_dm.py +267 -0
  298. synapse_sdk/utils/dataset.py +46 -0
  299. synapse_sdk/utils/encryption.py +158 -0
  300. synapse_sdk/utils/file/__init__.py +39 -0
  301. synapse_sdk/utils/file/archive.py +32 -0
  302. synapse_sdk/utils/file/checksum.py +56 -0
  303. synapse_sdk/utils/file/chunking.py +31 -0
  304. synapse_sdk/utils/file/download.py +385 -0
  305. synapse_sdk/utils/file/encoding.py +40 -0
  306. synapse_sdk/utils/file/io.py +22 -0
  307. synapse_sdk/utils/file/video/__init__.py +29 -0
  308. synapse_sdk/utils/file/video/transcode.py +307 -0
  309. synapse_sdk/utils/file.py.backup +301 -0
  310. synapse_sdk/utils/http.py +138 -0
  311. synapse_sdk/utils/network.py +309 -0
  312. synapse_sdk/utils/storage/__init__.py +72 -0
  313. synapse_sdk/utils/storage/providers/__init__.py +183 -0
  314. synapse_sdk/utils/storage/providers/file_system.py +134 -0
  315. synapse_sdk/utils/storage/providers/gcp.py +13 -0
  316. synapse_sdk/utils/storage/providers/http.py +190 -0
  317. synapse_sdk/utils/storage/providers/s3.py +91 -0
  318. synapse_sdk/utils/storage/providers/sftp.py +47 -0
  319. synapse_sdk/utils/storage/registry.py +17 -0
  320. synapse_sdk-2025.11.7.dist-info/METADATA +122 -0
  321. synapse_sdk-2025.11.7.dist-info/RECORD +386 -0
  322. {synapse_sdk-1.0.0a13.dist-info → synapse_sdk-2025.11.7.dist-info}/WHEEL +1 -1
  323. synapse_sdk/clients/backend/dataset.py +0 -51
  324. synapse_sdk/plugins/categories/import/actions/import.py +0 -10
  325. synapse_sdk/plugins/cli/__init__.py +0 -21
  326. synapse_sdk/plugins/cli/publish.py +0 -37
  327. synapse_sdk/plugins/templates/synapse-{{cookiecutter.plugin_code}}-plugin/.env +0 -24
  328. synapse_sdk/plugins/templates/synapse-{{cookiecutter.plugin_code}}-plugin/.env.dist +0 -24
  329. synapse_sdk/plugins/templates/synapse-{{cookiecutter.plugin_code}}-plugin/main.py +0 -4
  330. synapse_sdk/plugins/utils.py +0 -50
  331. synapse_sdk/utils/file.py +0 -87
  332. synapse_sdk/utils/storage.py +0 -91
  333. synapse_sdk-1.0.0a13.dist-info/METADATA +0 -43
  334. synapse_sdk-1.0.0a13.dist-info/RECORD +0 -111
  335. /synapse_sdk/{plugins/categories/import → clients/validators}/__init__.py +0 -0
  336. /synapse_sdk/{plugins/categories/import/actions → devtools}/__init__.py +0 -0
  337. {synapse_sdk-1.0.0a13.dist-info → synapse_sdk-2025.11.7.dist-info}/entry_points.txt +0 -0
  338. {synapse_sdk-1.0.0a13.dist-info → synapse_sdk-2025.11.7.dist-info/licenses}/LICENSE +0 -0
  339. {synapse_sdk-1.0.0a13.dist-info → synapse_sdk-2025.11.7.dist-info}/top_level.txt +0 -0
@@ -0,0 +1,328 @@
1
+ ---
2
+ id: utils
3
+ title: Plugin Utilities
4
+ sidebar_position: 3
5
+ ---
6
+
7
+ # Plugin Utilities
8
+
9
+ Comprehensive utility functions for plugin development, configuration management, and action handling.
10
+
11
+ ## Overview
12
+
13
+ The plugin utilities module (`synapse_sdk.plugins.utils`) provides a collection of functions for working with plugin configurations, managing actions, and handling plugin metadata. The utilities are organized into focused modules for better maintainability.
14
+
15
+ ## Configuration Utilities
16
+
17
+ ### read_plugin_config()
18
+
19
+ Read and parse plugin configuration from config.yaml file with enhanced error handling.
20
+
21
+ ```python
22
+ from synapse_sdk.plugins.utils import read_plugin_config
23
+
24
+ # Read from specific plugin directory
25
+ config = read_plugin_config(plugin_path="./my-plugin")
26
+
27
+ # Read from current directory
28
+ config = read_plugin_config()
29
+ ```
30
+
31
+ **Parameters:**
32
+
33
+ - `plugin_path` (optional): Path to plugin directory containing config.yaml
34
+
35
+ **Returns:** Dictionary containing parsed plugin configuration
36
+
37
+ **Raises:**
38
+
39
+ - `FileNotFoundError`: If config.yaml is not found
40
+ - `ValueError`: If config.yaml contains invalid YAML
41
+
42
+ ### get_plugin_actions()
43
+
44
+ Get list of action names defined in a plugin configuration.
45
+
46
+ ```python
47
+ from synapse_sdk.plugins.utils import get_plugin_actions
48
+
49
+ # From config dictionary
50
+ config = {'actions': {'train': {...}, 'inference': {...}}}
51
+ actions = get_plugin_actions(config=config)
52
+ # Returns: ['train', 'inference']
53
+
54
+ # From plugin path
55
+ actions = get_plugin_actions(plugin_path="./my-plugin")
56
+
57
+ # From current directory
58
+ actions = get_plugin_actions()
59
+ ```
60
+
61
+ **Parameters:**
62
+
63
+ - `config` (optional): Plugin configuration dictionary
64
+ - `plugin_path` (optional): Path to plugin directory
65
+
66
+ **Returns:** List of action names
67
+
68
+ ### get_action_config()
69
+
70
+ Retrieve configuration for a specific action within a plugin.
71
+
72
+ ```python
73
+ from synapse_sdk.plugins.utils import get_action_config
74
+
75
+ # Get specific action configuration
76
+ action_config = get_action_config('train', plugin_path="./my-plugin")
77
+ # Returns: {'entrypoint': 'plugin.train.TrainAction', 'method': 'job'}
78
+
79
+ # With config dictionary
80
+ config = {'actions': {'train': {'entrypoint': 'plugin.train.TrainAction'}}}
81
+ action_config = get_action_config('train', config=config)
82
+ ```
83
+
84
+ **Parameters:**
85
+
86
+ - `action_name`: Name of the action to retrieve
87
+ - `config` (optional): Plugin configuration dictionary
88
+ - `plugin_path` (optional): Path to plugin directory
89
+
90
+ **Returns:** Dictionary containing action configuration
91
+
92
+ ### validate_plugin_config()
93
+
94
+ Validate plugin configuration structure and required fields.
95
+
96
+ ```python
97
+ from synapse_sdk.plugins.utils import validate_plugin_config
98
+
99
+ config = {
100
+ 'name': 'My Plugin',
101
+ 'code': 'my-plugin',
102
+ 'version': '1.0.0',
103
+ 'category': 'neural_net',
104
+ 'actions': {'train': {'entrypoint': 'plugin.train.TrainAction'}}
105
+ }
106
+
107
+ is_valid = validate_plugin_config(config) # Returns: True
108
+ ```
109
+
110
+ **Validation Checks:**
111
+
112
+ - Required fields: `name`, `code`, `version`, `category`, `actions`
113
+ - Valid plugin category
114
+ - Proper actions structure
115
+ - Required entrypoints (except for REST API actions)
116
+
117
+ ### get_plugin_metadata()
118
+
119
+ Extract metadata (name, version, description, etc.) from plugin configuration.
120
+
121
+ ```python
122
+ from synapse_sdk.plugins.utils import get_plugin_metadata
123
+
124
+ metadata = get_plugin_metadata(plugin_path="./my-plugin")
125
+ # Returns: {
126
+ # 'name': 'My Plugin',
127
+ # 'code': 'my-plugin',
128
+ # 'version': '1.0.0',
129
+ # 'category': 'neural_net',
130
+ # 'description': 'A custom ML plugin'
131
+ # }
132
+ ```
133
+
134
+ ## Action Utilities
135
+
136
+ ### get_action_class()
137
+
138
+ Retrieve action class by category and action name from the registry.
139
+
140
+ ```python
141
+ from synapse_sdk.plugins.utils import get_action_class
142
+
143
+ # Get action class for instantiation
144
+ TrainAction = get_action_class('neural_net', 'train')
145
+ action_instance = TrainAction(params, config)
146
+ ```
147
+
148
+ ### get_available_actions()
149
+
150
+ List all available actions for a specific plugin category.
151
+
152
+ ```python
153
+ from synapse_sdk.plugins.utils import get_available_actions
154
+
155
+ actions = get_available_actions('neural_net')
156
+ # Returns: ['train', 'inference', 'test', 'deployment', 'gradio', 'tune']
157
+ ```
158
+
159
+ ### is_action_available()
160
+
161
+ Check if a specific action is available in a category.
162
+
163
+ ```python
164
+ from synapse_sdk.plugins.utils import is_action_available
165
+
166
+ if is_action_available('neural_net', 'train'):
167
+ print("Training action is available")
168
+ ```
169
+
170
+ ### get_action()
171
+
172
+ Create and configure a plugin action instance with parameters.
173
+
174
+ ```python
175
+ from synapse_sdk.plugins.utils import get_action
176
+
177
+ # With dictionary parameters
178
+ params = {'dataset_path': '/data', 'epochs': 10}
179
+ action = get_action('train', params, plugin_path="./my-plugin")
180
+
181
+ # With JSON string parameters
182
+ params_json = '{"dataset_path": "/data", "epochs": 10}'
183
+ action = get_action('train', params_json, config=config)
184
+
185
+ # With file parameters
186
+ action = get_action('train', '/path/to/params.yaml')
187
+ ```
188
+
189
+ ## Registry Utilities
190
+
191
+ ### get_plugin_categories()
192
+
193
+ Get list of all available plugin categories.
194
+
195
+ ```python
196
+ from synapse_sdk.plugins.utils import get_plugin_categories
197
+
198
+ categories = get_plugin_categories()
199
+ # Returns: ['neural_net', 'export', 'upload', 'smart_tool',
200
+ # 'post_annotation', 'pre_annotation', 'data_validation']
201
+ ```
202
+
203
+ ### is_valid_category()
204
+
205
+ Validate if a category name is valid.
206
+
207
+ ```python
208
+ from synapse_sdk.plugins.utils import is_valid_category
209
+
210
+ if is_valid_category('neural_net'):
211
+ print("Valid category")
212
+ ```
213
+
214
+ ### get_category_display_name()
215
+
216
+ Get human-readable display name for a category.
217
+
218
+ ```python
219
+ from synapse_sdk.plugins.utils import get_category_display_name
220
+
221
+ display_name = get_category_display_name('neural_net')
222
+ # Returns: "Neural Net"
223
+
224
+ display_name = get_category_display_name('data_validation')
225
+ # Returns: "Data Validation"
226
+ ```
227
+
228
+ ## Error Handling
229
+
230
+ All utility functions include comprehensive error handling with descriptive error messages:
231
+
232
+ ```python
233
+ from synapse_sdk.plugins.utils import get_plugin_actions
234
+
235
+ try:
236
+ actions = get_plugin_actions(plugin_path="./nonexistent")
237
+ except FileNotFoundError as e:
238
+ print(f"Plugin config not found: {e}")
239
+ except ValueError as e:
240
+ print(f"Invalid plugin config: {e}")
241
+ except KeyError as e:
242
+ print(f"Missing required field: {e}")
243
+ ```
244
+
245
+ ## Usage Examples
246
+
247
+ ### Complete Plugin Workflow
248
+
249
+ ```python
250
+ from synapse_sdk.plugins.utils import (
251
+ read_plugin_config,
252
+ get_plugin_actions,
253
+ get_action_config,
254
+ validate_plugin_config,
255
+ get_action_class
256
+ )
257
+
258
+ # 1. Read plugin configuration
259
+ config = read_plugin_config("./my-neural-net-plugin")
260
+
261
+ # 2. Validate configuration
262
+ if validate_plugin_config(config):
263
+ print("✅ Plugin configuration is valid")
264
+
265
+ # 3. List available actions
266
+ actions = get_plugin_actions(config=config)
267
+ print(f"Available actions: {actions}")
268
+
269
+ # 4. Get specific action configuration
270
+ train_config = get_action_config('train', config=config)
271
+ print(f"Train entrypoint: {train_config['entrypoint']}")
272
+
273
+ # 5. Create action instance
274
+ TrainAction = get_action_class(config['category'], 'train')
275
+ action = TrainAction(
276
+ params={'dataset_path': '/data', 'epochs': 10},
277
+ plugin_config=config
278
+ )
279
+ ```
280
+
281
+ ### Plugin Development Helper
282
+
283
+ ```python
284
+ from synapse_sdk.plugins.utils import (
285
+ get_plugin_categories,
286
+ get_available_actions,
287
+ is_action_available
288
+ )
289
+
290
+ # Check available categories
291
+ categories = get_plugin_categories()
292
+ print("Available plugin categories:")
293
+ for category in categories:
294
+ print(f" - {category}")
295
+
296
+ # List actions for each category
297
+ actions = get_available_actions(category)
298
+ for action in actions:
299
+ print(f" - {action}")
300
+
301
+ # Verify action availability
302
+ if is_action_available('neural_net', 'train'):
303
+ print("✅ Train action is available for neural_net plugins")
304
+ ```
305
+
306
+ ## Migration from Legacy API
307
+
308
+ The new utilities maintain backward compatibility while providing enhanced functionality:
309
+
310
+ ```python
311
+ # Legacy (still supported)
312
+ from synapse_sdk.plugins.utils import read_plugin_config
313
+
314
+ # New enhanced API (recommended)
315
+ from synapse_sdk.plugins.utils import (
316
+ read_plugin_config,
317
+ get_plugin_actions,
318
+ validate_plugin_config
319
+ )
320
+ ```
321
+
322
+ ## Best Practices
323
+
324
+ 1. **Error Handling**: Always wrap utility calls in try-catch blocks
325
+ 2. **Configuration Validation**: Validate configs before using them
326
+ 3. **Path Handling**: Use absolute paths when possible
327
+ 4. **Action Verification**: Check action availability before instantiation
328
+ 5. **Type Safety**: Use the provided type hints for better IDE support
File without changes
@@ -0,0 +1,280 @@
1
+ ---
2
+ id: cli-usage
3
+ title: CLI Usage Guide
4
+ sidebar_position: 4
5
+ ---
6
+
7
+ # CLI Usage Guide
8
+
9
+ The Synapse SDK provides a powerful interactive CLI for managing your development workflow, from configuration to plugin development and code editing.
10
+
11
+ ## Getting Started
12
+
13
+ Launch the interactive CLI:
14
+
15
+ ```bash
16
+ synapse
17
+ ```
18
+
19
+ Or run specific commands directly:
20
+
21
+ ```bash
22
+ # Start development tools immediately
23
+ synapse --dev-tools
24
+
25
+ # Show help
26
+ synapse --help
27
+ ```
28
+
29
+ ## Main Menu Options
30
+
31
+ When you run `synapse`, you'll see the main menu:
32
+
33
+ ```
34
+ 🚀 Synapse SDK
35
+ Select an option:
36
+ 🌐 Run Dev Tools
37
+ 💻 Open Code-Server IDE
38
+ ⚙️ Configuration
39
+ 🔌 Plugin Management
40
+ 🚪 Exit
41
+ ```
42
+
43
+ ## 🌐 Run Dev Tools
44
+
45
+ Launches the Synapse development tools dashboard with:
46
+
47
+ - **Interactive UI**: Web-based dashboard for managing agents and jobs
48
+ - **Real-time Monitoring**: Live view of agent status and job execution
49
+ - **Plugin Management**: Upload, test, and manage plugins through the UI
50
+
51
+ ### Usage
52
+ ```bash
53
+ # Launch dev tools from CLI menu
54
+ synapse
55
+
56
+ # Or start directly
57
+ synapse --dev-tools
58
+ ```
59
+
60
+ ## 💻 Open Code-Server IDE
61
+
62
+ Opens a web-based VS Code environment for plugin development. Supports both agent-based and local code-server instances.
63
+
64
+ ### Agent Code-Server
65
+
66
+ Connect to a remote code-server running on an agent:
67
+
68
+ - **Automatic Setup**: Synapse configures the workspace and installs dependencies
69
+ - **Plugin Encryption**: Local plugin code is encrypted and securely transferred
70
+ - **Workspace Sync**: Your local project is available in the agent environment
71
+
72
+ ### Local Code-Server
73
+
74
+ Launch a local code-server instance:
75
+
76
+ - **Port Detection**: Automatically reads port from `~/.config/code-server/config.yaml`
77
+ - **Folder Parameter**: Opens with correct workspace directory
78
+ - **Browser Integration**: Automatically opens browser with proper URL
79
+
80
+ ### Usage Examples
81
+
82
+ ```bash
83
+ # Interactive menu (recommended)
84
+ synapse
85
+ # Select "💻 Open Code-Server IDE"
86
+
87
+ # Direct command
88
+ synapse code-server
89
+
90
+ # With specific options
91
+ synapse code-server --agent my-agent --workspace /path/to/project
92
+
93
+ # Don't open browser automatically
94
+ synapse code-server --no-open-browser
95
+ ```
96
+
97
+ ### Code-Server Options
98
+
99
+ | Option | Description | Default |
100
+ |--------|-------------|---------|
101
+ | `--agent` | Specific agent ID to use | Current agent or prompt |
102
+ | `--workspace` | Project directory path | Current directory |
103
+ | `--open-browser/--no-open-browser` | Open browser automatically | `--open-browser` |
104
+
105
+ ### Local Code-Server Installation
106
+
107
+ If code-server isn't installed locally, the CLI provides installation instructions:
108
+
109
+ ```bash
110
+ # Recommended: Install script
111
+ curl -fsSL https://code-server.dev/install.sh | sh
112
+
113
+ # Using npm
114
+ npm install -g code-server
115
+
116
+ # Using yarn
117
+ yarn global add code-server
118
+ ```
119
+
120
+ For more options, visit: https://coder.com/docs/code-server/latest/install
121
+
122
+ ## ⚙️ Configuration
123
+
124
+ Interactive configuration wizard for setting up:
125
+
126
+ - **Backend Connection**: Configure API endpoints and authentication
127
+ - **Agent Selection**: Choose and configure development agents
128
+ - **Token Management**: Manage access tokens and authentication
129
+
130
+ ### Configuration Files
131
+
132
+ Synapse stores configuration in:
133
+ - **Backend Config**: `~/.synapse/devtools.yaml`
134
+ - **Agent Config**: `~/.synapse/devtools.yaml` (agent section)
135
+ - **Code-Server Config**: `~/.config/code-server/config.yaml`
136
+
137
+ ## 🔌 Plugin Management
138
+
139
+ Comprehensive plugin development and management tools:
140
+
141
+ ### Create New Plugin
142
+
143
+ ```bash
144
+ synapse
145
+ # Select "🔌 Plugin Management" → "Create new plugin"
146
+ ```
147
+
148
+ Interactive wizard creates:
149
+ - Plugin directory structure
150
+ - Configuration files (`config.yaml`)
151
+ - Example plugin code
152
+ - Requirements and dependencies
153
+
154
+ ### Run Plugin Locally
155
+
156
+ Test plugins in different environments:
157
+
158
+ ```bash
159
+ # Script execution (local)
160
+ synapse plugin run my_action '{"param": "value"}' --run-by script
161
+
162
+ # Agent execution (remote)
163
+ synapse plugin run my_action '{"param": "value"}' --run-by agent
164
+
165
+ # Backend execution (cloud)
166
+ synapse plugin run my_action '{"param": "value"}' --run-by backend
167
+ ```
168
+
169
+ ### Publish Plugin
170
+
171
+ Deploy plugins to your Synapse backend:
172
+
173
+ ```bash
174
+ synapse
175
+ # Select "🔌 Plugin Management" → "Publish plugin"
176
+ ```
177
+
178
+ Options:
179
+ - **Debug Mode**: Test deployment with verbose logging
180
+ - **Production Mode**: Deploy for live use
181
+
182
+ ## Command Reference
183
+
184
+ ### Main Commands
185
+
186
+ ```bash
187
+ # Interactive CLI (main menu)
188
+ synapse
189
+
190
+ # Development tools
191
+ synapse --dev-tools
192
+
193
+ # Direct commands
194
+ synapse config # Configuration wizard
195
+ synapse devtools # Development dashboard
196
+ synapse code-server # Code editing environment
197
+ synapse plugin # Plugin management
198
+ ```
199
+
200
+ ### Code-Server Command
201
+
202
+ ```bash
203
+ synapse code-server [OPTIONS]
204
+
205
+ Options:
206
+ --agent TEXT Agent name or ID
207
+ --open-browser / --no-open-browser
208
+ Open in browser [default: open-browser]
209
+ --workspace TEXT Workspace directory path (defaults to current directory)
210
+ --help Show this message and exit.
211
+ ```
212
+
213
+ ### Plugin Commands
214
+
215
+ ```bash
216
+ # Create plugin
217
+ synapse plugin create
218
+
219
+ # Run plugin
220
+ synapse plugin run ACTION PARAMS [OPTIONS]
221
+
222
+ # Publish plugin
223
+ synapse plugin publish [OPTIONS]
224
+ ```
225
+
226
+ ## Tips & Best Practices
227
+
228
+ ### Code-Server Development
229
+
230
+ 1. **Plugin Detection**: When opening code-server, Synapse automatically detects if your workspace contains a plugin and encrypts it for secure transfer to agents.
231
+
232
+ 2. **Workspace Paths**: Agent workspaces typically use `/home/coder/workspace` - this is normal for containerized environments.
233
+
234
+ 3. **Port Configuration**: Local code-server port is read from your config file, defaulting to 8070 if not configured.
235
+
236
+ ### Configuration Management
237
+
238
+ 1. **Token Security**: Store API tokens securely and rotate them regularly
239
+ 2. **Agent Selection**: Use descriptive agent names to identify their purpose
240
+ 3. **Backend URLs**: Ensure backend URLs are accessible from your development environment
241
+
242
+ ### Plugin Development
243
+
244
+ 1. **Local Testing**: Always test plugins locally with `--run-by script` before deploying
245
+ 2. **Debug Mode**: Use debug mode for initial deployments to catch issues early
246
+ 3. **Version Control**: Use git to track plugin changes and manage versions
247
+
248
+ ## Troubleshooting
249
+
250
+ ### Code-Server Issues
251
+
252
+ **Problem**: "Code-server is not available"
253
+ - **Solution**: Ensure the agent has code-server support enabled
254
+
255
+ **Problem**: Browser doesn't open automatically
256
+ - **Solution**: Manually copy the provided URL to your browser
257
+
258
+ **Problem**: Wrong port displayed
259
+ - **Solution**: Check `~/.config/code-server/config.yaml` for correct port configuration
260
+
261
+ ### Configuration Issues
262
+
263
+ **Problem**: "No backend configured"
264
+ - **Solution**: Run `synapse config` to set up backend connection
265
+
266
+ **Problem**: "Invalid token (401)"
267
+ - **Solution**: Generate a new API token and update configuration
268
+
269
+ **Problem**: "Connection timeout"
270
+ - **Solution**: Check network connectivity and backend URL accessibility
271
+
272
+ ### Plugin Issues
273
+
274
+ **Problem**: Plugin not detected in workspace
275
+ - **Solution**: Ensure your directory has a valid `config.yaml` file
276
+
277
+ **Problem**: Plugin execution fails
278
+ - **Solution**: Check plugin dependencies and syntax, test locally first
279
+
280
+ For more troubleshooting help, see the [Troubleshooting Guide](./troubleshooting.md).
@@ -0,0 +1,38 @@
1
+ ---
2
+ id: index
3
+ title: Core Concepts
4
+ sidebar_position: 1
5
+ ---
6
+
7
+ # Core Concepts
8
+
9
+ Understanding the fundamental concepts of Synapse SDK.
10
+
11
+ ## Architecture
12
+
13
+ Learn about the overall system architecture and design principles.
14
+
15
+ ## Plugin System
16
+
17
+ Understanding how plugins work, categories, and execution methods.
18
+
19
+ ## Clients
20
+
21
+ Different client types and their use cases:
22
+ - BackendClient for API operations
23
+ - AgentClient for distributed execution
24
+
25
+ ## Execution Methods
26
+
27
+ Different ways to run plugins:
28
+ - **JOB**: Long-running operations with monitoring
29
+ - **TASK**: Quick, simple operations
30
+ - **RESTAPI**: Serving models and APIs
31
+
32
+ ## Data Flow
33
+
34
+ How data flows through the system from input to output.
35
+
36
+ ## Security
37
+
38
+ Authentication, authorization, and security best practices.