Teach agent builder packed frontends
All checks were successful
build / build (push) Successful in 25s
All checks were successful
build / build (push) Successful in 25s
This commit is contained in:
@@ -154,6 +154,32 @@ runtime:
|
||||
If it calls external hosts, declare `egress` on the class. If it needs secrets,
|
||||
use `required_secrets` and `ctx.secret("NAME")`; do not hard-code credentials.
|
||||
|
||||
## Packed Frontends
|
||||
|
||||
If the user asks for a usable app, dashboard, workflow UI, or customer-facing
|
||||
demo surface, scaffold a packed frontend instead of a separate web app. Use
|
||||
`init_agent_template(name, description, frontend="react")` for the React/Vite
|
||||
starter or `frontend="static"` for a no-build HTML bundle.
|
||||
|
||||
The deployment manifest should keep the browser app under the agent source:
|
||||
|
||||
```yaml
|
||||
frontend:
|
||||
path: frontend
|
||||
build: npm run build
|
||||
dist: dist
|
||||
mount: /app
|
||||
auth: inherit
|
||||
```
|
||||
|
||||
At runtime the platform serves the app from `/app`, exposes generated config at
|
||||
`/app/config.json`, exposes a helper client at `/app/a2a-client.js`, and uses
|
||||
the agent's public `@skill` schemas for callable operations. Frontend code
|
||||
should load the generated config/client, call the public skills, and rely on
|
||||
inherited platform auth. Do not put control-plane tokens, provider keys,
|
||||
secrets, internal stack details, or private execution assumptions in frontend
|
||||
source.
|
||||
|
||||
## A2A Skill vs DeepAgents Skill
|
||||
|
||||
Use A2A `@skill` for caller-visible operations and billing boundaries. Use
|
||||
|
||||
Reference in New Issue
Block a user