From 09d6ae30ad2b7cb7b69c5048f64ee84c7bcde9e3 Mon Sep 17 00:00:00 2001 From: Kacper Wojciechowski <39823706+jog1t@users.noreply.github.com> Date: Fri, 18 Sep 2026 03:10:21 +0200 Subject: [PATCH] fix(website): point workflow references at @rivet-dev/workflows The /workflows hero example loaded the old rivetkit/workflow snippet from the actors docs root; it now reads the workflows docs root. GitHub links, FAQ copy, the agentOS code tab, and the agent setup issues URL move to the standalone package. --- HIDDEN.md | 1 - src/data/agentSetupPrompt.ts | 2 +- src/data/faqs/workflows.ts | 4 +- src/data/use-cases.ts | 104 ----------------------------------- src/pages/actors.astro | 2 +- src/pages/agentos.astro | 9 ++- src/pages/workflows.astro | 17 +++--- 7 files changed, 16 insertions(+), 123 deletions(-) delete mode 100644 src/data/use-cases.ts diff --git a/HIDDEN.md b/HIDDEN.md index d3f1891d..28be2930 100644 --- a/HIDDEN.md +++ b/HIDDEN.md @@ -42,7 +42,6 @@ Pages that render a TODO callout. These are live and indexed. | `/actors/docs/http-api` | rivet repo | | `/agentos/docs/software` | agentos repo | | `/dynamic-apps/docs`, `/docs/concepts`, `/docs/quickstart` | dynamic-apps repo — whole vertical unwritten | -| `/workflows/docs`, `/docs/concepts`, `/docs/quickstart` | workflows repo — whole vertical unwritten | ## Content parked, not published diff --git a/src/data/agentSetupPrompt.ts b/src/data/agentSetupPrompt.ts index 602a77e5..a226f635 100644 --- a/src/data/agentSetupPrompt.ts +++ b/src/data/agentSetupPrompt.ts @@ -45,7 +45,7 @@ export const AGENT_SETUP_PROMPTS = { packageName: '@rivet-dev/workflows', quickstartUrl: 'https://rivet.dev/workflows/docs/quickstart/', docsUrl: 'https://rivet.dev/workflows/docs/', - issuesUrl: 'https://github.com/rivet-dev/actors/issues', + issuesUrl: 'https://github.com/rivet-dev/workflows/issues', }), 'dynamic-apps': buildAgentSetupPrompt({ product: 'Dynamic Apps', diff --git a/src/data/faqs/workflows.ts b/src/data/faqs/workflows.ts index 50d16a11..3d9b8ca9 100644 --- a/src/data/faqs/workflows.ts +++ b/src/data/faqs/workflows.ts @@ -7,7 +7,7 @@ export const workflowsFaqs: FaqItem[] = [ { question: "What is a Rivet Workflow?", answerHtml: - 'An Actor run handler wrapped in workflow(). Each ctx.step() records its result, so a run resumes after restarts and deployments.', + 'An Actor defined with workflow() from @rivet-dev/workflows. Each ctx.step() records its result, so a run resumes after restarts and deployments.', }, { question: "Does Workflows guarantee exactly-once execution?", @@ -32,6 +32,6 @@ export const workflowsFaqs: FaqItem[] = [ { question: "Is Rivet Workflows open source?", answerHtml: - 'Yes, Apache 2.0. Read the implementation on GitHub.', + 'Yes, Apache 2.0. Read the implementation on GitHub.', }, ]; diff --git a/src/data/use-cases.ts b/src/data/use-cases.ts deleted file mode 100644 index 3bc6e7c6..00000000 --- a/src/data/use-cases.ts +++ /dev/null @@ -1,104 +0,0 @@ -import { - faClock, - faDatabase, - faDiagramNext, - faFilePen, - faGamepad, - faGaugeHigh, - faGlobe, - faNetworkWired, - faRobot, - faRotate, - faUserRobot, -} from "@rivet-gg/icons"; - -export interface UseCase { - title: string; - href: string; - icon?: any; - description?: string; -} - -export const useCases: UseCase[] = [ - { - title: "AI Agent", - href: "/docs/use-cases/ai-agent", - icon: faRobot, - description: - "Build durable AI assistants with persistent memory and realtime streaming", - }, - { - title: "Realtime Docs", - href: "/docs/use-cases/crdt", - icon: faFilePen, - description: - "Collaborative documents with CRDTs and realtime synchronization", - }, - { - title: "Workflows", - href: "/docs/use-cases/workflows", - icon: faDiagramNext, - description: - "Durable multi-step workflows with automatic state management", - }, - { - title: "Local-First Sync", - href: "/docs/use-cases/sync", - icon: faRotate, - description: "Offline-first applications with server synchronization", - }, - { - title: "Bots", - href: "/docs/use-cases/bots", - icon: faUserRobot, - description: "Discord, Slack, or autonomous bots with persistent state", - }, - { - title: "Per-Tenant Databases", - href: "/docs/use-cases/database", - icon: faDatabase, - description: - "Isolated data stores for each user with zero-latency access", - }, - { - title: "Multiplayer Game", - href: "/docs/use-cases/game", - icon: faGamepad, - description: - "Authoritative game servers with realtime state synchronization", - }, - { - title: "Background Jobs", - href: "/docs/use-cases/background-jobs", - icon: faClock, - description: - "Scheduled and recurring jobs without external queue infrastructure", - }, - { - title: "Rate Limiting", - href: "/docs/use-cases/rate", - icon: faGaugeHigh, - description: "Distributed rate limiting with in-memory counters", - }, - { - title: "Geo-Distributed Database", - href: "/actors/docs/general/edge", - icon: faGlobe, - description: - "Store data close to users globally with automatic edge distribution", - }, - { - title: "Agent Orchestration & MCP", - href: "/docs/use-cases/ai-agent", - icon: faRobot, - description: - "Build AI agents with Model Context Protocol and persistent state", - }, - { - title: "Multiplayer Apps", - href: "/docs/use-cases/game", - icon: faNetworkWired, - description: - "Build realtime multiplayer applications with authoritative state", - }, -]; diff --git a/src/pages/actors.astro b/src/pages/actors.astro index c47e58b9..b127c077 100644 --- a/src/pages/actors.astro +++ b/src/pages/actors.astro @@ -75,7 +75,7 @@ const compositionLayers = [ { name: 'Workflows', logo: productLogos.workflows.src, - body: 'Adds recorded steps, retries, and replay for work that outlives a process. Every workflow is an Actor run handler.', + body: 'Adds recorded steps, retries, and replay for work that outlives a process. Every workflow is an Actor.', href: '/workflows/', }, { diff --git a/src/pages/agentos.astro b/src/pages/agentos.astro index 6aa3ceb1..19ec8ab0 100644 --- a/src/pages/agentos.astro +++ b/src/pages/agentos.astro @@ -116,17 +116,16 @@ await bob.prompt({ { key: 'workflows', fileName: 'workflow.ts', code: `// server.ts import { agentOS, setup } from "@rivet-dev/agentos"; import pi from "@agentos-software/pi"; -import { actor, queue } from "rivetkit"; -import { workflow } from "rivetkit/workflow"; +import { queue, workflow } from "@rivet-dev/workflows"; const vm = agentOS({ software: [pi] }); -const codeReview = actor({ +const codeReview = workflow({ state: { status: "pending" }, queues: { review: queue<{ approved: boolean; feedback?: string }>(), }, - run: workflow(async (ctx) => { + run: async (ctx) => { let feedback = ""; for (let revision = 1; revision <= 3; revision++) { @@ -164,7 +163,7 @@ const codeReview = actor({ } throw new Error("Review rejected after 3 revisions"); - }), + }, }); export const registry = setup({ use: { vm, codeReview } }); diff --git a/src/pages/workflows.astro b/src/pages/workflows.astro index e3278cce..61ce8eb5 100644 --- a/src/pages/workflows.astro +++ b/src/pages/workflows.astro @@ -46,16 +46,15 @@ import { SITE_SECTION_CLASS, } from '@/components/marketing/layout'; -const WORKFLOW_SOURCE_ROOT = - 'https://github.com/rivet-dev/rivet/tree/main/rivetkit-typescript/packages/rivetkit/src/workflow'; -const ACTOR_EXAMPLE_ROOT = - 'https://github.com/rivet-dev/rivet/blob/main/examples/docs/actors-workflows'; +const WORKFLOW_SOURCE_ROOT = 'https://github.com/rivet-dev/workflows'; +const WORKFLOW_EXAMPLE_ROOT = + 'https://github.com/rivet-dev/workflows/blob/main/examples/docs/actors-workflows'; const BUG_FIXER_SOURCE_URL_ROOT = 'https://github.com/rivet-dev/agentos/blob/main/examples/workflows'; const INSPECTOR_IMAGE = 'https://assets.rivet.dev/website/marketing/screenshots/rivet-workflows-inspector.png'; -const actorsRoot = requireDocsRoot('actors'); +const workflowsRoot = requireDocsRoot('workflows'); const workflowsProduct = getProduct('workflows'); if (!workflowsProduct) { @@ -86,14 +85,14 @@ const progressTabs = await Promise.all([ sourceTab({ key: 'invoice', label: 'invoice.ts', - root: actorsRoot, + root: workflowsRoot, file: 'examples/docs/actors-workflows/simple-workflow/index.ts', documentationUrl: '/workflows/docs/quickstart', - sourceUrl: `${ACTOR_EXAMPLE_ROOT}/simple-workflow/index.ts`, + sourceUrl: `${WORKFLOW_EXAMPLE_ROOT}/simple-workflow/index.ts`, }), ]); -// What every run gets from the Actor it lives in. These double as the +// What every run gets from being an Actor. These double as the // differentiators against cluster-based durable execution, stated positively. const actorInheritance = [ { @@ -129,7 +128,7 @@ const compositionLayers = [ { name: 'Actors', logo: productLogos.actors.src, - body: 'Every workflow is an Actor run handler. Actors provide identity, state, queues, and scheduling.', + body: 'Every workflow is an Actor. Actors provide identity, state, queues, and scheduling.', href: '/actors/', }, {