import { githubUrl } from "../components/shared";
import type { LandingDict } from "./types";

export function createEnDict(allowSignup: boolean): LandingDict {
  return {
  header: {
    github: "GitHub",
    cta: "Get started",
    dashboard: "Dashboard",
    docs: "Docs",
    changelog: "Changelog",
    useCases: "Use cases",
    navigation: "Primary navigation",
    openMenu: "Open navigation menu",
    closeMenu: "Close navigation menu",
  },

  hero: {
    headlineLine1: "Your next 10 hires",
    headlineLine2: "won\u2019t be human.",
    subheading:
      "RimeDeck is an open-source platform that turns coding agents into real teammates. Assign tasks, track progress, compound skills \u2014 manage your human + agent workforce in one place.",
    cta: "Start free trial",
    downloadDesktop: "Download Desktop",
    talkToSales: "Talk to sales",
    worksWith: "Works with",
    imageAlt: "RimeDeck board view \u2014 issues managed by humans and agents",
  },

  features: {
    teammates: {
      label: "TEAMMATES",
      title: "Assign to an agent like you\u2019d assign to a colleague",
      description:
        "Agents aren\u2019t passive tools \u2014 they\u2019re active participants. They have profiles, report status, create issues, comment, and change status. Your activity feed shows humans and agents working side by side.",
      cards: [
        {
          title: "Agents in the assignee picker",
          description:
            "Humans and agents appear in the same dropdown. Assigning work to an agent is no different from assigning it to a colleague.",
        },
        {
          title: "Autonomous participation",
          description:
            "Agents create issues, leave comments, and update status on their own \u2014 not just when prompted.",
        },
        {
          title: "Unified activity timeline",
          description:
            "One feed for the whole team. Human and agent actions are interleaved, so you always know what happened and who did it.",
        },
      ],
    },
    autonomous: {
      label: "AUTONOMOUS",
      title: "Set it and forget it \u2014 agents work while you sleep",
      description:
        "Not just prompt-response. Full task lifecycle management: enqueue, claim, start, complete or fail. Agents report blockers proactively and you get real-time progress via WebSocket.",
      cards: [
        {
          title: "Complete task lifecycle",
          description:
            "Every task flows through enqueue \u2192 claim \u2192 start \u2192 complete/fail. No silent failures \u2014 every transition is tracked and broadcast.",
        },
        {
          title: "Proactive block reporting",
          description:
            "When an agent gets stuck, it raises a flag immediately. No more checking back hours later to find nothing happened.",
        },
        {
          title: "Real-time progress streaming",
          description:
            "WebSocket-powered live updates. Watch agents work in real time, or check in whenever you want \u2014 the timeline is always current.",
        },
      ],
    },
    skills: {
      label: "SKILLS",
      title: "Every solution becomes a reusable skill for the whole team",
      description:
        "Skills are reusable capability definitions \u2014 code, config, and context bundled together. Write a skill once, and every agent on your team can use it. Your skill library compounds over time.",
      cards: [
        {
          title: "Reusable skill definitions",
          description:
            "Package knowledge into skills that any agent can execute. Deploy to staging, write migrations, review PRs \u2014 all codified.",
        },
        {
          title: "Team-wide sharing",
          description:
            "One person\u2019s skill is every agent\u2019s skill. Build once, benefit everywhere across your team.",
        },
        {
          title: "Compound growth",
          description:
            "Day 1: you teach an agent to deploy. Day 30: every agent deploys, writes tests, and does code review. Your team\u2019s capabilities grow exponentially.",
        },
      ],
    },
    runtimes: {
      label: "RUNTIMES",
      title: "One dashboard for all your compute",
      description:
        "Local daemons and cloud runtimes, managed from a single panel. Real-time monitoring of online/offline status, usage charts, and activity heatmaps. Auto-detects 12 supported coding tools on your machine.",
      cards: [
        {
          title: "Unified runtime panel",
          description:
            "Local daemons and cloud runtimes in one view. No context switching between different management interfaces.",
        },
        {
          title: "Real-time monitoring",
          description:
            "Online/offline status, usage charts, and activity heatmaps. Know exactly what your compute is doing at any moment.",
        },
        {
          title: "Auto-detection on first run",
          description:
            "RimeDeck scans for 13 supported coding tools \u2014 Antigravity, Claude Code, Codex, Cursor, Copilot, Gemini, Hermes, Kimi, Kiro CLI, OpenCode, OpenClaw, OMP (oh-my-pi), and Pi \u2014 and registers a runtime for each one it finds.",
        },
      ],
    },
  },

  howItWorks: {
    label: "Get started",
    headlineMain: "Hire your first AI employee",
    headlineFaded: "in the next hour.",
    steps: [
      {
        title: allowSignup ? "Sign up & create your workspace" : "Login to your workspace",
        description: allowSignup
          ? "Enter your email, verify with a code, and you\u2019re in. Your workspace is created automatically \u2014 no setup wizard, no configuration forms."
          : "Enter your email, verify with a code, and you\u2019re logged into your workspace \u2014 no setup wizard, no configuration forms.",
      },
      {
        title: "Install the CLI & connect your machine",
        description:
          "Run multica setup \u2014 it walks you through OAuth, starts the daemon, and scans for the 13 supported coding tools (Antigravity, Claude Code, Codex, Cursor, Copilot, Gemini, Hermes, Kimi, Kiro CLI, OMP, OpenCode, OpenClaw, Pi). Whichever ones you already have installed get registered as runtimes automatically.",
      },
      {
        title: "Create your first agent",
        description:
          "Give it a name, write instructions, and attach skills. Agents automatically activate on assignment, on comment, or on mention.",
      },
      {
        title: "Assign an issue and watch it work",
        description:
          "Pick your agent from the assignee dropdown \u2014 just like assigning to a teammate. The task is queued, claimed, and executed automatically. Watch progress in real time.",
      },
    ],
    cta: "Get started",
    ctaGithub: "View on GitHub",
    ctaDocs: "Read the docs",
  },

  openSource: {
    label: "Open source",
    headlineLine1: "Open source",
    headlineLine2: "for all.",
    description:
      "RimeDeck is fully open source. Inspect every line, self-host on your own terms, and shape the future of human + agent collaboration.",
    cta: "Star on GitHub",
    highlights: [
      {
        title: "Self-host anywhere",
        description:
          "Run RimeDeck on your own infrastructure. Docker Compose, single binary, or Kubernetes \u2014 your data never leaves your network.",
      },
      {
        title: "No vendor lock-in",
        description:
          "Bring your own LLM provider, swap agent backends, extend the API. You own the stack, top to bottom.",
      },
      {
        title: "Transparent by default",
        description:
          "Every line of code is auditable. See exactly how your agents make decisions, how tasks are routed, and where your data flows.",
      },
      {
        title: "Community-driven",
        description:
          "Built with the community, not just for it. Contribute skills, integrations, and agent backends that benefit everyone.",
      },
    ],
  },

  faq: {
    label: "FAQ",
    headline: "Questions & answers.",
    items: [
      {
        question: "What coding agents does RimeDeck support?",
        answer:
          "RimeDeck supports 13 coding tools out of the box: Antigravity, Claude Code, Codex, Cursor, Copilot, Gemini, Hermes, Kimi, Kiro CLI, OMP (oh-my-pi), OpenCode, OpenClaw, and Pi. The daemon auto-detects whichever CLIs you already have installed and registers a runtime for each one. Since it's open source, you can also add your own backends.",
      },
      {
        question: "Do I need to self-host, or is there a cloud version?",
        answer:
          "Both. You can self-host RimeDeck on your own infrastructure with Docker Compose or Kubernetes, or use our hosted cloud version. Your data, your choice.",
      },
      {
        question:
          "How is this different from just using coding agents directly?",
        answer:
          "Coding agents are great at executing. RimeDeck adds the management layer: task queues, team coordination, skill reuse, runtime monitoring, and a unified view of what every agent is doing. Think of it as the project manager for your agents.",
      },
      {
        question: "Can agents work on long-running tasks autonomously?",
        answer:
          "Yes. RimeDeck manages the full task lifecycle \u2014 enqueue, claim, execute, complete or fail. Agents report blockers proactively and stream progress in real time. You can check in whenever you want or let them run overnight.",
      },
      {
        question: "Is my code safe? Where does agent execution happen?",
        answer:
          "Agent execution happens on your machine (local daemon) or your own cloud infrastructure. Code never passes through RimeDeck servers. The platform only coordinates task state and broadcasts events.",
      },
      {
        question: "How many agents can I run?",
        answer:
          "As many as your hardware supports. Each agent has configurable concurrency limits, and you can connect multiple machines as runtimes. There are no artificial caps in the open source version.",
      },
    ],
  },

  footer: {
    tagline:
      "Project management for human + agent teams. Open source, self-hostable, built for the future of work.",
    cta: "Get started",
    groups: {
      product: {
        label: "Product",
        links: [
          { label: "Features", href: "#features" },
          { label: "How it Works", href: "#how-it-works" },
          { label: "Use cases", href: "/usecases" },
          { label: "Changelog", href: "/changelog" },
          { label: "Download", href: "/download" },
        ],
      },
      resources: {
        label: "Resources",
        links: [
          { label: "Documentation", href: "/docs" },
          { label: "API", href: githubUrl },
          { label: "X (Twitter)", href: "https://x.com/MulticaAI" },
        ],
      },
      company: {
        label: "Company",
        links: [
          { label: "About", href: "/about" },
          { label: "Open Source", href: "#open-source" },
          { label: "Contact Sales", href: "/contact-sales" },
          { label: "GitHub", href: githubUrl },
        ],
      },
    },
    copyright: "\u00a9 {year} RimeDeck. All rights reserved.",
  },

  about: {
    title: "About RimeDeck",
    nameLine: {
      prefix: "RimeDeck \u2014 ",
      mul: "Mul",
      tiplexed: "tiplexed ",
      i: "I",
      nformationAnd: "nformation and ",
      c: "C",
      omputing: "omputing ",
      a: "A",
      gent: "gent.",
    },
    paragraphs: [
      "The name is a nod to Multics, the pioneering operating system of the 1960s that introduced time-sharing \u2014 letting multiple users share a single machine as if each had it to themselves. Unix was born as a deliberate simplification of Multics: one user, one task, one elegant philosophy.",
      "We think the same inflection is happening again. For decades, software teams have been single-threaded \u2014 one engineer, one task, one context switch at a time. AI agents change that equation. RimeDeck brings time-sharing back, but for an era where the \u201cusers\u201d multiplexing the system are both humans and autonomous agents.",
      "In RimeDeck, agents are first-class teammates. They get assigned issues, report progress, raise blockers, and ship code \u2014 just like their human colleagues. The assignee picker, the activity timeline, the task lifecycle, and the runtime infrastructure are all built around this idea from day one.",
      "Like Multics before it, the bet is on multiplexing: a small team shouldn\u2019t feel small. With the right system, two engineers and a fleet of agents can move like twenty.",
      "The platform is fully open source and self-hostable. Your data stays on your infrastructure. Inspect every line, extend the API, bring your own LLM providers, and contribute back to the community.",
    ],
    cta: "View on GitHub",
  },

  changelog: {
    title: "Changelog",
    subtitle: "New updates and improvements to RimeDeck.",
    toc: "All releases",
    categories: {
      features: "New Features",
      improvements: "Improvements",
      fixes: "Bug Fixes",
    },
    entries: [
      {
        version: "0.3.17",
        date: "2026-06-05",
        title: "Feishu Bot Group Chat, Usage Scheduling, and CLI Updates",
        changes: [],
        features: [
          "Feishu Bot group mentions now include nearby conversation context, so the responding agent can understand what the team was discussing before it was mentioned",
          "Admins can disconnect a Feishu Bot directly from the agent integrations area without detouring through Settings",
          "Self-hosted workspaces now keep usage rollups running without requiring a separate cron setup",
          "The CLI can create and update agents from external MCP configuration files",
        ],
        improvements: [
          "Large Issue descriptions and long markdown drafts open much faster in the editor",
          "Cloud setup guidance for adding a computer is more reliable and avoids saving unreachable server settings",
          "Pageview analytics are cleaner and focus on meaningful site sections instead of noisy URL variations",
          "Self-hosting docs now lead with the built-in usage scheduler and keep older cron-based paths as compatibility notes",
          "Assignment workflows now preserve the assigned agent identity more consistently",
          "Issue comment and reply composers are cleaner, auto-growing as you type without extra expand controls",
        ],
        fixes: [
          "Image uploads keep the cursor in the right place and no longer grow when markdown is edited repeatedly",
          "Copy buttons now work on self-hosted HTTP deployments, including code blocks, links, commands, and payload previews",
          "Agent runs now time out only after inactivity instead of ending because of a fixed wall-clock limit",
          "Agent configuration values for Claude Code now reach the child process while internal session markers stay private",
          "Inbox notification mute checks and desktop notification routing now respect the source workspace",
          "GitHub installations now show the connected account name right after installation",
          "Model discovery waits consistently and does not hide available choices after an empty result",
          "Self-hosted Feishu environment variables are accepted correctly",
        ],
      },
      {
        version: "0.3.16",
        date: "2026-06-04",
        title: "Lark Bot Integration",
        changes: [],
        features: [
          "Multica now supports Lark as a third-party integration, so teams can scan a QR code and create a Multica agent as a Lark Bot",
          "Chat now has a searchable agent picker and an explicit context picker, making it easier to choose who should respond and what they should see",
          "Descriptions and comments now support checkbox task lists for lightweight planning inside an Issue",
          "Agents now include built-in Multica skills so they can follow workspace workflows more consistently",
        ],
        improvements: [
          "Chat context is represented with clear mentions, making handoffs and later review easier to understand",
          "Self-hosted email setup is clearer for teams using custom mail delivery",
          "Usage analytics focus more tightly on product signals and avoid sending operational background activity",
        ],
        fixes: [
          "Attachments download reliably from private storage without opening a blank browser tab",
          "Every user message reaches the agent even when several chat messages are sent quickly",
          "Desktop now explains when login has expired instead of staying stuck while starting",
          "Pinned sidebar items no longer linger after switching workspaces",
          "Reused runtimes refresh Skills cleanly instead of accumulating duplicate Skill folders",
          "OpenCode model choices remain available even when setup checks return partial results",
          "Comment-triggered agent runs stay attached to the right conversation thread",
          "The CLI now treats missing Issue metadata as an empty result instead of an error",
        ],
      },
      {
        version: "0.3.15",
        date: "2026-06-03",
        title: "Text Highlights + More Stable Agent Runs",
        changes: [],
        features: [
          "Descriptions and comments now support highlighted text, making important notes easier to scan",
        ],
        improvements: [
          "Chat loads messages faster and keeps live updates smoother during long conversations",
          "Task failures now show clearer reasons, so teams can understand and recover from failed work more quickly",
        ],
        fixes: [
          "Issue start and due dates stay on the selected calendar day across time zones",
          "Skill setup no longer fails when the same supporting Skill file is included more than once",
          "OpenCode model discovery waits longer before timing out, reducing false setup failures",
          "Editor suggestion menus close reliably when focus moves outside them",
          "Starting several server instances at once no longer risks overlapping setup work",
        ],
      },
      {
        version: "0.3.14",
        date: "2026-06-02",
        title: "Japanese Support and /skill Command",
        changes: [],
        features: [
          "RimeDeck now supports Japanese across the app, site, and docs",
          "Chat now supports a /skill command for choosing an agent Skill",
          "Workspaces can now show a custom logo",
          "Teams can add Skills to an agent without replacing existing Skills",
          "OpenCode agents now support thinking variants",
        ],
        improvements: [
          "Existing users who skipped the onboarding source question can now answer it later without restarting onboarding",
          "Retired agents now appear as Archived everywhere instead of looking offline or still active",
          "Chat history and Issue execution rows have cleaner hover actions with less truncation and overlap",
          "Project Issue filters now apply the agents-working filter consistently across list, board, and timeline views",
        ],
        fixes: [
          "Users without access can no longer trigger private squad leaders through indirect Issue or comment paths",
          "Project progress counters and reopened agent work now refresh more reliably",
          "Desktop and web recover better from blank workspace states, no-access pages, renderer errors, and renderer crashes",
          "Images and file cards keep rendering when names contain Markdown characters",
          "Chat, labels, and invitations refresh correctly after a realtime reconnect",
          "Run-only autopilot tasks, quick-create tasks, and their retries can be cancelled from the activity view",
          "Skill descriptions with multi-line frontmatter now import and display correctly",
          "Windows Copilot runs preserve multiline prompts and clean up shell-style custom arguments",
        ],
      },
      {
        version: "0.3.13",
        date: "2026-06-01",
        title: "Skill Search and CLI Updates",
        changes: [],
        features: [
          "The CLI can now search Skills and list pull requests linked to an Issue, making release checks and automation audits easier from the terminal",
          "Teams can change squad member roles from the CLI without opening the app",
          "Agent lists can be filtered by runtime machine, so teams can quickly find the agents tied to a device or local service",
          "SMTP relays now support secure SMTPS connections on port 465",
          "OpenCode runtimes can use MCP settings saved on an agent",
          "OpenCode agents now expose model variants as thinking controls and pass the selected effort through the runtime",
        ],
        improvements: [
          "Mobile Issue headers now use cleaner controls that stay easier to reach on small screens",
          "Chat history rows show running states and actions more predictably",
          "Importing the same Skill twice now reports a clear result instead of interrupting the flow",
        ],
        fixes: [
          "Replies stay attached to the exact comment they were sent under",
          "Claude runs are less likely to stall while prompts are being sent",
          "Self-hosted local runtime setup links now point users to the right addresses",
          "MCP setup guidance and runtime support checks now match what the product can run",
          "Execution logs now clear active-row highlights after the related work finishes",
        ],
      },
      {
        version: "0.3.12",
        date: "2026-05-29",
        title: "Issue Session Resume and Korean Support",
        changes: [],
        features: [
          "Agents that continue work from an Issue comment now resume the previous session instead of starting over, keeping the task context intact",
          "RimeDeck now supports Korean across the app, public site, and documentation, including Korean docs pages and localized date formatting",
          "Issue pages now keep active agent work visible near the title, with a cleaner view when multiple agents are working at once",
          "Agents can scan Issue discussions faster with thread previews, reply counts, and recent activity before opening the full conversation",
          "OpenClaw runtimes can use the MCP setup saved on an agent, and Claude Opus 4.8 is available in model selection and usage estimates",
        ],
        improvements: [
          "Detail pages now share clearer breadcrumb headers, making Issues, projects, runtimes, skills, agents, and squads feel more consistent",
          "Resumed agent tasks spend less time re-reading comments they already have, so follow-up work returns to the right discussion faster",
          "Issue mention guidance and CLI command snippets are easier to read and safer to copy",
        ],
        fixes: [
          "Agent skills stay visible after updates, archive, restore, template creation, and environment changes",
          "Parent Issues assigned to a single agent continue when that agent completes a child Issue",
          "Desktop now groups WSL2 local runtimes under the local machine when they belong to the current user",
          "CLI login now accepts Cloud Node tokens",
        ],
      },
      {
        version: "0.3.11",
        date: "2026-05-28",
        title: "Antigravity CLI Support",
        changes: [],
        features: [
          "Antigravity CLI is now a supported coding runtime",
          "Agent settings now include MCP configuration for Hermes, Kimi, and Kiro",
          "Self-hosted admins can turn off self-service workspace creation",
          "Desktop local runtimes can renew access tokens before they expire",
        ],
        improvements: [
          "Helm charts can be published to GHCR, and email setup docs are clearer",
          "Task transcripts show shorter, safer working-folder labels",
          "New Issues stay at the top in manual boards, and deleted Issues stay out of recents",
          "Local runtime machines are grouped by device name",
        ],
        fixes: [
          "Terminal task completion retries brief callback failures",
          "Local-directory runs preserve existing CLAUDE.md, AGENTS.md, and GEMINI.md files",
          "Windows Pi runs keep multi-line prompts intact",
          "Provider logos render consistently",
          "Daemon cleanup skips incomplete parent-task metadata",
        ],
      },
      {
        version: "0.3.10",
        date: "2026-05-27",
        title: "Local Working Directories",
        changes: [],
        features: [
          "Projects can now use a local working directory on Desktop, so tasks can run in an existing folder while RimeDeck shows when another task is waiting for that directory",
          "Autopilot webhook triggers can now filter incoming events and actions before work starts, with docs linked directly from the setup flow",
          "Swimlane views can group Issues by parent Issue, project, or assignee, making large boards easier to slice by how the team plans work",
          "Comments now support selecting multiple attachments and keeping, removing, or replacing attachments while editing",
        ],
        improvements: [
          "Chinese product copy is more consistent across navigation, settings, search, and runtime screens",
          "The frontend codebase received accessibility and React cleanup across common screens, and mobile checks now run only when mobile code changes",
          "CLI list output is cleaner for automated readers, and squad lists now show member counts when available",
        ],
        fixes: [
          "Swimlane lanes no longer appear empty when nested Issues load beyond the first page",
          "Creating a sub-Issue with an intelligent agent now preserves the parent Issue relationship",
          "Scheduled autopilot titles and descriptions now use the trigger's configured timezone",
          "Comment editors avoid duplicate live-update flashes, keep text after failed sends, and apply mention behavior consistently when edited",
          "Code blocks without a detected language now render their text instead of an empty block",
          "Desktop and web avatars now resolve relative upload paths correctly",
          "Codex, Cursor, and Hermes runtime handling received fixes for Desktop discovery, command arguments, usage attribution, and clearer stalled-run diagnostics",
          "Private intelligent agents can no longer be triggered by plain comments from users who cannot access them",
          "Several UI details were cleaned up across GitHub settings, project creation, board sorting, and agent skill screens",
        ],
      },
      {
        version: "0.3.9",
        date: "2026-05-26",
        title: "Swimlanes & More Predictable Issues",
        changes: [],
        features: [
          "Issues now support a swimlane view, letting teams review parent work and status columns together when large projects have many subtasks",
          "Issue lists now support drag-and-drop ordering, sticky group headers, and stable ordering when more results load",
        ],
        improvements: [
          "The CLI now shows the local service version in status output and uses cleaner status fields",
          "Self-hosting guidance now explains the hourly usage rollup required for accurate usage views, with updated English and Chinese troubleshooting notes",
          "Agent skill settings were simplified before release so unsupported local-skill controls no longer appear in the product",
          "Dependency checks are stricter, helping missing packages surface earlier before builds or desktop runs",
        ],
        fixes: [
          "GitHub PRs now finish linked Issues only when the PR clearly says it closes them, so reference-only links no longer close work by accident",
          "Parent/child Issue automation waits for dependency checks before starting queued follow-up work, and agent-driven status changes trigger the right assignee",
          "Issue threads and list pages keep their order when loading more content, and board drag positions stay stable",
          "Chat resize behavior, board-card assignee rows, and XML parsing security received smaller stability fixes",
        ],
      },
      {
        version: "0.3.8",
        date: "2026-05-25",
        title: "RimeDeck for iOS, Helm Self-Hosting & Smoother Collaboration",
        changes: [],
        features: [
          "RimeDeck for iOS is now available as our first official usable mobile client, covering login, workspaces, inbox, Issues, projects, chat, comments, reactions, presence, and live updates; it is not on the App Store yet, so users need to build and install it manually",
          "Self-hosted teams can now deploy RimeDeck to Kubernetes with a Helm chart, while Docker-based installs keep clearer port and URL controls",
          "Project resource pickers now include repository search, and workspace repository settings can store descriptions that help agents understand each codebase",
          "Runtime usage now recognizes DeepSeek, Kimi K2.6, Zhipu GLM, and long-context Claude Opus model costs more accurately",
          "The public site now supports use-case pages and a clearer path to Docs, Changelog, and getting started",
        ],
        improvements: [
          "Squad avatars and board cards now show richer hover details, clearer member information, and better live status handling",
          "Desktop tabs better preserve position in long Issues and chats when switching views, with navigation that avoids duplicate history entries",
          "Code and rich-text content are easier to read, with literal command text preserved and editor styling split into focused areas",
          "Repository descriptions now travel with the workspace context given to agents, so assigned work can include more useful project background",
          "Documentation and README content now better reflect mobile support, automatic workflows, license details, and self-host options",
        ],
        fixes: [
          "Issue timelines stay in chronological order when live comments and activity arrive close together",
          "Codex runs no longer inherit hidden host memory during RimeDeck tasks, and Pi runs receive a cleaner end-of-input signal",
          "Local runtime delete actions now avoid self-healing rows that would immediately reappear, and dependency updates close server security advisories",
          "Title fields now refresh safely after external updates, and markdown code no longer uses ligatures that can distort command flags",
        ],
      },
      {
        version: "0.3.6",
        date: "2026-05-22",
        title: "Smarter Welcome, Live Work Signals & Safer Collaboration",
        changes: [],
        features: [
          "New users now enter a guided welcome experience where RimeDeck Helper can introduce the workspace, give a tour, or build a slide-style welcome page",
          "Issue lists now show when agents are actively working, with per-Issue indicators, hover details, and a quick filter for work in progress",
          "When a child Issue is finished, the parent Issue now receives a platform-generated update and can notify the right parent owner without creating loops",
          "The public site now includes a Contact Sales flow with a business-email form and submission protection",
          "Desktop users can navigate back and forward with macOS swipe gestures",
        ],
        improvements: [
          "Issue board cards are easier to scan, with cleaner rows, better truncation, and localized relative times",
          "Create Issue keeps start date in the overflow menu until it is needed, leaving the main property bar less crowded",
          "Workspaces can choose stricter secret visibility so agent environment values stay hidden even from read views",
          "Workspace lists load more efficiently for members in larger deployments",
          "Helper now surfaces newer CLI, documentation, or repository behavior instead of silently relying on stale guidance",
        ],
        fixes: [
          "Agents now receive the workspace context configured in settings, so shared guidance is available during runs",
          "Online local runtimes no longer offer a delete action that immediately reappears because the local service is still running",
          "Pi responses no longer leak raw tool-call markup into visible assistant messages or Issue comments",
          "SVG uploads and inline file previews use safer handling by default",
          "Squad leaders get clearer protection against accidentally triggering the same agent twice",
          "Self-hosted setups no longer expose the database port by default, and cloud runtime deletion sends the correct request details",
          "Desktop update settings, mobile skill pages, and assignee pickers now fit better across languages and small screens",
        ],
      },
      {
        version: "0.3.5",
        date: "2026-05-21",
        title: "Local-Time Usage & Issue Custom KV",
        changes: [],
        features: [
          "Usage now uses each user's saved viewing timezone, so workspace and runtime usage match the day boundaries people expect",
          "Issues can carry compact agent-facing state that keeps automation progress tied to the work item without cluttering the sidebar",
          "Long Issue discussion threads can be read from the newest replies first while keeping the original thread context",
          "Project lists now offer compact and comfortable layouts that work better on small screens",
        ],
        improvements: [
          "Workspace commands in the CLI accept slugs and short IDs from the list view",
          "The agent model picker no longer marks one model as a competing default",
          "Self-hosting and agent docs have corrected links and cleaner setup copy",
          "Reserved workspace paths have stronger coverage so special URLs are not accidentally reused as workspace addresses",
          "Agent runtime guidance keeps Issue metadata cleaner by reserving it for state future runs will actually need",
        ],
        fixes: [
          "Automatic retries for stuck Codex runs now start from a fresh session instead of resuming the broken one",
          "Claude Code usage totals are recorded correctly when usage arrives at the end of a run",
          "Live updates now skip broken messages safely and keep logs small when a bad message is unusually large",
          "The Create Issue button explains when a missing title is blocking creation",
          "Runtimes can recover a task whose claim response was lost before the task actually started",
        ],
      },
      {
        version: "0.3.4",
        date: "2026-05-20",
        title: "Smarter Autopilots, Agent Controls & Desktop Reliability",
        changes: [],
        features: [
          "Autopilots can assign new work through squads and place created Issues directly into a selected Project",
          "Agent settings now include per-agent thinking controls for Claude and Codex, with an inspector picker that updates instantly",
          "Desktop tabs can be pinned so important workspace pages stay parked while new links open in fresh tabs",
          "User profiles can add requester context, giving coding agents better background for assigned Issues",
          "Workspace settings now have a dedicated GitHub page, and regular members can see connected GitHub installations without admin controls",
        ],
        improvements: [
          "New users are guided to connect a runtime instead of receiving starter content that may not match their workspace",
          "Runtime pages are quieter, and desktop keeps the local machine visible after stopping the local service",
          "Issue breadcrumbs show the Project segment when an Issue belongs to a Project",
          "HTML previews and attachment previews have roomier, more predictable layouts",
          "Squad pages show fuller loading states and use a clearer archive confirmation dialog",
          "Agents now receive parent and sub-issue handoff guidance before running assigned work",
        ],
        fixes: [
          "List editing exits cleanly from an empty top-level item when pressing Enter",
          "The installer falls back to release binaries when Homebrew setup fails and reports clearer diagnostics",
          "Retrying an execution log row now reruns the agent that handled that row",
          "Chat and task-message loading ignore temporary IDs instead of calling invalid task routes",
          "OpenCode-backed daemon runs no longer enter invisible interactive question prompts",
          "Gemini runtimes use the correct official icon",
        ],
      },
      {
        version: "0.3.3",
        date: "2026-05-19",
        title: "Project Timelines, Runtime Setup & Clearer Issue Work",
        changes: [],
        features: [
          "Projects now have a Gantt view for scheduled work, with updates that stay in sync as plans change",
          "Workspace admins can change the issue key prefix from settings",
          "The CLI can switch between workspaces and show the current workspace",
          "Agents can read issue threads from the most recent discussion first, making follow-up work easier to route and review",
          "Usage now includes a one-day view plus weekly trends that respect the selected timezone",
          "Agent detail pages now work as an issue board for that specific agent",
        ],
        improvements: [
          "The onboarding flow now asks one focused question at a time and can guide runtime setup with fewer manual steps",
          "My Issues now includes squad-assigned work and labels the team-related tab more clearly",
          "Agent execution logs can be sorted in either direction when reviewing a run",
        ],
        fixes: [
          "HTML previews open more predictably from desktop, close the full-screen modal when needed, and support in-page links",
          "HTML source view and attachment previews are easier to inspect, including opening content in a new tab",
          "Create-issue prompts no longer keep stale manual draft text when switching modes",
          "Runtime tasks now find the right workspace instructions and skills from the task folder",
          "Self-hosted teams can set how long auth sessions last",
        ],
      },
      {
        version: "0.3.2",
        date: "2026-05-18",
        title:
          "Webhook Autopilots, Clearer Workboards & Better Runtime Control",
        changes: [],
        features: [
          "Autopilots can now start from webhook events, show delivery history, and replay a delivery when a connected system needs another attempt",
          "Issue boards can group work by assignee, show linked pull request status, and include start dates for clearer planning",
          "Runtime pages now have a redesigned machine view plus time and task trends in usage charts",
          "Skills can be copied from local runtimes in bulk, making workspace setup faster",
          "HTML attachments and HTML code blocks can be previewed directly inside issue discussions",
        ],
        improvements: [
          "Failed issue actions now show clearer error messages so teams can understand what happened without digging through logs",
          "GitHub-linked pull requests now surface CI and merge-conflict status inside RimeDeck",
          "Self-hosted deployments get safer defaults and clearer guidance for reverse proxies, auth limits, and local-only services",
          "Search results are ranked more usefully and include better snippets",
        ],
        fixes: [
          "Autopilot-created issues can repeat reliably and are attributed to the right assignee agent",
          "Runtime setup now prefers the local machine by default and uses cleaner labels in machine lists",
          "Squad pages scroll correctly and show which members are already working",
          "Desktop zoom shortcuts work again across the common keyboard combinations",
          "Auth, dependency, and local-service updates improve the safety of hosted and self-hosted deployments",
        ],
      },
      {
        version: "0.3.1",
        date: "2026-05-15",
        title: "Faster Navigation, Background Updates & More Reliable Squads",
        changes: [],
        features: [
          "Member and agent detail pages now show related tasks so teams can review who is working on what",
          "The desktop app downloads updates in the background so a new version is ready when you are",
          "Self-hosted deployments can send email through SMTP as an alternative to Resend",
          "Create Squad has a clearer setup flow with member selection that works better for team coordination",
        ],
        improvements: [
          "Page transitions are faster, with issue pages prepared ahead of time and smoother loading states",
          "Long issue activity blocks collapse so comments and conclusions are easier to scan",
          "Agents and Squads remember the Mine/All view when you return to the list",
          "Repository setup accepts more SSH URL formats across settings, projects, and quick create",
          "Squad handoffs are more dependable when agents have multiple roles or delegate to a specific member",
        ],
        fixes: [
          "Self-hosted local file cards render and preview correctly",
          "Agent-run tasks are more dependable when local tools or skills need to be found automatically",
          "Claude usage totals match more of the model names reported by connected tools",
          "After switching workspaces, live updates come from the correct workspace and show the right source",
          "Chat session menus and runtime names hold their shape in narrower spaces",
        ],
      },
      {
        version: "0.3.0",
        date: "2026-05-14",
        title: "Squads & Attachment Previews",
        changes: [],
        features: [
          "Squads let teams assign work to a group, with a leader agent coordinating the next step",
          "Attachments can be previewed in place for PDFs, audio, video, markdown, code, logs, and plain text",
          "Chinese names can be found by pinyin across mentions, assignees, subscribers, agents, projects, and squads",
        ],
        improvements: [
          "Squad pages now include member management, faster agent creation from a squad, clearer row actions, and a wider detail layout",
          "Quick-create and picker flows are easier to search and now include squad-aware routing",
          "Usage charts can switch between cost and token views, with the same timezone controls used by runtimes",
          "Workspace operators get command-line controls for managing squads and stopping a runaway issue run",
          "Shared interface labels are translated more consistently in English and Chinese",
        ],
        fixes: [
          "Squad leaders stay quiet when a human already routed the conversation to someone specific",
          "Mentioning a squad now wakes the right leader while preserving private-agent access rules",
          "Issue lists stay fresher after deletes and follow-up comments no longer trigger stale Done replies",
          "Attachment previews keep working for files added while writing or editing issues and comments",
        ],
      },
      {
        version: "0.2.32",
        date: "2026-05-13",
        title: "Usage Insights, Chat Renaming & Smoother Desktop Flows",
        changes: [],
        features: [
          "Usage now shows workspace and project token activity, runtime trends, and per-agent rankings in one place",
          "Chat sessions can be renamed directly from the chat header",
          "Feedback reports can include screenshots or files so teams have the context they need",
        ],
        improvements: [
          "The Usage page has clearer naming and a more dynamic agent leaderboard",
          "New chats and completed chat responses update more smoothly with fewer loading flashes",
          "Self-hosted GitHub setup is easier to configure and the setup docs point to the right cloud URL",
          "User-installed Codex skills are available automatically when new tasks run",
        ],
        fixes: [
          "Empty successful agent responses are marked completed instead of blocked",
          "Pasted mentions in instruction editors keep their mention links",
          "Desktop attachment downloads use the native Linux flow and tab closing no longer loops",
          "Gemini and Windows runtime startup checks are more reliable in unattended runs",
          "Long GitHub repository lists stay usable when adding project resources",
        ],
      },
      {
        version: "0.2.31",
        date: "2026-05-12",
        title: "GitHub Integration, Chat Attachments & Safer Issue Navigation",
        changes: [],
        features: [
          "Connect GitHub so linked pull requests appear on RimeDeck issues, sync their status, and close the RimeDeck issue automatically when the PR closes",
          "Chat messages can include file attachments and image previews",
          "Agents and runtimes can now be kept public or private for clearer team access",
          "Stopping a single agent task now asks for confirmation before it is terminated",
          "New GitHub integration docs cover both hosted and self-hosted setup",
        ],
        improvements: [
          "Issue links land more reliably on the exact comment or activity you opened",
          "Long issue timelines scroll more smoothly",
          "The feedback dialog now points contributors toward GitHub discussions and issues",
          "Self-hosted Caddy guidance now calls out real-time connection requirements",
          "Linux desktop packages show the RimeDeck app icon again",
        ],
        fixes: [
          "Downloaded attachments keep their original filenames",
          "Local attachments are served more reliably, and upload controls stay disabled until files are ready",
          "Issue creation dialogs keep their text fields at the correct height",
          "Runtime documentation links point to the correct page",
        ],
      },
      {
        version: "0.2.30",
        date: "2026-05-11",
        title: "Mermaid in Issues, Per-Runtime Timezone & Workspace-Leave Runtime Revocation",
        changes: [],
        features: [
          "Mermaid diagrams render inline in issue descriptions",
          "Sub-issue rows gain inline status and assignee pickers, with batch select across rows",
          "Per-runtime timezone for token-usage aggregation, so daily rollups respect your local day",
          "Private agents are gated by an `allowed_principals` predicate, with fine-grained visibility",
          "A member leaving or being removed from a workspace now revokes their runtimes automatically",
          "Set custom per-token prices for unmaintained models so usage reflects real cost",
          "Landing page header gains a Changelog link",
        ],
        improvements: [
          "Daemon self-heals when a runtime is deleted server-side — no more zombie local entries",
          "Chat and comment composer share the same `Mod+Enter` send shortcut",
          "Copilot CLI model catalog expanded with correct dotted IDs",
          "Copilot failure details now surface in the UI instead of a generic error",
          "Daemon brief is inlined into the system prompt for providers that need it",
          "Realtime WebSocket accepts same-origin upgrades from mobile and CLI",
        ],
        fixes: [
          "Recent-issues list no longer leaks across workspaces",
          "CloudFront attachment download URLs are re-signed at click time, fixing expired previews",
          "Windows reply templates use `--content-file` across every provider so non-ASCII bodies survive",
          "Daemon suppresses extra git console pop-ups on Windows",
          "Pi extension tools are no longer filtered by a hardcoded `--tools` allowlist",
          "Inbox scrolls to the target comment once the issue finishes loading",
          "`autopilot create/update` accepts `--mode run_only`",
          "Changelog header link styled to match the GitHub ghost button",
          "OpenAI Codex / GPT model pricing populated — cost no longer shows $0",
        ],
      },
      {
        version: "0.2.29",
        date: "2026-05-09",
        title: "Project Picker in Quick Create, Resolvable Comments & Timeline Performance",
        changes: [],
        features: [
          "Quick Create lets you pick a project, and remembers your last choice",
          "Comment threads can be resolved and collapsed, keeping long discussions tidy",
          "Issue live banner now shows agent tasks waiting in queue",
          "Failed or cancelled tasks can be rerun in one click from the Execution Log",
          "Agent Create modal gains an expand button for editing long descriptions",
        ],
        improvements: [
          "Issue timeline no longer fully re-renders on every WebSocket event — long issues scroll smoothly",
          "Editor skips parsing very large or JSON pastes, eliminating freezes",
          "Autopilot skips dispatch when the assignee runtime is offline, avoiding empty runs",
          "Inbox auto-archives `task_failed` rows once they reach a terminal state",
          "Hermes sends agent instructions inline with each request",
          "Timeline and Comment switched to client-side virtualization, dropping server-side pagination",
          "Reserved slugs share a single JSON between front and back end, with CI guarding drift",
          "ACP error messages include the JSON-RPC `error.data` field for clearer debugging",
        ],
        fixes: [
          "429 / insufficient-balance agent runs are now marked `failed` instead of `completed`",
          "Agent sessions stuck on poisoned images can recover, so the issue resumes",
          "`pi --list-models` table format parses correctly, restoring model discovery",
          "`pi` colon-to-slash normalization only applies to the legacy format",
          "`kiro` and `kimi` added to the inline-system-prompt provider allowlist",
          "Priority dropdown badge colors aligned with PriorityIcon semantic tokens",
          "Long single-line agent messages now expand correctly",
          "Desktop \"copy issue link\" uses the current connection URL instead of localhost",
          "Mobile WebSocket handshake succeeds without cookies",
          "Workspace slug creation validates reserved words; slug error messages are translated",
          "Timeline correctly syncs `around` state when props flip to falsy",
          "DropdownMenu popovers size to their content",
        ],
      },
      {
        version: "0.2.28",
        date: "2026-05-08",
        title: "Daemon Disk-Usage CLI, Timeline Polish & Task Usage Rollup",
        changes: [],
        features: [
          "New `multica daemon disk-usage` CLI surfaces per-task and per-workspace disk footprint",
          "Skill picker in agent settings has a search box for fast lookup",
          "Daemon GC extends to chat, autopilot, and quick-create tasks",
          "Issue detail breadcrumb now shows the MUL-xxxx identifier for quick reference",
        ],
        improvements: [
          "Timeline page size bumped to 50, with per-pool keyset cursors for comments and activities",
          "'Show older / newer' affordances now appear in edge cases and look clearly clickable",
          "Server `task_usage` rolls up into a daily aggregate table, dropping DB load significantly",
          "Daemon health check stays responsive while repo lookups are in flight",
          "Runtime stats exclude archived agents for accurate active counts",
        ],
        fixes: [
          "Linux daemon self-restart uses `brew prefix` symlinks, so Homebrew Cellar deletion no longer orphans runtimes",
          "CLI short IDs now route correctly — copied prefixes no longer 404",
          "Windows non-ASCII comment / description input lands via new `--content-file` / `--description-file` flags",
          "Windows / Linux desktop replaces the Electron placeholder icon with the Multica asterisk",
          "Orphaned timeline replies are now correctly surfaced",
          "Timeline comment pagination budget excludes activities, so heavy activity no longer crowds out real comments",
        ],
      },
      {
        version: "0.2.27",
        date: "2026-05-07",
        title: "Smoother Chat, GitHub Skill Import & Stability Fixes",
        changes: [],
        features: [
          "Import reusable skills directly from GitHub links",
        ],
        improvements: [
          "Chat and Inbox feel smoother, with clearer history, easier reply copying, and faster triage after archiving",
          "Issue actions keep more context, from easier access to the local folder to sub-issues inheriting the right project and status",
          "Autopilots pause themselves after repeated failures, so noisy automations are easier to catch and fix",
        ],
        fixes: [
          "Chinese input, desktop updates, long issue timelines, and live status updates are more reliable",
        ],
      },
      {
        version: "0.2.26",
        date: "2026-05-06",
        title: "Full i18n Rollout, Long-Issue Timeline & System Notifications Toggle",
        changes: [],
        features: [
          "Web app fully translated to Simplified Chinese (21 namespaces), with per-user locale",
          "System Notifications toggle in Settings",
          "Delete chat sessions; History panel surfaced on the chat header",
          "Runtime liveness backed by Redis, with DB fallback",
          "Desktop loads runtime self-host config",
          "CLI adds `--assignee-id` / `--to-id` / `--user-id` for unambiguous targeting",
        ],
        improvements: [
          "Settings 'Appearance' tab is renamed to 'Preferences', and the active tab is reflected in the URL so deep links work",
          "Long issues open instantly — Timeline switched to cursor-based keyset pagination, and repeated `task_completed` / `task_failed` activity entries are coalesced",
          "Runtime poll and heartbeat schedules are isolated per-runtime, so one busy runtime can no longer starve others",
          "CLI update requests persist in Redis, so a server restart no longer drops them",
          "Runtime cost usage window narrowed from 180 days to 14 days, dropping query load",
          "Project list returns a `resource_count` instead of inlining all resources, keeping responses lean",
          "404 page redesigned, with the No-Access redirect loop fixed",
          "Quick Create exempts git-describe daemons from the CLI version gate",
          "CI now enforces lint on every PR, and the existing lint debt has been cleared",
        ],
        fixes: [
          "Daemon cancels the running agent when the task is deleted server-side, eliminating orphan processes",
          "Daemon refreshes a stale Codex `auth.json` when reusing an exec env, fixing intermittent auth errors",
          "Daemon refuses to write `.gc_meta.json` when `issue_id` is empty",
          "Session / resume across ACP backends now trusts the agent-reported session id, fixing cross-session bleed",
          "OpenCode skills are written under `.opencode/skills/` so they are discovered natively",
          "404 task-not-found semantics tightened on both server and the final guard",
          "Pinned sidebar rows are auto-unpinned when the underlying entity disappears",
          "Project detail page splits desktop and mobile sidebar state",
          "Runtime detail page hides archived agents",
          "Already-attached repos in Add Resource show a URL tooltip; empty project state has a New Issue button",
          "S3 public URLs are region-qualified, fixing cross-region access",
          "Windows installer parses version numbers and decodes checksums correctly",
          "Quick Create submit button no longer shows a duplicate keyboard shortcut",
        ],
      },
      {
        version: "0.2.24",
        date: "2026-05-03",
        title: "Repo Checkout `--ref`, Hermes Replay Fix & Multi-Replica Model Picker",
        changes: [],
        features: [
          "`multica repo checkout --ref` targets a branch, tag, or specific commit when pulling a repo into the workspace",
          "`multica agent avatar` uploads an agent avatar straight from the CLI",
          "Inbox shows an archive button on done tasks; the redundant mark-as-done hover button is gone",
        ],
        improvements: [
          "Long-timeline issues open instantly from Inbox — the markdown render pipeline is memoized so unrelated WS events no longer re-render thousands of comments",
          "Model picker works on multi-replica deployments — pending requests persist via Redis, with daemon retries on transient report failures",
          "Daemon empty-claim cache TTL bumped, further reducing idle DB load",
        ],
        fixes: [
          "Newly created agents show up everywhere immediately — the agent cache is hydrated on create",
          "Hermes no longer replays the previous answer when a new turn starts — historical chunks are gated behind a per-turn flag",
          "Codex runtime model picker exposes the GPT-5.5 family",
          "`multica login --token <PAT>` accepts the PAT as a flag value instead of rejecting it",
          "CLI update completion status is now reliable",
          "Session resume is guarded by runtime, preventing cross-runtime resume",
          "Kanban display settings survive when dragging issues across columns",
          "Autopilot list is responsive on mobile viewports",
          "Quick Create prompts produce higher-fidelity descriptions from the user's input",
          "Skill upsert sanitizes null bytes, fixing a PostgreSQL UTF8 error",
          "Connect Remote dialog points to the correct install script URL",
        ],
      },
      {
        version: "0.2.21",
        date: "2026-04-30",
        title: "Quick Capture Overhaul, Mermaid Diagrams & Typed Project Resources",
        changes: [],
        features: [
          "Quick Capture replaces the old New Issue dialog — continuous-create mode, file uploads, and automatic enrichment from pasted URLs",
          "Mermaid diagrams render inline in markdown, with a fullscreen lightbox for complex graphs",
          "Projects can bind their own repo, separate from the workspace default",
          "Permission-aware UI across agents, comments, runtimes, and skills — actions you can't take are no longer offered",
        ],
        improvements: [
          "Daemon `/tasks/claim` polling uses a Redis empty-claim fast-path, dropping idle DB load and reclaiming disk on long-open issues",
          "RimeDeck Agent commits include a `Co-authored-by` trailer for proper Git attribution",
          "Desktop blocks Cmd+R / Ctrl+R / F5 from reloading the app and shows the real version in dev and Updates settings",
        ],
        fixes: [
          "Quick Create no longer invents requirements beyond user input, and subscribes the requester to the issue it creates",
          "Inbox jumps straight to the targeted comment, and auto-archives when the issue is marked Done from the detail page",
          "Task rerun starts a fresh session and skips poisoned resume state",
          "Invitees land on their workspace after sign-in instead of being forced through `/onboarding`",
        ],
      },
      {
        version: "0.2.20",
        date: "2026-04-29",
        title: "Create Issue by Agent, Agent Presence v3 & Daemon WebSocket Heartbeat",
        changes: [],
        features: [
          "Create Issue by Agent — press `c`, write one line, pick an agent; issue creation runs async and the result lands in your inbox",
          "Agent Presence v3 — availability and last-task split into clearer signals, with an execution log on the issue panel showing active and recent runs",
          "Daemon ↔ server heartbeat now flows over WebSocket with HTTP fallback, cutting task wakeup latency",
          "Mention picker ranks suggestions by your local recency",
        ],
        improvements: [
          "Server caches PAT / daemon token lookups in Redis, so large fleets stop hammering the database on every request",
          "Backend default agent CLI args via `MULTICA_CLAUDE_ARGS` / `MULTICA_CODEX_ARGS` env vars",
          "Manual and agent create-issue flows share one dialog shell, and picker agents become the default assignee",
        ],
        fixes: [
          "Create-issue-by-agent no longer leaves tasks stuck queued, and no longer duplicates the issue when an attachment upload fails",
          "Agent comments respect newlines instead of rendering literal `\\n`, and multi-line replies keep their formatting",
          "Agent-authored root comments no longer inherit parent @mentions, breaking accidental agent loops",
          "Cursor agent on Windows preserves multi-line prompts",
        ],
      },
      {
        version: "0.2.19",
        date: "2026-04-28",
        title: "Kiro CLI Runtime, Desktop Notifications & Issue Label Filter",
        changes: [],
        features: [
          "Kiro CLI added as a local agent runtime option",
          "macOS dock badge for unread issues, plus a native notification when the window is unfocused — click to jump straight to the issue",
          "Issue list now supports filtering by label, combinable with status / priority / assignee",
          "Daemon receives task wakeups over WebSocket — task startup latency drops noticeably",
        ],
        improvements: [
          "List and board status group headers are simpler, with clearer color cues",
          "Author-written markdown links are preserved through linkify",
          "Label attach now applies optimistically, no server round-trip wait",
          "Mention picker's issue search refreshes as you type",
        ],
        fixes: [
          "Deleting a comment now cancels any agent task it triggered — no more ghost runs",
          "Stalled Codex turns now time out instead of holding the slot",
          "Windows daemon no longer dies when the parent shell closes",
          "Agent-to-agent mention threads no longer cause feedback loops",
        ],
      },
      {
        version: "0.2.18",
        date: "2026-04-27",
        title: "Issue Labels, Labs Tab & Sidebar Invite Dot",
        changes: [],
        features: [
          "Issue labels — color-code and filter issues across list, board and detail views",
          "Labs settings tab for experimental toggles",
          "Sidebar shows a dot when you have an unread workspace invite",
        ],
        improvements: [
          "Project picker now shows the selected project's icon",
          "Sidebar parent items stay highlighted on detail pages",
          "Self-hosted deployments correctly honor signup gating env vars",
        ],
        fixes: [
          "Agent comments preserve line breaks again",
          "Desktop RPM no longer conflicts with Slack / VS Code on Fedora",
          "Windows agents handle multi-line prompts correctly",
        ],
      },
      {
        version: "0.2.17",
        date: "2026-04-26",
        title: "Custom Agent Env, Better Failure Messages & Reliability Fixes",
        changes: [],
        features: [
          "`multica agent create/update --custom-env KEY=VALUE` injects custom environment variables into agent runs",
          "Agent failure messages now include a tail of the runtime CLI's stderr — much easier to debug runtime errors",
          "CLI update download timeout is now configurable, so slow links no longer abort `multica update`",
        ],
        improvements: [
          "Daemon reports cancelled tasks as `cancelled` instead of `timeout`, and reconciles agent status when an issue's tasks are cancelled",
          "Server heartbeat split into probe/claim with slow-log + a model-list running-timeout, so a lost heartbeat no longer wedges the UI",
        ],
        fixes: [
          "Server validates `assignee_id` on issue create/update so phantom IDs are rejected, and `DeleteIssue` uses the resolved issue ID",
          "Pi runtime now reads/writes `.pi/skills` instead of the old `.pi/agent/skills` path",
          "Windows daemon uses `CREATE_NEW_CONSOLE` so grandchild console popups no longer appear when launching agents",
          "Autopilot run-only context is now properly forwarded to the agent",
        ],
      },
      {
        version: "0.2.16",
        date: "2026-04-24",
        title: "Chat V2, Issue Right-Click Menu & In-App Feedback",
        changes: [],
        features: [
          "Chat V2 — dedicated sidebar entry and full main-area page for AI conversations",
          "Right-click context menu on issues with a unified action set across list, board, and detail",
          "In-app feedback flow with a new Help launcher centralizing docs, support, and feedback",
          "Autopilot modal redesigned — simpler schema and consistent schedule UI across creation and edit",
          "Skills page redesigned — list + detail pages, scroll-fade card layout, shared PageHeader and mobile nav",
          "Bilingual flat-content rewrite of the docs site — English and Chinese sections share one tree",
        ],
        improvements: [
          "Agent profile card appears on avatar hover for quick context",
          "Native right-click menu on desktop with clipboard actions (copy / paste / cut / select all)",
          "Daemon agent prompts hardened to break self-mention loops between agents",
          "Server readiness health endpoints for proper rollout / ingress probes",
          "Daemon GC defaults tightened and now accept flexible duration suffixes (e.g. `7d`, `12h`)",
          "Test Connection / runtime ping removed — runtime reachability is detected automatically",
        ],
        fixes: [
          "Chat no longer flickers when a streamed response finalizes, and the input box no longer jumps when sending the first message",
          "Desktop reopens the last-used workspace on app start instead of falling back to the first one",
          "Editor preserves nested ordered lists through the readonly render path",
          "CLI `browser-login` now works from a machine that isn't running the server",
          "Daemon suppresses extra terminal windows when launching agents on Windows, and retries local-skill reports on transient server errors",
          "`/api/config` is publicly reachable again so unauthenticated clients can bootstrap",
          "Defense-in-depth owner check on workspace deletion, and `/health/realtime` metrics restricted to authorized callers (security)",
          "Hermes ACP runtime now receives the configured model; OpenClaw agent discovery timeout raised to 30s",
        ],
      },
      {
        version: "0.2.15",
        date: "2026-04-22",
        title: "Local Skills, LaTeX, Focus Mode & Orphan-Task Recovery",
        changes: [],
        features: [
          "Import runtime local Skills into the workspace as first-class artifacts",
          "Orphan-task recovery — abandoned agent runs auto-retry, with manual rerun as fallback",
          "LaTeX rendering in issues, comments and chat",
          "Chat Focus mode — share the page you're on as conversation context",
        ],
        improvements: [
          "Sub-issue `status_changed` events no longer spam parent-issue subscribers",
          "Multi-arch Docker release images built natively per-arch (no QEMU)",
          "Pin sidebar derives fields client-side for snappier reorders",
          "Expanded reserved-slug list so new slugs can't collide with product routes",
        ],
        fixes: [
          "Gemini runtime model list now includes Gemini 3 and CLI aliases",
          "Chat focus button disabled on pages without an anchor",
          "Onboarding pin sync, welcome layout and runtime bootstrap state",
          "`install.ps1` OS architecture detection hardened for more Windows setups",
          "`/download` falls back to the previous release within a 1h freshness window",
        ],
      },
      {
        version: "0.2.11",
        date: "2026-04-21",
        title: "Desktop Cross-Platform Packaging, CLI Self-Update & Board Pagination",
        changes: [],
        features: [
          "Desktop app cross-platform packaging — macOS, Windows, and Linux artifacts from a single release pipeline",
          "`multica update` self-update command — upgrade the CLI and local daemon without reinstalling",
          "Issue board paginates every status column, not only Done — large backlogs stay responsive",
        ],
        fixes: [
          "Workspace isolation enforced end-to-end for agent execution on the local daemon (security)",
          "Windows daemon stays alive after the terminal closes, so background agents keep running",
          "Board cards render their description preview again — list queries no longer strip the description field",
          "OpenClaw agent runtime now reads the real model from agent metadata instead of falling back to a default",
          "Comment Markdown preserved end-to-end — the HTML sanitizer that was stripping formatting has been removed",
        ],
      },
      {
        version: "0.2.8",
        date: "2026-04-20",
        title: "Per-Agent Models, Kimi Runtime & Self-Host Auth",
        changes: [],
        features: [
          "Per-agent `model` field with a provider-aware dropdown — pick the LLM model for each agent from the UI or via `multica agent create/update --model`, with live discovery from each runtime's CLI",
          "Kimi CLI as a new agent runtime (Moonshot AI's `kimi-cli` over ACP), with model selection, auto-approved tool permissions, and streaming tool-call rendering",
          "Expand toggle on inline comment and reply editors for composing long text",
        ],
        fixes: [
          "Posting the result comment is now an explicit, numbered step in agent workflows so final replies reach the issue instead of terminal output",
          "Agent live status card no longer leaks across issues when switching via Cmd+K",
          "Self-hosted session cookies honor the `FRONTEND_ORIGIN` scheme — plain-HTTP deployments stop silently dropping cookies, and `COOKIE_DOMAIN=<ip>` now falls back to host-only with a warning instead of breaking login",
        ],
      },
      {
        version: "0.2.7",
        date: "2026-04-18",
        title: "Sub-Issues from Editor, Self-Host Gating & MCP",
        changes: [],
        features: [
          "Create sub-issue directly from selected text in the editor bubble menu",
          "Self-hosted instance gating — `ALLOW_SIGNUP` and `ALLOWED_EMAIL_*` env vars to restrict account creation",
          "Per-agent `mcp_config` field to restore MCP access",
          "Desktop app hourly update poll with manual check button in settings",
        ],
        fixes: [
          "Session hand-off to desktop when already logged in on web",
          "Open redirect vulnerability on `?next=` validated",
          "OpenClaw stops passing unsupported flags and properly delivers AgentInstructions",
        ],
      },
      {
        version: "0.2.5",
        date: "2026-04-17",
        title: "CLI Autopilot, Cmd+K & Daemon Identity",
        changes: [],
        features: [
          "CLI `autopilot` commands for managing scheduled and triggered automations",
          "CLI `issue subscriber` commands for subscription management",
          "Cmd+K palette extended — theme toggle, quick new issue/project, copy link, switch workspace",
          "Project and sub-issue progress as optional card properties on the issue list",
          "Persistent daemon UUID identity — CLI and desktop share one daemon across restarts and machine moves",
          "Sole-owner workspace leave preflight check",
          "Persist comment collapse state across sessions",
        ],
        fixes: [
          "Agents now triggered on comments regardless of issue status",
          "Codex sandbox config fixed for macOS network access",
          "Editor bubble menu rewritten with @floating-ui/dom for reliable scroll hiding",
          "Autopilot creator automatically subscribed to autopilot-created issues",
          "Autopilot workspace ID correctly resolved for run-only tasks",
          "Desktop restricts `shell.openExternal` to http/https schemes (security)",
          "Duplicate agent names return 409 instead of silently failing",
          "New tabs in desktop inherit current workspace",
        ],
      },
      {
        version: "0.2.1",
        date: "2026-04-16",
        title: "New Agent Runtimes",
        changes: [],
        features: [
          "GitHub Copilot CLI runtime support",
          "Cursor Agent CLI runtime support",
          "Pi agent runtime support",
          "Workspace URL refactor — slug-first routing (`/{slug}/issues`) with legacy URL redirects",
        ],
        fixes: [
          "Codex threads resume across tasks on the same issue",
          "Codex turn errors surfaced instead of reporting empty output",
          "Workspace usage correctly bucketed by task completion time",
          "Autopilot run history rows fully clickable",
          "Workspace isolation enforced on additional daemon and GC endpoints (security)",
          "HTML-escape workspace and inviter names in invitation emails",
          "Dev and production desktop instances can now coexist",
        ],
      },
      {
        version: "0.2.0",
        date: "2026-04-15",
        title: "Desktop App, Autopilot & Invitations",
        changes: [],
        features: [
          "Desktop app for macOS — native Electron app with tab system, built-in daemon management, immersive mode, and auto-update",
          "Autopilot — scheduled and triggered automations for AI agents",
          "Workspace invitations with email notifications and dedicated accept page",
          "Custom CLI arguments per agent for advanced runtime configuration",
          "Chat redesign with unread tracking and improved session management",
          "Create Agent dialog shows runtime owner with Mine/All filter",
        ],
        improvements: [
          "Inter font with CJK fallback and automatic CJK+Latin spacing",
          "Sidebar user menu redesigned as full-row popover",
          "WebSocket ping/pong heartbeat to detect dead connections",
          "Members can now create agents and manage their own skills",
        ],
        fixes: [
          "Agent now triggered on reply in threads where it already participated",
          "Self-hosting: local uploads persist in Docker, WebSocket URL auto-derived for LAN access",
          "Stale cmd+k recent issues resolved",
        ],
      },
      {
        version: "0.1.33",
        date: "2026-04-14",
        title: "Gemini CLI & Agent Env Vars",
        changes: [],
        features: [
          "Google Gemini CLI as a new agent runtime with live log streaming",
          "Custom environment variables for agents (router/proxy mode) with dedicated settings tab",
          "\"Set parent issue\" and \"Add sub-issue\" actions in issue context menu",
          "CLI `--parent` flag for issue update and `--content-stdin` for piping comment content",
          "Sub-issues inherit parent project automatically",
        ],
        improvements: [
          "Editor bubble menu and link preview rewritten for reliability",
          "OpenClaw backend P0+P1 improvements (multi-line JSON, incremental parsing)",
          "Self-hosted WebSocket URL auto-derived for LAN access",
        ],
        fixes: [
          "S3 upload keys scoped by workspace (security)",
          "Workspace membership validation for subscriptions and uploads (security)",
          "Active tasks auto-cancelled when issue status changes to cancelled",
          "Agent task stall when process hangs on stdout",
          "Daemon trigger prompt now embeds the actual triggering comment content",
          "Login and dashboard redirect stability improvements",
        ],
      },
      {
        version: "0.1.28",
        date: "2026-04-13",
        title: "Windows Support, Auth & Onboarding",
        changes: [],
        features: [
          "Windows support — CLI installation, daemon, and release builds",
          "Auth migrated to HttpOnly Cookie with WebSocket Origin whitelist",
          "Full-screen onboarding wizard for new workspaces",
          "Resizable Master Agent chat window with session history improvements",
          "Token usage log scanning for OpenCode, OpenClaw, and Hermes runtimes",
        ],
        fixes: [
          "WebSocket first-message authentication security fix",
          "Content-Security-Policy response header",
          "Sub-issue progress computed from database instead of paginated client cache",
        ],
      },
      {
        version: "0.1.27",
        date: "2026-04-12",
        title: "One-Click Setup, Self-Hosting & Stability",
        changes: [],
        features: [
          "One-click install & setup — `curl | bash` installs CLI, `--with-server` bootstraps full self-hosting, `multica setup` configures your environment",
          "Self-hosted storage — local file fallback when S3 is unavailable, plus custom S3 endpoint support (MinIO)",
          "Inline property editing (priority, status, lead) on project list page",
        ],
        improvements: [
          "Stale agent tasks auto-swept; agent live card shows immediately without waiting for first message",
          "Comment attachments uploaded via CLI now visible in the UI",
          "Pinned items scoped per user with fixed sidebar pin action",
        ],
        fixes: [
          "Workspace ownership checks on daemon API routes and attachment uploads",
          "Markdown sanitizer preserves code blocks from HTML entity escaping",
          "Next.js upgraded to ^16.2.3 for CVE-2026-23869",
          "OpenClaw backend rewritten to match actual CLI interface",
        ],
      },
      {
        version: "0.1.24",
        date: "2026-04-11",
        title: "Security & Notifications",
        changes: [],
        features: [
          "Parent issue subscribers notified on sub-issue changes",
          "CLI `--project` filter for issue list",
        ],
        improvements: [
          "Meta-skill workflow defers to agent Skills instead of hardcoded logic",
        ],
        fixes: [
          "Workspace ownership checks on all daemon API routes",
          "Workspace ownership validation for attachment uploads and queries",
          "Reply mentions no longer inherit parent thread's agent mentions",
          "Agent comment creation missing workspace ID",
          "Self-hosting Docker build failures (file permissions, CRLF, missing deps)",
        ],
      },
      {
        version: "0.1.23",
        date: "2026-04-11",
        title: "Pinning, Cmd+K & Projects",
        changes: [],
        features: [
          "Pin issues and projects to sidebar with drag-and-drop reordering",
          "Cmd+K command palette — recent issues, page navigation, and project search",
          "Project detail sidebar with properties panel (replaces overview tab)",
          "Project filter in Issues tab",
          "Project completion progress in project list",
          "Auto-fill project when creating issue via 'C' shortcut on project page",
          "Assignee dropdown sorted by user's assignment frequency",
        ],
        fixes: [
          "Markdown XSS — sanitize HTML rendering in comments with rehype-sanitize and server-side bluemonday",
          "Project kanban issue counts incorrect",
          "Self-hosting Docker build missing tsconfig dependencies",
          "Cmd+K requiring double ESC to close",
        ],
      },
      {
        version: "0.1.22",
        date: "2026-04-10",
        title: "Self-Hosting, ACP & Documentation",
        changes: [],
        features: [
          "Full-stack Docker Compose for one-command self-hosting",
          "Hermes Agent Provider via ACP protocol",
          "Documentation site with Fumadocs (Getting Started, CLI reference, Agents guide)",
          "Mobile-responsive sidebar and inbox layout",
          "Token usage display per issue in the detail sidebar",
          "Switch agent runtime from the UI",
          "'C' keyboard shortcut for quick issue creation",
          "Chat session history panel for archived conversations",
          "Minimum CLI version check in daemon for Claude Code and Codex",
          "OpenClaw and OpenCode added to landing page",
          "`make dev` one-command local development setup",
        ],
        improvements: [
          "Sidebar redesign — Personal / Workspace grouping, user profile footer, ⌘K search input",
          "Search ranking — case-insensitive matching, identifier search (MUL-123), multi-word support",
          "Search result keyword highlighting",
          "Daily token usage chart with cleaner Y-axis and per-category tooltip",
          "Master Agent multiline input support",
          "Unified picker components (Status, Priority, DueDate, Project, Assignee) across all views",
          "Workspace-scoped storage isolation with auto-rehydration on switch",
          "Startup warnings for missing env vars in self-hosted deployments",
        ],
        fixes: [
          "Sub-issue deletion not invalidating parent's children cache",
          "Search index compatibility with pg_bigm 1.2 on RDS",
          "Create Agent showing \"No runtime available\" when runtimes exist",
          "Claude stream-json startup hangs",
          "Multiple agents unable to queue tasks for the same issue",
          "Logout not clearing workspace and query cache",
          "Drag-drop overlay too small on empty editors",
          "Skills import hardcoding \"main\" as default branch",
          "PAT authentication not working on WebSocket endpoint",
          "Runtime deletion blocked when all bound agents are archived",
        ],
      },
      {
        version: "0.1.21",
        date: "2026-04-09",
        title: "Projects, Search & Monorepo",
        changes: [
          "Project entity with full-stack CRUD — create, edit, and organize issues by project",
          "Project picker in the create-issue modal and CLI project commands",
          "Full-text search for issues with pg_bigm",
          "Monorepo extraction — shared packages for core, UI, and views (Turborepo)",
          "Fullscreen agent execution transcript view",
          "Drag-and-drop file upload with file card display in the editor",
          "Attachment section with image grid and file cards on issues",
          "Runtime owner tracking, filtering, avatar display, and point-to-point update notifications",
          "Sub-issue progress indicator in list view rows",
          "Done issue pagination in list view",
          "Codex session log scan for token usage reporting",
          "Daemon repo-cache fix for stale initial snapshots",
        ],
      },
      {
        version: "0.1.20",
        date: "2026-04-08",
        title: "Sub-Issues, TanStack Query & Usage Tracking",
        changes: [
          "Sub-issue support — create, view, and manage child issues within any issue",
          "Full migration to TanStack Query for server state (issues, inbox, workspace, runtimes)",
          "Per-task token usage tracking across all agent providers",
          "Multiple agents can now run concurrently on the same issue",
          "Board view: Done column shows total count with infinite scroll",
          "ReadonlyContent component for lightweight Markdown display in comments",
          "Optimistic UI updates for reactions and mutations with rollback",
          "WebSocket-driven cache invalidation replaces polling and refetch-on-focus",
          "Browser session persists during CLI login flow",
          "Daemon reuses existing worktrees by updating to latest remote",
          "Fixed slow tab switching caused by dynamic root layout",
        ],
      },
      {
        version: "0.1.18",
        date: "2026-04-07",
        title: "OAuth, OpenClaw & Issue Loading",
        changes: [
          "Google OAuth login",
          "OpenClaw runtime support for running agents on OpenClaw infrastructure",
          "Redesigned agent live card — always sticky with manual expand/collapse toggle",
          "Load all open issues without pagination limit; closed issues paginate on scroll",
          "JWT and CloudFront cookie expiration extended from 72 hours to 30 days",
          "Remember last selected workspace after re-login",
          "Daemon ensures multica CLI is on PATH in agent task environment",
          "PR template and CLI install guide for agent-driven setup",
        ],
      },
      {
        version: "0.1.17",
        date: "2026-04-05",
        title: "Comment Pagination & CLI Polish",
        changes: [
          "Comment list pagination in both the API and CLI",
          "Inbox archive now dismisses all items for the same issue at once",
          "CLI help output overhauled to match gh CLI style with examples",
          "Attachments use UUIDv7 as S3 key and auto-link on issue/comment creation",
          "@mention assigned agents on done or cancelled issues",
          "Reply @mention inheritance skips when the reply only mentions members",
          "Worktree setup preserves existing .env.worktree variables",
        ],
      },
      {
        version: "0.1.15",
        date: "2026-04-03",
        title: "Editor Overhaul & Agent Lifecycle",
        changes: [
          "Unified Tiptap editor with a single Markdown pipeline for editing and display",
          "Reliable Markdown paste, inline code spacing, and link styling",
          "Agent archive and restore — soft delete replaces hard delete",
          "Archived agents hidden from default agent list",
          "Skeleton loading states, error toasts, and confirmation dialogs across the app",
          "OpenCode added as a supported agent provider",
          "Reply-triggered agent tasks now inherit thread-root @mentions",
          "Granular real-time event handling for issues and inbox — no more full refetches",
          "Unified image upload flow for paste and button in the editor",
        ],
      },
      {
        version: "0.1.14",
        date: "2026-04-02",
        title: "Mentions & Permissions",
        changes: [
          "@mention issues in comments with server-side auto-expansion",
          "@all mention to notify every workspace member",
          "Inbox auto-scrolls to the referenced comment from a notification",
          "Repositories extracted into a standalone settings tab",
          "CLI update support from the web runtime page and direct download for non-Homebrew installs",
          "CLI commands for viewing issue execution runs and run messages",
          "Agent permission model — owners and admins manage agents, members manage skills on their own agents",
          "Per-issue serial execution to prevent concurrent task collisions",
          "File upload now supports all file types",
          "README redesign with quickstart guide",
        ],
      },
      {
        version: "0.1.13",
        date: "2026-04-01",
        title: "My Issues & i18n",
        changes: [
          "My Issues page with kanban board, list view, and scope tabs",
          "Simplified Chinese localization for the landing page",
          "About and Changelog pages for the marketing site",
          "Agent avatar upload in settings",
          "Attachment support for CLI comments and issue/comment APIs",
          "Unified avatar rendering with ActorAvatar across all pickers",
          "SEO optimization and auth flow improvements for landing pages",
          "CLI defaults to production API URLs",
          "License changed to Apache 2.0",
        ],
      },
      {
        version: "0.1.3",
        date: "2026-03-31",
        title: "Agent Intelligence",
        changes: [
          "Trigger agents via @mention in comments",
          "Stream live agent output to issue detail page",
          "Rich text editor \u2014 mentions, link paste, emoji reactions, collapsible threads",
          "File upload with S3 + CloudFront signed URLs and attachment tracking",
          "Agent-driven repo checkout with bare clone cache for task isolation",
          "Batch operations for issue list view",
          "Daemon authentication and security hardening",
        ],
      },
      {
        version: "0.1.2",
        date: "2026-03-28",
        title: "Collaboration",
        changes: [
          "Email verification login and browser-based CLI auth",
          "Multi-workspace daemon with hot-reload",
          "Runtime dashboard with usage charts and activity heatmaps",
          "Subscriber-driven notification model replacing hardcoded triggers",
          "Unified activity timeline with threaded comment replies",
          "Kanban board redesign with drag sorting, filters, and display settings",
          "Human-readable issue identifiers (e.g. JIA-1)",
          "Skill import from ClawHub and Skills.sh",
        ],
      },
      {
        version: "0.1.1",
        date: "2026-03-25",
        title: "Core Platform",
        changes: [
          "Multi-workspace switching and creation",
          "Agent management UI with skills",
          "Unified agent SDK supporting Claude Code and Codex backends",
          "Comment CRUD with real-time WebSocket updates",
          "Task service layer and daemon REST protocol",
          "Event bus with workspace-scoped WebSocket isolation",
          "Inbox notifications with unread badge and archive",
          "CLI with cobra subcommands for workspace and issue management",
        ],
      },
      {
        version: "0.1.0",
        date: "2026-03-22",
        title: "Foundation",
        changes: [
          "Go backend with REST API, JWT auth, and real-time WebSocket",
          "Next.js frontend with Linear-inspired UI",
          "Issues with board and list views and drag-and-drop kanban",
          "Agents, Inbox, and Settings pages",
          "One-click setup, migration CLI, and seed tool",
          "Comprehensive test suite \u2014 Go unit/integration, Vitest, Playwright E2E",
        ],
      },
    ],
  },
  download: {
    hero: {
      macArm64: {
        title: "RimeDeck for macOS",
        sub: "Apple Silicon · bundled daemon, zero setup",
        primary: "Download (.dmg)",
        altZip: "or download .zip",
      },
      macIntel: {
        title: "RimeDeck for macOS",
        sub: "Apple Silicon required — Intel Macs not yet supported.",
        disabledCta: "Apple Silicon required",
        intelHint:
          "On an Intel Mac? Use the CLI below — it runs the same daemon.",
      },
      winX64: {
        title: "RimeDeck for Windows",
        sub: "Bundled daemon, zero setup",
        primary: "Download (.exe)",
      },
      winArm64: {
        title: "RimeDeck for Windows",
        sub: "ARM · bundled daemon, zero setup",
        primary: "Download (.exe)",
      },
      linux: {
        title: "RimeDeck for Linux",
        sub: "Bundled daemon, zero setup",
        primary: "Download AppImage",
        altFormats: "or .deb / .rpm",
      },
      unknown: {
        title: "Choose your platform",
        sub: "All installers are listed below.",
      },
      safariMacHint: "On an Intel Mac? Use the CLI below.",
      archFallbackHint: "Wrong architecture? See all formats below.",
    },
    allPlatforms: {
      title: "All platforms",
      macLabel: "macOS · Apple Silicon",
      winX64Label: "Windows · x64",
      winArm64Label: "Windows · ARM64",
      linuxX64Label: "Linux · x64",
      linuxArm64Label: "Linux · ARM64",
      formatDmg: ".dmg",
      formatZip: ".zip",
      formatExe: ".exe",
      formatAppImage: ".AppImage",
      formatDeb: ".deb",
      formatRpm: ".rpm",
      intelNote:
        "Apple Silicon only — Intel Macs not supported in this release.",
      unavailable: "Not available",
    },
    cli: {
      title: "Prefer the CLI?",
      sub: "For servers, remote dev boxes, and headless setups. Same daemon as Desktop, installed via terminal.",
      installLabel: "Install",
      startLabel: "Start daemon",
      sshNote: "Already on a server? Same commands work over SSH.",
      copyLabel: "Copy",
      copiedLabel: "Copied",
    },
    cloud: {
      title: "Cloud runtime (waitlist)",
      sub: "We’ll host the runtime for you. Not live yet — leave your email to be notified.",
    },
    footer: {
      releaseNotes: "What’s new in {version}",
      allReleases: "View all releases",
      currentVersion: "Current version: {version}",
      versionUnavailable: "Version unavailable — check GitHub",
    },
  },
  contactSales: {
    pageTitle: "Contact Sales",
    pageDescription:
      "Talk to the RimeDeck team about rolling out human + agent workflows at your company.",
    eyebrow: "Contact Sales",
    title: "Let’s understand your needs",
    subtitle:
      "Help us tailor the best solution for you before we connect.",
    notice: {
      badge: "Our system only recognizes business email domains.",
      body: "Requests from personal emails (e.g., @gmail.com, @outlook.com) will not be detected or processed.",
    },
    fields: {
      firstName: "First name",
      lastName: "Last name",
      businessEmail: "Business email",
      businessEmailHint:
        "Company email required. Please use a valid company domain so we can follow up with you.",
      companyName: "Company name",
      companySize: "Company size",
      countryRegion: "Country / Region",
      useCase: "How do you plan to use or collaborate with RimeDeck?",
      goals: "Your goals or challenges",
      goalsHint:
        "Tell us what you’d like to achieve with RimeDeck or the challenges you’re facing. The more details you provide, the better we can support you.",
      selectPlaceholder: "Please select",
      submit: "Submit",
      submitting: "Submitting…",
    },
    companySizes: [
      { value: "1-10", label: "1 – 10 employees" },
      { value: "11-50", label: "11 – 50 employees" },
      { value: "51-200", label: "51 – 200 employees" },
      { value: "201-500", label: "201 – 500 employees" },
      { value: "501-1000", label: "501 – 1,000 employees" },
      { value: "1000+", label: "1,000+ employees" },
    ],
    useCases: [
      { value: "evaluate", label: "Evaluating RimeDeck for my team" },
      { value: "adopt_team", label: "Rolling out RimeDeck to a team or company" },
      { value: "self_host", label: "Self-hosting on our own infrastructure" },
      { value: "integrate", label: "Integrating RimeDeck with existing tools" },
      { value: "partner", label: "Partnership or reseller inquiry" },
      { value: "other", label: "Something else" },
    ],
    countries: [
      "United States",
      "Canada",
      "United Kingdom",
      "Germany",
      "France",
      "Netherlands",
      "Sweden",
      "Switzerland",
      "Spain",
      "Italy",
      "Ireland",
      "Norway",
      "Denmark",
      "Finland",
      "Belgium",
      "Portugal",
      "Australia",
      "New Zealand",
      "Japan",
      "South Korea",
      "Singapore",
      "Hong Kong SAR",
      "Taiwan",
      "China (Mainland)",
      "India",
      "Indonesia",
      "Thailand",
      "Vietnam",
      "Philippines",
      "Malaysia",
      "United Arab Emirates",
      "Saudi Arabia",
      "Israel",
      "Turkey",
      "South Africa",
      "Brazil",
      "Mexico",
      "Argentina",
      "Chile",
      "Other",
    ],
    consent: {
      intro:
        "RimeDeck, Inc. respects your privacy. We’ll use your personal information only to manage your account and deliver the products or services you’ve requested. Occasionally, we’d love to share product updates, best practices, and insights that may be relevant to you. Please let us know below if you’d like to hear from us.",
      outreach:
        "I’d like to receive one-to-one communication from RimeDeck, Inc., including service updates, support inquiries, and business-related follow-ups.",
      updates:
        "I’d like to receive product updates, insights, and event invitations from RimeDeck.",
      unsubscribe:
        "You can unsubscribe from our communications at any time. For more details on how we handle your data and privacy rights, please review our",
      submitConsent:
        "By clicking “Submit,” you consent to allow RimeDeck, Inc. to store and process your information for the purpose of delivering the requested content.",
      privacyLinkLabel: "Privacy Policy.",
      privacyLinkHref: "/about",
    },
    success: {
      title: "Thanks — we got it.",
      message:
        "A member of the RimeDeck team will respond within three business days. In the meantime, feel free to explore the docs or star us on GitHub.",
      cta: "Back to home",
    },
    errors: {
      generic: "Something went wrong — please try again in a moment.",
      rateLimit:
        "We’ve received a few inquiries from this address recently. Please try again in a little while.",
      freeEmail:
        "Please use a business email address — free providers (gmail, outlook, etc.) are not accepted.",
      invalidEmail: "That doesn’t look like a valid email address.",
    },
  },
  };
}
