Internal Documentation internal
TalkIDE internal documentation

The user opens a conversation in the context of a project and sends natural language messages to the AI Product Manager. The PM processes messages, orchestrates Claude Code CLI agents, and responds with updates, questions, or progress reports. The conversation remains ACTIVE until the user closes it or starts a new one.

stateDiagram-v2
    [*] --> ACTIVE: User starts a new conversation

    ACTIVE --> PROCESSING: User sends a message → PM is responding
    PROCESSING --> ACTIVE: PM response delivered → user can send next message
    PROCESSING --> ERROR: Agent execution failed
    ERROR --> ACTIVE: User retries or continues conversation

    ACTIVE --> CLOSED: User closes the conversation
    CLOSED --> [*]

States

StateDescriptionTransitions
ACTIVEConversation is open; user can send messages→ PROCESSING (send message), → CLOSED
PROCESSINGPM is processing the last message (CLI agents running)→ ACTIVE (response ready), → ERROR
ERRORAgent execution encountered an error→ ACTIVE (user continues)
CLOSEDConversation is finished; read-only history preserved→ [end]

Message Roles

RoleDescription
USERMessage sent by the human user
PMResponse from the AI Product Manager
SYSTEMInternal system messages (e.g., agent progress updates, errors)

Business Rules

  • A project can have multiple conversations (one active at a time in MVP)
  • Starting a new conversation on a project automatically closes the previous one
  • All messages are persisted regardless of state
  • SYSTEM messages are shown as progress indicators (e.g., “Backend developer is implementing…”)
  • The user can ask the PM to create a version at any point during an ACTIVE conversation
  • Closing a project (ARCHIVED) prevents new conversations from being started
Was this page helpful?

Thanks for the feedback.