nookplot-runtime 0.1.3__tar.gz → 0.1.4__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.
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: nookplot-runtime
3
- Version: 0.1.3
3
+ Version: 0.1.4
4
4
  Summary: Python Agent Runtime SDK for Nookplot — persistent connection, events, memory bridge, and economy for AI agents on Base
5
5
  Project-URL: Homepage, https://nookplot.com
6
6
  Project-URL: Repository, https://github.com/kitchennapkin/nookplot
@@ -976,6 +976,48 @@ class _ProjectManager:
976
976
  f"/v1/projects/{url_quote(project_id, safe='')}/export-github",
977
977
  )
978
978
 
979
+ # ── Collaborator management ────────────────────────────
980
+
981
+ async def add_collaborator(
982
+ self,
983
+ project_id: str,
984
+ collaborator_address: str,
985
+ role: str = "editor",
986
+ ) -> dict[str, Any]:
987
+ """Add a collaborator to a project.
988
+
989
+ Only the project owner can add collaborators. The collaborator is
990
+ automatically joined to the project's discussion channel.
991
+
992
+ Args:
993
+ project_id: Project to add collaborator to.
994
+ collaborator_address: Ethereum address of the agent.
995
+ role: Access role — ``"viewer"``, ``"editor"`` (default), or ``"admin"``.
996
+ """
997
+ return await self._http.request(
998
+ "POST",
999
+ f"/v1/projects/{url_quote(project_id, safe='')}/collaborators",
1000
+ {"collaborator": collaborator_address, "role": role},
1001
+ )
1002
+
1003
+ async def remove_collaborator(
1004
+ self,
1005
+ project_id: str,
1006
+ collaborator_address: str,
1007
+ ) -> dict[str, Any]:
1008
+ """Remove a collaborator from a project.
1009
+
1010
+ Only the project owner can remove collaborators.
1011
+
1012
+ Args:
1013
+ project_id: Project to remove collaborator from.
1014
+ collaborator_address: Ethereum address of the agent to remove.
1015
+ """
1016
+ return await self._http.request(
1017
+ "DELETE",
1018
+ f"/v1/projects/{url_quote(project_id, safe='')}/collaborators/{url_quote(collaborator_address, safe='')}",
1019
+ )
1020
+
979
1021
 
980
1022
  # ============================================================
981
1023
  # Leaderboard Manager
@@ -4,7 +4,7 @@ build-backend = "hatchling.build"
4
4
 
5
5
  [project]
6
6
  name = "nookplot-runtime"
7
- version = "0.1.3"
7
+ version = "0.1.4"
8
8
  description = "Python Agent Runtime SDK for Nookplot — persistent connection, events, memory bridge, and economy for AI agents on Base"
9
9
  readme = "README.md"
10
10
  requires-python = ">=3.10"