Skip to content

docs(plugins): add Adaptive Cards to community plugins#41735

Closed
VikrantSingh01 wants to merge 3 commits intoopenclaw:mainfrom
VikrantSingh01:docs/community-plugin-adaptive-cards
Closed

docs(plugins): add Adaptive Cards to community plugins#41735
VikrantSingh01 wants to merge 3 commits intoopenclaw:mainfrom
VikrantSingh01:docs/community-plugin-adaptive-cards

Conversation

@VikrantSingh01
Copy link
Copy Markdown

@VikrantSingh01 VikrantSingh01 commented Mar 10, 2026

Summary

Adds the Adaptive Cards plugin to the community plugins listing.

  • Plugin: @vikrantsingh01/openclaw-adaptive-cards
  • Version: v4.0.0
  • What it does: Registers an adaptive_card AI tool that lets the agent respond with native Adaptive Cards (v1.6) instead of plain text
  • Validation: Full AJV-based v1.6 JSON Schema validation, 7 host compatibility profiles (Teams, Outlook, Web Chat, Windows, Viva, Webex, Generic), WCAG accessibility scoring — powered by adaptive-cards-mcp v2.3.0
  • Rendering: iOS (SwiftUI), Android (Jetpack Compose), Teams (Bot Framework), Web (lightweight Lit renderer)
  • Fallback: Auto-generates plain text for non-card channels (Telegram, Slack, IRC, Signal)
  • Patterns: 21 production-ready layout patterns (notifications, approvals, dashboards, forms, profiles, etc.)
  • Actions: Action.Execute routing back to agent via gateway method
  • Config: Stateless — zero configuration needed

Quality bar

  • Published on npm
  • Public GitHub repository with README, LICENSE (MIT), CHANGELOG
  • Comprehensive unit tests (Vitest), TypeScript strict mode, GitHub Actions CI (Node 22/23 matrix)
  • Source split into focused modules (constants.ts, fallback.ts, mcp-bridge.ts, prompt.ts, actions.ts, index.ts)
  • v4.0 uses adaptive-cards-mcp as shared core — eliminates ~520 lines of duplicate validation logic
  • Responsive issue tracker
  • 8 card template patterns shipped as a skill (skills/adaptive-cards.md)

Origin

Extracted from #33486 at maintainer request to be published as a standalone third-party plugin.

Related PRs

@greptile-apps
Copy link
Copy Markdown
Contributor

greptile-apps Bot commented Mar 10, 2026

Greptile Summary

This PR adds the Adaptive Cards plugin (@vikrantsingh01/openclaw-adaptive-cards) to the community plugins listing in docs/plugins/community.md. The entry is a safe documentation-only addition that follows the required format correctly — the npm package name, repo URL, and install command are all properly structured and consistent.

The main style note is that the description is longer than the "one-line description" explicitly called for in the submission guidelines (line 29). The entry currently spans multiple sentences, whereas existing entries like WeChat are more concise and aligned with the template intent.

Confidence Score: 4/5

  • Safe to merge — this is a documentation-only change with a minor style suggestion.
  • This is a documentation-only PR with no code changes. The plugin entry is correctly structured and all required fields (npm, repo, install) are present and consistent. The one finding is a style note about description length vs. the stated "one-line" guideline — a minor issue that doesn't affect the correctness or safety of the addition.
  • docs/plugins/community.md — minor description length style note

Last reviewed commit: 1c56552

Comment thread docs/plugins/community.md Outdated
@@ -45,6 +45,11 @@ Use this format when adding entries:

## Listed plugins

- **Adaptive Cards** — Native structured UI for AI responses. Registers an `adaptive_card` tool that lets the agent emit interactive Adaptive Cards (v1.5) with status dashboards, option pickers, forms, and data tables. Cards render natively on iOS (SwiftUI), Android (Jetpack Compose), Teams (Bot Framework), and web. Non-card channels receive auto-generated fallback text. Zero configuration required.
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The "How to submit" section (line 29) explicitly asks for a one-line description, and the candidate format template (line 41) shows short description. The current entry spans multiple sentences across the line, which is considerably more verbose than the existing WeChat entry and the template intent.

Consider trimming to a single concise sentence:

Suggested change
- **Adaptive Cards**Native structured UI for AI responses. Registers an `adaptive_card` tool that lets the agent emit interactive Adaptive Cards (v1.5) with status dashboards, option pickers, forms, and data tables. Cards render natively on iOS (SwiftUI), Android (Jetpack Compose), Teams (Bot Framework), and web. Non-card channels receive auto-generated fallback text. Zero configuration required.
- **Adaptive Cards** — Registers an `adaptive_card` tool that lets the agent respond with native Adaptive Cards (v1.5) across iOS, Android, Teams, and web, with automatic plain-text fallback for unsupported channels.
Prompt To Fix With AI
This is a comment left during a code review.
Path: docs/plugins/community.md
Line: 48

Comment:
The "How to submit" section (line 29) explicitly asks for a **one-line description**, and the candidate format template (line 41) shows `short description`. The current entry spans multiple sentences across the line, which is considerably more verbose than the existing WeChat entry and the template intent.

Consider trimming to a single concise sentence:

```suggestion
- **Adaptive Cards** — Registers an `adaptive_card` tool that lets the agent respond with native Adaptive Cards (v1.5) across iOS, Android, Teams, and web, with automatic plain-text fallback for unsupported channels.
```

How can I resolve this? If you propose a fix, please make it concise.

Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Fixed in 8a38e9e. Adopted your suggested one-line description.

@openclaw-barnacle openclaw-barnacle Bot added docs Improvements or additions to documentation size: XS labels Mar 10, 2026
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
BradGroux

This comment was marked as duplicate.

Copy link
Copy Markdown
Member

@BradGroux BradGroux left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Review: Community Plugin Listing

Clean addition. Follows the exact format of every other entry on the community plugins page. Clean docs-only. Adds @vikrantsingh01/openclaw-adaptive-cards to docs/plugins/community.md following the existing format exactly. Install command, repo link, npm package, all present.

One minor note: the description is more detailed than other entries in the list (mentions v1.6, host profiles, WCAG, pattern count). Not a blocker, it is accurate and useful for discovery, but worth noting for consistency if the community list grows.

No code changes, no risk. Ship it.

@BradGroux
Copy link
Copy Markdown
Member

Hey @VikrantSingh01 -- this has a merge conflict in docs/plugins/community.md. The file was reformatted on main since you branched (switched from bullet-list style to ### header blocks with separate npm/repo/install lines and code fences).

Can you rebase on main and update the Adaptive Cards entry to match the current format? Should be a quick fix since it's just the one file.

Thanks!

@steipete
Copy link
Copy Markdown
Contributor

Closing this as better suited for ClawHub/community plugin work after Codex review.

Current main moved community-plugin discovery to ClawHub, and the new community plugins page explicitly says not to open docs-only PRs just to add a plugin for discoverability. This PR is a docs-only listing addition, so it no longer fits OpenClaw core docs scope.

What I checked:

  • Community plugins page now rejects docs-only discovery PRs: The current page says ClawHub is the canonical discovery surface and explicitly instructs contributors not to open docs-only PRs just to add a plugin for discoverability, but to publish on ClawHub instead. Public docs: docs/plugins/community.md. (docs/plugins/community.md:14, 350d3221800a)
  • ClawHub is the registry for plugins: Main docs define ClawHub as the public registry for OpenClaw skills and plugins, which matches this PR's purpose more directly than a source-doc listing entry. Public docs: docs/tools/clawhub.md. (docs/tools/clawhub.md:10, 350d3221800a)
  • Project vision prefers external publication paths: VISION.md says new capabilities that can live in ClawHub should go there first rather than into core surfaces by default. While written for skills, it reinforces the same scope boundary now reflected in plugin docs. (VISION.md:69, 350d3221800a)
  • This PR is only a docs listing change: The PR changes only docs/plugins/community.md to add one plugin listing entry and does not make a broader source-doc correction or product change. Public docs: docs/plugins/community.md. (docs/plugins/community.md:24, c0d357b43c7c)
  • Current main replaced the old page with a new scoped policy: docs/plugins/community.md was recreated on main in commit a50aef8, introducing the current ClawHub-first guidance and submission rules after this PR was opened. Public docs: docs/plugins/community.md. (docs/plugins/community.md:1, a50aef82ba32)

So I’m closing this as a scope-fit item for the plugin/community path rather than keeping it open as an OpenClaw core request.

Review notes: reviewed against 350d3221800a.

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

Labels

docs Improvements or additions to documentation size: XS

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants