{"id":51845644,"url":"https://github.com/speakeasy-api/cli","last_synced_at":"2026-07-23T12:01:11.569Z","repository":{"id":38299663,"uuid":"486460090","full_name":"speakeasy-api/cli","owner":"speakeasy-api","description":"Track the state of your API and orchestrate your API lifecycle from code to artifacts to infra. Manage your APIs with ease !","archived":false,"fork":false,"pushed_at":"2026-05-11T21:41:41.000Z","size":11820,"stargazers_count":2,"open_issues_count":0,"forks_count":0,"subscribers_count":6,"default_branch":"main","last_synced_at":"2026-05-25T05:34:24.865Z","etag":null,"topics":["api","api-platform","api-testing","apiops","cli","golang","request-logging","rest","state"],"latest_commit_sha":null,"homepage":"","language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/speakeasy-api.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2022-04-28T05:37:07.000Z","updated_at":"2026-05-11T21:41:45.000Z","dependencies_parsed_at":"2022-09-08T08:50:14.405Z","dependency_job_id":null,"html_url":"https://github.com/speakeasy-api/cli","commit_stats":null,"previous_names":[],"tags_count":7,"template":false,"template_full_name":null,"purl":"pkg:github/speakeasy-api/cli","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/speakeasy-api%2Fcli","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/speakeasy-api%2Fcli/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/speakeasy-api%2Fcli/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/speakeasy-api%2Fcli/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/speakeasy-api","download_url":"https://codeload.github.com/speakeasy-api/cli/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/speakeasy-api%2Fcli/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":35801472,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-07-20T02:08:10.276Z","status":"online","status_checked_at":"2026-07-23T02:00:06.683Z","response_time":57,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["api","api-platform","api-testing","apiops","cli","golang","request-logging","rest","state"],"created_at":"2026-07-23T12:01:10.601Z","updated_at":"2026-07-23T12:01:11.562Z","avatar_url":"https://github.com/speakeasy-api.png","language":"Go","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003ca href=\"https://www.speakeasy.com/product/mcp-gateway\" target=\"_blank\"\u003e\n   \u003cpicture\u003e\n       \u003csource media=\"(prefers-color-scheme: light)\" srcset=\"https://github.com/user-attachments/assets/1812f171-1650-4045-ac35-21bdd7b103a6\"\u003e\n       \u003csource media=\"(prefers-color-scheme: dark)\" srcset=\"https://github.com/user-attachments/assets/3f14e446-0dec-4b8a-b36e-fd92efc25751\"\u003e\n       \u003cimg src=\"https://github.com/user-attachments/assets/3f14e446-0dec-4b8a-b36e-fd92efc25751#gh-dark-mode-only\" alt=\"Speakeasy AI Control Plane\"\u003e\n   \u003c/picture\u003e\n\u003c/a\u003e\n\n\u003ch3 align=\"center\"\u003eSpeakeasy AI Control Plane\u003c/h3\u003e\n\u003cp align=\"center\"\u003e\n    \u003cbr /\u003e\n    \u003ca href=\"https://www.speakeasy.com/product/mcp-gateway\"\u003e\u003cstrong\u003eLearn more »\u003c/strong\u003e\u003c/a\u003e\n    \u003cbr /\u003e\n    \u003cbr /\u003e\n    \u003ca href=\"https://speakeasy.com/\"\u003e\u003cimg alt=\"Built by Speakeasy\" src=\"https://www.speakeasy.com/assets/badges/built-by-speakeasy.svg\" /\u003e\n    \u003cbr /\u003e\n  \u003c/a\u003e\n    \u003ca href=\"#speakeasy-functions\"\u003e\u003cstrong\u003eSpeakeasy Functions\u003c/strong\u003e\u003c/a\u003e ·\n    \u003ca href=\"#cli\"\u003e\u003cstrong\u003eCLI\u003c/strong\u003e\u003c/a\u003e ·\n    \u003ca href=\"#support\"\u003e\u003cstrong\u003eSupport\u003c/strong\u003e\u003c/a\u003e ·\n    \u003ca href=\"#contributing\"\u003e\u003cstrong\u003eContributing\u003c/strong\u003e\u003c/a\u003e\n\u003c/p\u003e\n\n\u003chr /\u003e\n\n# Speakeasy CLI\n\nPublic function tooling for the Speakeasy AI Control Plane.\n\nThis repository contains the TypeScript framework for authoring hosted MCP\ntools, the scaffolding package for new function projects, and the Go CLI used\nto authenticate, stage, push, and inspect deployments.\n\n## Layout\n\n- `go/cli`: Go CLI entrypoint. This depends on the generated Go SDK in `go/sdk`, not on server packages.\n- `go/sdk`: Generated Go SDK for the Speakeasy Control Plane API.\n- `ts/create-function`: Project scaffolding for new function projects.\n- `ts/functions`: TypeScript functions framework package.\n\n## Speakeasy Functions\n\nCreate agentic tools from simple TypeScript code using Speakeasy Functions, the\nfunctions framework for the Speakeasy AI Control Plane. Functions can be deployed\nto hosted MCP servers or run locally during development.\n\nThe fastest way to get started is with the Speakeasy function scaffolder,\nwhich creates a complete TypeScript project with a working function.\n\n```bash\n# Scaffold a new function project and follow the prompts\nnpm create @gram-ai/function@latest\n\n# Move into your newly created function directory\ncd my_function\n\n# Build and deploy\nnpm run build\nnpm run push\n```\n\nA default function is created for you.\n\n```typescript\nimport { Gram } from \"@gram-ai/functions\";\nimport * as z from \"zod/mini\";\n\nconst functions = new Gram().tool({\n  name: \"add\",\n  description: \"Add two numbers together\",\n  inputSchema: { a: z.number(), b: z.number() },\n  async execute(ctx, input) {\n    return ctx.json({ sum: input.a + input.b });\n  },\n});\n\nexport default functions;\n```\n\nThe generated project also includes a local MCP server entrypoint so you can\ntest tools with MCP Inspector using `pnpm run dev`.\n\nCommon function use cases include:\n\n- Powering in-application chat by exposing context from internal APIs or third-party APIs through tools.\n- Adding data and actions to AI workflows in platforms such as Zapier and n8n.\n- Creating higher-order tools that compose lower-level API calls.\n- Managing and securing MCP servers for an organization through a unified control plane.\n\nSee the [TypeScript functions README](./ts/functions/README.md) for framework\ndetails.\n\n## CLI\n\nThe Speakeasy CLI provides scripted access to the Speakeasy AI Control\nPlane. Use it to authenticate, stage function artifacts, push deployments, and\ncheck deployment status.\n\nInstall the CLI on macOS or Linux:\n\n```bash\ncurl -fsSL https://raw.githubusercontent.com/speakeasy-api/cli/main/install-cli.sh | bash\n```\n\nInstall the CLI on Windows:\n\n```powershell\niwr -useb https://raw.githubusercontent.com/speakeasy-api/cli/main/install-cli.ps1 | iex\n```\n\nAuthenticate before pushing deployments:\n\n```bash\ngram auth\n```\n\nStage and push a function artifact:\n\n```bash\ngram stage function --slug my-function --location ./dist/function.zip\ngram push\n```\n\nSee the [CLI README](./go/cli/README.md) for local development and testing.\n\n## Support\n\n- Slack: [Join our Slack](https://join.slack.com/t/speakeasy-dev/shared_invite/zt-3hudfoj4y-9EPqMmHIFhNiTtannqiV3Q) for support and discussions.\n- In-app: When using the Speakeasy application, you can engage with the core maintainers of the product.\n- GitHub: Contribute or report issues [on this repository](https://github.com/speakeasy-api/cli/issues/new).\n- Documentation: View the [Speakeasy docs](https://www.speakeasy.com/docs) for function framework guidance.\n\n## Contributing\n\nContributions are welcome. Please open an issue or discussion for questions or\nsuggestions before starting significant work.\n\nFor package-specific development notes, see the README files in\n[`ts/functions`](./ts/functions/README.md), [`go/cli`](./go/cli/README.md), and\n[`go/sdk`](./go/sdk/README.md).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fspeakeasy-api%2Fcli","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fspeakeasy-api%2Fcli","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fspeakeasy-api%2Fcli/lists"}