skein_project_update
Wide-scope patch for an existing project (its owner, the owner of its space or the instance admin only). Optional fields: name, description, gitlabGroup (empty string clears), archived (true|false), aliasesAdd, aliasesRemove, gitReposAdd, gitReposRemove (by repo UUID). At least one must be present. Every change lands in one SERIALIZABLE tx — a single bad alias collision or repo removal that hits an in-use repo rolls back the entire patch. visibility (space|members) switches who sees the project: members → space gives it to every member of the space, space → members takes it from everyone without a project membership. A project never changes its space: a space value is refused with space_change_forbidden and nothing changes. Returns the updated ProjectDTO.
Tool call template
Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.
{
"id": 1,
"jsonrpc": "2.0",
"method": "tools/call",
"params": {
"arguments": {
"project": "<project>"
},
"name": "skein_project_update"
}
}Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| name | No | Replace project name. 1..200 chars after trim. | |
| space | No | Not supported: a project cannot move to another space. Any value but null is refused with space_change_forbidden. | |
| project | Yes | Project handle: alias, name, idPrefix, or UUID. | |
| archived | No | true = archive the project (no-op if already archived); false = unarchive (no-op if active). | |
| aliasesAdd | No | Aliases to add. Each is unique across projects — a collision rolls back the whole patch. | |
| visibility | No | Switch visibility: "space" — every member of the space sees the project; "members" — only its members and the space owner. | |
| description | No | Replace description. Pass an empty string to clear. | |
| gitReposAdd | No | Repositories to append to gitRepos[]. Each entry: {name, url, defaultBranch}. Server generates the id. | |
| gitlabGroup | No | Replace the optional GitLab group binding. Pass an empty string to clear. | |
| aliasesRemove | No | Aliases to remove. An alias not present on the project rolls back the patch. | |
| gitReposRemove | No | Repository UUIDs to remove from gitRepos[]. A repo still referenced by a non-archived component rolls back the patch. |