Skip to content

[docs] Add interaction service support for polyglot app hosts#1248

Draft
aspire-repo-bot[bot] wants to merge 2 commits into
release/13.5from
docs/polyglot-interaction-service-98511b2f086f3a2f
Draft

[docs] Add interaction service support for polyglot app hosts#1248
aspire-repo-bot[bot] wants to merge 2 commits into
release/13.5from
docs/polyglot-interaction-service-98511b2f086f3a2f

Conversation

@aspire-repo-bot

Copy link
Copy Markdown
Contributor

Documents changes from microsoft/aspire#17959@sebastienros

Targeting release/13.5 based on the source PR milestone 13.5 (exact match on microsoft/aspire.dev).

Why this PR is needed

PR #17959 exposed IInteractionService to polyglot app hosts (TypeScript, Python, Go, Java, and Rust) via the ATS/JSON-RPC surface. The existing interaction service documentation on microsoft/aspire.dev contained an explicit <Aside type="note"> stating:

The IInteractionService API is not yet available in the TypeScript AppHost SDK.

That statement is now incorrect, and users following the docs would not know the API exists or how to use it.

What was changed

Updated src/frontend/src/content/docs/extensibility/interaction-service.mdx:

  • Removed the outdated note that declared the API unavailable in TypeScript.
  • Updated the introduction to state that the interaction service is now available in both C# and polyglot app hosts (TypeScript, Python, Go, Java, Rust).
  • Added a new ## TypeScript app hosts section documenting:
    • Resolving the service via ctx.serviceProvider().getInteractionService()
    • Checking availability with isAvailable()
    • Message-style prompts (promptConfirmation, promptMessageBox, promptNotification)
    • Input factory methods (createTextInput, createSecretInput, createBooleanInput, createNumberInput, createChoiceInput) with builder chaining (.withValue(), .withChoiceOptions())
    • Single and multi-input prompts (promptInput, promptInputs) with result-handle access (result.canceled(), result.inputs().value(name))
    • Dynamic loading via withDynamicLoading and the loadContext pattern
    • Validation callback on the options object using validationContext
  • Added a cross-reference to Multi-language architecture in the See also section.

Files modified

  • src/frontend/src/content/docs/extensibility/interaction-service.mdx (updated)

Generated by PR Documentation Check for issue #17959 · sonnet46 3.9M ·

Document the IInteractionService API now available in TypeScript
(and other polyglot) app hosts via microsoft/aspire#17959.

- Remove outdated note stating the API was unavailable in TypeScript
- Add introductory sentence noting polyglot app host support
- Add 'TypeScript app hosts' section covering:
  - Resolving the service via ctx.serviceProvider().getInteractionService()
  - Availability check with isAvailable()
  - Message-style prompts (promptConfirmation, promptMessageBox, promptNotification)
  - Input factory methods (createTextInput, createSecretInput, etc.)
  - Single and multi-input prompts with result handle access
  - Dynamic loading via withDynamicLoading and loadContext
  - Validation callback on the options object
- Add multi-language architecture cross-reference to See also

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
@aspire-repo-bot aspire-repo-bot Bot added the docs-from-code Copilot initiated issue from dotnet/aspire repo label Jun 11, 2026
@aspire-repo-bot aspire-repo-bot Bot requested a review from JamesNK June 11, 2026 23:38
@aspire-repo-bot

Copy link
Copy Markdown
Contributor Author

Frontend HTML artifact ready

The latest frontend build uploaded the frontend-dist artifact for PR #1248. Use the VS Code button below to open this PR with GitHub Artifacts Explorer and browse the built HTML locally.

VS Code: Open PR #1248 artifacts

This comment updates automatically when a new frontend build artifact is uploaded.

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

Labels

docs-from-code Copilot initiated issue from dotnet/aspire repo

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant