Feature Request
As a user, I want to configure the prompt used for LLM-based conversation title generation, so I can replace the default hardcoded prompt with my own.
The agent-canvas frontend currently sends autotitle: true and an optional title_llm_profile when starting a conversation. The actual title generation prompt is hardcoded in the backend (software-agent-sdk). We need the TypeScript client to expose a new title_generation_prompt field so the frontend can send a custom prompt override.
Proposed Change
Expose title_generation_prompt as an optional field on the conversation start request type (the type used by ConversationClient when creating a new conversation). This mirrors the existing title_llm_profile field:
- Type:
string | undefined (optional; when omitted, the backend uses its default hardcoded prompt)
- Location: On the same request type where
autotitle and title_llm_profile already live
- Wire name:
title_generation_prompt (snake_case, matching the backend's ConversationConfig field)
Context
The frontend (OpenHands/OpenHands) will:
- Add a textarea in Settings > Application > "Conversation titles" for the user to enter a custom prompt
- Store it as an app preference (
title_generation_prompt) alongside title_llm_profile
- Send it in the
POST /api/conversations payload at conversation start
For that to work, the TypeScript client must type and accept the field on the start-conversation request. The client currently exposes title_llm_profile -- the new field should follow the exact same pattern.
Dependencies
OpenHands/software-agent-sdk must add title_generation_prompt to ConversationConfig and accept it in generate_title_with_llm(). Tracked in a separate issue.
- After the client is updated and released,
OpenHands/OpenHands (agent-canvas frontend) will consume the new field. Tracked in a separate issue.
This issue was created by an AI agent (OpenHands) on behalf of Devin.
Feature Request
As a user, I want to configure the prompt used for LLM-based conversation title generation, so I can replace the default hardcoded prompt with my own.
The agent-canvas frontend currently sends
autotitle: trueand an optionaltitle_llm_profilewhen starting a conversation. The actual title generation prompt is hardcoded in the backend (software-agent-sdk). We need the TypeScript client to expose a newtitle_generation_promptfield so the frontend can send a custom prompt override.Proposed Change
Expose
title_generation_promptas an optional field on the conversation start request type (the type used byConversationClientwhen creating a new conversation). This mirrors the existingtitle_llm_profilefield:string | undefined(optional; when omitted, the backend uses its default hardcoded prompt)autotitleandtitle_llm_profilealready livetitle_generation_prompt(snake_case, matching the backend'sConversationConfigfield)Context
The frontend (
OpenHands/OpenHands) will:title_generation_prompt) alongsidetitle_llm_profilePOST /api/conversationspayload at conversation startFor that to work, the TypeScript client must type and accept the field on the start-conversation request. The client currently exposes
title_llm_profile-- the new field should follow the exact same pattern.Dependencies
OpenHands/software-agent-sdkmust addtitle_generation_prompttoConversationConfigand accept it ingenerate_title_with_llm(). Tracked in a separate issue.OpenHands/OpenHands(agent-canvas frontend) will consume the new field. Tracked in a separate issue.This issue was created by an AI agent (OpenHands) on behalf of Devin.