Support changing port and base path of dev chat UI
- Vorherrschende Sprache
- TypeScript
- Sterne
- 283
- Forks
- 95
- Ø Merge
- 1 T. 2 Std.
- Gemergte PRs (30 T.)
- 183
Beschreibung
### Description
My goal is to use the `agentcore dev` UI in a cloud IDE like VS Code Server or possibly SageMaker Studio. In these contexts:
1. There are often restrictions to which ports can be used (since typically the IDE itself is running on one, and a web proxy like nginx on another), and
2. Forwarded ports are typically accessed via some non-base path e.g. `https://...cloudfront.net/port/9000/`
Both of these pose problems for the AgentCore CLI today:
1. Currently, the `--port` option in `agentcore dev` does not set the port of the web UI that's spun up... In fact in my specific environment, it didn't seem to correspond to the agent server that's started either? So it's counter-intuitive at best and maybe pointless at worst. It always seems to use `8081`.
2. The web UI also assumes it's running at the root `/` with no way to configure this... So first assets (like `/index.js`) and later API calls (like `/api/status`) try to pull from the "wrong" URL when used in this environment.
3. The web UI also seems to check request host headers and reject any connections that don't come from 127.0.0.1/localhost - which further complicates things
I did manage to get the current app working with some creative nginx configuration - but it's pretty messy, especially number 2 that requires a broad range of `sub_filter`s manipulating inbound requests. It'd be much better if the CLI itself could provide more direct support for running in this kind of remote IDE environment.
### Acceptance Criteria
The dev chat web UI:
- [ ] Can be overridden to launch on a different port
- [ ] Can be configured with a "base path" prefix for all resource & API fetches (for e.g. `/port/9000/`)
- [ ] Can disable checks on `Host`, `Origin`, `X-Agentcore-Local` headers
Even better if:
- [ ] We can configure these options somewhere central they'll be transparently picked up without needing to be included in every `agentcore dev` command - or even auto-detect when running in such an environment
### Additional Context
_No response_
Beitragsleitfaden
Rechercherichtung
Beginne beim Einstiegspunkt `agentcore dev` und verfolge, wie `--port` den Agent-Server und die Dev-Chat-Web-UI startet. Untersuche die Verarbeitung von `/index.js`, `/api/status` sowie der Header Host, Origin und X-Agentcore-Local in der UI. Als abgeschlossen gilt die Aufgabe, wenn die UI einen konfigurierbaren Port, Basispfad und optionale Header-Prüfungen unterstützt und das Verhalten durch die relevanten Tests des Repositorys abgedeckt ist.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Bewertung
- Tech-Stack
- typescript
- Bereich
- cli, frontend
- Issue-Typ
- Feature
- Schwierigkeit
- 4/5
- Geschätzter Aufwand
- 3-5 Tage
- Aktivitätsstatus
- Ruhig
- Klarheit
- Größtenteils klar
- Anfängerfreundlichkeit
- 48/100