thinkwork-cli 0.12.4 → 0.12.5
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.
- package/dist/terraform/examples/greenfield/main.tf +35 -7
- package/dist/terraform/modules/app/agentcore-flue/main.tf +10 -9
- package/dist/terraform/modules/app/agentcore-flue/variables.tf +6 -0
- package/dist/terraform/modules/app/agentcore-runtime/main.tf +13 -6
- package/dist/terraform/modules/app/lambda-api/handlers.tf +36 -2
- package/dist/terraform/modules/app/lambda-api/variables.tf +24 -0
- package/dist/terraform/modules/thinkwork/main.tf +51 -45
- package/dist/terraform/modules/thinkwork/variables.tf +24 -0
- package/package.json +1 -1
|
@@ -181,6 +181,30 @@ variable "wiki_compile_model_id" {
|
|
|
181
181
|
default = "openai.gpt-oss-120b-1:0"
|
|
182
182
|
}
|
|
183
183
|
|
|
184
|
+
variable "requester_idle_memory_learning_enabled" {
|
|
185
|
+
description = "Enable requester-scoped 15-minute idle memory learning."
|
|
186
|
+
type = bool
|
|
187
|
+
default = true
|
|
188
|
+
}
|
|
189
|
+
|
|
190
|
+
variable "requester_memory_dreaming_enabled" {
|
|
191
|
+
description = "Enable recurring requester memory dreaming sweeps."
|
|
192
|
+
type = bool
|
|
193
|
+
default = true
|
|
194
|
+
}
|
|
195
|
+
|
|
196
|
+
variable "requester_memory_dreaming_schedule_expression" {
|
|
197
|
+
description = "EventBridge Scheduler expression for requester memory dreaming sweeps."
|
|
198
|
+
type = string
|
|
199
|
+
default = "cron(30 4 * * ? *)"
|
|
200
|
+
}
|
|
201
|
+
|
|
202
|
+
variable "requester_memory_dreaming_model_id" {
|
|
203
|
+
description = "Bedrock Converse model id for requester memory REM reflection."
|
|
204
|
+
type = string
|
|
205
|
+
default = "openai.gpt-oss-120b-1:0"
|
|
206
|
+
}
|
|
207
|
+
|
|
184
208
|
variable "company_brain_source_agent_model_id" {
|
|
185
209
|
description = <<-EOT
|
|
186
210
|
Bedrock model id the GraphQL Company Brain source-agent runtime uses
|
|
@@ -411,13 +435,17 @@ module "thinkwork" {
|
|
|
411
435
|
# Wiki compile Lambda config. Pinned so unrelated terraform applies
|
|
412
436
|
# don't wipe the Bedrock model or the aggregation flag back to
|
|
413
437
|
# whatever the Lambda env defaults to.
|
|
414
|
-
wiki_compile_model_id
|
|
415
|
-
company_brain_source_agent_model_id
|
|
416
|
-
wiki_aggregation_pass_enabled
|
|
417
|
-
wiki_deterministic_linking_enabled
|
|
418
|
-
google_places_api_key
|
|
419
|
-
|
|
420
|
-
|
|
438
|
+
wiki_compile_model_id = var.wiki_compile_model_id
|
|
439
|
+
company_brain_source_agent_model_id = var.company_brain_source_agent_model_id
|
|
440
|
+
wiki_aggregation_pass_enabled = var.wiki_aggregation_pass_enabled
|
|
441
|
+
wiki_deterministic_linking_enabled = var.wiki_deterministic_linking_enabled
|
|
442
|
+
google_places_api_key = var.google_places_api_key
|
|
443
|
+
requester_idle_memory_learning_enabled = var.requester_idle_memory_learning_enabled
|
|
444
|
+
requester_memory_dreaming_enabled = var.requester_memory_dreaming_enabled
|
|
445
|
+
requester_memory_dreaming_schedule_expression = var.requester_memory_dreaming_schedule_expression
|
|
446
|
+
requester_memory_dreaming_model_id = var.requester_memory_dreaming_model_id
|
|
447
|
+
nova_act_api_key = var.nova_act_api_key
|
|
448
|
+
agentcore_code_interpreter_id = var.agentcore_code_interpreter_id
|
|
421
449
|
|
|
422
450
|
# Mapbox public token for apps/computer MapView primitive. Flows through
|
|
423
451
|
# to scripts/build-computer.sh → VITE_MAPBOX_PUBLIC_TOKEN.
|
|
@@ -271,15 +271,16 @@ resource "aws_lambda_function" "agentcore_flue" {
|
|
|
271
271
|
|
|
272
272
|
environment {
|
|
273
273
|
variables = {
|
|
274
|
-
PORT
|
|
275
|
-
AWS_LWA_PORT
|
|
276
|
-
AGENTCORE_MEMORY_ID
|
|
277
|
-
AGENTCORE_FILES_BUCKET
|
|
278
|
-
MEMORY_ENGINE
|
|
279
|
-
|
|
280
|
-
|
|
281
|
-
|
|
282
|
-
|
|
274
|
+
PORT = "8080"
|
|
275
|
+
AWS_LWA_PORT = "8080"
|
|
276
|
+
AGENTCORE_MEMORY_ID = var.agentcore_memory_id
|
|
277
|
+
AGENTCORE_FILES_BUCKET = var.bucket_name
|
|
278
|
+
MEMORY_ENGINE = var.memory_engine
|
|
279
|
+
REQUESTER_IDLE_MEMORY_LEARNING_ENABLED = tostring(var.requester_idle_memory_learning_enabled)
|
|
280
|
+
MEMORY_RETAIN_FN_NAME = local.memory_retain_fn_name
|
|
281
|
+
HINDSIGHT_ENDPOINT = var.hindsight_endpoint
|
|
282
|
+
THINKWORK_API_URL = var.api_endpoint
|
|
283
|
+
API_AUTH_SECRET = var.api_auth_secret
|
|
283
284
|
# Plan §005 U4 — AuroraSessionStore uses the RDS Data API to persist
|
|
284
285
|
# Flue's SessionData blobs against threads.session_data. Empty during
|
|
285
286
|
# the first greenfield apply (DB cluster doesn't exist yet); the
|
|
@@ -78,6 +78,12 @@ variable "memory_engine" {
|
|
|
78
78
|
}
|
|
79
79
|
}
|
|
80
80
|
|
|
81
|
+
variable "requester_idle_memory_learning_enabled" {
|
|
82
|
+
description = "When true, requester memory learning runs through the API idle/dreaming pipeline instead of runtime retain-on-every-turn."
|
|
83
|
+
type = bool
|
|
84
|
+
default = false
|
|
85
|
+
}
|
|
86
|
+
|
|
81
87
|
variable "db_cluster_arn" {
|
|
82
88
|
description = "Aurora DB cluster ARN. Injected as DB_CLUSTER_ARN so AuroraSessionStore (plan §005 U4) can target the cluster via the RDS Data API. The cluster's IAM resource scope (thinkwork-<stage>-db-* in agentcore-flue's role policy) covers any cluster-id suffix."
|
|
83
89
|
type = string
|
|
@@ -68,6 +68,12 @@ variable "memory_engine" {
|
|
|
68
68
|
}
|
|
69
69
|
}
|
|
70
70
|
|
|
71
|
+
variable "requester_idle_memory_learning_enabled" {
|
|
72
|
+
description = "When true, requester memory learning runs through the API idle/dreaming pipeline instead of runtime retain-on-every-turn."
|
|
73
|
+
type = bool
|
|
74
|
+
default = false
|
|
75
|
+
}
|
|
76
|
+
|
|
71
77
|
# memory-retain Lambda name + ARN are constructed locally rather than
|
|
72
78
|
# taken as inputs to avoid a circular dependency: the lambda-api module
|
|
73
79
|
# already consumes this module's outputs (agentcore_function_name/arn).
|
|
@@ -336,12 +342,13 @@ resource "aws_lambda_function" "agentcore" {
|
|
|
336
342
|
|
|
337
343
|
environment {
|
|
338
344
|
variables = {
|
|
339
|
-
PORT
|
|
340
|
-
AWS_LWA_PORT
|
|
341
|
-
AGENTCORE_MEMORY_ID
|
|
342
|
-
AGENTCORE_FILES_BUCKET
|
|
343
|
-
MEMORY_ENGINE
|
|
344
|
-
|
|
345
|
+
PORT = "8080"
|
|
346
|
+
AWS_LWA_PORT = "8080"
|
|
347
|
+
AGENTCORE_MEMORY_ID = var.agentcore_memory_id
|
|
348
|
+
AGENTCORE_FILES_BUCKET = var.bucket_name
|
|
349
|
+
MEMORY_ENGINE = var.memory_engine
|
|
350
|
+
REQUESTER_IDLE_MEMORY_LEARNING_ENABLED = tostring(var.requester_idle_memory_learning_enabled)
|
|
351
|
+
MEMORY_RETAIN_FN_NAME = local.memory_retain_fn_name
|
|
345
352
|
# Needed by run_skill_dispatch.py to POST terminal state back to
|
|
346
353
|
# /api/skills/complete after a composition run finishes.
|
|
347
354
|
THINKWORK_API_URL = var.api_endpoint
|
|
@@ -187,6 +187,16 @@ locals {
|
|
|
187
187
|
# handler and pushed ~70 Lambdas over quota.
|
|
188
188
|
"computer-manager" = local.computer_runtime_control_env
|
|
189
189
|
"computer-runtime-reconciler" = local.computer_runtime_control_env
|
|
190
|
+
"computer-runtime" = {
|
|
191
|
+
REQUESTER_IDLE_MEMORY_LEARNING_ENABLED = tostring(var.requester_idle_memory_learning_enabled)
|
|
192
|
+
}
|
|
193
|
+
"thread-attachments-finalize" = {
|
|
194
|
+
REQUESTER_IDLE_MEMORY_LEARNING_ENABLED = tostring(var.requester_idle_memory_learning_enabled)
|
|
195
|
+
}
|
|
196
|
+
"requester-memory-dreaming" = {
|
|
197
|
+
REQUESTER_MEMORY_DREAMING_ENABLED = tostring(var.requester_memory_dreaming_enabled)
|
|
198
|
+
REQUESTER_MEMORY_DREAMING_MODEL_ID = var.requester_memory_dreaming_model_id
|
|
199
|
+
}
|
|
190
200
|
"mcp-context-engine" = {
|
|
191
201
|
CONTEXT_ENGINE_MEMORY_QUERY_MODE = "reflect"
|
|
192
202
|
CONTEXT_ENGINE_MEMORY_TIMEOUT_MS = "20000"
|
|
@@ -221,6 +231,7 @@ locals {
|
|
|
221
231
|
ROUTINE_TASK_PYTHON_FUNCTION_NAME = "thinkwork-${var.stage}-api-routine-task-python"
|
|
222
232
|
ADMIN_OPS_MCP_FUNCTION_NAME = "thinkwork-${var.stage}-api-admin-ops-mcp"
|
|
223
233
|
SLACK_SEND_FUNCTION_NAME = "thinkwork-${var.stage}-api-slack-send"
|
|
234
|
+
REQUESTER_IDLE_MEMORY_LEARNING_ENABLED = tostring(var.requester_idle_memory_learning_enabled)
|
|
224
235
|
# Phase 3 U10 — compliance read resolvers (complianceEvents,
|
|
225
236
|
# complianceEvent, complianceEventByHash) connect to Aurora as
|
|
226
237
|
# the compliance_reader role. The existing lambda_secrets policy
|
|
@@ -309,6 +320,7 @@ resource "aws_lambda_function" "handler" {
|
|
|
309
320
|
"guardrails",
|
|
310
321
|
"scheduled-jobs",
|
|
311
322
|
"thread-idle-memory-learning",
|
|
323
|
+
"requester-memory-dreaming",
|
|
312
324
|
"job-schedule-manager",
|
|
313
325
|
"job-trigger",
|
|
314
326
|
"routine-task-weather-email",
|
|
@@ -500,8 +512,8 @@ resource "aws_lambda_function" "handler" {
|
|
|
500
512
|
# routine-task-python wraps a 300s sandbox session and needs headroom
|
|
501
513
|
# for the Start/Invoke/Stop/S3-offload round trip; 360s leaves ~60s
|
|
502
514
|
# for AWS-call setup and offload after the sandbox's own ceiling.
|
|
503
|
-
timeout = each.key == "wakeup-processor" ? 300 : each.key == "chat-agent-invoke" ? 300 : each.key == "workspace-event-dispatcher" ? 60 : each.key == "eval-runner" ? 900 : each.key == "eval-worker" ? 240 : each.key == "wiki-compile" ? 480 : each.key == "ontology-scan" ? 300 : each.key == "ontology-reprocess" ? 300 : each.key == "wiki-lint" ? 300 : each.key == "wiki-export" ? 600 : each.key == "wiki-bootstrap-import" ? 900 : each.key == "folder-bundle-import" ? 300 : each.key == "routine-task-python" ? 360 : 30
|
|
504
|
-
memory_size = each.key == "graphql-http" ? 512 : each.key == "wakeup-processor" ? 512 : each.key == "workspace-event-dispatcher" ? 512 : each.key == "eval-runner" ? 512 : each.key == "eval-worker" ? 512 : each.key == "wiki-compile" ? 1024 : each.key == "ontology-scan" ? 512 : each.key == "wiki-export" ? 1024 : each.key == "wiki-bootstrap-import" ? 1024 : each.key == "folder-bundle-import" ? 1024 : 256
|
|
515
|
+
timeout = each.key == "wakeup-processor" ? 300 : each.key == "chat-agent-invoke" ? 300 : each.key == "workspace-event-dispatcher" ? 60 : each.key == "eval-runner" ? 900 : each.key == "eval-worker" ? 240 : each.key == "wiki-compile" ? 480 : each.key == "requester-memory-dreaming" ? 300 : each.key == "ontology-scan" ? 300 : each.key == "ontology-reprocess" ? 300 : each.key == "wiki-lint" ? 300 : each.key == "wiki-export" ? 600 : each.key == "wiki-bootstrap-import" ? 900 : each.key == "folder-bundle-import" ? 300 : each.key == "routine-task-python" ? 360 : 30
|
|
516
|
+
memory_size = each.key == "graphql-http" ? 512 : each.key == "wakeup-processor" ? 512 : each.key == "workspace-event-dispatcher" ? 512 : each.key == "eval-runner" ? 512 : each.key == "eval-worker" ? 512 : each.key == "wiki-compile" ? 1024 : each.key == "requester-memory-dreaming" ? 512 : each.key == "ontology-scan" ? 512 : each.key == "wiki-export" ? 1024 : each.key == "wiki-bootstrap-import" ? 1024 : each.key == "folder-bundle-import" ? 1024 : 256
|
|
505
517
|
|
|
506
518
|
filename = local.use_local_zips ? "${var.lambda_zips_dir}/${each.key}.zip" : null
|
|
507
519
|
source_code_hash = local.use_local_zips ? filebase64sha256("${var.lambda_zips_dir}/${each.key}.zip") : null
|
|
@@ -1145,6 +1157,28 @@ resource "aws_scheduler_schedule" "plugin_staging_sweeper" {
|
|
|
1145
1157
|
}
|
|
1146
1158
|
}
|
|
1147
1159
|
|
|
1160
|
+
# ---------------------------------------------------------------------------
|
|
1161
|
+
# Requester memory dreaming — broad per-user memory compaction/reflection sweep
|
|
1162
|
+
# ---------------------------------------------------------------------------
|
|
1163
|
+
|
|
1164
|
+
resource "aws_scheduler_schedule" "requester_memory_dreaming" {
|
|
1165
|
+
count = local.deploy_lambda_handlers ? 1 : 0
|
|
1166
|
+
|
|
1167
|
+
name = "thinkwork-${var.stage}-requester-memory-dreaming"
|
|
1168
|
+
group_name = "default"
|
|
1169
|
+
schedule_expression = var.requester_memory_dreaming_schedule_expression
|
|
1170
|
+
state = var.requester_memory_dreaming_enabled ? "ENABLED" : "DISABLED"
|
|
1171
|
+
|
|
1172
|
+
flexible_time_window {
|
|
1173
|
+
mode = "OFF"
|
|
1174
|
+
}
|
|
1175
|
+
|
|
1176
|
+
target {
|
|
1177
|
+
arn = aws_lambda_function.handler["requester-memory-dreaming"].arn
|
|
1178
|
+
role_arn = aws_iam_role.scheduler.arn
|
|
1179
|
+
}
|
|
1180
|
+
}
|
|
1181
|
+
|
|
1148
1182
|
# ---------------------------------------------------------------------------
|
|
1149
1183
|
# MCP approval TTL sweeper — daily auto-reject of pending rows > 30 days old
|
|
1150
1184
|
# (plan §U11). A plugin whose MCP sat uncurated for a month is stale: clear
|
|
@@ -159,6 +159,30 @@ variable "extension_proxy_backends_json" {
|
|
|
159
159
|
default = "{}"
|
|
160
160
|
}
|
|
161
161
|
|
|
162
|
+
variable "requester_idle_memory_learning_enabled" {
|
|
163
|
+
description = "Enable requester-scoped 15-minute idle memory learning."
|
|
164
|
+
type = bool
|
|
165
|
+
default = false
|
|
166
|
+
}
|
|
167
|
+
|
|
168
|
+
variable "requester_memory_dreaming_enabled" {
|
|
169
|
+
description = "Enable recurring requester memory dreaming sweeps."
|
|
170
|
+
type = bool
|
|
171
|
+
default = false
|
|
172
|
+
}
|
|
173
|
+
|
|
174
|
+
variable "requester_memory_dreaming_schedule_expression" {
|
|
175
|
+
description = "EventBridge Scheduler expression for requester memory dreaming sweeps."
|
|
176
|
+
type = string
|
|
177
|
+
default = "cron(30 4 * * ? *)"
|
|
178
|
+
}
|
|
179
|
+
|
|
180
|
+
variable "requester_memory_dreaming_model_id" {
|
|
181
|
+
description = "Bedrock Converse model id for requester memory REM reflection."
|
|
182
|
+
type = string
|
|
183
|
+
default = "openai.gpt-oss-120b-1:0"
|
|
184
|
+
}
|
|
185
|
+
|
|
162
186
|
variable "extension_proxy_signing_secret" {
|
|
163
187
|
description = "Shared HMAC secret used by the generic Admin extension proxy to sign actor context for extension backends."
|
|
164
188
|
type = string
|
|
@@ -322,45 +322,49 @@ module "api" {
|
|
|
322
322
|
|
|
323
323
|
kb_service_role_arn = module.bedrock_kb.kb_service_role_arn
|
|
324
324
|
|
|
325
|
-
lambda_zips_dir
|
|
326
|
-
api_auth_secret
|
|
327
|
-
db_password
|
|
328
|
-
agentcore_function_name
|
|
329
|
-
agentcore_flue_function_name
|
|
330
|
-
agentcore_function_arn
|
|
331
|
-
agentcore_flue_function_arn
|
|
332
|
-
hindsight_endpoint
|
|
333
|
-
agentcore_memory_id
|
|
334
|
-
memory_engine
|
|
335
|
-
admin_url
|
|
336
|
-
docs_url
|
|
337
|
-
www_url
|
|
338
|
-
stripe_price_ids_json
|
|
339
|
-
appsync_realtime_url
|
|
340
|
-
ecr_repository_url
|
|
341
|
-
job_scheduler_role_arn
|
|
342
|
-
routines_execution_role_arn
|
|
343
|
-
routines_log_group_arn
|
|
344
|
-
agentcore_code_interpreter_id
|
|
345
|
-
wiki_compile_model_id
|
|
346
|
-
company_brain_source_agent_model_id
|
|
347
|
-
wiki_aggregation_pass_enabled
|
|
348
|
-
wiki_deterministic_linking_enabled
|
|
349
|
-
google_places_api_key
|
|
350
|
-
enable_workspace_orchestration
|
|
351
|
-
|
|
352
|
-
|
|
353
|
-
|
|
354
|
-
|
|
355
|
-
|
|
356
|
-
|
|
357
|
-
|
|
358
|
-
|
|
359
|
-
|
|
360
|
-
|
|
361
|
-
|
|
362
|
-
|
|
363
|
-
|
|
325
|
+
lambda_zips_dir = var.lambda_zips_dir
|
|
326
|
+
api_auth_secret = var.api_auth_secret
|
|
327
|
+
db_password = var.db_password
|
|
328
|
+
agentcore_function_name = module.agentcore.agentcore_function_name
|
|
329
|
+
agentcore_flue_function_name = module.agentcore_flue.agentcore_flue_function_name
|
|
330
|
+
agentcore_function_arn = module.agentcore.agentcore_function_arn
|
|
331
|
+
agentcore_flue_function_arn = module.agentcore_flue.agentcore_flue_function_arn
|
|
332
|
+
hindsight_endpoint = local.hindsight_enabled ? module.hindsight[0].hindsight_endpoint : ""
|
|
333
|
+
agentcore_memory_id = module.agentcore_memory.memory_id
|
|
334
|
+
memory_engine = local.resolved_memory_engine
|
|
335
|
+
admin_url = var.admin_domain != "" ? "https://${var.admin_domain}" : "https://${module.admin_site.distribution_domain}"
|
|
336
|
+
docs_url = "https://${module.docs_site.distribution_domain}"
|
|
337
|
+
www_url = var.www_domain != "" ? "https://${var.www_domain}" : "https://${module.www_site.distribution_domain}"
|
|
338
|
+
stripe_price_ids_json = var.stripe_price_ids_json
|
|
339
|
+
appsync_realtime_url = module.appsync.graphql_realtime_url
|
|
340
|
+
ecr_repository_url = module.agentcore.ecr_repository_url
|
|
341
|
+
job_scheduler_role_arn = module.job_triggers.job_scheduler_role_arn
|
|
342
|
+
routines_execution_role_arn = module.routines_stepfunctions.execution_role_arn
|
|
343
|
+
routines_log_group_arn = module.routines_stepfunctions.log_group_arn
|
|
344
|
+
agentcore_code_interpreter_id = var.agentcore_code_interpreter_id
|
|
345
|
+
wiki_compile_model_id = var.wiki_compile_model_id
|
|
346
|
+
company_brain_source_agent_model_id = var.company_brain_source_agent_model_id
|
|
347
|
+
wiki_aggregation_pass_enabled = var.wiki_aggregation_pass_enabled
|
|
348
|
+
wiki_deterministic_linking_enabled = var.wiki_deterministic_linking_enabled
|
|
349
|
+
google_places_api_key = var.google_places_api_key
|
|
350
|
+
enable_workspace_orchestration = var.enable_workspace_orchestration
|
|
351
|
+
requester_idle_memory_learning_enabled = var.requester_idle_memory_learning_enabled
|
|
352
|
+
requester_memory_dreaming_enabled = var.requester_memory_dreaming_enabled
|
|
353
|
+
requester_memory_dreaming_schedule_expression = var.requester_memory_dreaming_schedule_expression
|
|
354
|
+
requester_memory_dreaming_model_id = var.requester_memory_dreaming_model_id
|
|
355
|
+
computer_runtime_cluster_name = module.computer_runtime.cluster_name
|
|
356
|
+
computer_runtime_cluster_arn = module.computer_runtime.cluster_arn
|
|
357
|
+
computer_runtime_efs_file_system_id = module.computer_runtime.efs_file_system_id
|
|
358
|
+
computer_runtime_subnet_ids = module.computer_runtime.task_subnet_ids
|
|
359
|
+
computer_runtime_assign_public_ip = module.computer_runtime.assign_public_ip
|
|
360
|
+
computer_runtime_task_sg_id = module.computer_runtime.task_security_group_id
|
|
361
|
+
computer_runtime_execution_role_arn = module.computer_runtime.execution_role_arn
|
|
362
|
+
computer_runtime_task_role_arn = module.computer_runtime.task_role_arn
|
|
363
|
+
computer_runtime_log_group_name = module.computer_runtime.log_group_name
|
|
364
|
+
computer_runtime_repository_url = module.computer_runtime.repository_url
|
|
365
|
+
computer_runtime_default_cpu = module.computer_runtime.default_cpu
|
|
366
|
+
computer_runtime_default_memory = module.computer_runtime.default_memory
|
|
367
|
+
computer_runtime_manager_policy_arn = module.computer_runtime.manager_policy_arn
|
|
364
368
|
|
|
365
369
|
# workspace-files-efs sidecar: VPC-attached Lambda that reads any Computer's
|
|
366
370
|
# workspace files directly off the shared EFS (bypasses the
|
|
@@ -407,9 +411,10 @@ module "agentcore" {
|
|
|
407
411
|
region = var.region
|
|
408
412
|
bucket_name = module.s3.bucket_name
|
|
409
413
|
|
|
410
|
-
hindsight_endpoint
|
|
411
|
-
agentcore_memory_id
|
|
412
|
-
memory_engine
|
|
414
|
+
hindsight_endpoint = local.hindsight_enabled ? module.hindsight[0].hindsight_endpoint : ""
|
|
415
|
+
agentcore_memory_id = module.agentcore_memory.memory_id
|
|
416
|
+
memory_engine = local.resolved_memory_engine
|
|
417
|
+
requester_idle_memory_learning_enabled = var.requester_idle_memory_learning_enabled
|
|
413
418
|
|
|
414
419
|
# Threaded through so the container's run_skill_dispatch can POST
|
|
415
420
|
# terminal state back to /api/skills/complete. The lambda-api module
|
|
@@ -440,9 +445,10 @@ module "agentcore_flue" {
|
|
|
440
445
|
ecr_repository_url = module.agentcore.ecr_repository_url
|
|
441
446
|
async_dlq_arn = module.agentcore.agentcore_async_dlq_arn
|
|
442
447
|
|
|
443
|
-
hindsight_endpoint
|
|
444
|
-
agentcore_memory_id
|
|
445
|
-
memory_engine
|
|
448
|
+
hindsight_endpoint = local.hindsight_enabled ? module.hindsight[0].hindsight_endpoint : ""
|
|
449
|
+
agentcore_memory_id = module.agentcore_memory.memory_id
|
|
450
|
+
memory_engine = local.resolved_memory_engine
|
|
451
|
+
requester_idle_memory_learning_enabled = var.requester_idle_memory_learning_enabled
|
|
446
452
|
|
|
447
453
|
api_endpoint = module.api.api_endpoint
|
|
448
454
|
api_auth_secret = var.api_auth_secret
|
|
@@ -185,6 +185,30 @@ variable "enable_workspace_orchestration" {
|
|
|
185
185
|
default = false
|
|
186
186
|
}
|
|
187
187
|
|
|
188
|
+
variable "requester_idle_memory_learning_enabled" {
|
|
189
|
+
description = "Enable requester-scoped 15-minute idle memory learning."
|
|
190
|
+
type = bool
|
|
191
|
+
default = false
|
|
192
|
+
}
|
|
193
|
+
|
|
194
|
+
variable "requester_memory_dreaming_enabled" {
|
|
195
|
+
description = "Enable recurring requester memory dreaming sweeps."
|
|
196
|
+
type = bool
|
|
197
|
+
default = false
|
|
198
|
+
}
|
|
199
|
+
|
|
200
|
+
variable "requester_memory_dreaming_schedule_expression" {
|
|
201
|
+
description = "EventBridge Scheduler expression for requester memory dreaming sweeps."
|
|
202
|
+
type = string
|
|
203
|
+
default = "cron(30 4 * * ? *)"
|
|
204
|
+
}
|
|
205
|
+
|
|
206
|
+
variable "requester_memory_dreaming_model_id" {
|
|
207
|
+
description = "Bedrock Converse model id for requester memory REM reflection."
|
|
208
|
+
type = string
|
|
209
|
+
default = "openai.gpt-oss-120b-1:0"
|
|
210
|
+
}
|
|
211
|
+
|
|
188
212
|
# ---------------------------------------------------------------------------
|
|
189
213
|
# Naming / Buckets
|
|
190
214
|
# ---------------------------------------------------------------------------
|