{"id":18560399,"url":"https://github.com/hypermodeinc/modus","last_synced_at":"2025-05-16T10:05:42.852Z","repository":{"id":257817013,"uuid":"711052313","full_name":"hypermodeinc/modus","owner":"hypermodeinc","description":"modus: a framework for building agentic flows powered by WebAssembly","archived":false,"fork":false,"pushed_at":"2025-05-15T23:42:25.000Z","size":7608,"stargazers_count":379,"open_issues_count":3,"forks_count":18,"subscribers_count":6,"default_branch":"main","last_synced_at":"2025-05-16T10:04:28.882Z","etag":null,"topics":["agentic-ai","agents","ai","api","go","javascript","serverless","tools","webassembly"],"latest_commit_sha":null,"homepage":"https://docs.hypermode.com/modus","language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/hypermodeinc.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":".github/CODEOWNERS","security":"SECURITY.md","support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2023-10-28T04:31:08.000Z","updated_at":"2025-05-16T06:13:31.000Z","dependencies_parsed_at":"2024-11-20T19:21:43.701Z","dependency_job_id":"c50f0e7d-9f69-46bd-8e15-c34fa9b155c9","html_url":"https://github.com/hypermodeinc/modus","commit_stats":null,"previous_names":["hypermodeinc/modus"],"tags_count":185,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hypermodeinc%2Fmodus","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hypermodeinc%2Fmodus/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hypermodeinc%2Fmodus/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hypermodeinc%2Fmodus/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/hypermodeinc","download_url":"https://codeload.github.com/hypermodeinc/modus/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":254509476,"owners_count":22082891,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","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":["agentic-ai","agents","ai","api","go","javascript","serverless","tools","webassembly"],"created_at":"2024-11-06T22:01:48.995Z","updated_at":"2025-05-16T10:05:42.846Z","avatar_url":"https://github.com/hypermodeinc.png","language":"Go","readme":"\u003c!-- markdownlint-disable first-line-heading --\u003e\n\u003cdiv align=\"center\"\u003e\n\n[![modus](https://github.com/user-attachments/assets/1a6020bd-d041-4dd0-b4a9-ce01dc015b65)](https://github.com/hypermodeinc/modus)\n\n[![GitHub License](https://img.shields.io/github/license/hypermodeinc/modus)](https://github.com/hypermodeinc/modus?tab=Apache-2.0-1-ov-file#readme)\n[![CodeQL](https://github.com/hypermodeinc/modus/actions/workflows/github-code-scanning/codeql/badge.svg)](https://github.com/hypermodeinc/modus/actions)\n[![chat](https://img.shields.io/discord/1267579648657850441)](https://discord.gg/NJQ4bJpffF)\n[![GitHub Repo stars](https://img.shields.io/github/stars/hypermodeinc/modus)](https://github.com/hypermodeinc/modus/stargazers)\n[![GitHub commit activity](https://img.shields.io/github/commit-activity/m/hypermodeinc/modus)](https://github.com/hypermodeinc/modus/commits/main/)\n\n\u003c/div\u003e\n\n\u003cp align=\"center\"\u003e\n   \u003ca href=\"https://docs.hypermode.com/modus/quickstart\"\u003eGet Started\u003c/a\u003e\n   \u003cspan\u003e · \u003c/span\u003e\n   \u003ca href=\"https://docs.hypermode.com/\"\u003eDocs\u003c/a\u003e\n   \u003cspan\u003e · \u003c/span\u003e\n   \u003ca href=\"https://discord.com/invite/MAZgkhP6C6\"\u003eDiscord\u003c/a\u003e\n\u003cp\u003e\n\n**Modus is an open-source, serverless framework for building agentic systems and AI apps in Go and\nAssemblyScript**\n\nIt simplifies the integration of models, context, and data. We're continuing to add additional\ncapabilities to better support the construction and calling of tools.\n\nYou write a function.\n\n```ts\nexport function sayHello(name: string): string {\n  return `Hello, ${name}!`;\n}\n```\n\nThen, Modus:\n\n- extracts the metadata of your functions\n- compiles your code with optimizations based on the host environment\n- caches the compiled module in memory for fast retrieval\n- prepares an invocation plan for each function\n- extracts connections, models, and other configuration details from the app’s manifest\n- generates an API schema and activates the endpoint\n\nYou query the endpoint\n\n```graphql\nquery SayHello {\n  sayHello(name: \"World\")\n}\n```\n\nIn a few milliseconds, Modus:\n\n- loads your compiled code into a sandboxed execution environment with a dedicated memory space\n- runs your code, aided by host functions that power the Modus APIs\n- securely queries data and AI models as needed, without exposing credentials to your code\n- responds via the API result and releases the execution environment\n\n**Now you have a production ready scalable endpoint for your AI-enabled app. AI-ready when you’re\nready. Launch and iterate.**\n\n## Quickstart\n\nInstall the Modus CLI\n\n```bash\nnpm install -g @hypermode/modus-cli\n```\n\nInitialize your Modus app\n\n```bash\nmodus new\n```\n\nRun your app locally with fast refresh\n\n```bash\nmodus dev\n```\n\n## Demo\n\n\u003cdiv align=\"center\"\u003e\n\n[![Modus Demo](https://github.com/user-attachments/assets/12ac5db9-ca32-418c-a70d-67aef797a9e3)](https://www.youtube.com/watch?v=3CcJTXTmz88)\n\n\u003c/div\u003e\n\n## What's it good for?\n\nWe believe that agentic flows are still fundamentally apps. As such, we've designed Modus primarily\nas a general-purpose framework, that just happens to treat models, agents, and tools as first-class\ncomponents.\n\nModus is optimized for apps that require sub-second response times. We’ve made trade-offs to\nprioritize speed and simplicity.\n\n## Programming Languages\n\nSince Modus is based on WebAssembly, you can write Modus apps in various programming languages. Each\nlanguage offers the full capabilities of the Modus framework.\n\nCurrently, the supported languages you may choose from are:\n\n- [Go](https://go.dev/) - A general-purpose programming language originally designed by Google.\n- [AssemblyScript](https://www.assemblyscript.org/) - A TypeScript-like language designed for\n  WebAssembly.\n\nAdditional programming languages will be supported in the future.\n\n## Hosting\n\nModus is a free, open-source framework, you’re welcome to run your Modus apps on your own hardware\nor on any hosting platform that meets your needs.\n\nHowever, over at [Hypermode](https://hypermode.com/) we have built additional tooling and\ninfrastructure to make constructing and deploying your agents and AI apps easy. Hypermode includes\nmodels, observability, debugging, and function hosting. Just push your code to Github and Hypermode\nwill automatically build and deploy it on global infrastructure.\n\n## Open Source\n\nModus is developed by [Hypermode](https://hypermode.com/) as an open-source project, integral but\nindependent from Hypermode.\n\nWe welcome external contributions. See the [CONTRIBUTING.md](./CONTRIBUTING.md) file if you would\nlike to get involved.\n\n## Acknowledgements\n\nIt's taken a lot of hard work to bring Modus to life, but we couldn't have done it alone. Modus is\nbuilt upon _many_ open source components and projects. We'd especially like to express our gratitude\nto the authors and teams of our core dependencies:\n\n- Takeshi Yoneda, author of [Wazero](https://wazero.io/), and other contributors to the Wazero\n  project - and to [Tetrate](https://tetrate.io/) for continuing its support of Wazero. Modus uses\n  Wazero to execute WebAssembly modules.\n- Jens Neuse, Stefan Avram, and the rest of the team at [Wundergraph](https://wundergraph.com/).\n  Modus uses Wundergraph's [GraphQL Go Tools](https://github.com/wundergraph/graphql-go-tools)\n  library to process incoming GraphQL API requests.\n- Max Graey, Daniel Wirtz, and other contributors to the\n  [AssemblyScript](https://www.assemblyscript.org/) project. Modus chose AssemblyScript as one of\n  its core languages because it is ideal for web developers getting started with Web Assembly.\n- The [Go language](https://go.dev/) team, and also the maintainers of\n  [TinyGo](https://tinygo.org/). The Modus Runtime is written in Go, and the Modus Go SDK uses\n  TinyGo.\n\n## License\n\nModus and its components are Copyright 2024 Hypermode Inc., and licensed under the terms of the\nApache License, Version 2.0. See the [LICENSE](./LICENSE) file for a complete copy of the license.\n\nIf you have any questions about Modus licensing, or need an alternate license or other arrangement,\nplease contact us at hello@hypermode.com.\n","funding_links":[],"categories":["Frameworks","Recently Updated","Go","Implementations","Building","Frameworks / Runtimes"],"sub_categories":["[Nov 18, 2024](/content/2024/11/18/README.md)","JavaScript/TypeScript","Frameworks"],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhypermodeinc%2Fmodus","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fhypermodeinc%2Fmodus","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhypermodeinc%2Fmodus/lists"}