95 Commits

Author SHA1 Message Date
rahullks
d545182f38
Update run-commands-using-code-interpreter.ipynb
mask account id in the policy

Signed-off-by: rahullks <rahullks@gmail.com>
2025-08-15 11:41:03 -07:00
satveerkhurpa
e140a1d5f3
Updated additional permissions (#258)
Co-authored-by: Satveer Khurpa <khurpas@amazon.com>
2025-08-15 13:22:25 -04:00
Liam
ed9345c1f0
removing wildcard getsecretvalue (#257)
namespacing it to getsecretvalue

Signed-off-by: Liam <101819487+liwadman@users.noreply.github.com>
2025-08-15 12:06:07 -05:00
Akarsha Sehwag
523a9cb49e
fix: region update for E2E workshop (#256)
* fix: region update

* update default region
2025-08-15 09:51:25 -04:00
Maira Ladeira Tanke
c573bae4b1
Adding readme to end-to-end tutorial (#255)
* Adding readme to end-to-end tutorial

* Adding opentelemetry requirements to end-to-end workshop
2025-08-14 23:25:36 -04:00
Akarsha Sehwag
ce1e2d8367
Add Workshop E2E (#253)
* feat: e2e tutorial lab5

* docs: Add README.md for 05-AgentCore Observability lab

* feat: Add Lab 6 of E2E tutorial

* fix: Fix Agent ECR repository typo

* docs: Update Lab 6 Guidelines

* feat: cleanup guardrails

* docs: fix step name

* added lab4

* Add Lab 3 Identity Notebook and README

* added memory and updated lab 1

* pushing all of the helper files from original use case. Remove as needed

* feat: update lab1 helper file

* chore: restructure utils

* feat: update memory helper

* chore: restructure identity

* chore: append to agent definition from the helper

* Renamed agentcore identity to lab6

* Renamed Gateway notebook to Lab 3 and reviewed with fixes

* Fixed typo in delete_memory

* Lab 1: review and minor fixes

* Lab 1: cleanup

* Lab 2: refactored

* fix: change model to Claude 3.7

* added TODOs

* updated lab1 notebook

* update runtime intro

* refactor utils file

* minor_update to memory

* memory return client

* revert change.

* feat: update runtime lab

* feat: add helper for bedrock guardrails

* fix: fix typos

* docs: minor update

* update lab1 tools

* update memory

* update - runtime

* updated lab3 + lambda

* removed outputs

* changed sh

* removed zip

* added one missing piece

* chore: rm observability old lab

* Updates to Lab6 Identity

* Updates to Lab6 Identity

* updated arch. diagram

* update docs lab1

* rename-lab-5-6

* update arch doc

* lab 03

* fixed lab 3 docs

* Fix Lab 4

* Lab 7 frontend

* Fix lab7

* Fix prereq issues and update gitignore

* adding lab 3 tool removal

* removed checkpoints

* merged

* chore: Update Lab 4 documentation

* fix: Update AgentCore IAM Role to access memory

* Lab 7 fixed invoke to runtime

* minor changes

* removed guardrails + minor edits

* Deleting files and folders.

* Rename, Refactor and deletion

Added sagemaker_helper

* fixing Client

* Removing guardrails code

* remove unused arch

* remove unused files

* updating lab01

* remove policies

* updating lab02

* docs: Update lab 4 markdown

* chore: Update Lab 4

* update cleanup

* cleaning up DS_Store files

* frontend

* updates to lab1 notebook

* updating architectures

* Lab5: fixed response formatting in streamlit app

* updating lab3

* updated lab3

* Lab 5 and Lab 6 and Helper Scripts Updates

Lab 5: Added the architecture diagram
Lab 6: Updated the notebook
Utils: Added helper functions
Sagemaker_helper: Cosmetic Updates

* Updating lab 4

* removing clean up from lab 3

* added lab3 changes

* Streamlit Fixes, Cosmetic Updates, Notebook Updates

* add maira's changes

* update lab2+3

* minor updates

* sync labs

* fix runtime docs

* refactoring end-to-end tutorials

* remove guardrail ss

---------

Co-authored-by: Aleksei Iancheruk <aianch@amazon.fr>
Co-authored-by: EugeneSel <youdjin.sel15@gmail.com>
Co-authored-by: Aidan Ricci <riaidan@amazon.com>
Co-authored-by: Achintya <pinnintiachintya@gmail.com>
Co-authored-by: naresh rajaram <nareshrd@amazon.com>
Co-authored-by: Lorenzo Micheli <lorenzo.micheli@gmail.com>
Co-authored-by: Achintya <apinnint@amazon.com>
Co-authored-by: HT <hardikvt@amazon.com>
Co-authored-by: HT <hardik.thakkar00@gmail.com>
Co-authored-by: Maira Ladeira Tanke <mttanke@amazon.com>
2025-08-14 22:52:33 -04:00
rohillasandeep
a97b6e6e8b
Update AWS Operations Agent README.md (#235)
* Update AWS operations agent configuration and documentation - preserve local changes

* Update AWS operations agent README.md

* Update OKTA OpenID PKCE setup documentation

* Update OKTA authentication configuration and nginx setup

* Update OKTA OpenID PKCE setup documentation

* Update static-config.yaml for AWS operations agent

* Update AWS Operations Agent README.md

---------

Signed-off-by: rohillasandeep <31911590+rohillasandeep@users.noreply.github.com>
Co-authored-by: name <alias@amazon.com>
2025-08-14 14:25:11 -07:00
Megan Dsouza
47d9cbda53
Adding sample for running typescript MCP server on Agentcore Runtime (#194)
* Adding Sample for Running typescript MCP server on Agentcore Runtime

* Adding an mcp client and minor fixes
2025-08-14 13:42:27 -04:00
Aswathy Prasad
d966aa00f6
New example of PydanticAI Agent on AgentCore Runtime (#248)
* run pydantic ai agent in bedrock agentcore runtime.  requirements file notebook and figures commited. Tested in AWS account

* update description in notebook cells to suit pydantic framework. Agent Image changed to pydantic

* removed image for local architecture, as it is unused in the notebook

* moved pydantic agent code file and noteook to create runtime  into 03-integrations

---------

Co-authored-by: Aswathy Prasad <aswpras@amazon.com>
2025-08-14 13:37:39 -04:00
Hardik Thakkar
01c2e5f534
Adding bedrock_agentcore (#254) 2025-08-13 22:09:27 -04:00
Godwin Vincent
cd0a29d2ae
Device management agent - AgentCore runtime, observability, frontend added (#241)
* updated README.md file with bearer token generation

* updated README.md file with bearer token generation-removed client id and secret credentials

* removed hardcoded domain

* added agent runtime, frontend, observability and agentcore identity

* update README.md file to reflect frontend testing
2025-08-13 09:31:29 -07:00
Amit Arora
ff5fdffd42
fix(02-use-cases): Add multi-region support for SRE-Agent (#246)
* Add multi-region support for SRE-Agent

- Add AWS region configuration parameter to agent_config.yaml
- Update gateway main.py to validate region matches endpoint URL
- Modify SRE agent to read region from config and pass through function chain
- Update memory client and LLM creation to use configurable region
- Fixes hardcoded us-east-1 region dependencies

Closes #245

* Move architecture file to docs/ and improve setup instructions

- Move sre_agent_architecture.md to docs/ folder for better organization
- Update graph export code to generate architecture file in docs/ folder
- Add automatic docs directory creation if it doesn't exist
- Improve README setup instructions:
  - Fix .env.example copy path to use sre_agent folder
  - Add note that Amazon Bedrock users don't need to modify .env
  - Add START_API_BACKEND variable to conditionally start backend servers
  - Useful for workshop environments where backends are already running

* Improve gateway configuration documentation and setup instructions

- Update config.yaml.example to use REGION placeholder instead of hardcoded us-east-1
- Add gateway configuration step to README setup instructions
- Document .cognito_config file in auth.md automated setup section
- Remove duplicate credential_provider_name from config.yaml.example
- Update configuration.md to include .cognito_config in files overview
- Add clear instructions to copy and edit gateway/config.yaml before creating gateway

* Improve IAM role guidance and region handling

- Add clear guidance about IAM role options in gateway/config.yaml.example
- Explain that testing can use current EC2/notebook role
- Recommend dedicated role for production deployments
- Add aws sts get-caller-identity command to help users find their role
- Update deployment scripts to use AWS_REGION env var as fallback
- Scripts now follow: CLI arg -> AWS_REGION env var -> us-east-1 default

* Remove unnecessary individual Cognito ID files

- Remove creation of .cognito_user_pool_id file
- Remove creation of .cognito_client_id file
- Keep only .cognito_config as the single source of truth
- Simplifies configuration management

* Implement region fallback logic for SRE Agent

- Added region fallback chain: agent_config.yaml -> AWS_REGION env -> us-east-1
- Modified agent_config.yaml to comment out region parameter to enable fallback
- Updated multi_agent_langgraph.py with comprehensive fallback implementation
- Added logging to show which region source is being used
- Ensures flexible region configuration without breaking existing deployments
- Maintains backward compatibility while adding multi-region support
2025-08-13 08:32:37 -04:00
Hardik Thakkar
325600d958
removing optional http invoke for inbound auth from the lab (#244)
Co-authored-by: HT <hardikvt@amazon.com>
2025-08-12 09:30:47 -05:00
satveerkhurpa
117fd3a472
Tested the 3lo example with us-west-2 and updated instructions (#243)
Co-authored-by: Satveer Khurpa <khurpas@amazon.com>
2025-08-12 14:39:06 +02:00
mvangara10
35a0af2bc5
Import DDGS and Model ID updates (#240)
* AgentCore Observability

Signed-off-by: mvangara10 <mvangara@amazon.com>

* Update README.md

Signed-off-by: mvangara10 <mvangara@amazon.com>

* Update README.md

Signed-off-by: mvangara10 <mvangara@amazon.com>

* Update README.md

Signed-off-by: mvangara10 <mvangara@amazon.com>

* .env.example

* add runtime utils.py

Signed-off-by: mvangara10 <mvangara@amazon.com>

* AgentCore Observability: Custom Spans

* Update doc

* runtime hosted agent update

* Refactoring and Runtime updates

* Custom span documentation

* Observability runtime: auto_create_role

* Model ID and STM fix

* Model ID update

* Non runtime: strands package update and fix

* DDGS and ModelID upddates

---------

Signed-off-by: mvangara10 <mvangara@amazon.com>
2025-08-11 18:42:21 -04:00
satveerkhurpa
a42cb6fab1
fix(01-tutorials): Updated the Cognito pwd in the prereq and model access info for the Bedrock model (#239)
Co-authored-by: Satveer Khurpa <khurpas@amazon.com>
2025-08-11 18:27:17 -04:00
Akarsha Sehwag
b8d2cc14b9
Fix/workshop changes (#238)
* fix: minor changes

* fix: update memory prompt
2025-08-11 18:24:59 -04:00
satveerkhurpa
6d0becc8d9
fix(01-tutorials): cleanup .DS_store (#233)
* cleanup

* cleanup

---------

Co-authored-by: Satveer Khurpa <khurpas@amazon.com>
2025-08-11 18:24:41 -04:00
Akarsha Sehwag
da4db6932c
fix(02-use-cases): minor changes (#237) 2025-08-11 17:36:20 -04:00
rohillasandeep
6b02c0c482
fix(02-use-cases): Updated AWS Operations agents Readme.md (#229)
* Update AWS operations agent configuration and documentation - preserve local changes

* Update AWS operations agent README.md

* Update OKTA OpenID PKCE setup documentation

* Update OKTA authentication configuration and nginx setup

* Update OKTA OpenID PKCE setup documentation

---------

Co-authored-by: name <alias@amazon.com>
2025-08-11 10:03:46 -04:00
satveerkhurpa
28d28f526c
Updated region and instructions for GitHub app registration (#232)
Co-authored-by: Satveer Khurpa <khurpas@amazon.com>
2025-08-11 14:01:06 +02:00
satveerkhurpa
f66086abba
Added Streamlit app for end-to-end testing (#231)
Co-authored-by: Satveer Khurpa <khurpas@amazon.com>
2025-08-11 12:11:33 +02:00
dendilaws
b879c075cf
updated to ddgs from duckduckgo_search (#228)
notebook referencing "duckduckgo_search" while the requirements is using "ddgs". Updating the code to use "ddgs"

Signed-off-by: dendilaws <dendilaws@gmail.com>
2025-08-10 17:09:13 -04:00
satveerkhurpa
3119bdddf6
Adding a 3LO example with Github credential provider (#226)
Co-authored-by: Satveer Khurpa <khurpas@amazon.com>
2025-08-10 10:47:26 +02:00
satveerkhurpa
06bc9c2a1e
Adding a 3LO example with Google credential provider (#225)
* Adding a 3LO example with Google credential provider

* Spell check updates

---------

Co-authored-by: Satveer Khurpa <khurpas@amazon.com>
2025-08-10 10:45:24 +02:00
rohillasandeep
01246a98b2
Configuration Management Fixes (#223)
* feat: Add AWS Operations Agent with AgentCore Runtime

- Complete rewrite of AWS Operations Agent using Amazon Bedrock AgentCore
- Added comprehensive deployment scripts for DIY and SDK runtime modes
- Implemented OAuth2/PKCE authentication with Okta integration
- Added MCP (Model Context Protocol) tool support for AWS service operations
- Sanitized all sensitive information (account IDs, domains, client IDs) with placeholders
- Added support for 17 AWS services: EC2, S3, Lambda, CloudFormation, IAM, RDS, CloudWatch, Cost Explorer, ECS, EKS, SNS, SQS, DynamoDB, Route53, API Gateway, SES, Bedrock, SageMaker
- Includes chatbot client, gateway management scripts, and comprehensive testing
- Ready for public GitHub with security-cleared configuration files

Security: All sensitive values replaced with <YOUR_AWS_ACCOUNT_ID>, <YOUR_OKTA_DOMAIN>, <YOUR_OKTA_CLIENT_ID> placeholders

* Update AWS Operations Agent architecture diagram

* feat: Enhance AWS Operations Agent with improved testing and deployment

- Update README with new local container testing approach using run-*-local-container.sh scripts
- Replace deprecated SAM-based MCP Lambda deployment with ZIP-based deployment
- Add no-cache flag to Docker builds to ensure clean builds
- Update deployment scripts to use consolidated configuration files
- Add comprehensive cleanup scripts for all deployment components
- Improve error handling and credential validation in deployment scripts
- Add new MCP tool deployment using ZIP packaging instead of Docker containers
- Update configuration management to use dynamic-config.yaml structure
- Add local testing capabilities with containerized agents
- Remove outdated test scripts and replace with interactive chat client approach

* fix: Update IAM policy configurations

- Update bac-permissions-policy.json with enhanced permissions
- Update bac-trust-policy.json for improved trust relationships

* fix: Update Docker configurations for agent runtimes

- Update Dockerfile.diy with improved container configuration
- Update Dockerfile.sdk with enhanced build settings

* fix: Update OAuth iframe flow configuration

- Update iframe-oauth-flow.html with improved OAuth handling

* feat: Update AWS Operations Agent configuration and cleanup

- Update IAM permissions policy with enhanced access controls
- Update IAM trust policy with improved security conditions
- Enhance OAuth iframe flow with better UX and error handling
- Improve chatbot client with enhanced local testing capabilities
- Remove cache files and duplicate code for cleaner repository

* docs: Add architecture diagrams and update README

- Add architecture-2.jpg and flow.jpg diagrams for better visualization
- Update README.md with enhanced documentation and diagrams

* Save current work before resolving merge conflicts

* Keep AWS-operations-agent changes (local version takes precedence)

* Fix: Remove merge conflict markers from AWS-operations-agent files - restore clean version

* Fix deployment and cleanup script issues

Major improvements and fixes:

Configuration Management:
- Fix role assignment in gateway creation (use bac-execution-role instead of Lambda role)
- Add missing role_arn cleanup in MCP tool deletion script
- Fix OAuth provider deletion script configuration clearing
- Improve memory deletion script to preserve quote consistency
- Add Lambda invoke permissions to bac-permissions-policy.json

Script Improvements:
- Reorganize deletion scripts: 11-delete-oauth-provider.sh, 12-delete-memory.sh, 13-cleanup-everything.sh
- Fix interactive prompt handling in cleanup scripts (echo -e format)
- Add yq support with sed fallbacks for better YAML manipulation
- Remove obsolete 04-deploy-mcp-tool-lambda-zip.sh script

Architecture Fixes:
- Correct gateway role assignment to use runtime.role_arn (bac-execution-role)
- Ensure proper role separation between gateway and Lambda execution
- Fix configuration cleanup to clear all dynamic config fields consistently

Documentation:
- Update README with clear configuration instructions
- Maintain security best practices with placeholder values
- Add comprehensive deployment and cleanup guidance

These changes address systematic issues with cleanup scripts, role assignments,
and configuration management while maintaining security best practices.

* Update README.md with comprehensive documentation

Enhanced documentation includes:
- Complete project structure with 75 files
- Step-by-step deployment guide with all 13 scripts
- Clear configuration instructions with security best practices
- Dual agent architecture documentation (DIY + SDK)
- Authentication flow and security implementation details
- Troubleshooting guide and operational procedures
- Local testing and container development guidance
- Tool integration and MCP protocol documentation

The README now provides complete guidance for deploying and operating
the AWS Support Agent with Amazon Bedrock AgentCore system.

---------

Co-authored-by: name <alias@amazon.com>
2025-08-09 13:51:24 -07:00
Amit Arora
163a0ba07b
feat(02-use-cases): Add observability support and update documentation (#222)
* feat(sre-agent): add OpenTelemetry observability and tracing

- Add OpenTelemetry tracing to supervisor and memory tools
- Configure OTEL collector with Jaeger backend via docker-compose
- Add trace context propagation between supervisor and workers
- Include run-with-tracing.sh helper script for easy tracing setup
- Update blog post with comprehensive observability section
- Add presentation slides for SRE agent capabilities

* docs(sre-agent): replace mermaid diagram with architecture image

- Replace inline mermaid diagram with external architecture PNG image
- Add detailed component descriptions for AgentCore integration
- Image shows complete flow from customer to AgentCore services

* feat(sre-agent): add assets table with demo video and AI podcast links

- Add assets section with clickable links to demo video and AI-generated podcast
- Include descriptions for each asset to help users understand the content
- Position table prominently after the use case details for visibility

* docs(sre-agent): update blog post with latest code snippets and improvements

- Update Dockerfile snippet to include OpenTelemetry instrumentation
- Update invoke_agent_runtime.py snippet with timeout config and memory personalization
- Remove verbose real-time agent execution traces section while keeping key insights
- Simplify cleanup section to show only essential command
- Ensure all code snippets match latest implementation

* style(sre-agent): apply ruff formatting to Python files

- Format code with ruff formatter for consistent style
- Fix whitespace and indentation issues
- Apply standard Python formatting conventions
- Ensure code adheres to project style guidelines

* chore(sre-agent): remove slide files from docs

- Remove presentation slide markdown files
- Clean up docs directory structure

* Update blog post: Change S3 target references to API Endpoint Target

- Updated section heading from 'Deploy S3 targets' to 'Deploy API Endpoint Targets'
- Renamed function from create_s3_target to create_api_endpoint_target
- Updated variable name from s3_target_config to api_target_config
- Clarified that OpenAPI specs are used to create API Endpoint Targets

* Update README assets section with two demo videos

- Renamed first video to 'Demo video 1 (SRE-Agent CLI, VSCode integration)'
- Added 'Demo video 2 (Cursor integration)' with new link
- Clarified descriptions for both demo videos

* Update Demo video 2 description to specify AgentCore Gateway integration

- Changed description to 'Demonstration of AgentCore Gateway with SRE tools integration with Cursor IDE'
- More accurately describes the specific integration being demonstrated

* Update blog post Real-world use cases section with accurate agent behavior

- Changed 'agents work in parallel' to 'agents work sequentially' based on agent.log evidence
- Updated command example to use correct USER_ID environment variable instead of --user-id parameter
- Added comprehensive memory system integration explanation
- Reduced verbosity of trace outputs while maintaining key technical details
- Updated investigation plan and executive summary to match actual agent.log output format
- Added all five AgentCore primitives working together: Gateway, Identity, Runtime, Memory, and Observability

---------

Signed-off-by: Amit Arora <aroraai@amazon.com>
2025-08-08 15:25:55 -04:00
Amit Arora
cdb450260a
feat(02-usecases): add observability support and documentation improvements (#220)
* feat(sre-agent): add OpenTelemetry observability and tracing

- Add OpenTelemetry tracing to supervisor and memory tools
- Configure OTEL collector with Jaeger backend via docker-compose
- Add trace context propagation between supervisor and workers
- Include run-with-tracing.sh helper script for easy tracing setup
- Update blog post with comprehensive observability section
- Add presentation slides for SRE agent capabilities

* docs(sre-agent): replace mermaid diagram with architecture image

- Replace inline mermaid diagram with external architecture PNG image
- Add detailed component descriptions for AgentCore integration
- Image shows complete flow from customer to AgentCore services

* feat(sre-agent): add assets table with demo video and AI podcast links

- Add assets section with clickable links to demo video and AI-generated podcast
- Include descriptions for each asset to help users understand the content
- Position table prominently after the use case details for visibility

* docs(sre-agent): update blog post with latest code snippets and improvements

- Update Dockerfile snippet to include OpenTelemetry instrumentation
- Update invoke_agent_runtime.py snippet with timeout config and memory personalization
- Remove verbose real-time agent execution traces section while keeping key insights
- Simplify cleanup section to show only essential command
- Ensure all code snippets match latest implementation

* style(sre-agent): apply ruff formatting to Python files

- Format code with ruff formatter for consistent style
- Fix whitespace and indentation issues
- Apply standard Python formatting conventions
- Ensure code adheres to project style guidelines

* chore(sre-agent): remove slide files from docs

- Remove presentation slide markdown files
- Clean up docs directory structure
2025-08-08 09:22:15 -04:00
Amit Arora
f496048c13
feat(02-use-cases): integrate AgentCore Memory with SRE Agent for intelligent context-aware incident response (#210)
* feat: integrate long-term memory system into SRE agent

- Add AgentCore Memory integration with three memory strategies:
  * User preferences (escalation, notification, workflow preferences)
  * Infrastructure knowledge (dependencies, patterns, baselines)
  * Investigation summaries (timeline, actions, findings)

- Implement memory tools for save/retrieve operations
- Add automatic memory capture through hooks and pattern recognition
- Extend agent state to support memory context
- Integrate memory-aware planning in supervisor agent
- Add comprehensive test coverage for memory functionality
- Create detailed documentation with usage examples

This transforms the SRE agent from stateless to learning assistant
that becomes more valuable over time by remembering user preferences,
infrastructure patterns, and investigation outcomes.

Addresses issue #164

* feat: environment variable config, agent routing fixes, and project organization

- Move USER_ID/SESSION_ID from metadata parsing to environment variables
- Add .memory_id to .gitignore for local memory state
- Update .gitignore to use .scratchpad/ folder instead of .scratchpad.md
- Fix agent routing issues with supervisor prompt and graph node naming
- Add conversation memory tracking for all agents and supervisor
- Improve agent metadata system with centralized constants
- Add comprehensive logging and debugging for agent tool access
- Update deployment script to pass user_id/session_id in payload
- Create .scratchpad/ folder structure for better project organization

* feat: enhance SRE agent with automatic report archiving and error fixes

- Add automatic archiving system for reports by date
- Include user_id in report filenames for better organization
- Fix Pydantic validation error with string-to-list conversion for investigation steps
- Add content length truncation for memory storage to prevent validation errors
- Remove status line from report output for cleaner formatting
- Implement date-based folder organization (YYYY-MM-DD format)
- Add memory content length limits configuration in constants

Key improvements:
- Reports now auto-archive old files when saving new ones
- User-specific filenames: query_user_id_UserName_YYYYMMDD_HHMMSS.md
- Robust error handling for memory content length limits
- Backward compatibility with existing filename formats

* feat: fix memory retrieval system for cross-session searches and user personalization

Key fixes and improvements:
- Fix case preservation in actor_id sanitization (Carol remains Carol, not carol)
- Enable cross-session memory searches for infrastructure and investigation memories
- Add XML parsing support for investigation summaries stored in XML format
- Enhance user preference integration throughout the system
- Add comprehensive debug logging for memory retrieval processes
- Update prompts to support user-specific communication styles and preferences

Memory system now properly:
- Preserves user case in memory namespaces (/sre/users/Carol vs /sre/users/carol)
- Searches across all sessions for planning context vs session-specific for current state
- Parses both JSON and XML formatted investigation memories
- Adapts investigation approach based on user preferences and historical patterns
- Provides context-aware planning using infrastructure knowledge and past investigations

* feat: enhance SRE agent with user-specific memory isolation and anti-hallucination measures

Memory System Improvements:
- Fix memory isolation to retrieve only user-specific memories (Alice doesn't see Carol's data)
- Implement proper namespace handling for cross-session vs session-specific searches
- Add detailed logging for memory retrieval debugging and verification
- Remove verbose success logs, keep only error logs for cleaner output

Anti-Hallucination Enhancements:
- Add tool output validation requirements to agent prompts
- Implement timestamp fabrication prevention (use 2024-* format from backend)
- Require tool attribution for all metrics and findings in reports
- Add backend data alignment patterns for consistent data references
- Update supervisor aggregation prompts to flag unverified claims

Code Organization:
- Extract hardcoded prompts from supervisor.py to external prompt files
- Add missing session_id parameters to SaveInfrastructureTool and SaveInvestigationTool
- Improve memory client namespace documentation and cross-session search logic
- Reduce debug logging noise while maintaining error tracking

Verification Complete:
- Memory isolation working correctly (only user-specific data retrieval)
- Cross-session memory usage properly configured for planning and investigations
- Memory integration confirmed in report generation pipeline
- Anti-hallucination measures prevent fabricated metrics and timestamps

* feat: organize utility scripts in dedicated scripts folder

Script Organization:
- Move manage_memories.py to scripts/ folder with updated import paths
- Move configure_gateway.sh to scripts/ folder with corrected PROJECT_ROOT path
- Copy user_config.yaml to scripts/ folder for self-contained script usage

Path Fixes:
- Update manage_memories.py to import sre_agent module from correct relative path
- Fix .memory_id file path resolution for new script location
- Update configure_gateway.sh PROJECT_ROOT to point to correct parent directory
- Add fallback logic to find user_config.yaml in scripts/ or project root

Script Improvements:
- Update help text and examples to use 'uv run python scripts/' syntax
- Make manage_memories.py executable with proper permissions
- Maintain backward compatibility for custom config file paths
- Self-contained scripts folder with all required dependencies

Verification:
- All scripts work correctly from new location
- Memory management functions operate properly
- Gateway configuration handles paths correctly
- User preferences loading works from scripts directory

* docs: update SSL certificate paths to use /opt/ssl standard location

- Update README.md to reference /opt/ssl for SSL certificate paths
- Update docs/demo-environment.md to use /opt/ssl paths
- Clean up scripts/configure_gateway.sh SSL fallback paths
- Remove duplicate and outdated SSL path references
- Establish /opt/ssl as the standard SSL certificate location

This ensures consistent SSL certificate management across all
documentation and scripts, supporting the established /opt/ssl
directory with proper ubuntu:ubuntu ownership.

* feat: enhance memory system with infrastructure parsing fix and user personalization analysis

Infrastructure Memory Parsing Improvements:
- Fix infrastructure memory parsing to handle both JSON and plain text formats
- Convert plain text memories to structured InfrastructureKnowledge objects
- Change warning logs to debug level for normal text-to-structure conversion
- Ensure all infrastructure memories are now retrievable and usable

User Personalization Documentation:
- Add comprehensive memory system analysis comparing Alice vs Carol reports
- Create docs/examples/ folder with real investigation reports demonstrating personalization
- Document side-by-side communication differences based on user preferences
- Show how same technical incident produces different reports for different user roles

Example Reports Added:
- Alice's technical detailed investigation report (technical role preferences)
- Carol's business-focused executive summary report (executive role preferences)
- Memory system analysis with extensive side-by-side comparisons

This demonstrates the memory system's ability to:
- Maintain technical accuracy while adapting presentation style
- Apply user-specific escalation procedures and communication channels
- Build institutional knowledge about recurring infrastructure patterns
- Personalize identical technical incidents for different organizational roles

* feat: enhance memory system with automatic pattern extraction and improved logging

## Memory System Enhancements
- **Individual agent memory integration**: Every agent response now triggers automatic memory pattern extraction through on_agent_response() hooks
- **Enhanced conversation logging**: Added detailed message breakdown showing USER/ASSISTANT/TOOL message counts and tool names called
- **Fixed infrastructure extraction**: Resolved hardcoded agent name issues by using SREConstants for agent identification
- **Comprehensive memory persistence**: All agent responses and tool executions stored as conversation memory with proper session tracking

## Tool Architecture Clarification
- **Centralized memory access**: Confirmed only supervisor agent has direct access to memory tools (retrieve_memory, save_*)
- **Individual agent focus**: Individual agents have NO memory tools, only domain-specific tools (5 tools each for metrics, logs, k8s, runbooks)
- **Automatic pattern recognition**: Memory capture happens automatically through hooks, not manual tool calls by individual agents

## Documentation Updates
- **Updated memory-system.md**: Comprehensive design documentation reflecting current implementation
- **Added example analyses**: Created flight-booking-analysis.md and api-response-time-analysis.md in docs/examples/
- **Enhanced README.md**: Added memory system overview and personalized investigation examples
- **Updated .gitignore**: Now ignores entire reports/ folder instead of just .md files

## Implementation Improvements
- **Event ID tracking**: All memory operations generate and log event IDs for verification
- **Pattern extraction confirmation**: Logs confirm pattern extraction working for all agent types
- **Memory save verification**: Comprehensive logging shows successful saves across all memory types
- **Script enhancements**: manage_memories.py now handles duplicate removal and improved user management

* docs: enhance memory system documentation with planning agent memory usage examples

- Add real agent.log snippets showing planning agent retrieving and using memory context
- Document XML-structured prompts for improved Claude model interaction
- Explain JSON response format enforcement and infrastructure knowledge extraction
- Add comprehensive logging and monitoring details
- Document actor ID design for proper memory namespace isolation
- Fix ASCII flow diagram alignment for better readability
- Remove temporal framing and present features as current design facts

* docs: add AWS documentation links and clean up memory system documentation

- Add hyperlink to Amazon Bedrock AgentCore Memory main documentation
- Link to Memory Getting Started Guide for the three memory strategies
- Remove Legacy Pattern Recognition section from documentation (code remains)
- Remove Error Handling and Fallbacks section to focus on core functionality
- Keep implementation details in code while streamlining public documentation

* docs: reorganize memory-system.md to eliminate redundancies

- Merged Memory Tool Architecture and Planning sections into unified section
- Consolidated all namespace/actor_id explanations in architecture section
- Combined pattern recognition and memory capture content
- Created dedicated Agent Memory Integration section with examples
- Removed ~15-20% redundant content while improving clarity
- Improved document structure for better navigation

* style: apply ruff formatting and fix code style issues

- Applied ruff auto-formatting to all Python files
- Fixed 383 style issues automatically
- Remaining issues require manual intervention:
  - 29 ruff errors (bare except, unused variables, etc.)
  - 61 mypy type errors (missing annotations, implicit Optional)
- Verified memory system functionality matches documentation
- Confirmed user personalization working correctly in reports

* docs: make benefits section more succinct in memory-system.md

- Consolidated 12 bullet points into 5 focused benefits
- Removed redundant three-category structure (Users/Teams/Operations)
- Maintained all key value propositions while improving readability
- Reduced section length by ~60% while preserving essential information

* feat: add comprehensive cleanup script with memory deletion

- Added cleanup.sh script to delete all AWS resources (gateway, runtime, memory)
- Integrated memory deletion using bedrock_agentcore MemoryClient
- Added proper error handling and graceful fallbacks
- Updated execution order: servers → gateway → memory → runtime → local files
- Added memory deletion to README.md cleanup instructions
- Includes confirmation prompts and --force option for automation

* fix: preserve .env, .venv, and reports in cleanup script

- Modified cleanup script to only remove AWS-generated configuration files
- Preserved .env files for development continuity
- Preserved .venv directories to avoid reinstalling dependencies
- Preserved reports/ directory containing investigation history
- Files removed: gateway URIs, tokens, agent ARNs, memory IDs only
- Updated documentation to clarify preserved vs removed files

* fix: use correct bedrock-agentcore-control client for gateway operations

- Changed boto3 client from 'bedrock-agentcore' to 'bedrock-agentcore-control'
- Fixes 'list_gateways' method not found error during gateway deletion
- Both gateway and runtime deletion now use the correct control plane client

* docs: add memory system initialization timing guidance

- Added note that memory system takes 10-12 minutes to be ready
- Added steps to check memory status with list command after 10 minutes
- Added instruction to run update command again once memory is ready
- Provides clear workflow for memory system setup and prevents user confusion

* docs: comprehensive documentation update and cleanup

- Remove unused root .env and .env.example files (not referenced by any code)
- Update configuration.md with comprehensive config file documentation
- Add configuration overview table with setup instructions and auto-generation info
- Consolidate specialized-agents.md content into system-components.md
- Update system-components.md with complete AgentCore architecture
- Add detailed sections for AgentCore Runtime, Gateway, and Memory primitives
- Remove cli-reference.md (excessive documentation for limited use)
- Update README.md to reference configuration guide in setup section
- Clean up documentation links and organization

The documentation now provides a clear, consolidated view of the system
architecture and configuration with proper cross-references and setup guidance.

* feat: improve runtime deployment and invocation robustness

- Increase deletion wait time to 150s for agent runtime cleanup
- Add retry logic with exponential backoff for MCP rate limiting (429 errors)
- Add session_id and user_id to agent state for memory retrieval
- Filter out /ping endpoint logs to reduce noise
- Increase boto3 read timeout to 5 minutes for long-running operations
- Add clear error messages for agent name conflicts
- Update README to clarify virtual environment requirement for scripts
- Fix session ID generation to meet 33+ character requirement

These changes improve reliability when deploying and invoking agents,
especially under heavy load or with complex queries that take time.

* chore: remove accidentally committed reports folder

Removed 130+ markdown report files from the reports/ directory that were
accidentally committed. The .gitignore already includes reports/ to prevent
future commits of these generated files.
2025-08-06 17:49:56 -04:00
mvangara10
e132045d04
Non Runtime: Strands: Updates and fixes (#212)
* AgentCore Observability

Signed-off-by: mvangara10 <mvangara@amazon.com>

* Update README.md

Signed-off-by: mvangara10 <mvangara@amazon.com>

* Update README.md

Signed-off-by: mvangara10 <mvangara@amazon.com>

* Update README.md

Signed-off-by: mvangara10 <mvangara@amazon.com>

* .env.example

* add runtime utils.py

Signed-off-by: mvangara10 <mvangara@amazon.com>

* AgentCore Observability: Custom Spans

* Update doc

* runtime hosted agent update

* Refactoring and Runtime updates

* Custom span documentation

* Observability runtime: auto_create_role

* Model ID and STM fix

* Model ID update

* Non runtime: strands package update and fix

---------

Signed-off-by: mvangara10 <mvangara@amazon.com>
2025-08-05 19:52:39 -04:00
mvangara10
186125260f
Model ID update for Observability non-runtime (#209)
* AgentCore Observability

Signed-off-by: mvangara10 <mvangara@amazon.com>

* Update README.md

Signed-off-by: mvangara10 <mvangara@amazon.com>

* Update README.md

Signed-off-by: mvangara10 <mvangara@amazon.com>

* Update README.md

Signed-off-by: mvangara10 <mvangara@amazon.com>

* .env.example

* add runtime utils.py

Signed-off-by: mvangara10 <mvangara@amazon.com>

* AgentCore Observability: Custom Spans

* Update doc

* runtime hosted agent update

* Refactoring and Runtime updates

* Custom span documentation

* Observability runtime: auto_create_role

* Model ID and STM fix

* Model ID update

---------

Signed-off-by: mvangara10 <mvangara@amazon.com>
2025-08-05 16:12:55 -04:00
Eashan Kaushik
d7233f946d
ALERT message changed to IMPORTANT (#193)
* Update README.md

Signed-off-by: Eashan Kaushik <50113394+EashanKaushik@users.noreply.github.com>

* Update README.md

Signed-off-by: Eashan Kaushik <50113394+EashanKaushik@users.noreply.github.com>

* Update README.md

Signed-off-by: Eashan Kaushik <50113394+EashanKaushik@users.noreply.github.com>

* Update README.md

Signed-off-by: Eashan Kaushik <50113394+EashanKaushik@users.noreply.github.com>

---------

Signed-off-by: Eashan Kaushik <50113394+EashanKaushik@users.noreply.github.com>
2025-08-05 15:51:10 -04:00
Maira Ladeira Tanke
57920a12c5
Fixing last issues with runtime (#208) 2025-08-05 15:24:55 -04:00
Veda Raman
a89f2bb974
changes to browser notebooks to make them standalone (#207)
* changes to browser notebooks to make them standalone

* clearing outputs

---------

Co-authored-by: Veda Raman <vedashrr@amazon.com>
2025-08-05 15:01:18 -04:00
Maira Ladeira Tanke
94cea80a46
Updating Identity for auto creating role and using cognito from utils file (#206)
* Fixing runtime with identity for workshop

* Fixing runtime with identity for workshop
2025-08-05 14:17:44 -04:00
mvangara10
5b42c7b0c6
STM and LTM : Model ID update and fixes (#204)
* AgentCore Observability

Signed-off-by: mvangara10 <mvangara@amazon.com>

* Update README.md

Signed-off-by: mvangara10 <mvangara@amazon.com>

* Update README.md

Signed-off-by: mvangara10 <mvangara@amazon.com>

* Update README.md

Signed-off-by: mvangara10 <mvangara@amazon.com>

* .env.example

* add runtime utils.py

Signed-off-by: mvangara10 <mvangara@amazon.com>

* AgentCore Observability: Custom Spans

* Update doc

* runtime hosted agent update

* Refactoring and Runtime updates

* Custom span documentation

* Observability runtime: auto_create_role

* Model ID and STM fix

---------

Signed-off-by: mvangara10 <mvangara@amazon.com>
2025-08-05 10:42:30 -04:00
Sanghwa Na
547f3bbfda
fix: Add AWS_REGION fallback for gateway notebooks (#200)
* fix: Add AWS_REGION fallback for gateway notebooks

Update AWS_DEFAULT_REGION environment variable setting in AgentCore
gateway notebooks to fall back to AWS_REGION when available,
defaulting to us-east-1 if neither is set.

This change ensures compatibility with different AWS environment
configurations and follows SageMaker best practices.

Files modified:
- 01-tutorials/02-AgentCore-gateway/01-transform-lambda-into-mcp-tools/01-gateway-target-lambda.ipynb
- 01-tutorials/02-AgentCore-gateway/02-transform-apis-into-mcp-tools/02-transform-openapi-into-mcp-tools/01-openapis-into-mcp-api-key.ipynb
- 01-tutorials/02-AgentCore-gateway/02-transform-apis-into-mcp-tools/02-transform-openapi-into-mcp-tools/02-openapis-into-mcp-oauth-enterpris-apis.ipynb
- 01-tutorials/02-AgentCore-gateway/02-transform-apis-into-mcp-tools/03-transform-smithyapis-into-mcp-tools/01-s3-smithy-into-mcp-iam.ipynb

Changed: os.environ['AWS_DEFAULT_REGION'] = 'us-east-1'
To: os.environ['AWS_DEFAULT_REGION'] = os.environ.get('AWS_REGION', 'us-east-1')

* adding requirement files for sm run

* adding requirement files for sm run

* renaming gateway folders

* Remove cell execution output

* renaming gateway folders

* changing pip install for gateway search sample

* remove cell outputs

---------

Co-authored-by: Maira Ladeira Tanke <mttanke@amazon.com>
2025-08-04 22:58:32 -04:00
mvangara10
3b3bca0c82
Runtime Observability: auto_create_role (#201)
* AgentCore Observability

Signed-off-by: mvangara10 <mvangara@amazon.com>

* Update README.md

Signed-off-by: mvangara10 <mvangara@amazon.com>

* Update README.md

Signed-off-by: mvangara10 <mvangara@amazon.com>

* Update README.md

Signed-off-by: mvangara10 <mvangara@amazon.com>

* .env.example

* add runtime utils.py

Signed-off-by: mvangara10 <mvangara@amazon.com>

* AgentCore Observability: Custom Spans

* Update doc

* runtime hosted agent update

* Refactoring and Runtime updates

* Custom span documentation

* Observability runtime: auto_create_role

---------

Signed-off-by: mvangara10 <mvangara@amazon.com>
2025-08-04 22:47:47 -04:00
dendilaws
8f34263946
fixed issues with streamablehttp_client with timeout values & agent.tool_config (#192)
* updated to Sonnet 3.7

updated to Sonnet 3.7

Signed-off-by: dendilaws <dendilaws@gmail.com>

* updated to sonnet 3.7

updated to sonnet 3.7

Signed-off-by: dendilaws <dendilaws@gmail.com>

* updated to sonnet 3.7

updated to sonnet 3.7

Signed-off-by: dendilaws <dendilaws@gmail.com>

* updated to sonnet 3.7

Signed-off-by: dendilaws <dendilaws@gmail.com>

* updated to sonnet 3.7

Signed-off-by: dendilaws <dendilaws@gmail.com>

* uodated to sonnet 3.7

Signed-off-by: dendilaws <dendilaws@gmail.com>

* updated to sonnet 3.7

Signed-off-by: dendilaws <dendilaws@gmail.com>

* updated to sonnet 3.7

Signed-off-by: dendilaws <dendilaws@gmail.com>

* updated to sonnet 3.7

Signed-off-by: dendilaws <dendilaws@gmail.com>

* updated to sonnet 3.7

Signed-off-by: dendilaws <dendilaws@gmail.com>

* updated to sonnet 3.7

Signed-off-by: dendilaws <dendilaws@gmail.com>

* updated to sonnet 3.7

Signed-off-by: dendilaws <dendilaws@gmail.com>

* updated to sonnet 3.7

Signed-off-by: dendilaws <dendilaws@gmail.com>

* updated to sonnet 3.7

Signed-off-by: dendilaws <dendilaws@gmail.com>

* updated to sonnet 3.7

Signed-off-by: dendilaws <dendilaws@gmail.com>

* updated to sonnet 3.7

Signed-off-by: dendilaws <dendilaws@gmail.com>

* updated to sonnet 3.7

Signed-off-by: dendilaws <dendilaws@gmail.com>

* updated to sonnet 3.7

Signed-off-by: dendilaws <dendilaws@gmail.com>

* updated to sonnet 3.7

Signed-off-by: dendilaws <dendilaws@gmail.com>

* updated to sonnet 3.7

Signed-off-by: dendilaws <dendilaws@gmail.com>

* updated to sonnet 3.7

Signed-off-by: dendilaws <dendilaws@gmail.com>

* updated to sonnet 3.7

Signed-off-by: dendilaws <dendilaws@gmail.com>

* updated to sonnet 3.7

Signed-off-by: dendilaws <dendilaws@gmail.com>

* updated to sonnet 3.7

Signed-off-by: dendilaws <dendilaws@gmail.com>

* updated to sonnet 3.7

Signed-off-by: dendilaws <dendilaws@gmail.com>

* updated to sonnet 3.7

Signed-off-by: dendilaws <dendilaws@gmail.com>

* fixed the issue related to passing timeout value to the streamablehttp_client

Signed-off-by: dendilaws <dendilaws@gmail.com>

* fixed the issue with agent.tool_config

Signed-off-by: dendilaws <dendilaws@gmail.com>

* fixed the issue with agent.tool_config

Signed-off-by: dendilaws <dendilaws@gmail.com>

* updated to pip install from uv

Signed-off-by: dendilaws <dendilaws@gmail.com>

* updated to pip install from uv add

Signed-off-by: dendilaws <dendilaws@gmail.com>

* updated to pip install from uv add

Signed-off-by: dendilaws <dendilaws@gmail.com>

* updated to pip install from uv add

Signed-off-by: dendilaws <dendilaws@gmail.com>

* updated to pip install from uv add

Signed-off-by: dendilaws <dendilaws@gmail.com>

* updated to pip install from uv add

Signed-off-by: dendilaws <dendilaws@gmail.com>

* updated to pip install from uv add

Signed-off-by: dendilaws <dendilaws@gmail.com>

* updated to pip install from uv add

Signed-off-by: dendilaws <dendilaws@gmail.com>

* updated to pip install from uv add

Signed-off-by: dendilaws <dendilaws@gmail.com>

* updated to pip install from uv add

Signed-off-by: dendilaws <dendilaws@gmail.com>

* updated to pip install from uv add

Signed-off-by: dendilaws <dendilaws@gmail.com>

* overriding the default model used for the agent with sonnet 3.7

Signed-off-by: dendilaws <dendilaws@gmail.com>

* Changing runtime to role auto creation

* Changing runtime to role auto creation

* Changing mcp host on runtime to role auto creation

* Changing advance labs on runtime to role auto creation

---------

Signed-off-by: dendilaws <dendilaws@gmail.com>
Co-authored-by: Maira Ladeira Tanke <mttanke@amazon.com>
2025-08-04 21:15:01 -04:00
Dean Schmigelski
82c65d62d4
fix: bump aws-opentelemetry-distro to 0.10.1 across all samples (#190) 2025-08-04 13:01:05 -07:00
dendilaws
c227bf1124
updated primary model references every where to sonnet 3.7 (#191)
* updated to Sonnet 3.7

updated to Sonnet 3.7

Signed-off-by: dendilaws <dendilaws@gmail.com>

* updated to sonnet 3.7

updated to sonnet 3.7

Signed-off-by: dendilaws <dendilaws@gmail.com>

* updated to sonnet 3.7

updated to sonnet 3.7

Signed-off-by: dendilaws <dendilaws@gmail.com>

* updated to sonnet 3.7

Signed-off-by: dendilaws <dendilaws@gmail.com>

* updated to sonnet 3.7

Signed-off-by: dendilaws <dendilaws@gmail.com>

* uodated to sonnet 3.7

Signed-off-by: dendilaws <dendilaws@gmail.com>

* updated to sonnet 3.7

Signed-off-by: dendilaws <dendilaws@gmail.com>

* updated to sonnet 3.7

Signed-off-by: dendilaws <dendilaws@gmail.com>

* updated to sonnet 3.7

Signed-off-by: dendilaws <dendilaws@gmail.com>

* updated to sonnet 3.7

Signed-off-by: dendilaws <dendilaws@gmail.com>

* updated to sonnet 3.7

Signed-off-by: dendilaws <dendilaws@gmail.com>

* updated to sonnet 3.7

Signed-off-by: dendilaws <dendilaws@gmail.com>

* updated to sonnet 3.7

Signed-off-by: dendilaws <dendilaws@gmail.com>

* updated to sonnet 3.7

Signed-off-by: dendilaws <dendilaws@gmail.com>

* updated to sonnet 3.7

Signed-off-by: dendilaws <dendilaws@gmail.com>

* updated to sonnet 3.7

Signed-off-by: dendilaws <dendilaws@gmail.com>

* updated to sonnet 3.7

Signed-off-by: dendilaws <dendilaws@gmail.com>

* updated to sonnet 3.7

Signed-off-by: dendilaws <dendilaws@gmail.com>

* updated to sonnet 3.7

Signed-off-by: dendilaws <dendilaws@gmail.com>

* updated to sonnet 3.7

Signed-off-by: dendilaws <dendilaws@gmail.com>

* updated to sonnet 3.7

Signed-off-by: dendilaws <dendilaws@gmail.com>

* updated to sonnet 3.7

Signed-off-by: dendilaws <dendilaws@gmail.com>

* updated to sonnet 3.7

Signed-off-by: dendilaws <dendilaws@gmail.com>

* updated to sonnet 3.7

Signed-off-by: dendilaws <dendilaws@gmail.com>

* updated to sonnet 3.7

Signed-off-by: dendilaws <dendilaws@gmail.com>

* updated to sonnet 3.7

Signed-off-by: dendilaws <dendilaws@gmail.com>

---------

Signed-off-by: dendilaws <dendilaws@gmail.com>
2025-08-02 11:55:41 -04:00
Dheeraj Oruganty
e346e83bf1
fix(02-use-cases): SRE-Agent Deployment (#179)
* Add missing credential_provider_name parameter to config.yaml.example

* Fix get_config function to properly parse YAML values with inline comments

* Enhanced get_config to prevent copy-paste whitespace errors in AWS identifiers

* Improve LLM provider configuration and error handling with bedrock as default

* Add OpenAPI templating system and fix hardcoded regions

* Add backend template build to Readme

* delete old yaml files

* Fix Cognito setup with automation script and missing domain creation steps

* docs: Add EC2 instance port configuration documentation

- Document required inbound ports (443, 8011-8014)
- Include SSL/TLS security requirements
- Add AWS security group best practices
- Provide port usage summary table

* docs: Add hyperlinks to prerequisites in README

- Link EC2 port configuration documentation
- Link IAM role authentication setup
- Improve navigation to detailed setup instructions

* docs: Add BACKEND_API_KEY to configuration documentation

- Document gateway environment variables section
- Add BACKEND_API_KEY requirement for credential provider
- Include example .env file format for gateway directory
- Explain usage in create_gateway.sh script

* docs: Add BACKEND_API_KEY to deployment guide environment variables

- Include BACKEND_API_KEY in environment variables reference table
- Mark as required for gateway setup
- Provide quick reference alongside other required variables

* docs: Add BedrockAgentCoreFullAccess policy and trust policy documentation

- Document AWS managed policy BedrockAgentCoreFullAccess
- Add trust policy requirements for bedrock-agentcore.amazonaws.com
- Reorganize IAM permissions for better clarity
- Remove duplicate trust policy section
- Add IAM role requirement to deployment prerequisites

* docs: Document role_name field in gateway config example

- Explain that role_name is used to create and manage the gateway
- Specify BedrockAgentCoreFullAccess policy requirement
- Note trust policy requirement for bedrock-agentcore.amazonaws.com
- Improve clarity for gateway configuration setup

* docs: Add AWS IP address ranges for production security enhancement

- Document AWS IP ranges JSON download for restricting access
- Reference official AWS documentation for IP address ranges
- Provide security alternatives to 0.0.0.0/0 for production
- Include examples of restricted security group configurations
- Enable egress filtering and region-specific access control

* style: Format Python code with black

- Reformat 14 Python files for consistent code style
- Apply PEP 8 formatting standards
- Improve code readability and maintainability

* docs: Update SRE agent prerequisites and setup documentation

- Convert prerequisites section to markdown table format
- Add SSL certificate provider examples (no-ip.com, letsencrypt.org)
- Add Identity Provider (IDP) requirement with setup_cognito.sh reference
- Clarify that all prerequisites must be completed before setup
- Add reference to domain name and cert paths needed for BACKEND_DOMAIN
- Remove Managing OpenAPI Specifications section (covered in use-case setup)
- Add Deployment Guide link to Development to Production section

Addresses issues #171 and #174

* fix: Replace 'AWS Bedrock' with 'Amazon Bedrock' in SRE agent files

- Updated error messages in llm_utils.py
- Updated comments in both .env.example files
- Ensures consistent naming convention across SRE agent codebase

---------

Co-authored-by: dheerajoruganty <dheo@amazon.com>
Co-authored-by: Amit Arora <aroraai@amazon.com>
2025-08-01 13:24:58 -04:00
khastation
ca3b973827
feat(02-use-cases): Add insurance assistant - local prototype to agentcore (#106)
* add insurance app - local prototype to agentcore

* update LICENSE/README

* update LICENSE/README

* Fix sys architecture

* add cleanup section and rename bucket

* add instructions to fill env_example

* add instructions to fill env_example
2025-07-31 17:15:09 -04:00
rohillasandeep
17a75597fe
fix (02-use-cases): AWS Operations Agent updated with AgentCore Runtime (#177)
* feat: Add AWS Operations Agent with AgentCore Runtime

- Complete rewrite of AWS Operations Agent using Amazon Bedrock AgentCore
- Added comprehensive deployment scripts for DIY and SDK runtime modes
- Implemented OAuth2/PKCE authentication with Okta integration
- Added MCP (Model Context Protocol) tool support for AWS service operations
- Sanitized all sensitive information (account IDs, domains, client IDs) with placeholders
- Added support for 17 AWS services: EC2, S3, Lambda, CloudFormation, IAM, RDS, CloudWatch, Cost Explorer, ECS, EKS, SNS, SQS, DynamoDB, Route53, API Gateway, SES, Bedrock, SageMaker
- Includes chatbot client, gateway management scripts, and comprehensive testing
- Ready for public GitHub with security-cleared configuration files

Security: All sensitive values replaced with <YOUR_AWS_ACCOUNT_ID>, <YOUR_OKTA_DOMAIN>, <YOUR_OKTA_CLIENT_ID> placeholders

* Update AWS Operations Agent architecture diagram

---------

Co-authored-by: name <alias@amazon.com>
2025-07-31 14:59:30 -04:00
Eashan Kaushik
cc5db09702
Customer Support Assistant v1.1 (#112)
* feat(customer-support): updated code

* Delete 02-use-cases/customer-support-assistant/Dockerfile

Signed-off-by: Eashan Kaushik <50113394+EashanKaushik@users.noreply.github.com>

* Update .gitignore

Signed-off-by: Eashan Kaushik <50113394+EashanKaushik@users.noreply.github.com>

* identity

* /app/customersupport/agentcore/runtime_iam_role name changed issue#154

Signed-off-by: Eashan Kaushik <50113394+EashanKaushik@users.noreply.github.com>

* Update README.md

Signed-off-by: Eashan Kaushik <50113394+EashanKaushik@users.noreply.github.com>

* Update README.md

Signed-off-by: Eashan Kaushik <50113394+EashanKaushik@users.noreply.github.com>

* Update README.md

Signed-off-by: Eashan Kaushik <50113394+EashanKaushik@users.noreply.github.com>

---------

Signed-off-by: Eashan Kaushik <50113394+EashanKaushik@users.noreply.github.com>
2025-07-28 13:45:12 -04:00
Jeff Nunn
e5b8c94e68
fix(01-tutorials): Fixe broken links to notebooks. Remove reference to missing architecture image. (#79) 2025-07-28 10:31:33 -04:00
Kamal Manchanda
9af9847bc1
fix(01-tutorials): Updated MCP Client to version >=1.10.0 as lower versions can lead to uncaught ClosedResourceError on the server side (#129) 2025-07-28 10:28:52 -04:00
aristsakpinis93
43c3dd8a27
fix(01-tutorials): config directory creation (#146)
* fix config directory creation

* update dependencies

* unpin crewai[tools]
2025-07-28 10:27:31 -04:00
Dustin Liu
4d3ec6c6a2
fix(01-tutorials): Update utils.py to fix syntax error caused by space (#160)
It should be 
"ecr:BatchGetImage",
"ecr:GetDownloadUrlForLayer"

rather than:

"ecr: BatchGetImage",
"ecr: GetDownloadUrlForLayer"

There is an extrac space

Signed-off-by: Dustin Liu <liucong.haonan@gmail.com>
2025-07-28 10:26:21 -04:00
Amit Arora
00893cd175
feat(SRE Agent): Update SRE Agent architecture diagram to use Amazon Bedrock AgentCore icons (#163)
- Replace mermaid diagram with new architecture image using official AWS icons
- Add AgentCore Runtime, Gateway, Identity, Memory, and Observability components
- Show clear integration with Amazon Bedrock LLMs and Amazon Cognito
- Display all 4 MCP tools (k8s-api, logs-api, metrics-api, runbooks-api)
- Create docs/images directory for architecture diagrams

Fixes #162
2025-07-28 09:52:35 -04:00