v1.5 — Memory Store + New Pages + Container Cost
AgentCore Memory Store introduced for 365-day per-user conversation history retention. New EBS, MSK, OpenSearch pages and ECS/EKS container cost analysis added.
Memory Store (365 days) · 4 New Pages · ECS/EKS Container Cost · OpenCost Integration · 3 Hardcoded Values Removed
AgentCore Memory Store
Introduced a Memory Store that retains per-user conversation history for 365 days. Storage/search logic is managed in src/lib/agentcore-memory.ts.
| Item | Description |
|---|---|
| Retention Period | 365 days (eventExpiryDuration) |
| User Isolation | Email extracted from Cognito JWT (src/lib/auth-utils.ts) |
| Stored Data | Question, summary, route, tools used, response time |
| Setup Script | 06e-setup-agentcore-memory.sh |
| Config File | memoryId, memoryName in data/config.json |
Memory names cannot use hyphens (-). Only underscores (_) are allowed.
Correct: awsops_memory / Incorrect: awsops-memory
AgentCore Page Integration:
- 6 StatsCards: total calls, average response time, per-gateway call ratio, per-model token usage
- Conversation history search: keyword, date range, per-route filters
AI Page Integration:
- Bottom toggle panel for viewing conversation history
- Ability to reference previous question/response context
New Pages (4)
| Page | Path | Query File | Key Features |
|---|---|---|---|
| EBS | /ebs | queries/ebs.ts | Volumes/snapshots, encryption, EC2 attachments, idle volume detection |
| MSK | /msk | queries/msk.ts | Kafka clusters, broker node metrics (CPU/Memory/Network), KRaft mode |
| OpenSearch | /opensearch | queries/opensearch.ts | Domains, N2N/At-Rest encryption, VPC configuration, cluster status |
| Resource Inventory | /inventory | resource-inventory.ts | Quantity trends for 18 resource types (snapshot-based, zero additional queries) |
- MSK:
provisionedcolumn is JSONB containing broker count, storage size, etc. - OpenSearch: Check the
enabledfield within theencryption_at_rest_optionsJSONB - Always verify column names via
information_schema.columnsbefore writing queries
Container Cost Analysis
Added 2 pages and APIs for analyzing ECS and EKS container costs.
| Item | ECS (/container-cost) | EKS (/eks-container-cost) |
|---|---|---|
| Data Source | CloudWatch Container Insights | OpenCost API |
| Fallback | None | Request-based calculation |
| Cost Calculation | Fargate vCPU/GB pricing applied | Pod CPU/Memory allocation cost |
| API Route | /api/container-cost | /api/eks-container-cost |
| Setup | - | 06f-setup-opencost.sh (Prometheus + OpenCost) |
AI Routing Improvements
| Item | Before | After |
|---|---|---|
| AgentCore Config | Hardcoded in code | ARN read from data/config.json |
| Tool Usage Display | None | Keyword matching infers MCP tools → UI badges |
| Multi-Route Failure | Total failure | Bedrock Direct fallback |
| Timeout | 60s | 90s |
AgentCore returns only final text (no tool_call tags). The extractUsedTools() function matches keywords in the response content to infer which MCP tools were used and displays them as badges in the UI.
Security Enhancements
| Issue | Fix |
|---|---|
| Sign Out | HttpOnly cookie server-side API deletion (POST /api/auth) |
| Hardcoded #1 | Steampipe password → dynamic lookup |
| Hardcoded #2 | Code Interpreter ID → data/config.json |
| Hardcoded #3 | Gateway URL → data/config.json |