From 1dc2ca3e00e562feb330f216d21690d9ffed1e81 Mon Sep 17 00:00:00 2001 From: Yaroslav Halchenko Date: Sat, 24 Jan 2026 22:42:48 -0500 Subject: [PATCH 1/7] Add github action to codespell main on push and PRs Signed-off-by: Yaroslav Halchenko --- .github/workflows/codespell.yml | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) create mode 100644 .github/workflows/codespell.yml diff --git a/.github/workflows/codespell.yml b/.github/workflows/codespell.yml new file mode 100644 index 000000000..c59e04737 --- /dev/null +++ b/.github/workflows/codespell.yml @@ -0,0 +1,25 @@ +# Codespell configuration is within .codespellrc +--- +name: Codespell + +on: + push: + branches: [main] + pull_request: + branches: [main] + +permissions: + contents: read + +jobs: + codespell: + name: Check for spelling errors + runs-on: ubuntu-latest + + steps: + - name: Checkout + uses: actions/checkout@v4 + - name: Annotate locations with typos + uses: codespell-project/codespell-problem-matcher@v1 + - name: Codespell + uses: codespell-project/actions-codespell@v2 From 0689f56df7f30fcfa3e873344a5582a794cd6adb Mon Sep 17 00:00:00 2001 From: Yaroslav Halchenko Date: Sat, 24 Jan 2026 22:42:48 -0500 Subject: [PATCH 2/7] Add rudimentary codespell config Signed-off-by: Yaroslav Halchenko --- .codespellrc | 6 ++++++ 1 file changed, 6 insertions(+) create mode 100644 .codespellrc diff --git a/.codespellrc b/.codespellrc new file mode 100644 index 000000000..e971aca1d --- /dev/null +++ b/.codespellrc @@ -0,0 +1,6 @@ +[codespell] +# Ref: https://github.com/codespell-project/codespell#using-a-config-file +skip = .git*,*.svg,package-lock.json,*-lock.yaml,*.lock,*.css,.codespellrc +check-hidden = true +ignore-regex = ^\s*"image/\S+": ".* +# ignore-words-list = From 2c9b6953ded95c6c53053b177dc1c586de9d0281 Mon Sep 17 00:00:00 2001 From: Yaroslav Halchenko Date: Sat, 24 Jan 2026 22:44:02 -0500 Subject: [PATCH 3/7] chore: update codespell config to skip cache directories Signed-off-by: Yaroslav Halchenko --- .codespellrc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.codespellrc b/.codespellrc index e971aca1d..1a66fc059 100644 --- a/.codespellrc +++ b/.codespellrc @@ -1,6 +1,6 @@ [codespell] # Ref: https://github.com/codespell-project/codespell#using-a-config-file -skip = .git*,*.svg,package-lock.json,*-lock.yaml,*.lock,*.css,.codespellrc +skip = .git*,*.svg,package-lock.json,*-lock.yaml,*.lock,*.css,.codespellrc,.cache,.npm check-hidden = true ignore-regex = ^\s*"image/\S+": ".* # ignore-words-list = From 29232d56fe7da5d3c5099d16053a917a3236da67 Mon Sep 17 00:00:00 2001 From: Yaroslav Halchenko Date: Sat, 24 Jan 2026 22:44:26 -0500 Subject: [PATCH 4/7] chore: add SER and cyclin to codespell ignore list (biology terms) Signed-off-by: Yaroslav Halchenko --- .codespellrc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.codespellrc b/.codespellrc index 1a66fc059..20ef6f2f0 100644 --- a/.codespellrc +++ b/.codespellrc @@ -3,4 +3,4 @@ skip = .git*,*.svg,package-lock.json,*-lock.yaml,*.lock,*.css,.codespellrc,.cache,.npm check-hidden = true ignore-regex = ^\s*"image/\S+": ".* -# ignore-words-list = +ignore-words-list = ser,cyclin From 10d3c932db301b7dd6363718e94ecd2f43a74314 Mon Sep 17 00:00:00 2001 From: Yaroslav Halchenko Date: Sat, 24 Jan 2026 23:19:01 -0500 Subject: [PATCH 5/7] chore: fix ambiguous typos requiring context review Fixed ambiguous typos: - custome -> custom (samples/client/angular/README.md:9) - 'Google Map custom components' - Reenable -> Re-enable (tools/editor/middleware/gemini.ts:23) - TODO comment Signed-off-by: Yaroslav Halchenko --- samples/client/angular/README.md | 2 +- tools/editor/middleware/gemini.ts | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/samples/client/angular/README.md b/samples/client/angular/README.md index b68a240cd..38cdb5e61 100644 --- a/samples/client/angular/README.md +++ b/samples/client/angular/README.md @@ -7,7 +7,7 @@ These are sample implementations of A2UI in Angular. 1. [nodejs](https://nodejs.org/en) 2. [uv](https://docs.astral.sh/uv/getting-started/installation/) -NOTE: [For the rizzcharts app](../../agent/adk/rizzcharts/), you will need GoogleMap API ([How to get the API key](https://developers.google.com/maps/documentation/javascript/get-api-key)) to display Google Map custome components. Please refer to [Rizzcharts README](./projects/rizzcharts/README.md) +NOTE: [For the rizzcharts app](../../agent/adk/rizzcharts/), you will need GoogleMap API ([How to get the API key](https://developers.google.com/maps/documentation/javascript/get-api-key)) to display Google Map custom components. Please refer to [Rizzcharts README](./projects/rizzcharts/README.md) ## Running diff --git a/tools/editor/middleware/gemini.ts b/tools/editor/middleware/gemini.ts index 59a19291f..3eaec2c88 100644 --- a/tools/editor/middleware/gemini.ts +++ b/tools/editor/middleware/gemini.ts @@ -20,7 +20,7 @@ import { GoogleGenAI } from "@google/genai"; import { v0_8 } from "@a2ui/lit"; import { createA2UIPrompt, createImageParsePrompt } from "./prompts"; -// TODO: Reenable. +// TODO: Re-enable. // import ServerToClientMessage from "../schemas/a2ui-message.js"; let catalog: v0_8.Types.ClientCapabilitiesDynamic | null = null; From e247fd153eb45b8ca553bb4bb8737a6d3647b982 Mon Sep 17 00:00:00 2001 From: Yaroslav Halchenko Date: Wed, 11 Mar 2026 14:23:12 -0400 Subject: [PATCH 6/7] chore: add camelCase regex and remove redundant problem-matcher - Add ignore-regex for camelCase/PascalCase identifiers (e.g., doubleClick) - Remove codespell-problem-matcher step (built into actions-codespell@v2) Co-Authored-By: Claude Code 2.1.63 / Claude Opus 4.6 Signed-off-by: Yaroslav Halchenko --- .codespellrc | 3 ++- .github/workflows/codespell.yml | 2 -- 2 files changed, 2 insertions(+), 3 deletions(-) diff --git a/.codespellrc b/.codespellrc index 20ef6f2f0..fd9bd1865 100644 --- a/.codespellrc +++ b/.codespellrc @@ -2,5 +2,6 @@ # Ref: https://github.com/codespell-project/codespell#using-a-config-file skip = .git*,*.svg,package-lock.json,*-lock.yaml,*.lock,*.css,.codespellrc,.cache,.npm check-hidden = true -ignore-regex = ^\s*"image/\S+": ".* +# Ignore embedded base64 images in notebooks and camelCase/PascalCase identifiers +ignore-regex = ^\s*"image/\S+": ".*|\b[a-z]+[A-Z]\w*\b|\b[A-Z][a-z]+[A-Z]\w*\b ignore-words-list = ser,cyclin diff --git a/.github/workflows/codespell.yml b/.github/workflows/codespell.yml index c59e04737..7c9eafb17 100644 --- a/.github/workflows/codespell.yml +++ b/.github/workflows/codespell.yml @@ -19,7 +19,5 @@ jobs: steps: - name: Checkout uses: actions/checkout@v4 - - name: Annotate locations with typos - uses: codespell-project/codespell-problem-matcher@v1 - name: Codespell uses: codespell-project/actions-codespell@v2 From 9659bc2dbf5e71ea1ccfd1bf0384f61677a6a516 Mon Sep 17 00:00:00 2001 From: Yaroslav Halchenko Date: Wed, 11 Mar 2026 14:23:27 -0400 Subject: [PATCH 7/7] [DATALAD RUNCMD] chore: fix non-ambiguous typos with codespell Fixed typos: - releative -> relative (input-area.scss) - reponse -> response (chat-service.ts) - effecient -> efficient (a2ui_protocol.md) Co-Authored-By: Claude Code 2.1.63 / Claude Opus 4.6 === Do not change lines below === { "chain": [], "cmd": "uvx codespell -w", "exit": 0, "extra_inputs": [], "inputs": [], "outputs": [], "pwd": "." } ^^^ Do not change lines above ^^^ Signed-off-by: Yaroslav Halchenko --- .../src/lib/components/chat/input-area/input-area.scss | 2 +- .../projects/a2a-chat-canvas/src/lib/services/chat-service.ts | 2 +- specification/v0_9/docs/a2ui_protocol.md | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/samples/client/angular/projects/a2a-chat-canvas/src/lib/components/chat/input-area/input-area.scss b/samples/client/angular/projects/a2a-chat-canvas/src/lib/components/chat/input-area/input-area.scss index cfd5c2168..5871b02dc 100644 --- a/samples/client/angular/projects/a2a-chat-canvas/src/lib/components/chat/input-area/input-area.scss +++ b/samples/client/angular/projects/a2a-chat-canvas/src/lib/components/chat/input-area/input-area.scss @@ -18,7 +18,7 @@ display: block; padding-inline: 16px; margin-block-end: 24px; - // Lets the ::before pseudo element be positioned absolutely releative to + // Lets the ::before pseudo element be positioned absolutely relative to // the InputArea. position: relative; diff --git a/samples/client/angular/projects/a2a-chat-canvas/src/lib/services/chat-service.ts b/samples/client/angular/projects/a2a-chat-canvas/src/lib/services/chat-service.ts index d77e02440..b33c521db 100644 --- a/samples/client/angular/projects/a2a-chat-canvas/src/lib/services/chat-service.ts +++ b/samples/client/angular/projects/a2a-chat-canvas/src/lib/services/chat-service.ts @@ -258,7 +258,7 @@ export class ChatService { /** * Creates the agent role based on the agent card and the message response if available. * - * @param response The reponse message received from the agent. + * @param response The response message received from the agent. * @returns A new UiAgent object representing the agent that the user is chatting with. */ private createRole(response?: SendMessageSuccessResponse): UiAgent { diff --git a/specification/v0_9/docs/a2ui_protocol.md b/specification/v0_9/docs/a2ui_protocol.md index 0caf57d60..b90bfbb56 100644 --- a/specification/v0_9/docs/a2ui_protocol.md +++ b/specification/v0_9/docs/a2ui_protocol.md @@ -99,7 +99,7 @@ While A2UI is agnostic, it is most commonly used with the following transports. #### A2A (Agent2Agent) binding [A2A (Agent-to-Agent)](https://a2a-protocol.org/latest/) is an excellent transport option for A2UI in agentic systems, extending A2A with additional payloads. -A2A is uniquely capable of handling remote agent communication, and can also provide a secure and effecient transport between an agentic backend and front end application. +A2A is uniquely capable of handling remote agent communication, and can also provide a secure and efficient transport between an agentic backend and front end application. - **Message mapping**: Each A2UI envelope (e.g., `updateComponents`) corresponds to the payload of a single A2A message Part. - **Metadata**: