aws-samples / aws-samples/bedrock-engineer

[Feature Request] Session persistence for specialized tools (Website Generator, Diagram Generator, Step Functions)

Open
#174 0 comments 0 reactions 0 assignees View on GitHub
Dominant language
TypeScript
Stars
486
Forks
68
PR merge metrics
No merged PRs in 30d

Description

### Problem Statement

Currently, the Chat functionality maintains excellent session history and persistence, but specialized tools like Website Generator, Diagram Generator, and Step Functions Generator lose their work state when users switch between tools. This creates a significant workflow interruption and forces users to restart their work from scratch.

### Current Behavior

- ✅ **Chat Agent**: Maintains full conversation history with excellent persistence
- ❌ **Website Generator**: Work progress is lost when switching away
- ❌ **Diagram Generator**: Generated diagrams and configurations are not persisted
- ❌ **Step Functions Generator**: Function definitions and configurations are lost

### Desired Behavior

Each specialized tool should maintain session persistence similar to the Chat functionality:

1. **Session State Preservation**: When switching away from a tool, maintain:
- Current work progress
- Generated content
- Configuration settings
- User inputs and customizations

2. **Seamless Tool Switching**: Users should be able to:
- Switch between Chat and specialized tools without losing work
- Return to exactly where they left off in each tool
- Maintain multiple active sessions across different tool types

3. **Session Management UI**: Provide indicators for:
- Active sessions in specialized tools
- Quick access to resume previous work
- Clear session state (similar to chat title generation)

### Use Cases

1. **Presentation Scenarios**:
- Demonstrating multiple tools without losing progress
- Switching to Chat for Q&A while maintaining work in progress

2. **Development Workflows**:
- Building websites while consulting Chat for technical questions
- Creating diagrams while iterating on Step Functions
- Multi-tasking across different tool types

3. **Iterative Work**:
- Returning to previous sessions to make modifications
- Building upon earlier work without starting from scratch

### Technical Considerations

- Extend existing session management architecture used by Chat
- Implement state serialization for each specialized tool
- Consider storage implications for different content types (websites, diagrams, functions)
- Maintain backward compatibility with existing workflows

### Success Metrics

- Users can switch between tools without losing work
- Reduced user complaints about lost progress
- Increased tool adoption and usage duration
- Improved presentation and demo experiences

This enhancement would significantly improve the user experience and make Bedrock Engineer more robust for professional and presentation use cases.

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.