persona-sdk-python 0.2.5__tar.gz → 0.2.7__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 (28) hide show
  1. {persona_sdk_python-0.2.5 → persona_sdk_python-0.2.7}/PKG-INFO +22 -2
  2. {persona_sdk_python-0.2.5 → persona_sdk_python-0.2.7}/README.md +21 -1
  3. {persona_sdk_python-0.2.5 → persona_sdk_python-0.2.7}/persona_sdk/api/agents.py +12 -0
  4. {persona_sdk_python-0.2.5 → persona_sdk_python-0.2.7}/persona_sdk/api/sessions.py +3 -0
  5. {persona_sdk_python-0.2.5 → persona_sdk_python-0.2.7}/pyproject.toml +1 -1
  6. {persona_sdk_python-0.2.5 → persona_sdk_python-0.2.7}/.gitignore +0 -0
  7. {persona_sdk_python-0.2.5 → persona_sdk_python-0.2.7}/DEPLOY.md +0 -0
  8. {persona_sdk_python-0.2.5 → persona_sdk_python-0.2.7}/bitbucket-pipelines.yml +0 -0
  9. {persona_sdk_python-0.2.5 → persona_sdk_python-0.2.7}/persona_sdk/__init__.py +0 -0
  10. {persona_sdk_python-0.2.5 → persona_sdk_python-0.2.7}/persona_sdk/api/__init__.py +0 -0
  11. {persona_sdk_python-0.2.5 → persona_sdk_python-0.2.7}/persona_sdk/api/credentials.py +0 -0
  12. {persona_sdk_python-0.2.5 → persona_sdk_python-0.2.7}/persona_sdk/api/features.py +0 -0
  13. {persona_sdk_python-0.2.5 → persona_sdk_python-0.2.7}/persona_sdk/api/knowledge_bases.py +0 -0
  14. {persona_sdk_python-0.2.5 → persona_sdk_python-0.2.7}/persona_sdk/api/missions.py +0 -0
  15. {persona_sdk_python-0.2.5 → persona_sdk_python-0.2.7}/persona_sdk/api/projects.py +0 -0
  16. {persona_sdk_python-0.2.5 → persona_sdk_python-0.2.7}/persona_sdk/api/service_prices.py +0 -0
  17. {persona_sdk_python-0.2.5 → persona_sdk_python-0.2.7}/persona_sdk/api/triggers.py +0 -0
  18. {persona_sdk_python-0.2.5 → persona_sdk_python-0.2.7}/persona_sdk/api/workflows.py +0 -0
  19. {persona_sdk_python-0.2.5 → persona_sdk_python-0.2.7}/persona_sdk/auth/__init__.py +0 -0
  20. {persona_sdk_python-0.2.5 → persona_sdk_python-0.2.7}/persona_sdk/auth/api_key_auth.py +0 -0
  21. {persona_sdk_python-0.2.5 → persona_sdk_python-0.2.7}/persona_sdk/auth/base.py +0 -0
  22. {persona_sdk_python-0.2.5 → persona_sdk_python-0.2.7}/persona_sdk/auth/bearer_token_auth.py +0 -0
  23. {persona_sdk_python-0.2.5 → persona_sdk_python-0.2.7}/persona_sdk/client.py +0 -0
  24. {persona_sdk_python-0.2.5 → persona_sdk_python-0.2.7}/persona_sdk/runners/__init__.py +0 -0
  25. {persona_sdk_python-0.2.5 → persona_sdk_python-0.2.7}/persona_sdk/runners/agent_runner.py +0 -0
  26. {persona_sdk_python-0.2.5 → persona_sdk_python-0.2.7}/persona_sdk/runners/resource_retriever.py +0 -0
  27. {persona_sdk_python-0.2.5 → persona_sdk_python-0.2.7}/persona_sdk/runners/tool_invoker.py +0 -0
  28. {persona_sdk_python-0.2.5 → persona_sdk_python-0.2.7}/uv.lock +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: persona-sdk-python
3
- Version: 0.2.5
3
+ Version: 0.2.7
4
4
  Summary: Async Python SDK for the Persona AI platform
5
5
  Project-URL: Homepage, https://persona.applica.guru
6
6
  Project-URL: Repository, https://bitbucket.org/applicaguru/persona-sdk-python
@@ -123,7 +123,7 @@ The `PersonaSdk` instance exposes one client per resource:
123
123
 
124
124
  | Attribute | Description |
125
125
  |-----------|-------------|
126
- | `sdk.agents` | Agent management (CRUD, voices) |
126
+ | `sdk.agents` | Agent management (CRUD, voices, AI instructions, architect) |
127
127
  | `sdk.projects` | Project management and subscriptions |
128
128
  | `sdk.sessions` | Sessions, messages, usage |
129
129
  | `sdk.knowledge_bases` | Knowledge bases, documents, chunk search |
@@ -168,6 +168,26 @@ await sdk.agents.update(agent["id"], fetched)
168
168
  await sdk.agents.delete(agent["id"])
169
169
  ```
170
170
 
171
+ ## AI System Instructions Generation
172
+
173
+ Generate system instructions for an agent using the project's AI architect:
174
+
175
+ ```python
176
+ # Generate from a description
177
+ instructions = await sdk.agents.generate_system_instructions(
178
+ "Create a customer support agent that handles billing inquiries"
179
+ )
180
+
181
+ # Multi-turn refinement with session ID
182
+ instructions = await sdk.agents.generate_system_instructions(
183
+ "Add a rule to always ask for the order number first",
184
+ session_id="my-session-id",
185
+ )
186
+
187
+ # Get the project's architect agent configuration
188
+ architect = await sdk.agents.get_architect()
189
+ ```
190
+
171
191
  ## Pagination
172
192
 
173
193
  List endpoints accept `keyword`, `page`, and `size`:
@@ -99,7 +99,7 @@ The `PersonaSdk` instance exposes one client per resource:
99
99
 
100
100
  | Attribute | Description |
101
101
  |-----------|-------------|
102
- | `sdk.agents` | Agent management (CRUD, voices) |
102
+ | `sdk.agents` | Agent management (CRUD, voices, AI instructions, architect) |
103
103
  | `sdk.projects` | Project management and subscriptions |
104
104
  | `sdk.sessions` | Sessions, messages, usage |
105
105
  | `sdk.knowledge_bases` | Knowledge bases, documents, chunk search |
@@ -144,6 +144,26 @@ await sdk.agents.update(agent["id"], fetched)
144
144
  await sdk.agents.delete(agent["id"])
145
145
  ```
146
146
 
147
+ ## AI System Instructions Generation
148
+
149
+ Generate system instructions for an agent using the project's AI architect:
150
+
151
+ ```python
152
+ # Generate from a description
153
+ instructions = await sdk.agents.generate_system_instructions(
154
+ "Create a customer support agent that handles billing inquiries"
155
+ )
156
+
157
+ # Multi-turn refinement with session ID
158
+ instructions = await sdk.agents.generate_system_instructions(
159
+ "Add a rule to always ask for the order number first",
160
+ session_id="my-session-id",
161
+ )
162
+
163
+ # Get the project's architect agent configuration
164
+ architect = await sdk.agents.get_architect()
165
+ ```
166
+
147
167
  ## Pagination
148
168
 
149
169
  List endpoints accept `keyword`, `page`, and `size`:
@@ -25,3 +25,15 @@ class AgentsApi:
25
25
 
26
26
  async def get_voices(self, synthesizer_type: str) -> dict:
27
27
  return await self._client.get(f"/values/synthesizers/{synthesizer_type}/voices")
28
+
29
+ async def generate_system_instructions(self, prompt: str, session_id: str = None) -> str:
30
+ """Generate system instructions using the project's AI architect agent."""
31
+ body = {"prompt": prompt}
32
+ if session_id:
33
+ body["sessionId"] = session_id
34
+ result = await self._client.post("/agents/system-instructions", json=body)
35
+ return result.get("instructions", "")
36
+
37
+ async def get_architect(self) -> dict:
38
+ """Get or create the project's architect agent configuration."""
39
+ return await self._client.get("/agents/architect")
@@ -40,3 +40,6 @@ class SessionsApi:
40
40
 
41
41
  async def delete(self, code: str) -> dict:
42
42
  return await self._client.delete(f"/sessions/{code}")
43
+
44
+ async def rename(self, session_id: str, name: str) -> dict:
45
+ return await self._client.put(f"/sessions/{session_id}/name", json={"name": name})
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "persona-sdk-python"
3
- version = "0.2.5"
3
+ version = "0.2.7"
4
4
  description = "Async Python SDK for the Persona AI platform"
5
5
  readme = "README.md"
6
6
  requires-python = ">=3.10"