From 17499646528c5ed130f946de57ef3b3fd5cb4293 Mon Sep 17 00:00:00 2001 From: Ting Chien Meng Date: Mon, 3 Mar 2025 21:12:45 +0800 Subject: [PATCH 1/3] fix maybe merge conflict --- packages/agent/src/server/api/agent.ts | 51 +------------------------- 1 file changed, 2 insertions(+), 49 deletions(-) diff --git a/packages/agent/src/server/api/agent.ts b/packages/agent/src/server/api/agent.ts index c88fa802d1..3f633ef1be 100644 --- a/packages/agent/src/server/api/agent.ts +++ b/packages/agent/src/server/api/agent.ts @@ -69,53 +69,6 @@ export function agentRouter( }); - // Create new agent and start it - // Pass agent data or character path or character json in body - router.post('/', async (req, res) => { - logger.info("[AGENT START] Received request to start a new agent"); - const { characterPath, characterJson } = req.body; - - if (!characterPath && !characterJson) { - res.status(400).json({ - success: false, - error: { - code: 'INVALID_REQUEST', - message: 'Character path or character json is required' - } - }); - return; - } - - const character = characterPath - ? await loadCharacter(characterPath) - : await jsonToCharacter(characterJson); - - - - - const existingAgents = await db.getAgents(); - const existingAgent = existingAgents.find((agent) => agent.name === character.name); - if(existingAgent) { - logger.error(`[AGENT START] Character name ${character.name} already taken`); - res.status(400).json({ - success: false, - error: { - code: 'INVALID_REQUEST', - message: 'Character name already taken' - } - }); - return; - } - - const agent = await db.createAgent(character); - await server?.startAgent(agent.id); - - res.json({ - success: true, - data: agent - }); - }); - // Get specific agent details router.get('/:agentId', async (req, res) => { const agentId = validateUuid(req.params.agentId); @@ -227,8 +180,8 @@ export function agentRouter( return; } - const { updates } = req.body; - + const updates = req.body; + try { // Handle other updates if any if (Object.keys(updates).length > 0) { From ee94076b3307a95d561223c64802f5272ea777ba Mon Sep 17 00:00:00 2001 From: Ting Chien Meng Date: Mon, 3 Mar 2025 21:28:35 +0800 Subject: [PATCH 2/3] add delete button --- packages/client/src/components/agent-creator.tsx | 3 +++ .../client/src/components/agent-settings.tsx | 11 +++++++++++ .../client/src/components/character-form.tsx | 16 ++++++++-------- 3 files changed, 22 insertions(+), 8 deletions(-) diff --git a/packages/client/src/components/agent-creator.tsx b/packages/client/src/components/agent-creator.tsx index ce75f563af..5ea629661b 100644 --- a/packages/client/src/components/agent-creator.tsx +++ b/packages/client/src/components/agent-creator.tsx @@ -75,6 +75,9 @@ export default function AgentCreator() { description="Configure your AI character's behavior and capabilities" onSubmit={handleSubmit} onReset={() => setCharacterValue(defaultCharacter)} + onDelete={() => { + navigate("/"); + }} isAgent={true} customComponents={[ { diff --git a/packages/client/src/components/agent-settings.tsx b/packages/client/src/components/agent-settings.tsx index afbc231647..779fc7284c 100644 --- a/packages/client/src/components/agent-settings.tsx +++ b/packages/client/src/components/agent-settings.tsx @@ -51,6 +51,16 @@ export default function AgentSettings({ agent, agentId }: { agent: Agent, agentI } }; + const handleDelete = async (agent: Agent) => { + try { + await apiClient.deleteAgent(agent.id as UUID); + navigate("/"); + } catch (error) { + console.error("Error deleting agent:", error); + } + }; + + return ( setCharacterValue(agent)} + onDelete={() => handleDelete(agent)} isAgent={true} customComponents={[ { diff --git a/packages/client/src/components/character-form.tsx b/packages/client/src/components/character-form.tsx index 2c18f4dd72..a89d808f21 100644 --- a/packages/client/src/components/character-form.tsx +++ b/packages/client/src/components/character-form.tsx @@ -130,7 +130,7 @@ export type CharacterFormProps = { title: string; description: string; onSubmit: (character: Agent) => Promise; - onCancel?: () => void; + onDelete?: () => void; onReset?: () => void; isAgent?: boolean; customComponents?: customComponent[]; @@ -144,7 +144,7 @@ export default function CharacterForm({ title, description, onSubmit, - onCancel, + onDelete, onReset, customComponents = [] }: CharacterFormProps) { @@ -302,12 +302,12 @@ export default function CharacterForm({
-
- {onCancel && ( - - )} +
+
From e43996e2b8c60cfdd0aed0348190fbba10066f2a Mon Sep 17 00:00:00 2001 From: Ting Chien Meng Date: Mon, 3 Mar 2025 21:37:35 +0800 Subject: [PATCH 3/3] invalidate --- packages/client/src/components/agent-settings.tsx | 1 + 1 file changed, 1 insertion(+) diff --git a/packages/client/src/components/agent-settings.tsx b/packages/client/src/components/agent-settings.tsx index 779fc7284c..8cb631a699 100644 --- a/packages/client/src/components/agent-settings.tsx +++ b/packages/client/src/components/agent-settings.tsx @@ -54,6 +54,7 @@ export default function AgentSettings({ agent, agentId }: { agent: Agent, agentI const handleDelete = async (agent: Agent) => { try { await apiClient.deleteAgent(agent.id as UUID); + queryClient.invalidateQueries({ queryKey: ['agents'] }); navigate("/"); } catch (error) { console.error("Error deleting agent:", error);