Skip to content

docs(factories): document Slack integration - #525

Merged
hongyi-chen merged 4 commits into
hyc/factory-launchfrom
hyc/factories-integration-slack
Aug 17, 2026
Merged

docs(factories): document Slack integration#525
hongyi-chen merged 4 commits into
hyc/factory-launchfrom
hyc/factories-integration-slack

Conversation

@hongyi-chen

@hongyi-chen hongyi-chen commented Aug 13, 2026

Copy link
Copy Markdown
Collaborator

Summary

Adds factory-specific Slack documentation covering the dedicated app, authorization boundary, app mentions and DMs, background event automations, thread continuity, attachments, acknowledgments, App Home, writeback, channel scope, and troubleshooting.

Final size: 897 prose words. Generic provider installation details remain in the existing platform integration page; this PR focuses only on factory-specific behavior.

Foundation

Shared navigation, route placeholders, Early Access badge support, and guide migrations are merged in #537. This PR now contains only its feature-owned files and passes CI independently.

Validation

  • Integrated npm run typecheck: 0 errors
  • Integrated npm run build: 377 pages built
  • Integrated link check: 3,566 internal links, 0 broken
  • Provider-specific source assertions and style/guardrail checks passed
  • Senior editorial, product-accuracy, and security reviews completed; all blocker and important findings resolved

Latest source refresh

Adds best-effort Slack install-on-create with Add to Slack fallback and stage-based App Home grouping.

Verified against Warp e72fd7aac and warp-server 9be39e484b. Broken, placeholder, partial, and spec-only surfaces remain excluded.

Proposed reviewers

Based on the Warp Factories Soft Launch (August 18th) tracker. For planning only; no review requests have been sent.

  • @liliwilson
  • @moirahuang
  • @captainsafia

Screenshots

Not included. The page uses a compact trigger/context/output table and links to the existing provider setup page; no approved factory-specific UI assets exist yet.

Unverified claims

None — UI labels, event classes, filters, authorization boundaries, continuity, and writeback behavior were verified against source.

Conversation: https://staging.warp.dev/conversation/5ff89820-2d80-4518-981e-178845029de1
Plans: https://staging.warp.dev/drive/notebook/7ZPKWz7hM5I59o4Gg2ptYi and https://staging.warp.dev/drive/notebook/DpRWhMQ0DLCajPPMggXw5e

Co-Authored-By: Warp Agent agent@warp.dev

@cla-bot cla-bot Bot added the cla-signed label Aug 13, 2026
@vercel

vercel Bot commented Aug 13, 2026

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated (UTC)
docs Ready Ready Preview Aug 16, 2026 10:53pm

Request Review

Co-Authored-By: Warp Agent <agent@warp.dev>
@hongyi-chen

Copy link
Copy Markdown
Collaborator Author

/oz-review

@oz-for-oss

oz-for-oss Bot commented Aug 16, 2026

Copy link
Copy Markdown
Contributor

@hongyi-chen

I'm re-reviewing this pull request in response to a review request.

You can view the conversation on Warp.

I completed the review and no human review was requested for this pull request.

Comment /oz-review on this pull request to retrigger a review (up to 3 times on the same pull request).

I completed the review and no human review was requested for this pull request.

Comment /oz-review on this pull request to retrigger a review (up to 3 times on the same pull request).

Powered by Oz

@oz-for-oss oz-for-oss Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Overview

This PR replaces the placeholder factory Slack integration page with documentation for connection, intake behavior, requester identity, automations, outputs, and troubleshooting. The changes are documentation-only and the attached spec context reports no approved or repository spec context for this PR.

Concerns

  • No blocking concerns found in the changed documentation.
  • No comments or tests were added or changed.
  • No security-sensitive code or configuration changes were introduced.

Verdict

Found: 0 critical, 0 important, 0 suggestions

Approve

Comment /oz-review on this pull request to retrigger a review (up to 3 times on the same pull request).

Powered by Oz

@oz-for-oss oz-for-oss Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Overview

This PR replaces the placeholder factory Slack integration page with documentation for connection, intake behavior, requester identity, automations, outputs, and troubleshooting. The changes are documentation-only and the attached spec context reports no approved or repository spec context for this PR.

Concerns

  • No blocking concerns found in the changed documentation.
  • No comments or tests were added or changed.
  • No security-sensitive code or configuration changes were introduced.

Verdict

Found: 0 critical, 0 important, 0 suggestions

Approve

Comment /oz-review on this pull request to retrigger a review (up to 3 times on the same pull request).

Powered by Oz

@hongyi-chen

Copy link
Copy Markdown
Collaborator Author

/oz-review

@oz-for-oss

oz-for-oss Bot commented Aug 16, 2026

Copy link
Copy Markdown
Contributor

@hongyi-chen

I'm re-reviewing this pull request in response to a review request.

You can view the conversation on Warp.

I completed the review and no human review was requested for this pull request.

Comment /oz-review on this pull request to retrigger a review (up to 3 times on the same pull request).

Powered by Oz

@oz-for-oss oz-for-oss Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Overview

This PR replaces the placeholder factory Slack page with factory-specific setup, intake, automation, continuity, output, and troubleshooting guidance. I reviewed the attached diff for documentation structure, link quality, terminology, security-sensitive statements, and implementation-vs-spec drift; no approved spec context was available for this PR.

Concerns

  • No blocking concerns found in the changed diff.

Verdict

Found: 0 critical, 0 important, 0 suggestions

Approve

Comment /oz-review on this pull request to retrigger a review (up to 3 times on the same pull request).

Powered by Oz

@hongyi-chen
hongyi-chen marked this pull request as ready for review August 16, 2026 00:36
@oz-for-oss

oz-for-oss Bot commented Aug 16, 2026

Copy link
Copy Markdown
Contributor

@hongyi-chen

I'm starting a first review of this pull request.

You can view the conversation on Warp.

I completed the review and no human review was requested for this pull request.

Comment /oz-review on this pull request to retrigger a review (up to 3 times on the same pull request).

Powered by Oz

@oz-for-oss oz-for-oss Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Overview

This PR replaces the placeholder Slack factory integration page with a complete feature/procedural doc covering prerequisites, setup, Slack intake behavior, identity, automations, App Home tracking, writeback, and troubleshooting. The page stays scoped to factory-specific behavior and points readers to the existing Slack platform integration page for provider-level installation details.

Concerns

  • No blocking concerns found.
  • No approved or repository spec context was provided, so there is no implementation-vs-spec drift to report.
  • Security pass: no code, configuration, secrets, or permission-changing implementation was introduced in the diff; the authorization boundary language is documented explicitly.
  • Comment audit: no code comments or doc comments were added or changed.
  • Test audit: no tests were added or changed; this documentation-only PR reports typecheck, build, and link-check validation in the PR description.

Verdict

Found: 0 critical, 0 important, 0 suggestions

Approve

Comment /oz-review on this pull request to retrigger a review (up to 3 times on the same pull request).

Powered by Oz

Replace internal jargon (intake, continuity point, execution credential
scope, 'conversations become work') with plain descriptions of what the
reader does and what the factory does in response. No factual changes:
triggers, filters, identity linking, authorization boundary, App Home
stages, and writeback behavior are unchanged.

Co-Authored-By: Warp <agent@warp.dev>
The dedicated app carries the factory's name and avatar and follows
factory renames (FactoryAppReconciler in warp-server), so teams running
several factories see a distinct Slack persona per factory and pick
which one to mention in a channel.

Co-Authored-By: Warp <agent@warp.dev>
- Drop the unhelpful note that the factory is still created when Slack
  install fails; keep only the action the user needs to take
- Rename "Configure Slack automations" to "Configure factory
  automations for Slack" to clarify these are factory automations
- Rewrite the overlapping-triggers warning to spell out how one message
  can match two automations and start duplicate runs

Co-Authored-By: Warp <agent@warp.dev>

@liliwilson liliwilson left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

[lilis agent] Reviewed against Slack's Marketplace landing-page requirements (this page is slated to become the app's landing URL) and against warp-server source.

Verified accurate against warp-server: automation event list + filters (SLACK_EVENTS), App Home stages and filters (slack_app_home.go), install-on-create with Add to Slack fallback, and the 👀 ack.

Remaining gap not covered by inline suggestions: no screenshots/GIFs. Slack expects visuals of in-Slack behavior on the landing page — at minimum a mention + ack + threaded reply, ideally the App Home tab. Suggest adding commented-out <figure> placeholders now so assets drop in before Marketplace submission.

---

Slack integration documentation for Warp Factories will land in a follow-up PR.
Connect a factory to Slack so your team can send it work without leaving their conversations. Each factory gets its own dedicated Slack app: mention the app in a channel or send it a direct message, and the factory picks up the request with the conversation as context, then posts progress and results back into the same thread. You can also set up automations that start work from Slack events without a mention.

@liliwilson liliwilson Aug 17, 2026

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

[lilis agent] Slack's landing-page requirements say the page must give a clear overview of the app and the problem it solves to someone with no prior context. Right now the page assumes the reader knows what a factory is. One sentence + link makes it stand alone:

Suggested change
Connect a factory to Slack so your team can send it work without leaving their conversations. Each factory gets its own dedicated Slack app: mention the app in a channel or send it a direct message, and the factory picks up the request with the conversation as context, then posts progress and results back into the same thread. You can also set up automations that start work from Slack events without a mention.
Connect a factory to Slack so your team can send it work without leaving their conversations. Each factory gets its own dedicated Slack app: mention the app in a channel or send it a direct message, and the factory picks up the request with the conversation as context, then posts progress and results back into the same thread. You can also set up automations that start work from Slack events without a mention. If you're new to factories, see [How factories work](../how-factories-work) for what a factory is and how it runs work.


You need permission to update the factory and install apps in the target Slack workspace. Workspace policy can require administrator approval.

Installing the app grants the Slack permissions shown on the authorization screen. Filters on automations only control which events start work; they don't limit what the app can access. For workspace-level installation and removal behavior, see the [Slack platform integration](../../platform/integrations/slack).

@liliwilson liliwilson Aug 17, 2026

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

[lilis agent] Users authorize Warp's manager app (the Oz app) and then see a second app (the factory's) appear, and admins get two approval surfaces. Worth a short explanation of the managed-apps model — it also helps Slack Marketplace review, which rewards transparency about what the manager does.

Verified against slack/slack_provision.go + slack/managed_apps/client.go: manager auth is once per workspace; each factory app is created on connect and auto-install falls back to the Add to Slack link when admin approval is required.

Suggested change
Installing the app grants the Slack permissions shown on the authorization screen. Filters on automations only control which events start work; they don't limit what the app can access. For workspace-level installation and removal behavior, see the [Slack platform integration](../../platform/integrations/slack).
Installing the app grants the Slack permissions shown on the authorization screen. Filters on automations only control which events start work; they don't limit what the app can access. For workspace-level installation and removal behavior, see the [Slack platform integration](../../platform/integrations/slack).
### How the Slack connection works
Warp uses Slack's managed apps model: Warp's main Slack app acts as the manager. The first time you connect a factory, you authorize the manager once for your workspace. That authorization lets Warp create and install Slack apps on your behalf, but nothing is created until you connect a factory. Each time you click **Add to Slack**, Warp creates that factory's dedicated app, installs it, and manages it from then on: the app's name, icon, and configuration stay in sync with the factory. The manager's permissions apply only to apps it created. Depending on your workspace's app-approval settings, a Slack administrator may need to approve the manager authorization once, and each factory's app before it installs.

- **Installation is pending** - Ask a Slack workspace administrator to approve the app, then finish the installation.
- **Two runs start for one mention** - Remove or narrow overlapping app-mention and channel-message triggers.

Removing the app from your Slack workspace stops new requests from Slack for that factory; to reconnect it, return to factory setup and click **Add to Slack** again. Deleting the factory also removes its Slack connection. To route work into the factory from other tools, see [Connect your factory](../connect-your-factory).

@liliwilson liliwilson Aug 17, 2026

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

[lilis agent] Two Slack landing-page requirements are missing from the page, both fit naturally here:

  1. Privacy policy link — Slack explicitly requires a clear link to the privacy policy. Blocker for Marketplace review.
  2. Uninstall steps — the page says removal stops new requests but never says how to remove the app. Two paths: delete the factory from its settings page in the web app (removes its Slack app from the workspace), or remove the app from the Slack side.
Suggested change
Removing the app from your Slack workspace stops new requests from Slack for that factory; to reconnect it, return to factory setup and click **Add to Slack** again. Deleting the factory also removes its Slack connection. To route work into the factory from other tools, see [Connect your factory](../connect-your-factory).
Removing the app from your Slack workspace stops new requests from Slack for that factory; to reconnect it, return to factory setup and click **Add to Slack** again. To route work into the factory from other tools, see [Connect your factory](../connect-your-factory).
To remove the factory's app entirely, delete the factory from its settings page in the web app. Deleting the factory removes its Slack app from your workspace and its Slack connection.
You can also remove the app from the Slack side:
1. In Slack, go to **Apps** in the sidebar and search for the factory's name.
2. Select the app, open the **About** tab, then click **Configuration**. This opens your workspace's app configuration page in the browser.
3. Scroll to the bottom, select **Remove App**, and confirm the removal.
## Privacy
The factory's app reads messages only where it's mentioned, directly messaged, or subscribed by an automation you configured. Message content and supported attachments are used to run the factory's work, and your Slack profile email is used to map you to your Warp account. Data is handled per the [Warp Privacy Policy](https://www.warp.dev/privacy).

@hongyi-chen
hongyi-chen merged commit 9a219f1 into hyc/factory-launch Aug 17, 2026
4 checks passed
@hongyi-chen
hongyi-chen deleted the hyc/factories-integration-slack branch August 17, 2026 15:17
hongyi-chen added a commit that referenced this pull request Aug 17, 2026
* docs(factories): fix relative links and non-rendering mermaid on merged pages

Convert all 31 relative internal links across factory-agents,
factory-mcp, measure-and-improve, and the Jira/Slack integration pages
to root-absolute paths with trailing slashes. Relative links resolve
against Starlight's trailing-slash page URLs (../platform/x becomes
/factories/platform/x) and 404 in the browser, while the file-path-based
CI link checker stays green — the same breakage bnavetta flagged on the
infrastructure page in #523.

Also remove the mermaid flowchart from measure-and-improve: the docs
site has no mermaid renderer, so the block displayed as a raw code
fence. The numbered improvement-loop list directly below it already
narrates every node and edge, so no information is lost.

Only pages whose owning PRs (#518, #521, #522, #525, #528) have already
merged are touched; open factory PRs own different files.

Co-Authored-By: Warp <agent@warp.dev>

* docs(factories): restore improvement-loop mermaid diagram

Mermaid rendering shipped on main in c35aab4 (#515) after
hyc/factory-launch forked, so the diagram only failed to render because
the launch branch predates the renderer. Restore it; this PR now only
converts relative links to root-absolute paths.

Co-Authored-By: Warp <agent@warp.dev>

---------

Co-authored-by: Warp <agent@warp.dev>
hongyi-chen pushed a commit that referenced this pull request Aug 17, 2026
Add how-factories-work link, managed-apps model explanation, uninstall
steps, and privacy section from PR #525 review.

Co-authored-by: Warp <agent@warp.dev>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants