# Writing Assistance APIs A collection of high-level browser-native web APIs proposed by the [[WebMachineLearning]] working group for text composition tasks. They wrap browser-provided LLMs (see [[Prompt API]] and [[Browser-Provided Language Models]]) behind task-specific JavaScript interfaces, delivering streaming output without cloud dependencies. Spec repo: https://github.com/webmachinelearning/writing-assistance-apis ## Component APIs ### Summarizer API - Condenses text into shorter form - Configurable format (plain text, markdown, bullet points), length, and language - Streaming output support ### Writer API - Generates new text given instructions and optional context - Configurable tone (formal, casual), format, and length ### Rewriter API - Rewrites existing text following instructions - Useful for tone changes, simplification, or localization ## Design Rationale Higher-level than [[Prompt API]]: - No prompt engineering required — caller specifies task type, format, length - Implemented by the browser using its provided model - Consistent behavior across use cases without needing a general-purpose LLM interface ## Relationship to Prompt API | | Prompt API | Writing Assistance APIs | |---|---|---| | Abstraction | Low-level (raw prompts) | High-level (task-specific) | | Flexibility | Arbitrary tasks | Summarize, Write, Rewrite | | Prompt control | Full control | Browser-managed | | Use case | Power users, complex apps | Standard writing workflows | ## Status Early incubation in W3C WebML WG. Experimental in Chrome. ## References - https://github.com/webmachinelearning/writing-assistance-apis ## Related - [[WebMachineLearning]] - [[Prompt API]] - [[WebNN API]] - [[Browser-Provided Language Models]] - [[On-Device Machine Learning]] - [[Large Language Models (LLMs)]] - [[AI Inference]]