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
1616 - **[Executor Cloud](/hosted/cloud)**: hosted, with a free tier; nothing to run yourself
1717 - **Self-host**: your own infrastructure, via [Docker](/hosted/docker) or [Cloudflare](/hosted/cloudflare)
1818
19+## Set up with your agent
20+
21+Prefer to let your coding agent do the setup? Copy this prompt and paste it into
22+Claude, Cursor, or any MCP-capable agent. It will help you pick the right form
23+of Executor, install it, connect over MCP, and get your first integration
24+working.
25+
26+```text Setup prompt
27+Help me set up Executor and get my first connection working.
28+
29+Executor 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+
31+Start 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+
33+Local (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.
36+Both run a local HTTP server as a background service that any MCP client can connect to.
37+
38+Hosted (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+
42+How 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+
46+Terms 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+
51+Once you know which form I want:
52+1. Walk me through installing it.
53+2. Connect Executor to you over MCP.
54+3. Help me add my first integration and get one tool working end to end.
55+
56+Docs: https://executor.sh/docs
57+Source (and the place to start if something breaks): https://github.com/RhysSullivan/executor
58+```
59+
1960 ## Concepts
2061
2162 - **[Integrations](/concepts/integrations)**: what Executor connects to
apps/marketing/src/pages/index.astro+80−0
@@ -2,6 +2,43 @@ · 1 unmodified line
22 import Layout from "../layouts/Layout.astro";
33 import { AnimatedBeamDemo } from "../components/animated-beam-demo";
44 import { 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).
11+const setupPrompt = `Help me set up Executor and get my first connection working.
12+
13+Executor 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+
15+Start 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+
17+Local (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.
20+Both run a local HTTP server as a background service that any MCP client can connect to.
21+
22+Hosted (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+
26+How 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+
30+Terms 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+
35+Once you know which form I want:
36+1. Walk me through installing it.
37+2. Connect Executor to you over MCP.
38+3. Help me add my first integration and get one tool working end to end.
39+
40+Docs: https://executor.sh/docs
41+Source (and the place to start if something breaks): https://github.com/RhysSullivan/executor`;
542 ---
643
744 <Layout>
@@ -159,6 +196,49 @@ import { SelfHostContactModal } from "../components/self-host-contact-modal"; · 151 unmodified lines
159196 </details>
160197 </div>
161198 </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>
162242 </div>
163243 </div>
164244 </div>
apps/marketing/src/styles/global.css+25−0
@@ -136,6 +136,31 @@ body { · 135 unmodified lines
136136 background: #1f1f24;
137137 }
138138
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+
139164 .btn-link {
140165 color: var(--color-ink-2);
141166 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