Skip to content

docs: document the daemon-hosted A2A server - #1014

Merged
edenreich merged 2 commits into
mainfrom
docs/issue-1008-20261019-1247
Oct 19, 2026
Merged

edenreich merged 2 commits into
mainfrom
docs/issue-1008-20261019-1247

Conversation

@inference-gateway-maintainer

Copy link
Copy Markdown
Contributor

Summary

Documents the daemon-hosted A2A server the CLI added, across the two pages that own the behavior.

cli.md

  • New ### Hosting an A2A server section in the Daemon chapter: the a2a.server keys with defaults (enabled: false, host: 127.0.0.1, port: 8090, mode: standard), their INFER_A2A_SERVER_* overrides, and the token requirement - the daemon refuses to boot when the server is enabled without one, and the token belongs in INFER_A2A_SERVER_TOKEN rather than config.yaml.
  • What a peer sees: the agent card at /.well-known/agent-card.json, bearer auth, message/send plus tasks/{get,list,cancel}, the in-memory task store, the one-at-a-time queue bounded by a2a.task.agent_mode_max_wait_seconds, session continuation through a reused contextId, and cancellation.
  • An A2A server row in the "What the daemon runs" table, and the subsystem named in the chapter intro.
  • New #### Running the task as a plain prompt (--prompt-only) section under infer headless, which the A2A handler always sets.

a2a.md

  • New #### Extra headers section: the agents.yaml headers map, $VAR/${VAR} expansion at load time, an unset variable expanding to empty, auth winning over a hand-written Authorization, and the Bearer ${PEER_TOKEN} shape one infer uses to authenticate to another.

Validation

bun run lint:md, bun run format:check and bun run build all pass.

Closes #1008

Generated with Claude Code

Covers the a2a.server config keys, their defaults, the
INFER_A2A_SERVER_* overrides and the token requirement for boot, the
server subsystem (agent card, bearer auth, one-at-a-time queue, session
continuation via contextId, cancellation), the headless --prompt-only
flag, and the agents.yaml headers map with environment expansion.

Co-authored-by: Eden Reich <16985712+edenreich@users.noreply.github.com>
@inference-gateway-releaser

inference-gateway-releaser Bot commented Oct 19, 2026 •

Copy link
Copy Markdown
Contributor

🗑️ Preview environment destroyed.

@edenreich

Copy link
Copy Markdown
Contributor

@claude CI is failing, can you fix this?

@inference-gateway-maintainer

inference-gateway-maintainer Bot commented Oct 19, 2026 •

Copy link
Copy Markdown
Contributor Author

Claude finished @edenreich's task in 3m 44s —— View job


CI fixed

  • Read the failing CI job log
  • Reproduce locally
  • Fix and commit

What was failing

Only the Docs drift job, and not because of anything in this PR. The upstream inference-gateway/schemas openapi.yaml gained a WebWright provider earlier today, and the generator refuses to run while a schema provider has no entry in scripts/provider-overrides.json:

generate-provider-docs: The schema defines provider(s) with no entry in scripts/provider-overrides.json: webwright.

The fix

  • scripts/provider-overrides.json: a webwright entry (display/url/key label WebWright), placed after zai to match schema enum order.
  • scripts/__fixtures__/openapi.sample.yaml + scripts/generate-provider-docs.test.mjs: the same provider added to the fixture and its expected order list, so bun test byte-compares against the regenerated pages.
  • Regenerated supported-providers.md, configuration.md, sdks.md, rust-adk.md, typescript-adk.md (bearer auth, https://webwright.ai/v1, no vision, WEBWRIGHT_API_URL / WEBWRIGHT_API_KEY).

Validation: bun test (12 pass), bun run lint:md, bun run format:check, bun run build all pass.

One thing to confirm

The ADK tables need an example model id per provider, and WebWright's model list is neither in the schema nor reachable from CI, so the cell is the placeholder <your-model-id>. Worth replacing with a real WebWright model - the override key is adkExampleModel, then task generate. Fix this →
· Branch

Co-authored-by: Eden Reich <16985712+edenreich@users.noreply.github.com>
@edenreich
edenreich merged commit 27fe040 into main Oct 19, 2026
1 check passed
@edenreich
edenreich deleted the docs/issue-1008-20261019-1247 branch October 19, 2026 13:04
inference-gateway-releaser Bot added a commit that referenced this pull request Oct 19, 2026
## [0.9.22](0.9.21...0.9.22) (2026-10-19)

### 📚 Documentation

* **a2a:** document per-agent credentials in the CLI ([#987](#987)) ([f61efae](f61efae))
* **a2a:** document token_file, token_command and oidc scopes ([#993](#993)) ([8c41cf2](8c41cf2))
* add llms.txt index for LLM crawlers ([#984](#984)) ([f3f3331](f3f3331))
* add simulate_tool_call to the mock-agent tool surface ([#1003](#1003)) ([f199416](f199416))
* **adk:** document typed A2A client errors ([#990](#990)) ([089ab08](089ab08))
* **cli:** document session working time indicator ([#986](#986)) ([2839b2b](2839b2b))
* **cli:** re-record the subagents demo on v0.227.0 ([#994](#994)) ([c53a8bf](c53a8bf))
* desktop first-run init and silent windows spawns ([#1016](#1016)) ([a893347](a893347))
* document chat.suggestions next-step suggestions ([#1006](#1006)) ([9992201](9992201))
* document message queue backends ([#1009](#1009)) ([68b6d5e](68b6d5e))
* document the daemon-hosted A2A server ([#1014](#1014)) ([27fe040](27fe040))
* drop /install-opentask for the opentask skill ([#1013](#1013)) ([372f56d](372f56d))
* drop removed CLIENT_TIMEOUT, fix two descriptions ([#998](#998)) ([9f90854](9f90854))
* fix contradicting artifact pull-back note ([#1004](#1004)) ([edcf4e4](edcf4e4))
* scope the source label claim to gen_ai and gateway series ([#997](#997)) ([36a214e](36a214e))

### 🔧 Miscellaneous

* **deps-dev:** bump the bun group with 2 updates ([#1002](#1002)) ([f7c0c5a](f7c0c5a))
* **deps-dev:** bump the bun group with 4 updates ([#1011](#1011)) ([b52e290](b52e290))
* **deps:** bump actions/create-github-app-token ([#1010](#1010)) ([c465a28](c465a28))
* **deps:** bump actions/setup-node ([#1001](#1001)) ([c0dcf1d](c0dcf1d))
* **deps:** bump claude-code 2.1.285 -> 2.1.289 ([#988](#988)) ([9f5b494](9f5b494))
* **deps:** bump infer CLI v0.221.1 -> v0.226.0 ([#991](#991)) ([844cd4f](844cd4f))
@inference-gateway-releaser

Copy link
Copy Markdown
Contributor

🎉 This PR is included in version 0.9.22 🎉

The release is available on GitHub release

Your semantic-release bot 📦🚀

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[DOCS] document the daemon-hosted A2A server, its a2a.server config and agents.yaml headers

1 participant