History

docs: add "Set up with your agent" copy prompt (marketing + docs)

The marketing hero gains a secondary "Set up with your agent" button that copies a setup prompt to the clipboard, reusing the existing copy-button pattern, plus a .btn-secondary pill style. The docs introduction gains the same prompt in a copyable code block. The prompt walks a coding agent through picking a form of Executor, installing it, connecting over MCP, and getting a first connection working.

Rhys Sullivan committed 4 months ago

Commit 5a573721 parent 3e477523 files · +146 −0Browse files

Unified · Split

3 files
  1. apps/docs/index.mdx +41 −0
  2. apps/marketing/src/pages/index.astro +80 −0
  3. apps/marketing/src/styles/global.css +25 −0
apps/docs/index.mdx+41−0
@@ -16,6 +16,47 @@ Choose how to run Executor: · 15 unmodified lines
16- **[Executor Cloud](/hosted/cloud)**: hosted, with a free tier; nothing to run yourself16- **[Executor Cloud](/hosted/cloud)**: hosted, with a free tier; nothing to run yourself
17- **Self-host**: your own infrastructure, via [Docker](/hosted/docker) or [Cloudflare](/hosted/cloudflare)17- **Self-host**: your own infrastructure, via [Docker](/hosted/docker) or [Cloudflare](/hosted/cloudflare)
18 18
19## Set up with your agent
20
21Prefer to let your coding agent do the setup? Copy this prompt and paste it into
22Claude, Cursor, or any MCP-capable agent. It will help you pick the right form
23of Executor, install it, connect over MCP, and get your first integration
24working.
25
26```text Setup prompt
27Help me set up Executor and get my first connection working.
28
29Executor is an open source integration layer for AI agents: one place to configure every integration (MCP servers, OpenAPI specs, GraphQL APIs) and connect to them over MCP.
30
31Start by helping me pick the right form to run it in. Chat with me about it rather than jumping straight to a yes/no question, and recommend one. All forms expose the same functionality, just packaged differently:
32
33Local (everything stays on my machine):
34- Desktop app: a native app for Mac, Windows, and Linux. Best for a regular desktop environment.
35- CLI (`executor`): best for a headless or server environment.
36Both run a local HTTP server as a background service that any MCP client can connect to.
37
38Hosted (use it from multiple agents, including cloud ones, with nothing running locally):
39- Executor Cloud: hosted, generous free tier, sign in and start immediately.
40- Self-hosted: a Docker image or a Cloudflare Worker.
41
42How to think about it:
43- Want all your data on your own machine? Go local: the desktop app for a regular environment, the CLI for a headless one.
44- Want to use it from multiple agents (including cloud agents like ChatGPT), or not run anything locally? Go hosted: Executor Cloud is the fastest start; the self-hosted Docker or Cloudflare versions give you full control.
45
46Terms you'll come across:
47- Integration: anything you add (an MCP server, an OpenAPI spec, a GraphQL API).
48- Connection: one configured instance of an integration. An integration can have many connections, and a connection doesn't have to be authenticated.
49- Policy: whether each tool is always allowed, requires approval, or is blocked. Policies start from a sensible default derived from the imported spec (for example, GET requests on an OpenAPI spec are allowed by default).
50
51Once you know which form I want:
521. Walk me through installing it.
532. Connect Executor to you over MCP.
543. Help me add my first integration and get one tool working end to end.
55
56Docs: https://executor.sh/docs
57Source (and the place to start if something breaks): https://github.com/RhysSullivan/executor
58```
59
19## Concepts60## Concepts
20 61
21- **[Integrations](/concepts/integrations)**: what Executor connects to62- **[Integrations](/concepts/integrations)**: what Executor connects to
apps/marketing/src/pages/index.astro+80−0
@@ -2,6 +2,43 @@ · 1 unmodified line
2import Layout from "../layouts/Layout.astro";2import Layout from "../layouts/Layout.astro";
3import { AnimatedBeamDemo } from "../components/animated-beam-demo";3import { AnimatedBeamDemo } from "../components/animated-beam-demo";
4import { SelfHostContactModal } from "../components/self-host-contact-modal";4import { SelfHostContactModal } from "../components/self-host-contact-modal";
5
6// Copied to the clipboard by the "Set up with your agent" hero CTA. A visitor
7// pastes it into their coding agent (Claude, Cursor, ...) and the agent picks
8// the right form of Executor, installs it, connects over MCP, and gets a first
9// connection working. Keep in sync with the docs "Set up with your agent"
10// section (apps/docs/index.mdx).
11const setupPrompt = `Help me set up Executor and get my first connection working.
12
13Executor is an open source integration layer for AI agents: one place to configure every integration (MCP servers, OpenAPI specs, GraphQL APIs) and connect to them over MCP.
14
15Start by helping me pick the right form to run it in. Chat with me about it rather than jumping straight to a yes/no question, and recommend one. All forms expose the same functionality, just packaged differently:
16
17Local (everything stays on my machine):
18- Desktop app: a native app for Mac, Windows, and Linux. Best for a regular desktop environment.
19- CLI (\`executor\`): best for a headless or server environment.
20Both run a local HTTP server as a background service that any MCP client can connect to.
21
22Hosted (use it from multiple agents, including cloud ones, with nothing running locally):
23- Executor Cloud: hosted, generous free tier, sign in and start immediately.
24- Self-hosted: a Docker image or a Cloudflare Worker.
25
26How to think about it:
27- Want all your data on your own machine? Go local: the desktop app for a regular environment, the CLI for a headless one.
28- Want to use it from multiple agents (including cloud agents like ChatGPT), or not run anything locally? Go hosted: Executor Cloud is the fastest start; the self-hosted Docker or Cloudflare versions give you full control.
29
30Terms you'll come across:
31- Integration: anything you add (an MCP server, an OpenAPI spec, a GraphQL API).
32- Connection: one configured instance of an integration. An integration can have many connections, and a connection doesn't have to be authenticated.
33- Policy: whether each tool is always allowed, requires approval, or is blocked. Policies start from a sensible default derived from the imported spec (for example, GET requests on an OpenAPI spec are allowed by default).
34
35Once you know which form I want:
361. Walk me through installing it.
372. Connect Executor to you over MCP.
383. Help me add my first integration and get one tool working end to end.
39
40Docs: https://executor.sh/docs
41Source (and the place to start if something breaks): https://github.com/RhysSullivan/executor`;
5---42---
6 43
7<Layout>44<Layout>
@@ -159,6 +196,49 @@ import { SelfHostContactModal } from "../components/self-host-contact-modal"; · 151 unmodified lines
159 </details>196 </details>
160 </div>197 </div>
161 </div>198 </div>
199
200 {/* Distribution-agnostic: hand the whole setup to your coding
201 agent. Copies the prompt above; the agent picks the form,
202 installs, and connects. */}
203 <button
204 type="button"
205 class="btn-secondary copy-btn"
206 data-copy={setupPrompt}
207 >
208 Set up with your agent
209 <span class="copy-icons" aria-hidden="true">
210 <svg
211 class="copy-icon-copy"
212 xmlns="http://www.w3.org/2000/svg"
213 width="14"
214 height="14"
215 viewBox="0 0 24 24"
216 fill="none"
217 stroke="currentColor"
218 stroke-width="2"
219 stroke-linecap="round"
220 stroke-linejoin="round"
221 >
222 <rect width="14" height="14" x="8" y="8" rx="2" ry="2"></rect>
223 <path d="M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2"
224 ></path>
225 </svg>
226 <svg
227 class="copy-icon-check"
228 xmlns="http://www.w3.org/2000/svg"
229 width="14"
230 height="14"
231 viewBox="0 0 24 24"
232 fill="none"
233 stroke="currentColor"
234 stroke-width="2"
235 stroke-linecap="round"
236 stroke-linejoin="round"
237 >
238 <path d="M20 6 9 17l-5-5"></path>
239 </svg>
240 </span>
241 </button>
162 </div>242 </div>
163 </div>243 </div>
164 </div>244 </div>
apps/marketing/src/styles/global.css+25−0
@@ -136,6 +136,31 @@ body { · 135 unmodified lines
136 background: #1f1f24;136 background: #1f1f24;
137}137}
138 138
139/* Light, bordered counterpart to .btn-primary — a real secondary CTA. Sized to
140 match .btn-primary--hero so it balances under the hero's primary button. */
141.btn-secondary {
142 display: inline-flex;
143 align-items: center;
144 gap: 0.4rem;
145 background: var(--color-surface);
146 color: var(--color-ink);
147 border: 1px solid var(--color-rule);
148 border-radius: 8px;
149 padding: 0.7rem 1.25rem;
150 font-family: inherit;
151 font-weight: 500;
152 font-size: 14.5px;
153 letter-spacing: -0.005em;
154 cursor: pointer;
155 transition:
156 background 0.15s ease,
157 border-color 0.15s ease;
158}
159.btn-secondary:hover {
160 background: var(--color-surface-2);
161 border-color: var(--color-ink-3);
162}
163
139.btn-link {164.btn-link {
140 color: var(--color-ink-2);165 color: var(--color-ink-2);
141 font-weight: 500;166 font-weight: 500;

Keyboard shortcuts

General

Show keyboard shortcuts
?
Focus the current search
/

Issues and pull requests

Open filters
f

Issues, pull requests and Inbox

Select next item
j↓
Select previous item
k↑
Open selected item
Enter
Dismiss filters or clear selection
Esc

Repository code

Go to file
t