diff --git a/apps/docs/automations.mdx b/apps/docs/automations.mdx index 9f72adbd3..32a350f59 100644 --- a/apps/docs/automations.mdx +++ b/apps/docs/automations.mdx @@ -302,7 +302,10 @@ projects. active repositories and suggests tightly scoped follow-up update tasks. It does not open PRs directly from the scheduled scan. Follow-up remediation preserves the repository's dependency minimum-age and exclusion policies and -uses only versions those policies allow. +uses only versions those policies allow. When every repository is scanned +successfully and no alerts are open, Roomote stays silent instead of posting an +empty report. Access failures, actionable alerts, and remediation work still +produce a report. **Triage CodeQL Alerts** scans open GitHub code-scanning alerts (especially CodeQL findings) across your active repositories and launches tightly scoped diff --git a/apps/docs/environment-variables.mdx b/apps/docs/environment-variables.mdx index 13b98a30f..c54597d5f 100644 --- a/apps/docs/environment-variables.mdx +++ b/apps/docs/environment-variables.mdx @@ -128,7 +128,8 @@ as per-task auth tokens or workspace paths. | `R_CLOUD_ENABLED` | Roomote Cloud only | Deployment-managed switch for Roomote Cloud behavior, including required anonymous analytics and Cloud support integrations. Do not set this for self-hosted deployments. | | `R_CURATED_INTEGRATIONS_DISABLED` | Optional | Operator policy for the curated **Settings > Integrations** catalog, which is enabled by default. Set to `true` and restart Roomote to prevent those integrations from being configured or used. Existing connections remain stored while disabled and become available again once the value is unset. Communications, source-control, inference, sandbox providers, and environment-defined MCP servers are unaffected. | | `R_COMMUNICATIONS_FAST_MODE_SETTING_ENABLED` | Optional | Set to `true` and restart Roomote to expose a personal setting that defaults a user's supported Slack and Discord messages to fast mode. Explicit Slack `!fast` remains available regardless of this setting; the personal setting is hidden and unavailable when this flag is unset. | -| `R_GITHUB_APP_SLUG` | GitHub setup | GitHub App slug used by server-rendered setup and GitHub integration flows. | +| `R_GITHUB_APP_SLUG` | GitHub setup | Primary GitHub App slug used by server-rendered setup, mentions, and GitHub integration flows. | +| `R_GITHUB_ADDITIONAL_APP_SLUGS` | Optional GitHub setup | Comma-separated additional GitHub App slugs that Roomote should trust as managed bot identities for review attribution and notifications. | | `SETUP_TOKEN` | Required (non-local) | One-time bootstrap token that admits the first admin at `/setup`. Required on every non-local deployment — tokenless bootstrap is allowed only when `NODE_ENV` is not `production` and `R_APP_ENV` is `development`, so anything running with `NODE_ENV=production` needs it. Without it, first-admin bootstrap stays closed so nobody can claim the founding-admin slot by reaching the URL first. Optional only in local development. | | `DASHBOARD_PASSWORD` | Production | Local fallback/admin password value used by the deployment. Generate a strong secret. | | `WEB_DEV_LOGIN_EMAIL` | Local only | Convenience email for development login flows. Do not use as production access control. | @@ -287,7 +288,8 @@ as per-task auth tokens or workspace paths. | Env var | Required | Used for | | ------------------------------ | ------------ | ------------------------------------------------------------------------------------------- | -| `R_GITHUB_APP_SLUG` | GitHub | GitHub App slug. | +| `R_GITHUB_APP_SLUG` | GitHub | Primary GitHub App slug. | +| `R_GITHUB_ADDITIONAL_APP_SLUGS` | Optional | Comma-separated additional GitHub App slugs trusted as Roomote-managed bot identities. | | `R_GITHUB_APP_ID` | GitHub | GitHub App ID. | | `R_GITHUB_APP_PRIVATE_KEY` | GitHub | Raw GitHub App private key PEM, usually with newlines escaped as `\\n`. | | `R_GITHUB_CLIENT_ID` | GitHub | GitHub OAuth client ID. | diff --git a/apps/docs/models.mdx b/apps/docs/models.mdx index c78143378..e2d689b59 100644 --- a/apps/docs/models.mdx +++ b/apps/docs/models.mdx @@ -204,6 +204,13 @@ limits, or Grok included-usage windows. These numbers come from unofficial provider endpoints, so the usage line is hidden whenever the provider does not return usable data. +When a Slack Manager Channel is configured under **Settings > Automations**, +Roomote also checks queryable limits every 15 minutes for OpenRouter, Kimi for +Coding, OpenCode Go, Z.AI, and Z.AI Coding Plan. It posts one warning when a +credential crosses 80%, 90%, or 100% usage in a limit window. The warning names +the provider, credential fingerprint or label, limit window, and reported +usage. A provider that does not return usable quota data is skipped. + xAI can be connected with an API key, a SuperGrok or eligible X Premium+ subscription, or both. When both are configured, the subscription is preferred at runtime for `xai/` models. diff --git a/apps/docs/providers/source-control/github.mdx b/apps/docs/providers/source-control/github.mdx index 990832c6c..795341a79 100644 --- a/apps/docs/providers/source-control/github.mdx +++ b/apps/docs/providers/source-control/github.mdx @@ -150,6 +150,15 @@ R_GITHUB_APP_PRIVATE_KEY="-----BEGIN RSA PRIVATE KEY-----\n...\n-----END RSA PRI `R_GITHUB_APP_SLUG` is required when your GitHub App slug is not `roomote`; Roomote uses it for GitHub mentions and bot-authored PR detection. +If trusted review or notification activity can also come from other Roomote +GitHub Apps, list their exact slugs in `R_GITHUB_ADDITIONAL_APP_SLUGS`: + +```sh +R_GITHUB_ADDITIONAL_APP_SLUGS=roomote-community,roomote-reviewer +``` + +Roomote treats only the primary slug and this comma-separated allowlist as +managed bot identities. Do not add unrelated GitHub Apps. Generate a private key from the app's **Private keys** section. GitHub downloads a `.pem` file. Convert it to an escaped single-line value before @@ -210,6 +219,12 @@ Once the app is installed and an environment maps the repository: Issue mentions use the environment mapped to the repository. Map the repository to an environment before mentioning Roomote on issues. +When a task delegated from a Fast Slack or Discord conversation opens a pull +request, actionable review feedback returns to that same conversation. Use +**Resolve these issues** to address the current feedback, **Auto-resolve on this +PR** to handle later actionable feedback automatically, or **Dismiss** to take +no action. + ## Verify setup 1. connect GitHub in setup or Settings diff --git a/apps/docs/tasks.mdx b/apps/docs/tasks.mdx index 400762501..553b84f0b 100644 --- a/apps/docs/tasks.mdx +++ b/apps/docs/tasks.mdx @@ -95,6 +95,11 @@ 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. +When a task delegated from a Fast conversation asks for input, reply naturally +in the originating conversation. If one input request is pending, Roomote +applies a matching reply to that request instead of treating it as a separate +task instruction. + For an objective that may need several agent turns, use [Goal Mode](/goal-mode). It keeps the complete outcome in context and can continue the task automatically within a bounded continuation budget.