Skip to main content
Mention @SandyWP in an invited Slack channel to create a sandbox, deploy a plugin ZIP, install directory plugins, or deploy a Git branch. The bot replies in the thread with the result and a login link when the action succeeds. A workspace administrator installs the app once from the SandyWP for Slack page or the Slack tab in the account area. Then invite the bot to each channel where people should use it.
Open the one-time browser link from the login reply and choose Link my account. Each Slack user links their own account, so actions use that user’s sandbox access and plan limits. Use @SandyWP logout to revoke the link. Login links are single-use and last about ten minutes.

Describe your request

With AI interpretation enabled, describe the sandbox or deployment in your own words. For example: @SandyWP prepare a checkout sandbox on PHP 8.2 with query monitor. Exact login, logout, help, and list commands work directly. Unsupported or unclear requests get a clarification before anything runs. A request for a new site that also names wordpress.org plugins creates that site with the plugins preinstalled. For example: @SandyWP new site php 8.4 install publishpress checklists, publishpress series. Plugin names are resolved to their wordpress.org slugs and verified before the sandbox is provisioned, so a name that does not exist stops the request instead of producing a sandbox missing the plugin under test. Name plugins however you normally would. Many are hosted under a slug that predates their current branding: PublishPress Capabilities is capability-manager-enhanced, PublishPress Future is post-expirator. SandyWP searches wordpress.org, shows you the mapping it found, and builds once you confirm. When a name matches several real plugins it lists them and asks which you meant, rather than guessing.

Confirm a plan

When SandyWP understands your request but is not confident enough to run it unasked, it describes the plan and waits:
Mention SandyWP when you confirm, the same as any other message. Replying yes runs exactly the plan that was described; nothing is re-interpreted from the confirmation. Replying no drops it, and a proposal expires after ten minutes, so a late yes never builds something you have forgotten about.

Mention SandyWP on every turn

SandyWP replies only when you mention it, including when you are answering its own question: @SandyWP yes. It never reads or responds to messages it was not addressed in, so it cannot interrupt a conversation or act on something that was not meant for it.

Ask questions

Mentioning the bot without a command starts a conversation rather than printing the command list. Ask what SandyWP can do, which WordPress or PHP versions are available, or how to phrase a request, and it answers in the thread. It answers from what SandyWP actually supports and says so when it does not know.

Deploy plugin ZIPs

Attach a plugin ZIP and mention the bot. The wording determines whether SandyWP creates a sandbox or targets an existing one. To install both attached ZIPs, say @SandyWP create a sandbox with these 2 plugins. Reply with @SandyWP create a sandbox with these 2 plugins above to use the latest ZIP upload earlier in the same thread. SandyWP creates one sandbox and installs the selected ZIPs sequentially. You can name a specific file to install only that one. If the selection is unclear, the bot asks which ZIP. Batches support up to 20 ZIPs; a failed install stops the batch and reports which plugins succeeded. An ordinal selects exactly one ZIP in attachment order. For example, @SandyWP install the 2nd plugin on a new site installs only the second ZIP. This explicit selection overrides the normal behavior that keeps an unqualified base-and-Pro pair together. The picker belongs to the user who started the command and expires after about 15 minutes. If the ZIP appeared earlier in the thread, reply with @SandyWP upload that plugin to use the latest ZIP upload.

Install directory plugins and deploy branches

Install up to ten WordPress.org plugins on a new or existing sandbox.
Plugin slugs are checked before a sandbox is created. A typo returns suggestions instead of silently creating an incomplete site. Deploy a branch only after connecting a repository in Git deployment.
When several ready sandboxes have repositories, Slack offers a repository-only picker. Specify the branch you want deployed; unrelated attachments are ignored by the AI interpreter.

Site commands

Deletion always needs a button confirmation. Use @SandyWP help when you need the full command list.

Troubleshooting and privacy

If the bot does not respond, invite it to the current channel. If a picker has expired, resend the command to receive fresh controls. Plugin ZIP uploads are limited to 50 MB; use Git deployment for larger projects. SandyWP encrypts the workspace bot token and your linked API token at rest, and unlinking removes the saved account mapping. When AI interpretation is enabled, SandyWP sends the mention text, available ZIP filenames and IDs, and recent messages from that thread to DeepSeek so replies can refer to the conversation. It does not send API tokens, attachment download URLs, or ZIP contents. Provider failures or rate limits stop the request before execution and fall back to a fixed reply, so an outage changes the wording of an answer but never provisions anything on its own. Workspace admins can review every mention under Admin → Slack AI, which shows each request as a trace: what was parsed, what the model decided, which validation rule accepted or rejected it, and the reply that was posted. Interpretation payloads are retained for 14 days and the summary line for 90.