Robutler
Internal

Python ↔ TypeScript Parity Matrix

This page is the single source of truth for which features ship in which SDK. Every public doc page that uses the synced tab="TypeScript" / tab="Python" pattern resolves "is this feature available?" against this matrix. When a feature ships in only one SDK, the missing tab renders a "Coming soon" stub linking to the relevant tracker.

Last verified against webagents/python/webagents/ and webagents/typescript/src/ on the date of the most recent commit to this file.

Decorators

DecoratorPythonTypeScriptNotes
@tooltools/decorators.pycore/decorators.tsPython: scope= (str or list). TS: scopes: string[].
@hookyesyesTS uses lifecycle: instead of positional event.
@promptyesyesBoth support priority + scope.
@handoffyesyesTS adds subscribes / produces for event routing.
@httpyesyesPython: http("/path", method="get"). TS: http({ path, method: 'GET' }).
@websocketyesyes
@pricingyes (credits_per_call=)yes (creditsPerCall:)
@observen/ayesTS-only; non-consuming event observer.
@commandyesComing soonCLI/REPL slash commands.
@widgetyesComing soonHTML widgets returned to capable clients.

Core (built-in skills)

CapabilityPython (agents/skills/core/)TypeScript (skills/)Notes
LLMcore/llm (openai, anthropic, google, …)skills/llm (openai, anthropic, google, fireworks, xai, transformers, webllm, proxy)TS adds transformers and webllm for in-browser inference.
MCPcore/mcpskills/mcp (MCPSkill)
Transportcore/transportskills/transport (a2a, acp, completions, portal, realtime, uamp)
Memorycore/memoryexposed via skills/storage onlyTS does not ship a discrete core/memory skill.
Guardrailscore/guardrailsComing soon
Planningcore/planningComing soon

Local (workstation-side skills)

CapabilityPython (agents/skills/local/)TypeScript (skills/)Notes
Browserlocal/browserskills/browser (automation, camera, geolocation, microphone, notifications, search, storage, wakelock)TS targets in-browser execution; Python targets Playwright.
Checkpointlocal/checkpointskills/checkpoint (CheckpointSkill)
Filesystemlocal/filesystemskills/filesystem (FilesystemSkill)
MCPlocal/mcpskills/mcpTS uses one MCP skill for both local and remote servers.
Pluginlocal/pluginskills/plugin (PluginSkill)
RAGlocal/ragskills/rag (RAGSkill)
Sandboxlocal/sandboxskills/sandbox (SandboxSkill)
Sessionlocal/sessionskills/session (SessionSkill)
Shelllocal/shellskills/shell (ShellSkill)
Test runnerlocal/testrunnerskills/testrunner (TestRunnerSkill)
Todolocal/todoskills/todo (TodoSkill)
Auth (local)local/authComing soonTS exposes only the platform AuthSkill.
CLIlocal/cliComing soon
LSPlocal/lspComing soon
Weblocal/webComing soon
WebUIlocal/webuiComing soon

Robutler / platform

CapabilityPython (agents/skills/robutler/)TypeScript (skills/)Notes
Authrobutler/authskills/auth (AuthSkill)JWT verification via JWKS.
Chatsrobutler/chatsskills/social (ChatsSkill)
Discoveryrobutler/discoveryskills/discovery (PortalDiscoverySkill)
NLIrobutler/nliskills/nli (NLISkill)
Notificationsrobutler/notificationsskills/social (NotificationsSkill)
OpenAPIn/a (under agents/skills/...)skills/openapi (OpenAPISkill)
Paymentsrobutler/paymentsskills/payments (PaymentSkill)
Payments (x402)robutler/payments_x402skills/payments (x402.ts)
Portal Connectrobutler/portal_connectskills/social (PortalConnect)
Portal WSrobutler/portal_wsskills/social (PortalWS)
Storage / KV / JSONrobutler/storage, robutler/kv, robutler/memoryskills/storage (RobutlerMemorySkill, RobutlerKVSkill, RobutlerJSONSkill)
Socialrobutler/socialskills/social (SocialSkill)
Messagesrobutler/messagesskills/messaging/* (slack, discord, telegram, whatsapp, twilio, sendgrid, x, bluesky, instagram, linkedin, messenger, reddit, tiktok, google-chat)
CRMrobutler/crmComing soon
Handoffrobutler/handoff (skill)uses @handoff decorator onlyTS exposes the decorator but not the skill module yet.
Integrationsrobutler/integrationsComing soon
Message historyrobutler/message_historyfolded into skills/social registry
Namespacerobutler/namespaceComing soon
Publishrobutler/publishComing soon
Filesrobutler/filesComing soon

Ecosystem integrations

CapabilityPython (agents/skills/ecosystem/)TypeScript (skills/)Notes
OpenAIecosystem/openaiskills/llm/openaiTS treats OpenAI as an LLM provider, not a separate ecosystem integration.
X / Twitterecosystem/x_comskills/messaging/x
crewaiecosystem/crewaiComing soon
Databaseecosystem/databaseComing soon
falecosystem/falComing soon
Googleecosystem/googleComing soon (chat covered by skills/messaging/google-chat)
MongoDBecosystem/mongodbComing soon
n8necosystem/n8nComing soon
Replicateecosystem/replicateComing soon
UCPecosystem/ucpComing soon
Webecosystem/webComing soon
Zapierecosystem/zapierComing soon

TypeScript-only (no Python equivalent yet)

TS moduleNotes
skills/speechSTT / TTS for in-browser voice agents.
skills/routingDynamicRoutingSkill — runtime agent-to-agent discovery and delegation.
skills/mediaStoreMediaSkill — distinct from Python core/media.
skills/messaging/{bluesky,instagram,linkedin,messenger,reddit,sendgrid,telegram,tiktok,twilio,whatsapp,google-chat}Provider modules that do not yet have Python counterparts.

CLI / Server

Conventions for doc snippets

  1. Every code example that demonstrates SDK usage must render both tabs (tab="TypeScript" then tab="Python"). The remark plugin in lib/remark-code-tabs.ts merges consecutive tagged blocks into <Tabs groupId="lang" persist>.
  2. When a feature is "Coming soon" in a tab, the body of that tab is a single comment explaining the gap and (where useful) the closest current alternative. Inside MDX-only pages, a Callout may also be used; in plain Markdown, a > Note: blockquote is sufficient and renders correctly under both Fumadocs and mkdocs-material.
  3. Snippets must always match the actual exported API. Verify against:

On this page