This is an early preview of the Restate Coding Agent Plugin. Please submit feedback (positive and negative) in the Restate Discord, Slack Community, or via issues in this repo.
A coding agent plugin for building applications with Restate — the durable execution runtime for resilient services, workflows, and AI agents.
Packaged for Claude Code, Cursor, and Codex. Works across four Restate SDKs: TypeScript, Python, Java, and Go.
- One skill (
restate) that activates automatically when you mention Restate concepts or open a Restate template. It detects your SDK frompackage.json,requirements.txt/pyproject.toml,pom.xml/build.gradle, orgo.modand loads the right reference on demand. - One MCP server (
restate-docs) bound tohttps://docs.restate.dev/mcpfor searching conceptual guides, deployment docs, server config, and advanced topics.
The same plugin source ships manifests for Claude Code, Cursor, and Codex — all three live under plugins/restatedev/ and share one skills/ tree.
Add the marketplace and install the plugin from within Claude Code:
/plugin marketplace add restatedev/skills
/plugin install restatedev@restatedev-plugin
To verify, run /plugin — you should see restatedev-plugin listed as enabled.
Cursor discovers the plugin via .cursor-plugin/marketplace.json at the repo root. Follow Cursor's plugin marketplace workflow to install from restatedev/skills.
Add the marketplace:
codex plugin marketplace add restatedev/skillsInstall the plugin through Codex's TUI: launch codex, run /plugins, find the Restate marketplace, select the Restate plugin, and choose Install. Restart Codex after install completes.
To add the Restate skills to any coding agent:
npx skills add restatedev/skillsYou will need to add the MCP server manually in this case. See .mcp.json.
The skill triggers on mentions of Restate, durable execution, virtual objects, workflows, durable agents, and related terms.
Once active, it progressively loads references for:
| Topic | Reference |
|---|---|
| SDK setup, API patterns, determinism rules, error handling, testing, pitfalls | references/<sdk>/api-and-pitfalls.md |
| Designing a new Restate application, picking service types | references/design-and-architecture.md |
| Migrating to Restate from other workflow orchestrators or general microservices applications | references/translate-to-restate.md |
| Invoking, cancelling, attaching, idempotency, sends, Kafka | references/invocation-lifecycle.md |
| Debugging stuck invocations and journal mismatches | references/debug-applications.md |
| AI agents with Vercel AI SDK (TS) | references/ts/restate-vercel-ai-agents.md |
| AI agents with OpenAI Agents SDK (Python) | references/python/restate-openai-agents-agents.md |
| AI agents with Google ADK (Python) | references/python/restate-google-adk-agents.md |
| AI agents with Pydantic AI (Python) | references/python/restate-pydantic-ai-agents.md |
Paths above are relative to plugins/restatedev/skills/building-restate-services/.
Deployment, server configuration, Kafka setup, and other advanced topics are handled by querying the bundled restate-docs MCP server.
Test the Claude Code plugin locally with:
claude --plugin-dir /path/to/this/repo/plugins/restatedevFor Cursor and Codex CLI, point their respective local-plugin flags at the same plugins/restatedev/ directory.
Note: The
plugins/restatedev/skills/folder in this repo is synced automatically every 12 hours fromrestatedev/docs-restate, where the skills are authored, tested, and updated. Edits made directly here will be overwritten — contribute changes upstream indocs-restateinstead. Reference files live underplugins/restatedev/skills/building-restate-services/references/. When adding a new topic, link it fromSKILL.md's context table so the skill knows when to load it.
- Restate homepage: https://restate.dev
- Documentation: https://docs.restate.dev
- Service examples: https://github.com/restatedev/examples
- AI agent examples: https://github.com/restatedev/ai-examples
- SDK repos: sdk-typescript, sdk-python, sdk-java, sdk-go
MIT