Skip to content

Commit bdd7b51

Browse files
committed
docs: remove em-dashes from docs pages; ban them in AGENTS.md
Replace em-dashes with commas, colons, and parentheses across the docs content, fix the broken /quickstart card link (now /local/cli), and add a no-em-dash rule to AGENTS.md.
1 parent acc6ffb commit bdd7b51

9 files changed

Lines changed: 31 additions & 27 deletions

File tree

AGENTS.md

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -84,6 +84,10 @@ Code is very cheap to write. Do not give time estimates; with agents, code is
8484
practically instant to generate. Unless stated otherwise, time to implement is
8585
not a blocker.
8686

87+
Never use em-dashes (the `` character) anywhere: prose, docs, code comments,
88+
commit messages, or PRs. Use commas, colons, parentheses, or separate sentences
89+
instead.
90+
8791
## Reference Repos
8892

8993
Repos in `.reference`, such as Effect and effect-atom, are available for

apps/docs/README.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
# Executor docs
22

33
The Executor documentation site, built with [Mintlify](https://mintlify.com).
4-
This is a standalone Mintlify project (no `package.json` it is not part of the
5-
bun workspace; Mintlify builds it in its own cloud).
4+
This is a standalone Mintlify project (no `package.json`, so it is not part of
5+
the bun workspace; Mintlify builds it in its own cloud).
66

77
## Develop
88

apps/docs/concepts/connections.mdx

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,8 +4,8 @@ description: "A connection is a configured instance of an integration. One integ
44
---
55

66
A **connection** is a configured instance of an [integration](/concepts/integrations).
7-
A single integration can have many connections — for example, the same API authenticated
8-
for two different accounts.
7+
A single integration can have many connections: the same API authenticated for two
8+
different accounts, say.
99

1010
A connection doesn't have to be authenticated: public APIs and public MCP servers can be
1111
connected with no credentials. When credentials are required, Executor stores them and

apps/docs/concepts/integrations.mdx

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
---
22
title: Integrations
3-
description: "An integration is something Executor connects to defined by an MCP server, an OpenAPI spec, or a GraphQL endpoint."
3+
description: "An integration is something Executor connects to, defined by an MCP server, an OpenAPI spec, or a GraphQL endpoint."
44
---
55

66
An **integration** is something Executor can connect to. Each integration is defined by
@@ -13,6 +13,6 @@ a source that describes the available tools:
1313
The integration describes the catalog of tools; on its own it isn't a live, authenticated
1414
connection. To actually call tools, you create a [connection](/concepts/connections).
1515

16-
<Card title="Add your first integration →" href="/quickstart" horizontal>
17-
See the quickstart for adding an integration from the web UI or the CLI.
16+
<Card title="Add your first integration →" href="/local/cli" horizontal>
17+
See the CLI page for adding an integration from the web UI or the CLI.
1818
</Card>

apps/docs/concepts/policies.mdx

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -5,9 +5,9 @@ description: "Policies control whether each tool is always allowed, requires app
55

66
A **policy** controls what an agent can do with each tool:
77

8-
- **Allow** the tool runs without interruption.
9-
- **Require approval** the call pauses until a human approves it.
10-
- **Block** the tool can't be called.
8+
- **Allow**: the tool runs without interruption.
9+
- **Require approval**: the call pauses until a human approves it.
10+
- **Block**: the tool can't be called.
1111

1212
Policies start from a sensible default derived from the integration's spec. For example,
1313
read-only `GET` operations on an OpenAPI spec are allowed by default, while writes can be

apps/docs/hosted/cloud.mdx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
---
22
title: Executor Cloud
3-
description: "Use hosted Executor Cloud no setup, with a free tier."
3+
description: "Use hosted Executor Cloud: no setup, with a free tier."
44
---
55

66
{/* TODO: write this page */}

apps/docs/index.mdx

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,23 +1,23 @@
11
---
22
title: Introduction
3-
description: "Executor is the open-source integration layer for AI agents one catalog for every tool, shared across every agent you use."
3+
description: "Executor is the open-source integration layer for AI agents: one catalog for every tool, shared across every agent you use."
44
---
55

6-
Configure every integration once MCP servers, OpenAPI specs, GraphQL
7-
endpoints with authentication and per-tool [policies](/concepts/policies),
6+
Configure every integration once (MCP servers, OpenAPI specs, GraphQL
7+
endpoints) with authentication and per-tool [policies](/concepts/policies),
88
then use that same catalog from any MCP-compatible agent.
99

1010
## Get started
1111

1212
Choose how to run Executor:
1313

14-
- **[CLI](/local/cli)** a background service on your machine, from the terminal
15-
- **[Desktop app](/local/desktop)** the same runtime, as a desktop app
16-
- **[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)
14+
- **[CLI](/local/cli)**: a background service on your machine, from the terminal
15+
- **[Desktop app](/local/desktop)**: the same runtime, as a desktop app
16+
- **[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)
1818

1919
## Concepts
2020

21-
- **[Integrations](/concepts/integrations)** what Executor connects to
22-
- **[Connections](/concepts/connections)** configured instances of an integration
23-
- **[Policies](/concepts/policies)** what each tool is allowed to do
21+
- **[Integrations](/concepts/integrations)**: what Executor connects to
22+
- **[Connections](/concepts/connections)**: configured instances of an integration
23+
- **[Policies](/concepts/policies)**: what each tool is allowed to do

apps/docs/local/cli.mdx

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ title: CLI
33
description: "Run Executor as a local background service and drive it from the command line."
44
---
55

6-
The CLI runs a small HTTP runtime on your machine a durable background service
6+
The CLI runs a small HTTP runtime on your machine: a durable background service
77
that any MCP-compatible agent can connect to. Your integrations, credentials, and
88
policies stay local.
99

@@ -45,8 +45,8 @@ throwaway foreground runtime instead, run `executor web --foreground`.
4545

4646
## Connect an agent
4747

48-
Add Executor to any MCP client (Claude Code, Cursor, OpenCode) with `npx add-mcp`
49-
it detects the client and writes its config for you. Connect over HTTP or through
48+
Add Executor to any MCP client (Claude Code, Cursor, OpenCode) with `npx add-mcp`.
49+
It detects the client and writes its config for you. Connect over HTTP or through
5050
the CLI:
5151

5252
<Tabs>
@@ -63,7 +63,7 @@ the CLI:
6363
</Tab>
6464
<Tab title="CLI (stdio)">
6565
With the `executor` CLI on your PATH, the client launches `executor mcp`
66-
directly no URL needed:
66+
directly (no URL needed):
6767

6868
```bash
6969
npx add-mcp "executor mcp" --name executor
@@ -74,7 +74,7 @@ the CLI:
7474

7575
## Add an integration
7676

77-
From the web UI, click **Add Source** and paste an OpenAPI, GraphQL, or MCP URL
77+
From the web UI, click **Add Source** and paste an OpenAPI, GraphQL, or MCP URL.
7878
Executor detects the type, indexes the tools, and handles auth. Or add one from the
7979
CLI:
8080

apps/docs/style.css

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
/* Logo wordmark Instrument Serif, the brand display font (--font-display in
1+
/* Logo wordmark: Instrument Serif, the brand display font (--font-display in
22
the app console and the marketing wordmark/accent treatment). The navbar
33
default is a bold sans; Instrument Serif ships a single 400 weight, so drop
44
the faux-bold and tight tracking. */

0 commit comments

Comments
 (0)