Support changing port and base path of dev chat UI
- Lingua principale
- TypeScript
- Stelle
- 283
- Fork
- 95
- Merge medio
- 1g 2h
- PR unite (30g)
- 183
Descrizione
### 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_
Guida per i contributori
Apri la guida per i contributori
Direzione di ricerca
Inizia dal punto di ingresso `agentcore dev` e traccia il modo in cui `--port` avvia il server dell'agente e la web UI della chat di sviluppo. Esamina nella UI la gestione di `/index.js`, `/api/status` e degli header Host, Origin e X-Agentcore-Local. Il lavoro è completo quando la UI supporta una porta configurabile, un percorso di base e controlli opzionali degli header, con il comportamento coperto dai test rilevanti del repository.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Valutazione
- Stack tecnologico
- typescript
- Ambito
- cli, frontend
- Tipo di issue
- Funzionalità
- Difficoltà
- 4/5
- Tempo stimato
- 3-5 giorni
- Stato di attività
- Tranquilla
- Chiarezza
- Abbastanza chiara
- Idoneità per principianti
- 48/100