(name: str, data: BasicProjectData)
| 100 | |
| 101 | |
| 102 | def create_project(name: str, data: BasicProjectData): |
| 103 | extended_data = _project_extended_data_for_save(data) |
| 104 | mcp_servers = data.get("mcp_servers") if isinstance(data, dict) else None |
| 105 | abs_path = files.create_dir_safe( |
| 106 | files.get_abs_path(PROJECTS_PARENT_DIR, name), rename_format="{name}_{number}" |
| 107 | ) |
| 108 | create_project_meta_folders(name) |
| 109 | data = _normalizeBasicData(data) |
| 110 | save_project_header(name, data) |
| 111 | save_project_mcp_servers(name, mcp_servers or DEFAULT_MCP_SERVERS_CONFIG) |
| 112 | save_project_extended_data(name, extended_data) |
| 113 | return name |
| 114 | |
| 115 | |
| 116 | def clone_git_project(name: str, git_url: str, git_token: str, data: BasicProjectData): |
nothing calls this directly
no test coverage detected