aws / aws/agentcore-cli

Support interactive TUI invocation for existing AgentCore Harnesses by ARN

Offen
#2,008 0 Kommentare 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen
enhancement
Vorherrschende Sprache
TypeScript
Sterne
283
Forks
95
Ø Merge
1 T. 2 Std.
Gemergte PRs (30 T.)
183

Beschreibung

### Description

AgentCore CLI should support opening the existing interactive chat/TUI experience against an already-deployed AgentCore Harness that was created outside the current AgentCore CLI project, such as a Harness created through the AWS Console, Terraform, CloudFormation, or the AgentCore control-plane API.

Today an externally managed Harness can be invoked with:

```bash
agentcore invoke \
--harness-arn arn:aws:bedrock-agentcore:us-west-2:123456789012:harness/example \
--region us-west-2 \
--session-id \
"prompt"
```

However, `--harness-arn` is treated as a non-interactive option. Omitting the prompt results in:

```text
No prompt provided. Usage: agentcore invoke --harness-arn --region "your prompt"
```

This means users of externally managed Harnesses cannot use the CLI's interactive chat/TUI experience and instead have to repeatedly invoke the Harness with individual prompts or build their own frontend.

It would be useful to support something along the lines of:

```bash
agentcore invoke \
--harness-arn \
--region us-west-2 \
--interactive
```

or, if no prompt is supplied and stdin is a TTY, automatically enter interactive mode:

```bash
agentcore invoke \
--harness-arn \
--region us-west-2
```

The interactive session should reuse a single `runtimeSessionId` for the duration of the session and allow an explicitly supplied `--session-id` so an existing Harness session can be resumed.

This would make the AgentCore CLI useful as a general client for managed Harnesses without requiring the Harness infrastructure to be owned or deployed by an AgentCore CLI/CDK project.

This is especially valuable for organizations that manage AgentCore infrastructure centrally with Terraform or CloudFormation while individual developers authenticate using their own AWS credentials.

### Acceptance Criteria

* `agentcore invoke` can enter an interactive terminal chat experience when targeting a Harness with `--harness-arn`.

* The feature works without requiring an AgentCore CLI project or `agentcore deploy`.

* The Harness may have been created by the AWS Console, Terraform, CloudFormation, or API.

* An existing session can be resumed with:

```bash
agentcore invoke \
--harness-arn \
--region \
--session-id \
--interactive
```

* Streaming assistant output is rendered interactively.

* Exiting the TUI reports the session ID so the user can reconnect later.

### Additional Context

A common deployment model is:

```text
Terraform / CloudFormation / AWS Console
|
v
AgentCore Harness
^
|
InvokeHarness API
|
v
Developer CLI
```

In this model, the developer may have permission to invoke the Harness but intentionally does not have permission to deploy or modify it.

The existing CLI can already invoke such a Harness non-interactively:

```bash
agentcore invoke \
--harness-arn \
--region \
--session-id \
"prompt"
```

and `--verbose` exposes structured Harness streaming events such as `toolUse` and `toolResult`. The missing piece is an interactive frontend over the same invocation mechanism.

This would avoid teams having to build custom Harness clients solely to obtain a persistent terminal conversation and visibility into agent tool execution.

It would also make infrastructure ownership independent from developer UX: platform teams could manage Harnesses through their preferred IaC tooling while developers still get the native AgentCore interactive experience.

Beitragsleitfaden

Beitragsleitfaden öffnen

Rechercherichtung

Die Payload nennt keine Implementierungsdateien oder Tests. Beginne mit dem Einstiegspunkt `agentcore invoke` und seinem bestehenden `--harness-arn`-Pfad und verfolge anschließend den Streaming-Ablauf von InvokeHarness. Als abgeschlossen gilt die Arbeit, wenn extern verwaltete Harnesses einen interaktiven Chat öffnen, eine Sitzung wiederverwenden oder fortsetzen, Streaming-Ausgaben darstellen und beim Beenden die Sitzungs-ID melden können.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Bewertung

Tech-Stack
aws, typescript
Bereich
cli
Issue-Typ
Feature
Schwierigkeit
4/5
Geschätzter Aufwand
3-5 Tage
Aktivitätsstatus
Ruhig
Klarheit
Größtenteils klar
Anfängerfreundlichkeit
48/100

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.