diff --git a/apps/docs/communications.mdx b/apps/docs/communications.mdx index e854be4fa..b27d6cb9d 100644 --- a/apps/docs/communications.mdx +++ b/apps/docs/communications.mdx @@ -42,6 +42,11 @@ After connecting the provider, run a small task from chat and confirm that: - replies in the thread continue the same task - final summaries and links are posted back to chat +If the model provider fails partway through a turn, Roomote posts an error in +the originating Slack, Discord, Teams, or Telegram conversation instead of +leaving the thread silent. The task remains available; reply in that thread to +continue it, or open the linked task to inspect the full error. + ## Start suggested tasks When a task or automation report identifies independent follow-up work, Roomote diff --git a/apps/docs/file-attachments.mdx b/apps/docs/file-attachments.mdx index c45cff231..e112b4e94 100644 --- a/apps/docs/file-attachments.mdx +++ b/apps/docs/file-attachments.mdx @@ -37,6 +37,11 @@ earlier files can leave later files included by name only. Text-extracted files are limited to 8 MB each. Image, video, and provider transport limits vary by surface. +Slack video descriptions also depend on the deployment's configured vision +model supporting video input. Roomote can use any configured model that reports +video input capability. If video input is unavailable, use screenshots or a +transcript instead. + ## Accepted file types | Content type | File types | diff --git a/apps/docs/providers/communications/slack.mdx b/apps/docs/providers/communications/slack.mdx index 622eedfb6..81e7b5153 100644 --- a/apps/docs/providers/communications/slack.mdx +++ b/apps/docs/providers/communications/slack.mdx @@ -149,6 +149,12 @@ If you want to start tasks by direct message, make sure the app can receive DMs. Enable the app surfaces needed for messages to the bot, then keep the `message.im` event subscription enabled. +Roomote tasks can also send a new direct message to a linked Slack user when +you explicitly ask them to. The target can be a Slack user ID, an `@` mention, +or an existing Slack DM ID. For safety, the recipient must belong to the Slack +workspace connected to the task and must have linked that Slack identity to a +Roomote account. Channel names and channel IDs continue to post to channels. + ## Local URL changes Keep the public URL stable. When it changes, update the Slack app's redirect diff --git a/apps/docs/providers/inference/opencode-go.mdx b/apps/docs/providers/inference/opencode-go.mdx index 3e0dd18f6..b29ea523a 100644 --- a/apps/docs/providers/inference/opencode-go.mdx +++ b/apps/docs/providers/inference/opencode-go.mdx @@ -30,10 +30,12 @@ set of eligible models and recommends lower-cost options for helper work. ## Usage behavior -Requests consume the rolling and monthly allowances defined by your Go plan. -The OpenCode account console is authoritative for current usage and resets. If -you enable **Use balance** in OpenCode, requests can fall back to your Zen -balance after the included allowance is exhausted. +Requests consume the rolling, weekly, and monthly allowances defined by your Go +plan. Roomote shows the available usage windows in **Settings > Models** when +OpenCode's usage endpoint responds, but that display is best-effort. The +OpenCode account console is authoritative for current usage and resets. If you +enable **Use balance** in OpenCode, requests can fall back to your Zen balance +after the included allowance is exhausted. See [OpenCode Go documentation](https://opencode.ai/docs/go/) for current models, limits, pricing, and retention details. diff --git a/apps/docs/tasks.mdx b/apps/docs/tasks.mdx index 04ae6393b..e414cd4cb 100644 --- a/apps/docs/tasks.mdx +++ b/apps/docs/tasks.mdx @@ -91,6 +91,17 @@ You can send follow-up instructions while a task is active. If a task has completed and Roomote has a restorable snapshot, a follow-up can resume from that prior workspace instead of starting over. +For objectives that may need several uninterrupted turns, enter +`/goal ` in the web task prompt. Goal Mode keeps the full objective +active and automatically continues work for up to five additional turns. It +stops early when Roomote verifies the whole objective is complete, or reports a +blocker after the same issue prevents progress across three consecutive turns. +If the continuation budget runs out first, send a follow-up to decide what to +do next. + +Goal Mode does not support attachments. Add any files in a normal task message +first, then start Goal Mode with a text-only objective. + Good follow-ups are specific: - "Apply the second option and add a regression test." diff --git a/apps/docs/use-cases.mdx b/apps/docs/use-cases.mdx index 0d49b38ad..b333d0343 100644 --- a/apps/docs/use-cases.mdx +++ b/apps/docs/use-cases.mdx @@ -22,6 +22,10 @@ Start with work that is scoped, visible, and easy to verify: - draft a plan for a larger feature - review a pull request for regressions - apply feedback from a source-control or Linear thread +- investigate evidence in connected services such as monitoring, support, or + project-management tools +- perform an exact action in a connected service when you name both the action + and its target - clean up a small maintenance item that keeps falling off the backlog A good Roomote prompt includes the desired outcome, links to the relevant @@ -45,6 +49,13 @@ The strongest prompts usually include: | Investigate | "Figure out why this test or preview is failing and show what you found." | | Implement | "Make this small change, run the relevant checks, and open a PR." | | Review | "Review this PR for regressions and call out anything risky." | +| Act in a service | "Post this update to the linked support ticket, then confirm where it was sent." | + +For connected-system work, Roomote uses the available integration as the source +of truth rather than guessing from repository code. It can answer questions and +investigate without changing the external system. Side effects such as posting +a message, updating a ticket, or starting another task require an explicit +action and target in your prompt. ## Who uses it