<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Using the library on core-agent</title><link>https://go-steer.github.io/core-agent/docs/library/</link><description>Recent content in Using the library on core-agent</description><generator>Hugo</generator><language>en-us</language><atom:link href="https://go-steer.github.io/core-agent/docs/library/index.xml" rel="self" type="application/rss+xml"/><item><title>Library guide</title><link>https://go-steer.github.io/core-agent/docs/library/guide/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://go-steer.github.io/core-agent/docs/library/guide/</guid><description>&lt;p&gt;This guide is for Go engineers embedding &lt;code&gt;core-agent&lt;/code&gt; in their own binary. Where the &lt;a href="../user-guide/"&gt;user guide&lt;/a&gt; is about configuring the bundled CLI, this one is about &lt;em&gt;extending&lt;/em&gt; the library — replacing the CLI&amp;rsquo;s defaults with your own UI, tools, providers, and runtime topology.&lt;/p&gt;
&lt;p&gt;The full API reference lives in &lt;a href="../library-api/"&gt;Library API&lt;/a&gt;. This guide is the narrative path through it, organized by extension point with worked examples for each.&lt;/p&gt;
&lt;h2 id="who-this-is-for"&gt;Who this is for&lt;/h2&gt;
&lt;p&gt;You&amp;rsquo;re a Go engineer building one of:&lt;/p&gt;</description></item><item><title>Library API</title><link>https://go-steer.github.io/core-agent/docs/library/api/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://go-steer.github.io/core-agent/docs/library/api/</guid><description>&lt;p&gt;&lt;code&gt;core-agent&lt;/code&gt; is designed to be embedded as a Go library. The bundled &lt;code&gt;cmd/core-agent&lt;/code&gt; is a thin reference wrapper; production consumers will typically write their own binary that composes these packages.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id="package-overview"&gt;Package overview&lt;/h2&gt;
&lt;table&gt;
 &lt;thead&gt;
 &lt;tr&gt;
 &lt;th&gt;Import path&lt;/th&gt;
 &lt;th&gt;Purpose&lt;/th&gt;
 &lt;/tr&gt;
 &lt;/thead&gt;
 &lt;tbody&gt;
 &lt;tr&gt;
 &lt;td&gt;&lt;code&gt;github.com/go-steer/core-agent/agent&lt;/code&gt;&lt;/td&gt;
 &lt;td&gt;Multi-turn agent wrapping ADK&amp;rsquo;s &lt;code&gt;llmagent + runner&lt;/code&gt;.&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;&lt;code&gt;github.com/go-steer/core-agent/instruction&lt;/code&gt;&lt;/td&gt;
 &lt;td&gt;&lt;code&gt;AGENTS.md&lt;/code&gt; / &lt;code&gt;CLAUDE.md&lt;/code&gt; / &lt;code&gt;GEMINI.md&lt;/code&gt; fallback loader.&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;&lt;code&gt;github.com/go-steer/core-agent/config&lt;/code&gt;&lt;/td&gt;
 &lt;td&gt;&lt;code&gt;.agents/config.json&lt;/code&gt; schema, discovery, atomic persist.&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;&lt;code&gt;github.com/go-steer/core-agent/permissions&lt;/code&gt;&lt;/td&gt;
 &lt;td&gt;Ask / allow / yolo gate; bash denylist; path scope.&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;&lt;code&gt;github.com/go-steer/core-agent/tools&lt;/code&gt;&lt;/td&gt;
 &lt;td&gt;&lt;code&gt;GateToolset&lt;/code&gt; wrapper bridging permissions to ADK toolsets.&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;&lt;code&gt;github.com/go-steer/core-agent/mcp&lt;/code&gt;&lt;/td&gt;
 &lt;td&gt;MCP server lifecycle from &lt;code&gt;.agents/mcp.json&lt;/code&gt;.&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;&lt;code&gt;github.com/go-steer/core-agent/skills&lt;/code&gt;&lt;/td&gt;
 &lt;td&gt;&lt;code&gt;SKILL.md&lt;/code&gt; discovery → ADK &lt;code&gt;skilltoolset&lt;/code&gt;.&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;&lt;code&gt;github.com/go-steer/core-agent/models&lt;/code&gt;&lt;/td&gt;
 &lt;td&gt;&lt;code&gt;Provider&lt;/code&gt; interface + registry / &lt;code&gt;Resolve()&lt;/code&gt;.&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;&lt;code&gt;github.com/go-steer/core-agent/pkg/models/gemini&lt;/code&gt;&lt;/td&gt;
 &lt;td&gt;Gemini API + Vertex AI provider.&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;&lt;code&gt;github.com/go-steer/core-agent/pkg/models/anthropic&lt;/code&gt;&lt;/td&gt;
 &lt;td&gt;Anthropic / Claude provider (first-party + Vertex).&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;&lt;code&gt;github.com/go-steer/core-agent/telemetry&lt;/code&gt;&lt;/td&gt;
 &lt;td&gt;OpenTelemetry exporter setup.&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;&lt;code&gt;github.com/go-steer/core-agent/usage&lt;/code&gt;&lt;/td&gt;
 &lt;td&gt;Per-turn token + cost tracker.&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;&lt;code&gt;github.com/go-steer/core-agent/session&lt;/code&gt;&lt;/td&gt;
 &lt;td&gt;Transcript persistence (&lt;code&gt;.agents/sessions/&lt;/code&gt;).&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;&lt;code&gt;github.com/go-steer/core-agent/runner&lt;/code&gt;&lt;/td&gt;
 &lt;td&gt;Headless (one-shot) + REPL (multi-turn) drivers.&lt;/td&gt;
 &lt;/tr&gt;
 &lt;/tbody&gt;
&lt;/table&gt;
&lt;hr&gt;
&lt;h2 id="minimal-example"&gt;Minimal example&lt;/h2&gt;
&lt;p&gt;The shortest possible program: pick a Gemini model, run one turn, print partial text:&lt;/p&gt;</description></item></channel></rss>