Skip to content

feat: runtime endpoint support in AgentCore CLI#979

Merged
notgitika merged 19 commits intomainfrom
feat/endpoint_based_abs
Apr 27, 2026
Merged

feat: runtime endpoint support in AgentCore CLI#979
notgitika merged 19 commits intomainfrom
feat/endpoint_based_abs

Conversation

@jariy17
Copy link
Copy Markdown
Contributor

@jariy17 jariy17 commented Apr 27, 2026

Summary

  • Add endpoints dictionary field to AgentEnvSpec schema for named version aliases
  • Add RuntimeEndpointPrimitive with full add/remove/preview lifecycle
  • TUI: multi-field add wizard (tab between name/version/description) + remove flow
  • Status: endpoints nested under agents with [Deployed]/[Local only] badges
  • Deploy pipeline: parseRuntimeEndpointOutputs + buildDeployedState tracks endpoint IDs/ARNs in deployed-state.json

CLI Usage

agentcore add runtime-endpoint --runtime MyAgent --endpoint prod --version 3 --description "Production"
agentcore remove runtime-endpoint --name prod
agentcore status  # shows endpoints nested under agents

Known Issue

First-time deploy of runtime + endpoints in same stack creation may fail due to service eventual consistency. Workaround: deploy runtime first, then add endpoints and redeploy.

Depends on

  • CDK: aws/agentcore-l3-cdk-constructs#180

Test plan

  • Schema tests pass (endpoints field validation)
  • Primitive tests pass (add/remove/preview)
  • CLI commands: add (6 cases), remove (2 cases), status display
  • TUI flows verified via TUI harness with screenshots
  • Deploy verified end-to-end (two-phase) with CFN resources confirmed in AWS
  • Edge cases: same name on different runtimes, remove runtime with endpoints, remove all endpoints

jariy17 added 2 commits April 24, 2026 22:35
- Schema: endpoints field on AgentEnvSpec, runtimeVersion in deployed state
- Primitive: RuntimeEndpointPrimitive with add/remove/preview
- TUI: Add and Remove flows with multi-field form
- Status: endpoints nested under agents with deployment badges
- Deploy: parseRuntimeEndpointOutputs + buildDeployedState pipeline
The CFN output keys include the AgentEnvironment construct prefix
(Agent{PascalName}) which was missing from the parser pattern.
@jariy17 jariy17 requested a review from a team April 27, 2026 15:51
@github-actions github-actions Bot added the size/xl PR size: XL label Apr 27, 2026
@github-actions github-actions Bot added the agentcore-harness-reviewing AgentCore Harness review in progress label Apr 27, 2026
@github-actions
Copy link
Copy Markdown
Contributor

github-actions Bot commented Apr 27, 2026

Package Tarball

aws-agentcore-0.11.0.tgz

How to install

npm install https://github.com/aws/agentcore-cli/releases/download/pr-979-tarball/aws-agentcore-0.11.0.tgz

Comment thread src/cli/tui/screens/runtime-endpoint/AddRuntimeEndpointScreen.tsx Fixed
@github-actions
Copy link
Copy Markdown
Contributor

github-actions Bot commented Apr 27, 2026

Coverage Report

Status Category Percentage Covered / Total
🔵 Lines 42.42% 7491 / 17655
🔵 Statements 41.86% 7942 / 18971
🔵 Functions 40.07% 1314 / 3279
🔵 Branches 40.68% 4937 / 12134
Generated in workflow #2031 for commit 117a07e by the Vitest Coverage Report Action

@github-actions github-actions Bot removed the agentcore-harness-reviewing AgentCore Harness review in progress label Apr 27, 2026
- Remove .omc/ from git tracking, add to .gitignore
- Remove unused useCallback import in AddRuntimeEndpointScreen.tsx
@github-actions github-actions Bot added size/xl PR size: XL and removed size/xl PR size: XL labels Apr 27, 2026
jariy17 added 6 commits April 27, 2026 15:33
The description "Named endpoint (version alias) for a runtime" was too
long and wrapped to the next line in the Add Resource menu. Shortened
to "Named endpoint for a runtime".
- Add explicit Number.isInteger check before schema validation
- Change Commander parser from parseInt to Number so floats like
  3.5 are caught instead of silently truncated
Endpoint names can collide across runtimes (e.g., both have "prod").
Changed React key from epName to agent.name/epName to prevent
duplicate key warnings that pollute the TUI viewport.
When filtering by --type runtime-endpoint, agents array is empty so
the agents section (which nests endpoints) never renders. Added a
standalone Runtime Endpoints section that shows when endpoints exist
but agents don't (i.e., when type-filtering).
The --type option help text was missing runtime-endpoint from the
list of valid resource types.
add now returns { success, endpointName, agent, version } instead of
sparse { success: true }, matching the richer response shape from
remove runtime-endpoint.
@github-actions github-actions Bot added size/xl PR size: XL and removed size/xl PR size: XL labels Apr 27, 2026
- TUI: show "Current deployed version: N" and valid range (1-N)
- TUI: reject version exceeding latest deployed version
- CLI: check deployed-state.json for max version, reject if exceeded
- If runtime not deployed, only positive integer check applies
@github-actions github-actions Bot added size/xl PR size: XL and removed size/xl PR size: XL labels Apr 27, 2026
@github-actions github-actions Bot added the size/xl PR size: XL label Apr 27, 2026
@github-actions github-actions Bot added size/xl PR size: XL and removed size/xl PR size: XL labels Apr 27, 2026
@github-actions github-actions Bot added size/xl PR size: XL and removed size/xl PR size: XL labels Apr 27, 2026
@github-actions github-actions Bot added size/xl PR size: XL and removed size/xl PR size: XL labels Apr 27, 2026
@github-actions github-actions Bot added size/xl PR size: XL and removed size/xl PR size: XL labels Apr 27, 2026
@github-actions github-actions Bot added size/xl PR size: XL and removed size/xl PR size: XL labels Apr 27, 2026
@github-actions github-actions Bot added size/xl PR size: XL and removed size/xl PR size: XL labels Apr 27, 2026
@jariy17
Copy link
Copy Markdown
Contributor Author

jariy17 commented Apr 27, 2026

Final Verification Report

All test flows verified with bundle aws-agentcore-0.11.0-1777326506:

  • 5/5 CLI commands — add, duplicate rejection, not-found, float version, composite key remove
  • 6/6 TUI flows — add menu, runtime picker, multi-field form, confirm, success, remove
  • 2/2 deploys — phase 1 (runtime only), phase 2 (runtime + endpoints) to account 725476964917
  • AWS verifiedAWS::BedrockAgentCore::RuntimeEndpoint resources CREATE_COMPLETE, ARNs in deployed-state.json
  • 14/14 review comments resolved

Full HTML report with inline screenshots: https://gist.github.com/jariy17/f73e36a15be05e18cc92ac09ef6ec67d

@jariy17
Copy link
Copy Markdown
Contributor Author

jariy17 commented Apr 27, 2026

View the full verification report (rendered HTML with inline screenshots): https://htmlpreview.github.io/?https://gist.githubusercontent.com/jariy17/f73e36a15be05e18cc92ac09ef6ec67d/raw/test-report-final.html

Copy link
Copy Markdown
Contributor

@tejaskash tejaskash left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

All feedback addressed. Composite keys, parentName field, comprehensive tests, and TUI fixes all look good. One minor nit: dangling JSDoc comment before the closing brace of RuntimeEndpointPrimitive (from the removed findGatewayTargetReferences stub) — can clean up in a follow-up.

@notgitika notgitika merged commit 41c59ef into main Apr 27, 2026
23 checks passed
@notgitika notgitika deleted the feat/endpoint_based_abs branch April 27, 2026 22:31
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

size/xl PR size: XL

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants