GV

GeezerVison

The World Wide Web, restored to 800 pixels of glory.

Home|About|Gaming cabinet|Archives|How it works|Starter sites

On this site

  • Sign in
  • ActionsCI/CD and automation
  • CodespacesCloud development environments
  • All Features
  • Documentation
  • Training
  • Certifications
  • Build with Copilot
  • Customize Copilot
  • Integrations
  • Trending repos
  • GitHub Sponsors
  • Developer articles
  • Enterprises

This view

  • Original page
  • New address

GeezerVison is showing github.com — GitHub - UsefulSoftwareCo/executor: The missing integration layer for AI agents. Let them call any OpenAPI / MCP / GraphQL / custom js functions in secure environment.

BranchesTags
Open more actions menu

Latest commit

 

History

1,036 Commits
1,036 Commits

Folders and files

NameName
Last commit message
Last commit date
.agents/skills/executor-e2e
.agents/skills/executor-e2e
 
 
.changeset
.changeset
 
 
apps
apps
 
 
e2e
e2e
 
 
packages
packages
 
 
patches
patches
 
 
plans
plans
 
 
playground
playground
 
 
scripts
scripts
 
 
.dockerignore
.dockerignore
 
 
.gitattributes
.gitattributes
 
 
.gitignore
.gitignore
 
 
.oxfmtrc.json
.oxfmtrc.json
 
 
.oxlintrc.jsonc
.oxlintrc.jsonc
 
 
AGENTS.md
AGENTS.md
 
 
CONTEXT.md
CONTEXT.md
 
 
DEVELOPMENT.md
DEVELOPMENT.md
 
 
LICENSE
LICENSE
 
 
README.md
README.md
 
 
RELEASING.md
RELEASING.md
 
 
bun.lock
bun.lock
 
 
bunfig.toml
bunfig.toml
 
 
package.json
package.json
 
 
tsconfig.json
tsconfig.json
 
 

Repository files navigation

Executor

Everything your agent needs, drivable as code.

Think of Executor as Zapier or Retool, but fully drivable as code, with everything exposed to your agent. Connect the services you already use once, and any agent can use them through one MCP endpoint, without ever seeing a credential.

Website · Documentation · Discord · Launch post

executor-v2-launch.mp4

What it does

You have an agent, and you want it to call something: an API, an MCP server, a CLI, a service with no spec at all. Usually that means pasting the same keys into every client, wiring the same servers up again, and writing an exception for every API that does not fit the format.

Executor gives all of that one shape: the app. An app is a small TypeScript program that turns your accounts into tools. One app can wrap an OpenAPI spec, proxy a remote MCP server, or call an API by hand. It can also store data, serve its own UI, run in the background, and ask before it does anything risky.

  • Connect once, use everywhere. Save an account (an API key or an OAuth sign-in) once. Every app that needs the same service reuses it. The agent never sees the credential; Executor attaches it inside the app.
  • Your agent writes code, not tool calls. Agents get two tools, skills and execute. They search for what they need and run a short program across as many apps as the task takes.
  • Approvals where they matter. Each tool decides when to ask first: always, never, or only when the input looks risky. You approve through your agent, in your MCP client's own prompt, or on a browser page.
  • Build what isn't there yet. Install from the catalog, add a remote MCP server by URL, or have your agent write and deploy a new app for you. Every deploy is a new version you can roll back.
  • For teams too. Hosted and self-host add organizations, groups, shared accounts and browser sign-in.

Get started

Hosted. Sign in at app.executor.sh. There is nothing to install.

On your machine. Your accounts and data stay local:

curl -fsSL https://executor.sh/docs/install.sh | sh
executor

executor starts Executor in the background and opens the dashboard. npm, Homebrew and Windows installs are in the command line guide.

On your own infrastructure. One Docker container with an embedded database. See Self-host with Docker.

All three run the same apps and serve the same MCP endpoint.

Connect your agent

Point any MCP client at your endpoint. With Claude Code and hosted Executor:

claude mcp add --transport http --scope user executor 'https://mcp.executor.sh/mcp'

Then run /mcp inside Claude Code to sign in. The local endpoint is http://127.0.0.1:4312/mcp. ChatGPT, Codex, Cursor and others are covered in Add an MCP client.

Once connected, ask your agent what it can do: "Show me the apps and tools in my Executor workspace."

Build an app

An app is ordinary async TypeScript. This one has a single tool:

import { defineApp, object, query, router, string } from "apps";

export default defineApp(
  {},
  {
    tools: router({
      greet: query(
        { description: "Greet someone by name", input: object({ name: string() }) },
        async (_ctx, { name }) => ({ message: `Hello, ${name}!` }),
      ),
    }),
  },
);

Declare the accounts it needs and Executor asks the person using it to connect them. Read Author an app for accounts, approvals, stored data and deploying. Or skip the reading and ask your agent to build one: it can read the same guide through the skills tool.

Learn more

  • What Executor is: accounts, apps and tools in two minutes
  • Providers and accounts: what Executor stores and what an app sees
  • Tools and approvals: how calls are checked before they run
  • MCP: code mode, skills, execute and resuming approvals

Contributing

Issues and pull requests are welcome. DEVELOPMENT.md covers running Executor from source, the repository layout and how the pieces fit together. Executor 1 lives on the main branch.

License

MIT

About

The missing integration layer for AI agents. Let them call any OpenAPI / MCP / GraphQL / custom js functions in secure environment.

executor.sh

Resources

Readme
MIT license
Activity
Custom properties

Stars

4.4k stars

Watchers

7 watching

Forks

409 forks
Report repository

Releases

Packages

Contributors

Languages

You are visitor 01402503 — GeezerVison does not store the pages you look up.
Best viewed with Netscape Navigator 4.7 or Internet Explorer 6 at 800×600. No cookies required.