RuntimeProps Struct
Properties for creating a Bedrock Agent Core Runtime resource.
Example
// S3 bucket containing the agent core
const codeBucket = new s3.Bucket(this, "AgentCode", {
bucketName: "my-code-bucket",
removalPolicy: RemovalPolicy.DESTROY, // For demo purposes
});
// the bucket above needs to contain the agent code
const agentRuntimeArtifact = agentcore.AgentRuntimeArtifact.fromS3(
{
bucketName: codeBucket.bucketName,
objectKey: 'deployment_package.zip',
},
agentcore.AgentCoreRuntime.PYTHON_3_12,
['opentelemetry-instrument', 'main.py']
);
const runtimeInstance = new agentcore.Runtime(this, "MyAgentRuntime", {
runtimeName: "myAgent",
agentRuntimeArtifact: agentRuntimeArtifact,
});
Properties
agentRuntimeArtifactAgentRuntimeArtifactagent_runtime_artifactAgentRuntimeArtifactagentRuntimeArtifactAgentRuntimeArtifactAgentRuntimeArtifactAgentRuntimeArtifactAgentRuntimeArtifactAgentRuntimeArtifactrequired#authorizerConfigurationoptionalRuntimeAuthorizerConfigurationauthorizer_configurationoptionalRuntimeAuthorizerConfigurationauthorizerConfigurationoptionalRuntimeAuthorizerConfigurationAuthorizerConfigurationoptionalRuntimeAuthorizerConfigurationAuthorizerConfigurationoptionalRuntimeAuthorizerConfiguration#Default: RuntimeAuthorizerConfiguration.iam() (IAM authentication)
descriptionoptionalstringdescriptionoptionalstrdescriptionoptionalStringDescriptionoptionalstringDescriptionoptional*string#Default: No description Length Minimum: 1 , Maximum: 1200
environmentVariablesoptional{ [key: string]: string }environment_variablesoptionaltyping.Mapping[str, str]environmentVariablesoptionalMap<String, String>EnvironmentVariablesoptionalIDictionary<string, string>EnvironmentVariablesoptional*map[string]*string#Default: No environment variables
executionRoleoptionalIRoleexecution_roleoptionalIRoleexecutionRoleoptionalIRoleExecutionRoleoptionalIRoleExecutionRoleoptionalIRole#Default: A new role will be created
lifecycleConfigurationoptionalLifecycleConfigurationlifecycle_configurationoptionalLifecycleConfigurationlifecycleConfigurationoptionalLifecycleConfigurationLifecycleConfigurationoptionalLifecycleConfigurationLifecycleConfigurationoptionalLifecycleConfiguration#Default: No lifecycle configuration
loggingConfigsoptionalLoggingConfig[]logging_configsoptionaltyping.List[LoggingConfig]loggingConfigsoptionalList<LoggingConfig>LoggingConfigsoptionalLoggingConfig[]LoggingConfigsoptional*[]LoggingConfig#Default: No logging configured
Allows sending APPLICATION_LOGS and USAGE_LOGS to CloudWatch Logs, S3, or Kinesis Data Firehose.
manageDeliveryResourcePolicyoptionalbooleanmanage_delivery_resource_policyoptionalboolmanageDeliveryResourcePolicyoptionalBooleanManageDeliveryResourcePolicyoptionalboolManageDeliveryResourcePolicyoptional*bool= true#notes
When false, the AWS::Logs::ResourcePolicy and AWS::XRay::ResourcePolicy are not created. This is useful when deploying many runtimes per account/Region, as each resource policy consumes an account-level quota slot (CloudWatch Logs: 10, X-Ray: lower).
Setting false means you are responsible for ensuring delivery permissions exist. There are two safe ways to use this:
- Same-account delivery to a
/aws/vendedlogs/log group, where the log-delivery service-linked role grants write access implicitly. - Attaching the delivery resource policy yourself.
Otherwise delivery silently fails: synthesis and deploy succeed, but nothing is delivered. Per the vended-logs delivery docs, a resource policy is required for CloudWatch Logs delivery outside the /aws/vendedlogs/ same-account case.
networkConfigurationoptionalRuntimeNetworkConfigurationnetwork_configurationoptionalRuntimeNetworkConfigurationnetworkConfigurationoptionalRuntimeNetworkConfigurationNetworkConfigurationoptionalRuntimeNetworkConfigurationNetworkConfigurationoptionalRuntimeNetworkConfiguration#Default: RuntimeNetworkConfiguration.usingPublicNetwork()
platformVersionoptionalPlatformVersionplatform_versionoptionalPlatformVersionplatformVersionoptionalPlatformVersionPlatformVersionoptionalPlatformVersionPlatformVersionoptionalPlatformVersion#Default: the AgentCore service default platform version
When omitted, the property is not rendered and the AgentCore service applies its own default platform version.
protocolConfigurationoptionalProtocolTypeprotocol_configurationoptionalProtocolTypeprotocolConfigurationoptionalProtocolTypeProtocolConfigurationoptionalProtocolTypeProtocolConfigurationoptionalProtocolType= ProtocolType.HTTP#requestHeaderConfigurationoptionalRequestHeaderConfigurationrequest_header_configurationoptionalRequestHeaderConfigurationrequestHeaderConfigurationoptionalRequestHeaderConfigurationRequestHeaderConfigurationoptionalRequestHeaderConfigurationRequestHeaderConfigurationoptionalRequestHeaderConfiguration#Default: No request headers configured
runtimeNameoptionalstringruntime_nameoptionalstrruntimeNameoptionalStringRuntimeNameoptionalstringRuntimeNameoptional*string#Default: auto generate
tagsoptional{ [key: string]: string }tagsoptionaltyping.Mapping[str, str]tagsoptionalMap<String, String>TagsoptionalIDictionary<string, string>Tagsoptional*map[string]*string#Default: {} - no tags
tracingEnabledoptionalbooleantracing_enabledoptionalbooltracingEnabledoptionalBooleanTracingEnabledoptionalboolTracingEnabledoptional*bool= false#When enabled, traces will be delivered to AWS X-Ray.