gitextract_g9hwz37y/ ├── .gitattributes ├── .github/ │ ├── ISSUE_TEMPLATE/ │ │ ├── bug_report.yml │ │ └── feature_request.yml │ ├── PULL_REQUEST_TEMPLATE.md │ └── workflows/ │ ├── npm-publish.yml │ ├── on-docs-update.yml │ ├── on-issue-opened.yml │ ├── on-push.yml │ ├── pr-issue-link-checker.yml │ ├── py-run-tests.yml │ ├── pypi-publish.yml │ ├── ts-run-lint.yml │ ├── ts-run-security-checks.yml │ └── ts-run-tests.yml ├── .gitignore ├── CODE_OF_CONDUCT.md ├── CONTRIBUTING.md ├── LICENSE ├── README.md ├── docs/ │ ├── .gitignore │ ├── README.md │ ├── astro.config.mjs │ ├── package.json │ ├── src/ │ │ ├── components/ │ │ │ └── code.astro │ │ ├── content/ │ │ │ ├── config.ts │ │ │ └── docs/ │ │ │ ├── agents/ │ │ │ │ ├── built-in/ │ │ │ │ │ ├── amazon-bedrock-agent.mdx │ │ │ │ │ ├── anthropic-agent.mdx │ │ │ │ │ ├── bedrock-flows-agent.mdx │ │ │ │ │ ├── bedrock-inline-agent.mdx │ │ │ │ │ ├── bedrock-llm-agent.mdx │ │ │ │ │ ├── bedrock-translator-agent.mdx │ │ │ │ │ ├── chain-agent.mdx │ │ │ │ │ ├── comprehend-filter-agent.mdx │ │ │ │ │ ├── lambda-agent.mdx │ │ │ │ │ ├── lex-bot-agent.mdx │ │ │ │ │ ├── openai-agent.mdx │ │ │ │ │ └── supervisor-agent.mdx │ │ │ │ ├── custom-agents.mdx │ │ │ │ ├── overview.mdx │ │ │ │ └── tools.mdx │ │ │ ├── classifiers/ │ │ │ │ ├── built-in/ │ │ │ │ │ ├── anthropic-classifier.mdx │ │ │ │ │ ├── bedrock-classifier.mdx │ │ │ │ │ └── openai-classifier.mdx │ │ │ │ ├── custom-classifier.mdx │ │ │ │ └── overview.mdx │ │ │ ├── cookbook/ │ │ │ │ ├── examples/ │ │ │ │ │ ├── api-agent.mdx │ │ │ │ │ ├── chat-chainlit-app.md │ │ │ │ │ ├── chat-demo-app.md │ │ │ │ │ ├── ecommerce-support-simulator.md │ │ │ │ │ ├── fast-api-streaming.md │ │ │ │ │ ├── ollama-agent.mdx │ │ │ │ │ ├── ollama-classifier.mdx │ │ │ │ │ ├── python-local-demo.md │ │ │ │ │ └── typescript-local-demo.md │ │ │ │ ├── lambda/ │ │ │ │ │ ├── aws-lambda-nodejs.md │ │ │ │ │ └── aws-lambda-python.md │ │ │ │ ├── monitoring/ │ │ │ │ │ ├── agent-overlap.md │ │ │ │ │ ├── logging.mdx │ │ │ │ │ └── observability.mdx │ │ │ │ ├── patterns/ │ │ │ │ │ ├── cost-efficient.md │ │ │ │ │ └── multi-lingual.md │ │ │ │ └── tools/ │ │ │ │ ├── math-operations.md │ │ │ │ └── weather-api.mdx │ │ │ ├── general/ │ │ │ │ ├── faq.md │ │ │ │ ├── how-it-works.md │ │ │ │ ├── introduction.md │ │ │ │ └── quickstart.mdx │ │ │ ├── index.mdx │ │ │ ├── orchestrator/ │ │ │ │ └── overview.mdx │ │ │ ├── retrievers/ │ │ │ │ ├── built-in/ │ │ │ │ │ └── bedrock-kb-retriever.mdx │ │ │ │ ├── custom-retriever.mdx │ │ │ │ └── overview.md │ │ │ └── storage/ │ │ │ ├── custom.mdx │ │ │ ├── dynamodb.mdx │ │ │ ├── in-memory.mdx │ │ │ ├── overview.md │ │ │ └── sql.mdx │ │ ├── env.d.ts │ │ └── styles/ │ │ ├── custom.css │ │ ├── font.css │ │ ├── landing.css │ │ └── terminal.css │ └── tsconfig.json ├── examples/ │ ├── bedrock-flows/ │ │ ├── python/ │ │ │ └── main.py │ │ ├── readme.md │ │ └── typescript/ │ │ └── main.ts │ ├── bedrock-inline-agents/ │ │ ├── python/ │ │ │ └── main.py │ │ └── typescript/ │ │ └── main.ts │ ├── bedrock-prompt-routing/ │ │ ├── main.py │ │ └── readme.md │ ├── chat-chainlit-app/ │ │ ├── .gitignore │ │ ├── README.md │ │ ├── agents.py │ │ ├── app.py │ │ ├── chainlit.md │ │ ├── ollamaAgent.py │ │ └── requirements.txt │ ├── chat-demo-app/ │ │ ├── .gitignore │ │ ├── .npmignore │ │ ├── README.md │ │ ├── bin/ │ │ │ └── chat-demo-app.ts │ │ ├── cdk.json │ │ ├── jest.config.js │ │ ├── lambda/ │ │ │ ├── auth/ │ │ │ │ ├── index.mjs │ │ │ │ └── package.json │ │ │ ├── find-my-name/ │ │ │ │ └── lambda.py │ │ │ ├── multi-agent/ │ │ │ │ ├── index.ts │ │ │ │ ├── math_tool.ts │ │ │ │ ├── prompts.ts │ │ │ │ └── weather_tool.ts │ │ │ └── sync_bedrock_knowledgebase/ │ │ │ └── lambda.py │ │ ├── lib/ │ │ │ ├── CustomResourcesLambda/ │ │ │ │ ├── aoss-index-create.ts │ │ │ │ ├── data-source-sync.ts │ │ │ │ └── permission-validation.ts │ │ │ ├── airlines.yaml │ │ │ ├── bedrock-agent-construct.ts │ │ │ ├── chat-demo-app-stack.ts │ │ │ ├── constants.ts │ │ │ ├── knowledge-base-construct.ts │ │ │ ├── lex-agent-construct.ts │ │ │ ├── user-interface-stack.ts │ │ │ └── utils/ │ │ │ ├── OpensearchServerlessHelper.ts │ │ │ └── utils.ts │ │ ├── package.json │ │ ├── scripts/ │ │ │ └── download.js │ │ ├── test/ │ │ │ └── chat-demo-app.ts │ │ ├── tsconfig.json │ │ └── ui/ │ │ ├── .babelrc │ │ ├── .gitignore │ │ ├── .vscode/ │ │ │ ├── extensions.json │ │ │ └── launch.json │ │ ├── README.md │ │ ├── astro.config.mjs │ │ ├── package.json │ │ ├── src/ │ │ │ ├── components/ │ │ │ │ ├── ChatWindow.tsx │ │ │ │ ├── emojiHelper.ts │ │ │ │ └── loadingScreen.tsx │ │ │ ├── pages/ │ │ │ │ └── index.astro │ │ │ └── utils/ │ │ │ ├── ApiClient.ts │ │ │ └── amplifyConfig.ts │ │ ├── tailwind.config.cjs │ │ └── tsconfig.json │ ├── ecommerce-support-simulator/ │ │ ├── .gitignore │ │ ├── .npmignore │ │ ├── README.md │ │ ├── bin/ │ │ │ └── ai-ecommerce-support-simulator.ts │ │ ├── cdk.json │ │ ├── graphql/ │ │ │ ├── Query.sendMessage.js │ │ │ ├── schema.graphql │ │ │ ├── sendResponse.js │ │ │ └── sendResponsePipeline.js │ │ ├── jest.config.js │ │ ├── lambda/ │ │ │ ├── customerMessage/ │ │ │ │ ├── agents.ts │ │ │ │ ├── index.ts │ │ │ │ └── sqsLogger.ts │ │ │ ├── sendResponse/ │ │ │ │ └── index.ts │ │ │ └── supportMessage/ │ │ │ └── index.ts │ │ ├── lib/ │ │ │ ├── ai-ecommerce-support-simulator-stack.ts │ │ │ └── utils/ │ │ │ └── utils.ts │ │ ├── package.json │ │ ├── resources/ │ │ │ └── ui/ │ │ │ ├── .gitignore │ │ │ ├── .vscode/ │ │ │ │ ├── extensions.json │ │ │ │ └── launch.json │ │ │ ├── README.md │ │ │ ├── astro.config.mjs │ │ │ ├── package.json │ │ │ ├── public/ │ │ │ │ └── mock_data.json │ │ │ ├── src/ │ │ │ │ ├── components/ │ │ │ │ │ ├── ChatMode.tsx │ │ │ │ │ ├── EmailMode.tsx │ │ │ │ │ ├── SupportSimulator.tsx │ │ │ │ │ └── email-templates.json │ │ │ │ ├── consts.ts │ │ │ │ ├── content/ │ │ │ │ │ └── config.ts │ │ │ │ ├── layouts/ │ │ │ │ │ └── Layout.astro │ │ │ │ ├── pages/ │ │ │ │ │ └── index.astro │ │ │ │ ├── styles/ │ │ │ │ │ └── global.css │ │ │ │ ├── types.ts │ │ │ │ └── utils/ │ │ │ │ └── amplifyConfig.ts │ │ │ ├── tailwind.config.js │ │ │ └── tsconfig.json │ │ ├── test/ │ │ │ └── ai-ecommerce-support-simulator.test.ts │ │ └── tsconfig.json │ ├── fast-api-streaming/ │ │ ├── README.MD │ │ ├── main.py │ │ └── requirements.txt │ ├── langfuse-demo/ │ │ ├── main.py │ │ ├── readme.md │ │ ├── requirements.txt │ │ └── tools/ │ │ └── weather_tool.py │ ├── local-demo/ │ │ ├── local-orchestrator.ts │ │ ├── package.json │ │ └── tools/ │ │ ├── math_tool.ts │ │ └── weather_tool.ts │ ├── python/ │ │ ├── imports.py │ │ ├── main-app.py │ │ ├── movie-production/ │ │ │ ├── movie-production-demo.py │ │ │ ├── readme.md │ │ │ ├── requirements.txt │ │ │ └── search_web.py │ │ ├── pages/ │ │ │ └── home.py │ │ ├── readme.md │ │ ├── requirements.txt │ │ └── travel-planner/ │ │ ├── readme.md │ │ ├── requirements.txt │ │ ├── search_web.py │ │ └── travel-planner-demo.py │ ├── python-demo/ │ │ ├── main-stream.py │ │ ├── main.py │ │ └── tools/ │ │ └── weather_tool.py │ ├── strands-agents-demo/ │ │ ├── main.py │ │ └── requirements.txt │ ├── supervisor-mode/ │ │ ├── main.py │ │ └── weather_tool.py │ ├── text-2-structured-output/ │ │ ├── README.md │ │ ├── multi_agent_query_analyzer.py │ │ ├── product_search_agent.py │ │ ├── prompts.py │ │ └── requirements.txt │ └── tools/ │ └── python/ │ └── weather_tool_example.py ├── python/ │ ├── .gitignore │ ├── CONTRIBUTING.md │ ├── Makefile │ ├── README.md │ ├── pyproject.toml │ ├── ruff.toml │ ├── setup.cfg │ ├── setup.py │ ├── src/ │ │ ├── agent_squad/ │ │ │ ├── __init__.py │ │ │ ├── agents/ │ │ │ │ ├── __init__.py │ │ │ │ ├── agent.py │ │ │ │ ├── amazon_bedrock_agent.py │ │ │ │ ├── anthropic_agent.py │ │ │ │ ├── bedrock_flows_agent.py │ │ │ │ ├── bedrock_inline_agent.py │ │ │ │ ├── bedrock_llm_agent.py │ │ │ │ ├── bedrock_translator_agent.py │ │ │ │ ├── chain_agent.py │ │ │ │ ├── comprehend_filter_agent.py │ │ │ │ ├── lambda_agent.py │ │ │ │ ├── lex_bot_agent.py │ │ │ │ ├── openai_agent.py │ │ │ │ ├── strands_agent.py │ │ │ │ └── supervisor_agent.py │ │ │ ├── classifiers/ │ │ │ │ ├── __init__.py │ │ │ │ ├── anthropic_classifier.py │ │ │ │ ├── bedrock_classifier.py │ │ │ │ ├── classifier.py │ │ │ │ └── openai_classifier.py │ │ │ ├── orchestrator.py │ │ │ ├── retrievers/ │ │ │ │ ├── __init__.py │ │ │ │ ├── amazon_kb_retriever.py │ │ │ │ └── retriever.py │ │ │ ├── shared/ │ │ │ │ ├── __init__.py │ │ │ │ ├── user_agent.py │ │ │ │ └── version.py │ │ │ ├── storage/ │ │ │ │ ├── __init__.py │ │ │ │ ├── chat_storage.py │ │ │ │ ├── dynamodb_chat_storage.py │ │ │ │ ├── in_memory_chat_storage.py │ │ │ │ └── sql_chat_storage.py │ │ │ ├── types/ │ │ │ │ ├── __init__.py │ │ │ │ └── types.py │ │ │ └── utils/ │ │ │ ├── __init__.py │ │ │ ├── helpers.py │ │ │ ├── logger.py │ │ │ └── tool.py │ │ └── tests/ │ │ ├── __init__.py │ │ ├── agents/ │ │ │ ├── __init__.py │ │ │ ├── test_agent.py │ │ │ ├── test_amazon_bedrock_agent.py │ │ │ ├── test_anthropic_agent.py │ │ │ ├── test_bedrock_flows_agent.py │ │ │ ├── test_bedrock_inline_agent.py │ │ │ ├── test_bedrock_llm_agent.py │ │ │ ├── test_comprehend_agent.py │ │ │ ├── test_lambda_agent.py │ │ │ ├── test_lex_bot_agent.py │ │ │ ├── test_openai_agent.py │ │ │ ├── test_strands_agent.py │ │ │ └── test_supervisor_agent.py │ │ ├── classifiers/ │ │ │ ├── __init__.py │ │ │ ├── test_anthropic_classifier.py │ │ │ └── test_classifier.py │ │ ├── pytest.ini │ │ ├── retrievers/ │ │ │ └── test_retriever.py │ │ ├── storage/ │ │ │ ├── __init__.py │ │ │ ├── test_chat_storage.py │ │ │ ├── test_dynamodb_chat_storage.py │ │ │ ├── test_in_memory_chat_storage.py │ │ │ └── test_sql_chat_storage.py │ │ ├── test_orchestrator.py │ │ └── utils/ │ │ ├── test_helpers.py │ │ ├── test_logger.py │ │ └── test_tool.py │ └── test_requirements.txt └── typescript/ ├── .eslintrc.js ├── .npmignore ├── README.md ├── jest.config.js ├── package.json ├── src/ │ ├── agentOverlapAnalyzer.ts │ ├── agents/ │ │ ├── agent.ts │ │ ├── amazonBedrockAgent.ts │ │ ├── anthropicAgent.ts │ │ ├── bedrockFlowsAgent.ts │ │ ├── bedrockInlineAgent.ts │ │ ├── bedrockLLMAgent.ts │ │ ├── bedrockTranslatorAgent.ts │ │ ├── chainAgent.ts │ │ ├── comprehendFilterAgent.ts │ │ ├── lambdaAgent.ts │ │ ├── lexBotAgent.ts │ │ ├── openAIAgent.ts │ │ └── supervisorAgent.ts │ ├── classifiers/ │ │ ├── anthropicClassifier.ts │ │ ├── bedrockClassifier.ts │ │ ├── classifier.ts │ │ └── openAIClassifier.ts │ ├── common/ │ │ └── src/ │ │ ├── awsSdkUtils.ts │ │ ├── types/ │ │ │ └── awsSdk.ts │ │ └── version.ts │ ├── index.ts │ ├── orchestrator.ts │ ├── retrievers/ │ │ ├── AmazonKBRetriever.ts │ │ └── retriever.ts │ ├── storage/ │ │ ├── chatStorage.ts │ │ ├── dynamoDbChatStorage.ts │ │ ├── memoryChatStorage.ts │ │ └── sqlChatStorage.ts │ ├── types/ │ │ └── index.ts │ └── utils/ │ ├── chatUtils.ts │ ├── helpers.ts │ ├── logger.ts │ └── tool.ts ├── tests/ │ ├── Orchestrator.test.ts │ ├── agents/ │ │ ├── Agents.test.ts │ │ ├── LambdaAgent.test.ts │ │ └── OpenAi.test.ts │ ├── classifiers/ │ │ ├── AnthropicClassifier.test.ts │ │ ├── BedrockClassifier.test.ts │ │ ├── Classifier.test.ts │ │ └── OpenAIClassifier.test.ts │ ├── mock/ │ │ └── mockAgent.ts │ ├── retrievers/ │ │ └── Retriever.test.ts │ ├── storage/ │ │ └── ChatStorage.test.ts │ └── utils/ │ └── Utils.test.ts └── tsconfig.json