bedrock-agentcore-starter-toolkit 0.1.12__tar.gz → 0.1.13__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of bedrock-agentcore-starter-toolkit might be problematic. Click here for more details.

Files changed (191) hide show
  1. {bedrock_agentcore_starter_toolkit-0.1.12 → bedrock_agentcore_starter_toolkit-0.1.13}/.github/workflows/release.yml +21 -76
  2. {bedrock_agentcore_starter_toolkit-0.1.12 → bedrock_agentcore_starter_toolkit-0.1.13}/CHANGELOG.md +14 -0
  3. {bedrock_agentcore_starter_toolkit-0.1.12 → bedrock_agentcore_starter_toolkit-0.1.13}/PKG-INFO +3 -4
  4. {bedrock_agentcore_starter_toolkit-0.1.12 → bedrock_agentcore_starter_toolkit-0.1.13}/documentation/docs/examples/memory_gateway_agent.md +22 -22
  5. {bedrock_agentcore_starter_toolkit-0.1.12 → bedrock_agentcore_starter_toolkit-0.1.13}/documentation/docs/user-guide/gateway/quickstart.md +79 -77
  6. bedrock_agentcore_starter_toolkit-0.1.13/documentation/docs/user-guide/runtime/quickstart.md +201 -0
  7. {bedrock_agentcore_starter_toolkit-0.1.12 → bedrock_agentcore_starter_toolkit-0.1.13}/pyproject.toml +3 -4
  8. {bedrock_agentcore_starter_toolkit-0.1.12 → bedrock_agentcore_starter_toolkit-0.1.13}/src/bedrock_agentcore_starter_toolkit/cli/import_agent/agent_info.py +6 -1
  9. {bedrock_agentcore_starter_toolkit-0.1.12 → bedrock_agentcore_starter_toolkit-0.1.13}/src/bedrock_agentcore_starter_toolkit/cli/runtime/commands.py +86 -1
  10. {bedrock_agentcore_starter_toolkit-0.1.12 → bedrock_agentcore_starter_toolkit-0.1.13}/src/bedrock_agentcore_starter_toolkit/cli/runtime/configuration_manager.py +53 -0
  11. bedrock_agentcore_starter_toolkit-0.1.13/src/bedrock_agentcore_starter_toolkit/operations/memory/__init__.py +1 -0
  12. bedrock_agentcore_starter_toolkit-0.1.13/src/bedrock_agentcore_starter_toolkit/operations/memory/constants.py +98 -0
  13. bedrock_agentcore_starter_toolkit-0.1.13/src/bedrock_agentcore_starter_toolkit/operations/memory/manager.py +890 -0
  14. bedrock_agentcore_starter_toolkit-0.1.13/src/bedrock_agentcore_starter_toolkit/operations/memory/models/DictWrapper.py +51 -0
  15. bedrock_agentcore_starter_toolkit-0.1.13/src/bedrock_agentcore_starter_toolkit/operations/memory/models/Memory.py +17 -0
  16. bedrock_agentcore_starter_toolkit-0.1.13/src/bedrock_agentcore_starter_toolkit/operations/memory/models/MemoryStrategy.py +17 -0
  17. bedrock_agentcore_starter_toolkit-0.1.13/src/bedrock_agentcore_starter_toolkit/operations/memory/models/MemorySummary.py +17 -0
  18. {bedrock_agentcore_starter_toolkit-0.1.12 → bedrock_agentcore_starter_toolkit-0.1.13}/src/bedrock_agentcore_starter_toolkit/operations/runtime/configure.py +4 -0
  19. {bedrock_agentcore_starter_toolkit-0.1.12 → bedrock_agentcore_starter_toolkit-0.1.13}/src/bedrock_agentcore_starter_toolkit/operations/runtime/create_role.py +3 -2
  20. {bedrock_agentcore_starter_toolkit-0.1.12 → bedrock_agentcore_starter_toolkit-0.1.13}/src/bedrock_agentcore_starter_toolkit/operations/runtime/invoke.py +8 -2
  21. {bedrock_agentcore_starter_toolkit-0.1.12 → bedrock_agentcore_starter_toolkit-0.1.13}/src/bedrock_agentcore_starter_toolkit/operations/runtime/launch.py +1 -0
  22. {bedrock_agentcore_starter_toolkit-0.1.12 → bedrock_agentcore_starter_toolkit-0.1.13}/src/bedrock_agentcore_starter_toolkit/services/codebuild.py +17 -6
  23. {bedrock_agentcore_starter_toolkit-0.1.12 → bedrock_agentcore_starter_toolkit-0.1.13}/src/bedrock_agentcore_starter_toolkit/services/runtime.py +71 -5
  24. {bedrock_agentcore_starter_toolkit-0.1.12 → bedrock_agentcore_starter_toolkit-0.1.13}/src/bedrock_agentcore_starter_toolkit/utils/runtime/schema.py +1 -0
  25. bedrock_agentcore_starter_toolkit-0.1.13/src/bedrock_agentcore_starter_toolkit/utils/runtime/templates/Dockerfile.j2 +47 -0
  26. {bedrock_agentcore_starter_toolkit-0.1.12 → bedrock_agentcore_starter_toolkit-0.1.13}/tests/cli/runtime/test_commands.py +344 -0
  27. bedrock_agentcore_starter_toolkit-0.1.13/tests/cli/runtime/test_configuration_manager.py +333 -0
  28. bedrock_agentcore_starter_toolkit-0.1.13/tests/operations/memory/test_manager.py +2689 -0
  29. {bedrock_agentcore_starter_toolkit-0.1.12 → bedrock_agentcore_starter_toolkit-0.1.13}/tests/operations/runtime/test_configure.py +384 -0
  30. {bedrock_agentcore_starter_toolkit-0.1.12 → bedrock_agentcore_starter_toolkit-0.1.13}/tests/operations/runtime/test_invoke.py +266 -3
  31. {bedrock_agentcore_starter_toolkit-0.1.12 → bedrock_agentcore_starter_toolkit-0.1.13}/tests/services/test_codebuild.py +67 -7
  32. {bedrock_agentcore_starter_toolkit-0.1.12 → bedrock_agentcore_starter_toolkit-0.1.13}/tests/services/test_runtime.py +290 -0
  33. {bedrock_agentcore_starter_toolkit-0.1.12 → bedrock_agentcore_starter_toolkit-0.1.13}/tests/utils/runtime/test_config.py +258 -0
  34. {bedrock_agentcore_starter_toolkit-0.1.12 → bedrock_agentcore_starter_toolkit-0.1.13}/tests_integ/cli/runtime/test_simple_agent.py +1 -1
  35. bedrock_agentcore_starter_toolkit-0.1.13/tests_integ/memory/memory-manager.ipynb +339 -0
  36. {bedrock_agentcore_starter_toolkit-0.1.12 → bedrock_agentcore_starter_toolkit-0.1.13}/uv.lock +326 -287
  37. bedrock_agentcore_starter_toolkit-0.1.12/agent_example.py +0 -21
  38. bedrock_agentcore_starter_toolkit-0.1.12/documentation/docs/user-guide/runtime/quickstart.md +0 -200
  39. bedrock_agentcore_starter_toolkit-0.1.12/src/bedrock_agentcore_starter_toolkit/utils/runtime/templates/Dockerfile.j2 +0 -33
  40. bedrock_agentcore_starter_toolkit-0.1.12/tests/cli/runtime/test_configuration_manager.py +0 -98
  41. {bedrock_agentcore_starter_toolkit-0.1.12 → bedrock_agentcore_starter_toolkit-0.1.13}/.github/CODEOWNERS +0 -0
  42. {bedrock_agentcore_starter_toolkit-0.1.12 → bedrock_agentcore_starter_toolkit-0.1.13}/.github/ISSUE_TEMPLATE/bug_report.md +0 -0
  43. {bedrock_agentcore_starter_toolkit-0.1.12 → bedrock_agentcore_starter_toolkit-0.1.13}/.github/branch-protection.json +0 -0
  44. {bedrock_agentcore_starter_toolkit-0.1.12 → bedrock_agentcore_starter_toolkit-0.1.13}/.github/dependabot.yml +0 -0
  45. {bedrock_agentcore_starter_toolkit-0.1.12 → bedrock_agentcore_starter_toolkit-0.1.13}/.github/pull_request_template.md +0 -0
  46. {bedrock_agentcore_starter_toolkit-0.1.12 → bedrock_agentcore_starter_toolkit-0.1.13}/.github/workflows/ci.yml +0 -0
  47. {bedrock_agentcore_starter_toolkit-0.1.12 → bedrock_agentcore_starter_toolkit-0.1.13}/.github/workflows/deploy-docs.yml +0 -0
  48. {bedrock_agentcore_starter_toolkit-0.1.12 → bedrock_agentcore_starter_toolkit-0.1.13}/.github/workflows/integration_testing.yml +0 -0
  49. {bedrock_agentcore_starter_toolkit-0.1.12 → bedrock_agentcore_starter_toolkit-0.1.13}/.github/workflows/pr-automerge.yml +0 -0
  50. {bedrock_agentcore_starter_toolkit-0.1.12 → bedrock_agentcore_starter_toolkit-0.1.13}/.github/workflows/security-scanning.yml +0 -0
  51. {bedrock_agentcore_starter_toolkit-0.1.12 → bedrock_agentcore_starter_toolkit-0.1.13}/.github/workflows/security.yml +0 -0
  52. {bedrock_agentcore_starter_toolkit-0.1.12 → bedrock_agentcore_starter_toolkit-0.1.13}/.github/workflows/test-pypi-release.yml +0 -0
  53. {bedrock_agentcore_starter_toolkit-0.1.12 → bedrock_agentcore_starter_toolkit-0.1.13}/.gitignore +0 -0
  54. {bedrock_agentcore_starter_toolkit-0.1.12 → bedrock_agentcore_starter_toolkit-0.1.13}/.pre-commit-config.yaml +0 -0
  55. {bedrock_agentcore_starter_toolkit-0.1.12 → bedrock_agentcore_starter_toolkit-0.1.13}/.python-version +0 -0
  56. {bedrock_agentcore_starter_toolkit-0.1.12 → bedrock_agentcore_starter_toolkit-0.1.13}/CODE-OF-CONDUCT.md +0 -0
  57. {bedrock_agentcore_starter_toolkit-0.1.12 → bedrock_agentcore_starter_toolkit-0.1.13}/CONTRIBUTING.md +0 -0
  58. {bedrock_agentcore_starter_toolkit-0.1.12 → bedrock_agentcore_starter_toolkit-0.1.13}/LICENSE.txt +0 -0
  59. {bedrock_agentcore_starter_toolkit-0.1.12 → bedrock_agentcore_starter_toolkit-0.1.13}/NOTICE.txt +0 -0
  60. {bedrock_agentcore_starter_toolkit-0.1.12 → bedrock_agentcore_starter_toolkit-0.1.13}/README.md +0 -0
  61. {bedrock_agentcore_starter_toolkit-0.1.12 → bedrock_agentcore_starter_toolkit-0.1.13}/SECURITY.md +0 -0
  62. {bedrock_agentcore_starter_toolkit-0.1.12 → bedrock_agentcore_starter_toolkit-0.1.13}/buildspec-lambda-package.yml +0 -0
  63. {bedrock_agentcore_starter_toolkit-0.1.12 → bedrock_agentcore_starter_toolkit-0.1.13}/documentation/.gitignore +0 -0
  64. {bedrock_agentcore_starter_toolkit-0.1.12 → bedrock_agentcore_starter_toolkit-0.1.13}/documentation/README.md +0 -0
  65. {bedrock_agentcore_starter_toolkit-0.1.12 → bedrock_agentcore_starter_toolkit-0.1.13}/documentation/docs/api-reference/cli.md +0 -0
  66. {bedrock_agentcore_starter_toolkit-0.1.12 → bedrock_agentcore_starter_toolkit-0.1.13}/documentation/docs/api-reference/identity.md +0 -0
  67. {bedrock_agentcore_starter_toolkit-0.1.12 → bedrock_agentcore_starter_toolkit-0.1.13}/documentation/docs/api-reference/memory.md +0 -0
  68. {bedrock_agentcore_starter_toolkit-0.1.12 → bedrock_agentcore_starter_toolkit-0.1.13}/documentation/docs/api-reference/runtime.md +0 -0
  69. {bedrock_agentcore_starter_toolkit-0.1.12 → bedrock_agentcore_starter_toolkit-0.1.13}/documentation/docs/api-reference/tools.md +0 -0
  70. {bedrock_agentcore_starter_toolkit-0.1.12 → bedrock_agentcore_starter_toolkit-0.1.13}/documentation/docs/examples/README.md +0 -0
  71. {bedrock_agentcore_starter_toolkit-0.1.12 → bedrock_agentcore_starter_toolkit-0.1.13}/documentation/docs/examples/async-processing.md +0 -0
  72. {bedrock_agentcore_starter_toolkit-0.1.12 → bedrock_agentcore_starter_toolkit-0.1.13}/documentation/docs/examples/gateway-integration.md +0 -0
  73. {bedrock_agentcore_starter_toolkit-0.1.12 → bedrock_agentcore_starter_toolkit-0.1.13}/documentation/docs/examples/runtime-framework-agents.md +0 -0
  74. {bedrock_agentcore_starter_toolkit-0.1.12 → bedrock_agentcore_starter_toolkit-0.1.13}/documentation/docs/examples/session-management.md +0 -0
  75. {bedrock_agentcore_starter_toolkit-0.1.12 → bedrock_agentcore_starter_toolkit-0.1.13}/documentation/docs/index.md +0 -0
  76. {bedrock_agentcore_starter_toolkit-0.1.12 → bedrock_agentcore_starter_toolkit-0.1.13}/documentation/docs/stylesheets/extra.css +0 -0
  77. {bedrock_agentcore_starter_toolkit-0.1.12 → bedrock_agentcore_starter_toolkit-0.1.13}/documentation/docs/user-guide/builtin-tools/quickstart-browser.md +0 -0
  78. {bedrock_agentcore_starter_toolkit-0.1.12 → bedrock_agentcore_starter_toolkit-0.1.13}/documentation/docs/user-guide/builtin-tools/quickstart-code-interpreter.md +0 -0
  79. {bedrock_agentcore_starter_toolkit-0.1.12 → bedrock_agentcore_starter_toolkit-0.1.13}/documentation/docs/user-guide/identity/quickstart.md +0 -0
  80. {bedrock_agentcore_starter_toolkit-0.1.12 → bedrock_agentcore_starter_toolkit-0.1.13}/documentation/docs/user-guide/import-agent/configuration.md +0 -0
  81. {bedrock_agentcore_starter_toolkit-0.1.12 → bedrock_agentcore_starter_toolkit-0.1.13}/documentation/docs/user-guide/import-agent/design.md +0 -0
  82. {bedrock_agentcore_starter_toolkit-0.1.12 → bedrock_agentcore_starter_toolkit-0.1.13}/documentation/docs/user-guide/import-agent/overview.md +0 -0
  83. {bedrock_agentcore_starter_toolkit-0.1.12 → bedrock_agentcore_starter_toolkit-0.1.13}/documentation/docs/user-guide/import-agent/quickstart.md +0 -0
  84. {bedrock_agentcore_starter_toolkit-0.1.12 → bedrock_agentcore_starter_toolkit-0.1.13}/documentation/docs/user-guide/memory/quickstart.md +0 -0
  85. {bedrock_agentcore_starter_toolkit-0.1.12 → bedrock_agentcore_starter_toolkit-0.1.13}/documentation/docs/user-guide/observability/quickstart.md +0 -0
  86. {bedrock_agentcore_starter_toolkit-0.1.12 → bedrock_agentcore_starter_toolkit-0.1.13}/documentation/docs/user-guide/runtime/async.md +0 -0
  87. {bedrock_agentcore_starter_toolkit-0.1.12 → bedrock_agentcore_starter_toolkit-0.1.13}/documentation/docs/user-guide/runtime/notebook.md +0 -0
  88. {bedrock_agentcore_starter_toolkit-0.1.12 → bedrock_agentcore_starter_toolkit-0.1.13}/documentation/docs/user-guide/runtime/overview.md +0 -0
  89. {bedrock_agentcore_starter_toolkit-0.1.12 → bedrock_agentcore_starter_toolkit-0.1.13}/documentation/docs/user-guide/runtime/permissions.md +0 -0
  90. {bedrock_agentcore_starter_toolkit-0.1.12 → bedrock_agentcore_starter_toolkit-0.1.13}/documentation/mkdocs.yaml +0 -0
  91. {bedrock_agentcore_starter_toolkit-0.1.12 → bedrock_agentcore_starter_toolkit-0.1.13}/documentation/overrides/main.html +0 -0
  92. {bedrock_agentcore_starter_toolkit-0.1.12 → bedrock_agentcore_starter_toolkit-0.1.13}/scripts/bump-version.py +0 -0
  93. {bedrock_agentcore_starter_toolkit-0.1.12 → bedrock_agentcore_starter_toolkit-0.1.13}/scripts/prepare-release.py +0 -0
  94. {bedrock_agentcore_starter_toolkit-0.1.12 → bedrock_agentcore_starter_toolkit-0.1.13}/scripts/setup-branch-protection.sh +0 -0
  95. {bedrock_agentcore_starter_toolkit-0.1.12 → bedrock_agentcore_starter_toolkit-0.1.13}/scripts/validate-release.py +0 -0
  96. {bedrock_agentcore_starter_toolkit-0.1.12 → bedrock_agentcore_starter_toolkit-0.1.13}/src/bedrock_agentcore_starter_toolkit/__init__.py +0 -0
  97. {bedrock_agentcore_starter_toolkit-0.1.12 → bedrock_agentcore_starter_toolkit-0.1.13}/src/bedrock_agentcore_starter_toolkit/cli/__init__.py +0 -0
  98. {bedrock_agentcore_starter_toolkit-0.1.12 → bedrock_agentcore_starter_toolkit-0.1.13}/src/bedrock_agentcore_starter_toolkit/cli/cli.py +0 -0
  99. {bedrock_agentcore_starter_toolkit-0.1.12 → bedrock_agentcore_starter_toolkit-0.1.13}/src/bedrock_agentcore_starter_toolkit/cli/common.py +0 -0
  100. {bedrock_agentcore_starter_toolkit-0.1.12 → bedrock_agentcore_starter_toolkit-0.1.13}/src/bedrock_agentcore_starter_toolkit/cli/gateway/__init__.py +0 -0
  101. {bedrock_agentcore_starter_toolkit-0.1.12 → bedrock_agentcore_starter_toolkit-0.1.13}/src/bedrock_agentcore_starter_toolkit/cli/gateway/commands.py +0 -0
  102. {bedrock_agentcore_starter_toolkit-0.1.12 → bedrock_agentcore_starter_toolkit-0.1.13}/src/bedrock_agentcore_starter_toolkit/cli/import_agent/README.md +0 -0
  103. {bedrock_agentcore_starter_toolkit-0.1.12 → bedrock_agentcore_starter_toolkit-0.1.13}/src/bedrock_agentcore_starter_toolkit/cli/import_agent/__init__.py +0 -0
  104. {bedrock_agentcore_starter_toolkit-0.1.12 → bedrock_agentcore_starter_toolkit-0.1.13}/src/bedrock_agentcore_starter_toolkit/cli/import_agent/commands.py +0 -0
  105. {bedrock_agentcore_starter_toolkit-0.1.12 → bedrock_agentcore_starter_toolkit-0.1.13}/src/bedrock_agentcore_starter_toolkit/cli/runtime/__init__.py +0 -0
  106. {bedrock_agentcore_starter_toolkit-0.1.12 → bedrock_agentcore_starter_toolkit-0.1.13}/src/bedrock_agentcore_starter_toolkit/notebook/__init__.py +0 -0
  107. {bedrock_agentcore_starter_toolkit-0.1.12 → bedrock_agentcore_starter_toolkit-0.1.13}/src/bedrock_agentcore_starter_toolkit/notebook/runtime/__init__.py +0 -0
  108. {bedrock_agentcore_starter_toolkit-0.1.12 → bedrock_agentcore_starter_toolkit-0.1.13}/src/bedrock_agentcore_starter_toolkit/notebook/runtime/bedrock_agentcore.py +0 -0
  109. {bedrock_agentcore_starter_toolkit-0.1.12 → bedrock_agentcore_starter_toolkit-0.1.13}/src/bedrock_agentcore_starter_toolkit/operations/__init__.py +0 -0
  110. {bedrock_agentcore_starter_toolkit-0.1.12 → bedrock_agentcore_starter_toolkit-0.1.13}/src/bedrock_agentcore_starter_toolkit/operations/gateway/__init__.py +0 -0
  111. {bedrock_agentcore_starter_toolkit-0.1.12 → bedrock_agentcore_starter_toolkit-0.1.13}/src/bedrock_agentcore_starter_toolkit/operations/gateway/client.py +0 -0
  112. {bedrock_agentcore_starter_toolkit-0.1.12 → bedrock_agentcore_starter_toolkit-0.1.13}/src/bedrock_agentcore_starter_toolkit/operations/gateway/constants.py +0 -0
  113. {bedrock_agentcore_starter_toolkit-0.1.12 → bedrock_agentcore_starter_toolkit-0.1.13}/src/bedrock_agentcore_starter_toolkit/operations/gateway/create_lambda.py +0 -0
  114. {bedrock_agentcore_starter_toolkit-0.1.12 → bedrock_agentcore_starter_toolkit-0.1.13}/src/bedrock_agentcore_starter_toolkit/operations/gateway/create_role.py +0 -0
  115. {bedrock_agentcore_starter_toolkit-0.1.12 → bedrock_agentcore_starter_toolkit-0.1.13}/src/bedrock_agentcore_starter_toolkit/operations/gateway/exceptions.py +0 -0
  116. {bedrock_agentcore_starter_toolkit-0.1.12 → bedrock_agentcore_starter_toolkit-0.1.13}/src/bedrock_agentcore_starter_toolkit/operations/runtime/__init__.py +0 -0
  117. {bedrock_agentcore_starter_toolkit-0.1.12 → bedrock_agentcore_starter_toolkit-0.1.13}/src/bedrock_agentcore_starter_toolkit/operations/runtime/destroy.py +0 -0
  118. {bedrock_agentcore_starter_toolkit-0.1.12 → bedrock_agentcore_starter_toolkit-0.1.13}/src/bedrock_agentcore_starter_toolkit/operations/runtime/models.py +0 -0
  119. {bedrock_agentcore_starter_toolkit-0.1.12 → bedrock_agentcore_starter_toolkit-0.1.13}/src/bedrock_agentcore_starter_toolkit/operations/runtime/status.py +0 -0
  120. {bedrock_agentcore_starter_toolkit-0.1.12 → bedrock_agentcore_starter_toolkit-0.1.13}/src/bedrock_agentcore_starter_toolkit/services/__init__.py +0 -0
  121. {bedrock_agentcore_starter_toolkit-0.1.12 → bedrock_agentcore_starter_toolkit-0.1.13}/src/bedrock_agentcore_starter_toolkit/services/ecr.py +0 -0
  122. {bedrock_agentcore_starter_toolkit-0.1.12 → bedrock_agentcore_starter_toolkit-0.1.13}/src/bedrock_agentcore_starter_toolkit/services/import_agent/__init__.py +0 -0
  123. {bedrock_agentcore_starter_toolkit-0.1.12 → bedrock_agentcore_starter_toolkit-0.1.13}/src/bedrock_agentcore_starter_toolkit/services/import_agent/assets/memory_manager_template.py +0 -0
  124. {bedrock_agentcore_starter_toolkit-0.1.12 → bedrock_agentcore_starter_toolkit-0.1.13}/src/bedrock_agentcore_starter_toolkit/services/import_agent/assets/requirements_langchain.j2 +0 -0
  125. {bedrock_agentcore_starter_toolkit-0.1.12 → bedrock_agentcore_starter_toolkit-0.1.13}/src/bedrock_agentcore_starter_toolkit/services/import_agent/assets/requirements_strands.j2 +0 -0
  126. {bedrock_agentcore_starter_toolkit-0.1.12 → bedrock_agentcore_starter_toolkit-0.1.13}/src/bedrock_agentcore_starter_toolkit/services/import_agent/assets/template_fixtures_merged.json +0 -0
  127. {bedrock_agentcore_starter_toolkit-0.1.12 → bedrock_agentcore_starter_toolkit-0.1.13}/src/bedrock_agentcore_starter_toolkit/services/import_agent/scripts/__init__.py +0 -0
  128. {bedrock_agentcore_starter_toolkit-0.1.12 → bedrock_agentcore_starter_toolkit-0.1.13}/src/bedrock_agentcore_starter_toolkit/services/import_agent/scripts/base_bedrock_translate.py +0 -0
  129. {bedrock_agentcore_starter_toolkit-0.1.12 → bedrock_agentcore_starter_toolkit-0.1.13}/src/bedrock_agentcore_starter_toolkit/services/import_agent/scripts/bedrock_to_langchain.py +0 -0
  130. {bedrock_agentcore_starter_toolkit-0.1.12 → bedrock_agentcore_starter_toolkit-0.1.13}/src/bedrock_agentcore_starter_toolkit/services/import_agent/scripts/bedrock_to_strands.py +0 -0
  131. {bedrock_agentcore_starter_toolkit-0.1.12 → bedrock_agentcore_starter_toolkit-0.1.13}/src/bedrock_agentcore_starter_toolkit/services/import_agent/utils.py +0 -0
  132. {bedrock_agentcore_starter_toolkit-0.1.12 → bedrock_agentcore_starter_toolkit-0.1.13}/src/bedrock_agentcore_starter_toolkit/services/xray.py +0 -0
  133. {bedrock_agentcore_starter_toolkit-0.1.12 → bedrock_agentcore_starter_toolkit-0.1.13}/src/bedrock_agentcore_starter_toolkit/utils/endpoints.py +0 -0
  134. {bedrock_agentcore_starter_toolkit-0.1.12 → bedrock_agentcore_starter_toolkit-0.1.13}/src/bedrock_agentcore_starter_toolkit/utils/logging_config.py +0 -0
  135. {bedrock_agentcore_starter_toolkit-0.1.12 → bedrock_agentcore_starter_toolkit-0.1.13}/src/bedrock_agentcore_starter_toolkit/utils/runtime/config.py +0 -0
  136. {bedrock_agentcore_starter_toolkit-0.1.12 → bedrock_agentcore_starter_toolkit-0.1.13}/src/bedrock_agentcore_starter_toolkit/utils/runtime/container.py +0 -0
  137. {bedrock_agentcore_starter_toolkit-0.1.12 → bedrock_agentcore_starter_toolkit-0.1.13}/src/bedrock_agentcore_starter_toolkit/utils/runtime/entrypoint.py +0 -0
  138. {bedrock_agentcore_starter_toolkit-0.1.12 → bedrock_agentcore_starter_toolkit-0.1.13}/src/bedrock_agentcore_starter_toolkit/utils/runtime/logs.py +0 -0
  139. {bedrock_agentcore_starter_toolkit-0.1.12 → bedrock_agentcore_starter_toolkit-0.1.13}/src/bedrock_agentcore_starter_toolkit/utils/runtime/policy_template.py +0 -0
  140. {bedrock_agentcore_starter_toolkit-0.1.12 → bedrock_agentcore_starter_toolkit-0.1.13}/src/bedrock_agentcore_starter_toolkit/utils/runtime/templates/dockerignore.template +0 -0
  141. {bedrock_agentcore_starter_toolkit-0.1.12 → bedrock_agentcore_starter_toolkit-0.1.13}/src/bedrock_agentcore_starter_toolkit/utils/runtime/templates/execution_role_policy.json.j2 +0 -0
  142. {bedrock_agentcore_starter_toolkit-0.1.12 → bedrock_agentcore_starter_toolkit-0.1.13}/src/bedrock_agentcore_starter_toolkit/utils/runtime/templates/execution_role_trust_policy.json.j2 +0 -0
  143. {bedrock_agentcore_starter_toolkit-0.1.12 → bedrock_agentcore_starter_toolkit-0.1.13}/tests/__init__.py +0 -0
  144. {bedrock_agentcore_starter_toolkit-0.1.12 → bedrock_agentcore_starter_toolkit-0.1.13}/tests/cli/gateway/__init__.py +0 -0
  145. {bedrock_agentcore_starter_toolkit-0.1.12 → bedrock_agentcore_starter_toolkit-0.1.13}/tests/cli/gateway/test_commands.py +0 -0
  146. {bedrock_agentcore_starter_toolkit-0.1.12 → bedrock_agentcore_starter_toolkit-0.1.13}/tests/cli/runtime/__init__.py +0 -0
  147. {bedrock_agentcore_starter_toolkit-0.1.12 → bedrock_agentcore_starter_toolkit-0.1.13}/tests/cli/test_common.py +0 -0
  148. {bedrock_agentcore_starter_toolkit-0.1.12 → bedrock_agentcore_starter_toolkit-0.1.13}/tests/conftest.py +0 -0
  149. {bedrock_agentcore_starter_toolkit-0.1.12 → bedrock_agentcore_starter_toolkit-0.1.13}/tests/conftest_mock.py +0 -0
  150. {bedrock_agentcore_starter_toolkit-0.1.12 → bedrock_agentcore_starter_toolkit-0.1.13}/tests/fixtures/project_config_multiple.yaml +0 -0
  151. {bedrock_agentcore_starter_toolkit-0.1.12 → bedrock_agentcore_starter_toolkit-0.1.13}/tests/fixtures/project_config_single.yaml +0 -0
  152. {bedrock_agentcore_starter_toolkit-0.1.12 → bedrock_agentcore_starter_toolkit-0.1.13}/tests/notebook/runtime/test_bedrock_agentcore.py +0 -0
  153. {bedrock_agentcore_starter_toolkit-0.1.12 → bedrock_agentcore_starter_toolkit-0.1.13}/tests/operations/gateway/test_gateway_client.py +0 -0
  154. {bedrock_agentcore_starter_toolkit-0.1.12 → bedrock_agentcore_starter_toolkit-0.1.13}/tests/operations/gateway/test_gateway_client_init.py +0 -0
  155. {bedrock_agentcore_starter_toolkit-0.1.12 → bedrock_agentcore_starter_toolkit-0.1.13}/tests/operations/gateway/test_gateway_create_role.py +0 -0
  156. {bedrock_agentcore_starter_toolkit-0.1.12 → bedrock_agentcore_starter_toolkit-0.1.13}/tests/operations/runtime/test_create_role.py +0 -0
  157. {bedrock_agentcore_starter_toolkit-0.1.12 → bedrock_agentcore_starter_toolkit-0.1.13}/tests/operations/runtime/test_destroy.py +0 -0
  158. {bedrock_agentcore_starter_toolkit-0.1.12 → bedrock_agentcore_starter_toolkit-0.1.13}/tests/operations/runtime/test_launch.py +0 -0
  159. {bedrock_agentcore_starter_toolkit-0.1.12 → bedrock_agentcore_starter_toolkit-0.1.13}/tests/operations/runtime/test_status.py +0 -0
  160. {bedrock_agentcore_starter_toolkit-0.1.12 → bedrock_agentcore_starter_toolkit-0.1.13}/tests/services/import_agent/data/bedrock_config.json +0 -0
  161. {bedrock_agentcore_starter_toolkit-0.1.12 → bedrock_agentcore_starter_toolkit-0.1.13}/tests/services/import_agent/data/bedrock_config_multi_agent.json +0 -0
  162. {bedrock_agentcore_starter_toolkit-0.1.12 → bedrock_agentcore_starter_toolkit-0.1.13}/tests/services/import_agent/data/bedrock_config_no_schema.json +0 -0
  163. {bedrock_agentcore_starter_toolkit-0.1.12 → bedrock_agentcore_starter_toolkit-0.1.13}/tests/services/import_agent/test_import_agent.py +0 -0
  164. {bedrock_agentcore_starter_toolkit-0.1.12 → bedrock_agentcore_starter_toolkit-0.1.13}/tests/services/test_ecr.py +0 -0
  165. {bedrock_agentcore_starter_toolkit-0.1.12 → bedrock_agentcore_starter_toolkit-0.1.13}/tests/services/test_runtime_conflict_error.py +0 -0
  166. {bedrock_agentcore_starter_toolkit-0.1.12 → bedrock_agentcore_starter_toolkit-0.1.13}/tests/services/test_xray.py +0 -0
  167. {bedrock_agentcore_starter_toolkit-0.1.12 → bedrock_agentcore_starter_toolkit-0.1.13}/tests/utils/runtime/test_container.py +0 -0
  168. {bedrock_agentcore_starter_toolkit-0.1.12 → bedrock_agentcore_starter_toolkit-0.1.13}/tests/utils/runtime/test_entrypoint.py +0 -0
  169. {bedrock_agentcore_starter_toolkit-0.1.12 → bedrock_agentcore_starter_toolkit-0.1.13}/tests/utils/runtime/test_policy_template.py +0 -0
  170. {bedrock_agentcore_starter_toolkit-0.1.12 → bedrock_agentcore_starter_toolkit-0.1.13}/tests/utils/test_endpoints.py +0 -0
  171. {bedrock_agentcore_starter_toolkit-0.1.12 → bedrock_agentcore_starter_toolkit-0.1.13}/tests/utils/test_logging_config.py +0 -0
  172. {bedrock_agentcore_starter_toolkit-0.1.12 → bedrock_agentcore_starter_toolkit-0.1.13}/tests_integ/__init__.py +0 -0
  173. {bedrock_agentcore_starter_toolkit-0.1.12 → bedrock_agentcore_starter_toolkit-0.1.13}/tests_integ/cli/__init__.py +0 -0
  174. {bedrock_agentcore_starter_toolkit-0.1.12 → bedrock_agentcore_starter_toolkit-0.1.13}/tests_integ/cli/runtime/__init__.py +0 -0
  175. {bedrock_agentcore_starter_toolkit-0.1.12 → bedrock_agentcore_starter_toolkit-0.1.13}/tests_integ/cli/runtime/base_test.py +0 -0
  176. {bedrock_agentcore_starter_toolkit-0.1.12 → bedrock_agentcore_starter_toolkit-0.1.13}/tests_integ/gateway/README.md +0 -0
  177. {bedrock_agentcore_starter_toolkit-0.1.12 → bedrock_agentcore_starter_toolkit-0.1.13}/tests_integ/gateway/test_cognito_token.py +0 -0
  178. {bedrock_agentcore_starter_toolkit-0.1.12 → bedrock_agentcore_starter_toolkit-0.1.13}/tests_integ/gateway/test_create_gateway_role.py +0 -0
  179. {bedrock_agentcore_starter_toolkit-0.1.12 → bedrock_agentcore_starter_toolkit-0.1.13}/tests_integ/gateway/test_egress_auth.py +0 -0
  180. {bedrock_agentcore_starter_toolkit-0.1.12 → bedrock_agentcore_starter_toolkit-0.1.13}/tests_integ/gateway/test_gateway_cognito.py +0 -0
  181. {bedrock_agentcore_starter_toolkit-0.1.12 → bedrock_agentcore_starter_toolkit-0.1.13}/tests_integ/identity/access_token_3LO.py +0 -0
  182. {bedrock_agentcore_starter_toolkit-0.1.12 → bedrock_agentcore_starter_toolkit-0.1.13}/tests_integ/memory/test_create_memory.py +0 -0
  183. {bedrock_agentcore_starter_toolkit-0.1.12 → bedrock_agentcore_starter_toolkit-0.1.13}/tests_integ/notebook/test_notebook_runtime.py +0 -0
  184. {bedrock_agentcore_starter_toolkit-0.1.12 → bedrock_agentcore_starter_toolkit-0.1.13}/tests_integ/strands_agent/__init__.py +0 -0
  185. {bedrock_agentcore_starter_toolkit-0.1.12 → bedrock_agentcore_starter_toolkit-0.1.13}/tests_integ/strands_agent/agent_example.py +0 -0
  186. {bedrock_agentcore_starter_toolkit-0.1.12 → bedrock_agentcore_starter_toolkit-0.1.13}/tests_integ/tools/__init__.py +0 -0
  187. {bedrock_agentcore_starter_toolkit-0.1.12 → bedrock_agentcore_starter_toolkit-0.1.13}/tests_integ/tools/my_mcp_client.py +0 -0
  188. {bedrock_agentcore_starter_toolkit-0.1.12 → bedrock_agentcore_starter_toolkit-0.1.13}/tests_integ/tools/my_mcp_client_remote.py +0 -0
  189. {bedrock_agentcore_starter_toolkit-0.1.12 → bedrock_agentcore_starter_toolkit-0.1.13}/tests_integ/tools/my_mcp_server.py +0 -0
  190. {bedrock_agentcore_starter_toolkit-0.1.12 → bedrock_agentcore_starter_toolkit-0.1.13}/tests_integ/tools/setup_cognito.sh +0 -0
  191. {bedrock_agentcore_starter_toolkit-0.1.12 → bedrock_agentcore_starter_toolkit-0.1.13}/tests_integ/utils/config.py +0 -0
@@ -181,8 +181,6 @@ jobs:
181
181
  1. Approve and merge this PR
182
182
  2. The release workflow will automatically:
183
183
  - Build and test the package
184
- - Publish to Test PyPI
185
- - Wait for approval
186
184
  - Publish to PyPI
187
185
  - Create a GitHub release
188
186
  - Tag the release
@@ -294,76 +292,9 @@ jobs:
294
292
  name: dist
295
293
  path: dist/
296
294
 
297
- publish-testpypi:
298
- name: Publish to TestPyPI
299
- needs: build
300
- runs-on: ubuntu-latest
301
-
302
- environment:
303
- name: test-pypi
304
- url: https://test.pypi.org/project/bedrock-agentcore-starter-toolkit/
305
-
306
- steps:
307
- - name: Download artifacts
308
- uses: actions/download-artifact@v5
309
- with:
310
- name: dist
311
- path: dist/
312
-
313
- - name: Publish to TestPyPI
314
- uses: pypa/gh-action-pypi-publish@release/v1
315
- with:
316
- repository-url: https://test.pypi.org/legacy/
317
- skip-existing: true
318
- password: ${{ secrets.TEST_PYPI_API_TOKEN }}
319
-
320
- - name: Test installation from TestPyPI
321
- run: |
322
- sleep 60 # Wait for package to be available
323
-
324
- # Get version from wheel filename
325
- VERSION=$(ls dist/*.whl | sed -n 's/.*-\([0-9.]*\)-.*/\1/p')
326
-
327
- # Create test environment
328
- python -m venv test-install
329
- source test-install/bin/activate
330
-
331
- # Install from Test PyPI
332
- pip install --index-url https://test.pypi.org/simple/ \
333
- --extra-index-url https://pypi.org/simple/ \
334
- bedrock-agentcore-starter-toolkit==$VERSION
335
-
336
- # Test CLI
337
- agentcore --help
338
-
339
- release-approval:
340
- name: Release Approval
341
- needs: publish-testpypi
342
- runs-on: ubuntu-latest
343
- environment:
344
- name: pypi-approval
345
-
346
- steps:
347
- - name: Approval checkpoint
348
- run: |
349
- echo "✓ TestPyPI deployment successful"
350
- echo "✓ Package available at: https://test.pypi.org/project/bedrock-agentcore-starter-toolkit/"
351
- echo ""
352
- echo "⚠️ MANUAL APPROVAL REQUIRED"
353
- echo ""
354
- echo "Before approving production release:"
355
- echo "1. Test the package from TestPyPI:"
356
- echo " pip install --index-url https://test.pypi.org/simple/ --extra-index-url https://pypi.org/simple/ bedrock-agentcore-starter-toolkit"
357
- echo ""
358
- echo "2. Verify the CLI works: agentcore --help"
359
- echo "3. Check version number is correct"
360
- echo "4. Test basic functionality"
361
- echo ""
362
- echo "Only approve if everything looks good!"
363
-
364
295
  publish-pypi:
365
296
  name: Publish to PyPI
366
- needs: release-approval
297
+ needs: [test, build]
367
298
  runs-on: ubuntu-latest
368
299
  environment:
369
300
  name: pypi
@@ -391,6 +322,20 @@ jobs:
391
322
  with:
392
323
  password: ${{ secrets.PYPI_API_TOKEN }}
393
324
 
325
+ - name: Wait for PyPI availability
326
+ run: |
327
+ VERSION="${{ steps.version.outputs.version }}"
328
+
329
+ echo "Waiting for package to be available on PyPI..."
330
+ for i in {1..10}; do
331
+ if pip index versions bedrock-agentcore-starter-toolkit | grep -q "$VERSION"; then
332
+ echo "✓ Package version $VERSION is now available on PyPI"
333
+ break
334
+ fi
335
+ echo "Attempt $i/10: Package not yet available, waiting 30s..."
336
+ sleep 30
337
+ done
338
+
394
339
  - name: Create and push tag
395
340
  run: |
396
341
  git config --global user.name "github-actions[bot]"
@@ -419,7 +364,7 @@ jobs:
419
364
 
420
365
  summary:
421
366
  name: Release Summary
422
- needs: publish-testpypi
367
+ needs: publish-pypi
423
368
  runs-on: ubuntu-latest
424
369
  if: always()
425
370
 
@@ -428,14 +373,14 @@ jobs:
428
373
  run: |
429
374
  echo "## Release Summary" >> $GITHUB_STEP_SUMMARY
430
375
  echo "" >> $GITHUB_STEP_SUMMARY
431
- if [ "${{ needs.publish-testpypi.result }}" == "success" ]; then
432
- echo "✅ **Test PyPI Release Successful**" >> $GITHUB_STEP_SUMMARY
376
+ if [ "${{ needs.publish-pypi.result }}" == "success" ]; then
377
+ echo "✅ **PyPI Release Successful**" >> $GITHUB_STEP_SUMMARY
433
378
  echo "" >> $GITHUB_STEP_SUMMARY
434
- echo "Package published to: https://test.pypi.org/project/bedrock-agentcore-starter-toolkit/" >> $GITHUB_STEP_SUMMARY
379
+ echo "Package published to: https://pypi.org/project/bedrock-agentcore-starter-toolkit/" >> $GITHUB_STEP_SUMMARY
435
380
  echo "" >> $GITHUB_STEP_SUMMARY
436
- echo "To install from Test PyPI:" >> $GITHUB_STEP_SUMMARY
381
+ echo "To install:" >> $GITHUB_STEP_SUMMARY
437
382
  echo '```bash' >> $GITHUB_STEP_SUMMARY
438
- echo "pip install --index-url https://test.pypi.org/simple/ --extra-index-url https://pypi.org/simple/ bedrock-agentcore-starter-toolkit" >> $GITHUB_STEP_SUMMARY
383
+ echo "pip install bedrock-agentcore-starter-toolkit" >> $GITHUB_STEP_SUMMARY
439
384
  echo '```' >> $GITHUB_STEP_SUMMARY
440
385
  else
441
386
  echo "❌ **Release Failed**" >> $GITHUB_STEP_SUMMARY
@@ -1,5 +1,19 @@
1
1
  # Changelog
2
2
 
3
+ ## [0.1.13] - 2025-09-24
4
+
5
+ ### Changes
6
+
7
+ - Fix linter errors and ran formatter (#203) (64656b6)
8
+ - fix: add S3 bucket ownership verification (#194) (225dd86)
9
+ - quick start doc updates (#199) (3e9b930)
10
+ - Add ability to invoke runtime with custom headers (#200) (ba337db)
11
+ - revert dockerfile optimization (#198) (3285377)
12
+ - Added request header allowlist configuration support (#197) (7a7c65f)
13
+ - feat: change create_or_get_memory to get_or_create_memory to do the lookup before the create (#195) (ef22d20)
14
+ - Remove TestPyPI publishing step from release workflow (#186) (887e23b)
15
+ - feat: Initial commit for Memory manager (#169) (e067386)
16
+
3
17
  ## [0.1.12] - 2025-09-18
4
18
 
5
19
  ### Changes
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: bedrock-agentcore-starter-toolkit
3
- Version: 0.1.12
3
+ Version: 0.1.13
4
4
  Summary: A starter toolkit for using Bedrock AgentCore
5
5
  Project-URL: Homepage, https://github.com/aws/bedrock-agentcore-starter-toolkit
6
6
  Project-URL: Bug Tracker, https://github.com/aws/bedrock-agentcore-starter-toolkit/issues
@@ -23,8 +23,8 @@ Classifier: Topic :: Software Development :: Libraries :: Python Modules
23
23
  Requires-Python: >=3.10
24
24
  Requires-Dist: autopep8>=2.3.2
25
25
  Requires-Dist: bedrock-agentcore>=0.1.4
26
- Requires-Dist: boto3>=1.39.7
27
- Requires-Dist: botocore>=1.39.7
26
+ Requires-Dist: boto3>=1.40.35
27
+ Requires-Dist: botocore>=1.40.35
28
28
  Requires-Dist: docstring-parser<1.0,>=0.15
29
29
  Requires-Dist: httpx>=0.28.1
30
30
  Requires-Dist: jinja2>=3.1.6
@@ -38,7 +38,6 @@ Requires-Dist: questionary>=2.1.0
38
38
  Requires-Dist: requests>=2.25.0
39
39
  Requires-Dist: rich>=13.0.0
40
40
  Requires-Dist: ruamel-yaml>=0.18.14
41
- Requires-Dist: strands-agents>=1.7.1
42
41
  Requires-Dist: toml>=0.10.2
43
42
  Requires-Dist: typer>=0.16.0
44
43
  Requires-Dist: typing-extensions<5.0.0,>=4.13.2
@@ -65,11 +65,11 @@ class MemoryHook(HookProvider):
65
65
  - Loads previous conversation when agent starts
66
66
  - Saves each message after it's processed
67
67
  """
68
-
68
+
69
69
  def on_agent_initialized(self, event):
70
70
  """Runs when agent starts - loads conversation history"""
71
71
  if not MEMORY_ID: return
72
-
72
+
73
73
  # Get last 3 conversation turns from memory
74
74
  turns = memory_client.get_last_k_turns(
75
75
  memory_id=MEMORY_ID,
@@ -77,17 +77,17 @@ class MemoryHook(HookProvider):
77
77
  session_id=event.agent.state.get("session_id", "default"),
78
78
  k=3 # Number of previous exchanges to remember
79
79
  )
80
-
80
+
81
81
  # Add conversation history to agent's context
82
82
  if turns:
83
- context = "\n".join([f"{m['role']}: {m['content']['text']}"
83
+ context = "\n".join([f"{m['role']}: {m['content']['text']}"
84
84
  for t in turns for m in t])
85
85
  event.agent.system_prompt += f"\n\nPrevious:\n{context}"
86
-
86
+
87
87
  def on_message_added(self, event):
88
88
  """Runs after each message - saves it to memory"""
89
89
  if not MEMORY_ID: return
90
-
90
+
91
91
  # Save the latest message to memory
92
92
  msg = event.agent.messages[-1]
93
93
  memory_client.create_event(
@@ -96,7 +96,7 @@ class MemoryHook(HookProvider):
96
96
  session_id=event.agent.state.get("session_id", "default"),
97
97
  messages=[(str(msg["content"]), msg["role"])]
98
98
  )
99
-
99
+
100
100
  def register_hooks(self, registry):
101
101
  """Registers both hooks with the agent"""
102
102
  registry.add_callback(AgentInitializedEvent, self.on_agent_initialized)
@@ -120,7 +120,7 @@ def invoke(payload, context):
120
120
  # Use the session ID from runtime (for session isolation)
121
121
  if hasattr(context, 'session_id'):
122
122
  agent.state.set("session_id", context.session_id)
123
-
123
+
124
124
  # Process the user's message and return response
125
125
  response = agent(payload.get("prompt", "Hello"))
126
126
  return response.message['content'][0]['text']
@@ -182,12 +182,12 @@ ltm = client.create_memory_and_wait(
182
182
  strategies=[
183
183
  # Extracts user preferences like "I prefer Python"
184
184
  {"userPreferenceMemoryStrategy": {
185
- "name": "prefs",
185
+ "name": "prefs",
186
186
  "namespaces": ["/user/preferences"]
187
187
  }},
188
188
  # Extracts facts like "My birthday is in January"
189
189
  {"semanticMemoryStrategy": {
190
- "name": "facts",
190
+ "name": "facts",
191
191
  "namespaces": ["/user/facts"]
192
192
  }}
193
193
  ],
@@ -363,25 +363,25 @@ except:
363
363
 
364
364
  class MemoryHook(HookProvider):
365
365
  """Handles memory operations - same as before"""
366
-
366
+
367
367
  def on_agent_initialized(self, event):
368
368
  if not MEMORY_ID: return
369
-
369
+
370
370
  turns = memory_client.get_last_k_turns(
371
371
  memory_id=MEMORY_ID,
372
372
  actor_id="user",
373
373
  session_id=event.agent.state.get("session_id", "default"),
374
374
  k=3
375
375
  )
376
-
376
+
377
377
  if turns:
378
- context = "\n".join([f"{m['role']}: {m['content']['text']}"
378
+ context = "\n".join([f"{m['role']}: {m['content']['text']}"
379
379
  for t in turns for m in t])
380
380
  event.agent.system_prompt += f"\n\nPrevious:\n{context}"
381
-
381
+
382
382
  def on_message_added(self, event):
383
383
  if not MEMORY_ID: return
384
-
384
+
385
385
  msg = event.agent.messages[-1]
386
386
  memory_client.create_event(
387
387
  memory_id=MEMORY_ID,
@@ -389,7 +389,7 @@ class MemoryHook(HookProvider):
389
389
  session_id=event.agent.state.get("session_id", "default"),
390
390
  messages=[(str(msg["content"]), msg["role"])]
391
391
  )
392
-
392
+
393
393
  def register_hooks(self, registry):
394
394
  registry.add_callback(AgentInitializedEvent, self.on_agent_initialized)
395
395
  registry.add_callback(MessageAddedEvent, self.on_message_added)
@@ -399,13 +399,13 @@ async def get_gateway_tools():
399
399
  """Get tools from gateway using MCP"""
400
400
  if not gateway_config:
401
401
  return None
402
-
402
+
403
403
  try:
404
404
  gateway_url = gateway_config["gateway_url"]
405
405
  access_token = gateway_config["access_token"]
406
-
406
+
407
407
  headers = {"Authorization": f"Bearer {access_token}"}
408
-
408
+
409
409
  async with streamablehttp_client(gateway_url, headers=headers) as (read, write, _):
410
410
  async with ClientSession(read, write) as session:
411
411
  await session.initialize()
@@ -431,7 +431,7 @@ def invoke(payload, context):
431
431
  # Use the session ID from runtime
432
432
  if hasattr(context, 'session_id'):
433
433
  agent.state.set("session_id", context.session_id)
434
-
434
+
435
435
  # Try to get gateway tools
436
436
  gateway_tools = None
437
437
  if gateway_config:
@@ -442,7 +442,7 @@ def invoke(payload, context):
442
442
  agent.tools = gateway_tools
443
443
  except Exception as e:
444
444
  print(f"Error getting gateway tools: {e}")
445
-
445
+
446
446
  # Process the user's message
447
447
  response = agent(payload.get("prompt", "Hello"))
448
448
  return response.message['content'][0]['text']
@@ -448,87 +448,12 @@ Run: `python cleanup_gateway.py`
448
448
 
449
449
  ### Next Steps
450
450
 
451
- - **Add Your Own APIs**: Extend your Gateway with OpenAPI specifications for real services
452
451
  - **Custom Lambda Tools**: Create Lambda functions with your business logic
452
+ - **Add Your Own APIs**: Extend your Gateway with OpenAPI specifications for real services
453
453
  - **Production Setup**: Configure VPC endpoints, custom domains, and monitoring
454
454
 
455
- ## Adding Your Own APIs
456
-
457
- ### NASA API Integration
458
-
459
- Integrate real APIs like NASA’s Astronomy Picture of the Day. Get your API key from https://api.nasa.gov/ (instant via email), then create `add_nasa_api.py`:
460
-
461
- This example shows how to add external REST APIs to your Gateway, making them available as tools for your agent.
462
-
463
-
464
- ```python
465
- from bedrock_agentcore_starter_toolkit.operations.gateway.client import GatewayClient
466
- import json
467
-
468
- with open("gateway_config.json", "r") as f:
469
- config = json.load(f)
470
-
471
- client = GatewayClient(region_name=config["region"])
472
-
473
- nasa_spec = {
474
- "openapi": "3.0.0",
475
- "info": {"title": "NASA API", "version": "1.0.0"},
476
- "servers": [{"url": "https://api.nasa.gov"}],
477
- "paths": {
478
- "/planetary/apod": {
479
- "get": {
480
- "operationId": "getAstronomyPictureOfDay",
481
- "summary": "Get NASA's Astronomy Picture of the Day",
482
- "parameters": [
483
- {
484
- "name": "date",
485
- "in": "query",
486
- "required": False,
487
- "schema": {"type": "string"},
488
- "description": "Date in YYYY-MM-DD format"
489
- }
490
- ],
491
- "responses": {
492
- "200": {
493
- "description": "Success",
494
- "content": {
495
- "application/json": {
496
- "schema": {
497
- "type": "object",
498
- "properties": {
499
- "title": {"type": "string"},
500
- "explanation": {"type": "string"},
501
- "url": {"type": "string"}
502
- }
503
- }
504
- }
505
- }
506
- }
507
- }
508
- }
509
- }
510
- }
511
- }
512
-
513
- gateway = client.client.get_gateway(gatewayIdentifier=config["gateway_id"])
514
-
515
- nasa_target = client.create_mcp_gateway_target(
516
- gateway=gateway,
517
- name="NasaApi",
518
- target_type="openApiSchema",
519
- target_payload={"inlinePayload": json.dumps(nasa_spec)},
520
- credentials={
521
- "api_key": "YOUR_NASA_API_KEY", # Replace with your key
522
- "credential_location": "QUERY_PARAMETER",
523
- "credential_parameter_name": "api_key"
524
- }
525
- )
526
-
527
- print(f"✓ NASA API added! Try: 'Get NASA's astronomy picture for 2024-12-25'")
528
- print("Run 'python run_agent.py' and try: 'Get NASA's astronomy picture for 2024-12-25'")
529
- ```
530
455
 
531
- ### Custom Lambda Tools
456
+ ## Custom Lambda Tools
532
457
 
533
458
  Create your own Lambda functions with custom business logic and add them as Gateway targets. Lambda targets allow you to implement any custom tool logic in Python, Node.js, or other supported runtimes.
534
459
 
@@ -696,6 +621,83 @@ Run: `python create_custom_lambda.py` then `python run_agent.py` to test.
696
621
 
697
622
  If you're excited and want to learn more about Gateways and the other Target types. Continue through this guide.
698
623
 
624
+ ## Adding Your Own APIs
625
+
626
+ ### NASA API Integration
627
+
628
+ Integrate real APIs like NASA’s Astronomy Picture of the Day. Get your API key from https://api.nasa.gov/ (instant via email), then create `add_nasa_api.py`:
629
+
630
+ This example shows how to add external REST APIs to your Gateway, making them available as tools for your agent.
631
+
632
+
633
+ ```python
634
+ from bedrock_agentcore_starter_toolkit.operations.gateway.client import GatewayClient
635
+ import json
636
+
637
+ with open("gateway_config.json", "r") as f:
638
+ config = json.load(f)
639
+
640
+ client = GatewayClient(region_name=config["region"])
641
+
642
+ nasa_spec = {
643
+ "openapi": "3.0.0",
644
+ "info": {"title": "NASA API", "version": "1.0.0"},
645
+ "servers": [{"url": "https://api.nasa.gov"}],
646
+ "paths": {
647
+ "/planetary/apod": {
648
+ "get": {
649
+ "operationId": "getAstronomyPictureOfDay",
650
+ "summary": "Get NASA's Astronomy Picture of the Day",
651
+ "parameters": [
652
+ {
653
+ "name": "date",
654
+ "in": "query",
655
+ "required": False,
656
+ "schema": {"type": "string"},
657
+ "description": "Date in YYYY-MM-DD format"
658
+ }
659
+ ],
660
+ "responses": {
661
+ "200": {
662
+ "description": "Success",
663
+ "content": {
664
+ "application/json": {
665
+ "schema": {
666
+ "type": "object",
667
+ "properties": {
668
+ "title": {"type": "string"},
669
+ "explanation": {"type": "string"},
670
+ "url": {"type": "string"}
671
+ }
672
+ }
673
+ }
674
+ }
675
+ }
676
+ }
677
+ }
678
+ }
679
+ }
680
+ }
681
+
682
+ gateway = client.client.get_gateway(gatewayIdentifier=config["gateway_id"])
683
+
684
+ nasa_target = client.create_mcp_gateway_target(
685
+ gateway=gateway,
686
+ name="NasaApi",
687
+ target_type="openApiSchema",
688
+ target_payload={"inlinePayload": json.dumps(nasa_spec)},
689
+ credentials={
690
+ "api_key": "YOUR_NASA_API_KEY", # Replace with your key
691
+ "credential_location": "QUERY_PARAMETER",
692
+ "credential_parameter_name": "api_key"
693
+ }
694
+ )
695
+
696
+ print(f"✓ NASA API added! Try: 'Get NASA's astronomy picture for 2024-12-25'")
697
+ print("Run 'python run_agent.py' and try: 'Get NASA's astronomy picture for 2024-12-25'")
698
+ ```
699
+
700
+
699
701
  ### Adding OpenAPI Targets
700
702
 
701
703
  Let's add an OpenAPI target. This code uses the OpenAPI schema for a NASA API that provides Mars weather information. You can get an API key sent to your email in a minute by filling out the form here: https://api.nasa.gov/.