<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Project on Go Micro</title><link>https://go-micro.dev/docs/project/index.html</link><description>Recent content in Project on Go Micro</description><generator>Hugo</generator><language>en</language><atom:link href="https://go-micro.dev/docs/project/index.xml" rel="self" type="application/rss+xml"/><item><title>Contributing</title><link>https://go-micro.dev/docs/project/contributing.html</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://go-micro.dev/docs/project/contributing.html</guid><description>&lt;p&gt;This is a rendered copy of the repository &lt;code&gt;CONTRIBUTING.md&lt;/code&gt; for convenient access via the documentation site.&lt;/p&gt;
&lt;h2 id="overview"&gt;Overview&lt;a class="td-heading-self-link" href="#overview" aria-label="Heading self-link"&gt;&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Go Micro welcomes contributions of all kinds: code, documentation, examples, and plugins.&lt;/p&gt;
&lt;h2 id="quick-start"&gt;Quick Start&lt;a class="td-heading-self-link" href="#quick-start" aria-label="Heading self-link"&gt;&lt;/a&gt;&lt;/h2&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;git clone --depth &lt;span class="m"&gt;1&lt;/span&gt; https://github.com/micro/go-micro.git
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="nb"&gt;cd&lt;/span&gt; go-micro
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;go mod download
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;go &lt;span class="nb"&gt;test&lt;/span&gt; ./...
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h2 id="process"&gt;Process&lt;a class="td-heading-self-link" href="#process" aria-label="Heading self-link"&gt;&lt;/a&gt;&lt;/h2&gt;
&lt;ol&gt;
&lt;li&gt;Fork and create a feature branch&lt;/li&gt;
&lt;li&gt;Make focused changes with tests&lt;/li&gt;
&lt;li&gt;Run linting and full test suite&lt;/li&gt;
&lt;li&gt;Open a PR describing motivation and approach&lt;/li&gt;
&lt;/ol&gt;
&lt;h2 id="commit-format"&gt;Commit Format&lt;a class="td-heading-self-link" href="#commit-format" aria-label="Heading self-link"&gt;&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Use conventional commits:&lt;/p&gt;</description></item><item><title>Roadmap</title><link>https://go-micro.dev/docs/project/roadmap.html</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://go-micro.dev/docs/project/roadmap.html</guid><description>&lt;p&gt;Go Micro is a framework for building &lt;strong&gt;agents and services&lt;/strong&gt; in Go. An agent is a distributed system — it discovers services, calls them, holds state, and recovers from failure — so building an agent is building a service. The roadmap has two jobs: make &lt;strong&gt;agentic development&lt;/strong&gt; excellent, and make the &lt;strong&gt;developer experience&lt;/strong&gt; around it excellent. Nothing else.&lt;/p&gt;
&lt;h2 id="where-we-are-v6"&gt;Where we are (v6)&lt;a class="td-heading-self-link" href="#where-we-are-v6" aria-label="Heading self-link"&gt;&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;The foundation is in place:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Services&lt;/strong&gt; — register, discover, RPC, events; every endpoint is automatically an MCP tool.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Agents&lt;/strong&gt; — a model with memory and tools that manages services, with &lt;code&gt;plan&lt;/code&gt;, &lt;code&gt;delegate&lt;/code&gt;, and guardrails (&lt;code&gt;MaxSteps&lt;/code&gt;, &lt;code&gt;LoopLimit&lt;/code&gt;, &lt;code&gt;ApproveTool&lt;/code&gt;) built in, plus tool-execution middleware (&lt;code&gt;WrapTool&lt;/code&gt;) and run metadata.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Flows&lt;/strong&gt; — durable, event-driven workflows: ordered steps that checkpoint and resume after a crash.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Interop&lt;/strong&gt; — the MCP gateway (services as tools) and the A2A gateway (agents as agents, both directions, including A2A streaming, push notifications, and multi-turn continuation), both generated from the registry; x402 for paid tools.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Secure by default&lt;/strong&gt; — TLS verification on, state scoped per component.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="principles"&gt;Principles&lt;a class="td-heading-self-link" href="#principles" aria-label="Heading self-link"&gt;&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;These constrain everything below:&lt;/p&gt;</description></item><item><title>Powered by Go Micro Badge</title><link>https://go-micro.dev/docs/project/badge.html</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://go-micro.dev/docs/project/badge.html</guid><description>&lt;h2 id="markdown-badges"&gt;Markdown Badges&lt;a class="td-heading-self-link" href="#markdown-badges" aria-label="Heading self-link"&gt;&lt;/a&gt;&lt;/h2&gt;
&lt;h3 id="dark-badge"&gt;Dark Badge&lt;a class="td-heading-self-link" href="#dark-badge" aria-label="Heading self-link"&gt;&lt;/a&gt;&lt;/h3&gt;
&lt;a href="https://go-micro.dev" target="_blank"&gt;
&lt;img src="https://img.shields.io/badge/Powered%20by-Go%20Micro-0366d6?style=for-the-badge&amp;amp;logo=go&amp;amp;logoColor=white" alt="Powered by Go Micro"&gt;
&lt;/a&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-markdown" data-lang="markdown"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;[&lt;span class="nt"&gt;![Powered by Go Micro&lt;/span&gt;](&lt;span class="na"&gt;https://img.shields.io/badge/Powered%20by-Go%20Micro-0366d6?style=for-the-badge&amp;amp;logo=go&amp;amp;logoColor=white&lt;/span&gt;)](https://go-micro.dev)
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h3 id="light-badge"&gt;Light Badge&lt;a class="td-heading-self-link" href="#light-badge" aria-label="Heading self-link"&gt;&lt;/a&gt;&lt;/h3&gt;
&lt;a href="https://go-micro.dev" target="_blank"&gt;
&lt;img src="https://img.shields.io/badge/Powered%20by-Go%20Micro-00ADD8?style=flat&amp;amp;logo=go&amp;amp;logoColor=white" alt="Powered by Go Micro"&gt;
&lt;/a&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-markdown" data-lang="markdown"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;[&lt;span class="nt"&gt;![Powered by Go Micro&lt;/span&gt;](&lt;span class="na"&gt;https://img.shields.io/badge/Powered%20by-Go%20Micro-00ADD8?style=flat&amp;amp;logo=go&amp;amp;logoColor=white&lt;/span&gt;)](https://go-micro.dev)
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h3 id="compact-badge"&gt;Compact Badge&lt;a class="td-heading-self-link" href="#compact-badge" aria-label="Heading self-link"&gt;&lt;/a&gt;&lt;/h3&gt;
&lt;a href="https://go-micro.dev" target="_blank"&gt;
&lt;img src="https://img.shields.io/badge/Go-Micro-0366d6?style=flat-square" alt="Go Micro"&gt;
&lt;/a&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-markdown" data-lang="markdown"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;[&lt;span class="nt"&gt;![Go Micro&lt;/span&gt;](&lt;span class="na"&gt;https://img.shields.io/badge/Go-Micro-0366d6?style=flat-square&lt;/span&gt;)](https://go-micro.dev)
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h2 id="html-badges"&gt;HTML Badges&lt;a class="td-heading-self-link" href="#html-badges" aria-label="Heading self-link"&gt;&lt;/a&gt;&lt;/h2&gt;
&lt;h3 id="standard-html-badge"&gt;Standard HTML Badge&lt;a class="td-heading-self-link" href="#standard-html-badge" aria-label="Heading self-link"&gt;&lt;/a&gt;&lt;/h3&gt;
&lt;a href="https://go-micro.dev" target="_blank"&gt;
 &lt;img src="https://img.shields.io/badge/Powered%20by-Go%20Micro-0366d6?style=for-the-badge&amp;logo=go&amp;logoColor=white" alt="Powered by Go Micro"&gt;
&lt;/a&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-html" data-lang="html"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="p"&gt;&amp;lt;&lt;/span&gt;&lt;span class="nt"&gt;a&lt;/span&gt; &lt;span class="na"&gt;href&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="s"&gt;&amp;#34;https://go-micro.dev&amp;#34;&lt;/span&gt; &lt;span class="na"&gt;target&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="s"&gt;&amp;#34;_blank&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;&amp;gt;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="p"&gt;&amp;lt;&lt;/span&gt;&lt;span class="nt"&gt;img&lt;/span&gt; &lt;span class="na"&gt;src&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="s"&gt;&amp;#34;https://img.shields.io/badge/Powered%20by-Go%20Micro-0366d6?style=for-the-badge&amp;amp;logo=go&amp;amp;logoColor=white&amp;#34;&lt;/span&gt; &lt;span class="na"&gt;alt&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="s"&gt;&amp;#34;Powered by Go Micro&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;&amp;gt;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="p"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="nt"&gt;a&lt;/span&gt;&lt;span class="p"&gt;&amp;gt;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h3 id="custom-svg-badge"&gt;Custom SVG Badge&lt;a class="td-heading-self-link" href="#custom-svg-badge" aria-label="Heading self-link"&gt;&lt;/a&gt;&lt;/h3&gt;
&lt;a href="https://go-micro.dev" style="display:inline-block;text-decoration:none;"&gt;
 &lt;svg width="160" height="32" xmlns="http://www.w3.org/2000/svg"&gt;
 &lt;rect width="160" height="32" rx="6" fill="#0366d6"/&gt;
 &lt;text x="16" y="21" font-family="system-ui,-apple-system,sans-serif" font-size="13" font-weight="600" fill="white"&gt;
 Powered by Go Micro
 &lt;/text&gt;
 &lt;/svg&gt;
&lt;/a&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-html" data-lang="html"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="p"&gt;&amp;lt;&lt;/span&gt;&lt;span class="nt"&gt;a&lt;/span&gt; &lt;span class="na"&gt;href&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="s"&gt;&amp;#34;https://go-micro.dev&amp;#34;&lt;/span&gt; &lt;span class="na"&gt;style&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="s"&gt;&amp;#34;display:inline-block;text-decoration:none;&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;&amp;gt;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="p"&gt;&amp;lt;&lt;/span&gt;&lt;span class="nt"&gt;svg&lt;/span&gt; &lt;span class="na"&gt;width&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="s"&gt;&amp;#34;160&amp;#34;&lt;/span&gt; &lt;span class="na"&gt;height&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="s"&gt;&amp;#34;32&amp;#34;&lt;/span&gt; &lt;span class="na"&gt;xmlns&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="s"&gt;&amp;#34;http://www.w3.org/2000/svg&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;&amp;gt;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="p"&gt;&amp;lt;&lt;/span&gt;&lt;span class="nt"&gt;rect&lt;/span&gt; &lt;span class="na"&gt;width&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="s"&gt;&amp;#34;160&amp;#34;&lt;/span&gt; &lt;span class="na"&gt;height&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="s"&gt;&amp;#34;32&amp;#34;&lt;/span&gt; &lt;span class="na"&gt;rx&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="s"&gt;&amp;#34;6&amp;#34;&lt;/span&gt; &lt;span class="na"&gt;fill&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="s"&gt;&amp;#34;#0366d6&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;/&amp;gt;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="p"&gt;&amp;lt;&lt;/span&gt;&lt;span class="nt"&gt;text&lt;/span&gt; &lt;span class="na"&gt;x&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="s"&gt;&amp;#34;16&amp;#34;&lt;/span&gt; &lt;span class="na"&gt;y&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="s"&gt;&amp;#34;21&amp;#34;&lt;/span&gt; &lt;span class="na"&gt;font-family&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="s"&gt;&amp;#34;system-ui,-apple-system,sans-serif&amp;#34;&lt;/span&gt; &lt;span class="na"&gt;font-size&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="s"&gt;&amp;#34;13&amp;#34;&lt;/span&gt; &lt;span class="na"&gt;font-weight&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="s"&gt;&amp;#34;600&amp;#34;&lt;/span&gt; &lt;span class="na"&gt;fill&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="s"&gt;&amp;#34;white&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;&amp;gt;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; Powered by Go Micro
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="p"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="nt"&gt;text&lt;/span&gt;&lt;span class="p"&gt;&amp;gt;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="p"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="nt"&gt;svg&lt;/span&gt;&lt;span class="p"&gt;&amp;gt;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="p"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="nt"&gt;a&lt;/span&gt;&lt;span class="p"&gt;&amp;gt;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h2 id="usage"&gt;Usage&lt;a class="td-heading-self-link" href="#usage" aria-label="Heading self-link"&gt;&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Add one of these badges to your README.md, documentation, or website footer to show that your project uses Go Micro.&lt;/p&gt;</description></item><item><title>Server (optional)</title><link>https://go-micro.dev/docs/project/server.html</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://go-micro.dev/docs/project/server.html</guid><description>&lt;h1 id="micro-server-optional"&gt;Micro Server (Optional)&lt;a class="td-heading-self-link" href="#micro-server-optional" aria-label="Heading self-link"&gt;&lt;/a&gt;&lt;/h1&gt;
&lt;p&gt;The Micro server is an optional web dashboard and authenticated API gateway for production environments. It provides a secure entrypoint for discovering and interacting with services that are already running (e.g., managed by systemd via &lt;code&gt;micro deploy&lt;/code&gt;).&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;&lt;code&gt;micro server&lt;/code&gt; does not build, run, or watch services.&lt;/strong&gt; It only discovers services via the registry and provides a UI/API to interact with them.&lt;/p&gt;
&lt;h2 id="micro-server-vs-micro-run"&gt;micro server vs micro run&lt;a class="td-heading-self-link" href="#micro-server-vs-micro-run" aria-label="Heading self-link"&gt;&lt;/a&gt;&lt;/h2&gt;
&lt;table&gt;
	&lt;thead&gt;
			&lt;tr&gt;
					&lt;th&gt;&lt;/th&gt;
					&lt;th&gt;&lt;code&gt;micro run&lt;/code&gt;&lt;/th&gt;
					&lt;th&gt;&lt;code&gt;micro server&lt;/code&gt;&lt;/th&gt;
			&lt;/tr&gt;
	&lt;/thead&gt;
	&lt;tbody&gt;
			&lt;tr&gt;
					&lt;td&gt;&lt;strong&gt;Purpose&lt;/strong&gt;&lt;/td&gt;
					&lt;td&gt;Local development&lt;/td&gt;
					&lt;td&gt;Production dashboard&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;&lt;strong&gt;Builds services&lt;/strong&gt;&lt;/td&gt;
					&lt;td&gt;Yes&lt;/td&gt;
					&lt;td&gt;No&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;&lt;strong&gt;Runs services&lt;/strong&gt;&lt;/td&gt;
					&lt;td&gt;Yes (as child processes)&lt;/td&gt;
					&lt;td&gt;No (discovers already-running services)&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;&lt;strong&gt;Hot reload&lt;/strong&gt;&lt;/td&gt;
					&lt;td&gt;Yes&lt;/td&gt;
					&lt;td&gt;No&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;&lt;strong&gt;Authentication&lt;/strong&gt;&lt;/td&gt;
					&lt;td&gt;Yes (default &lt;code&gt;admin&lt;/code&gt;/&lt;code&gt;micro&lt;/code&gt;)&lt;/td&gt;
					&lt;td&gt;Yes (default &lt;code&gt;admin&lt;/code&gt;/&lt;code&gt;micro&lt;/code&gt;)&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;&lt;strong&gt;Scopes&lt;/strong&gt;&lt;/td&gt;
					&lt;td&gt;Yes (&lt;code&gt;/auth/scopes&lt;/code&gt;)&lt;/td&gt;
					&lt;td&gt;Yes (&lt;code&gt;/auth/scopes&lt;/code&gt;)&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;&lt;strong&gt;Dashboard&lt;/strong&gt;&lt;/td&gt;
					&lt;td&gt;Full gateway UI with auth, scopes, agent&lt;/td&gt;
					&lt;td&gt;Full dashboard with API explorer, logs, user/token management&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;&lt;strong&gt;When to use&lt;/strong&gt;&lt;/td&gt;
					&lt;td&gt;Day-to-day development&lt;/td&gt;
					&lt;td&gt;Deployed environments, shared servers&lt;/td&gt;
			&lt;/tr&gt;
	&lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;For local development, use &lt;a href="guides/micro-run"&gt;&lt;code&gt;micro run&lt;/code&gt;&lt;/a&gt; instead.&lt;/p&gt;</description></item></channel></rss>