Skip to content

Latest commit

 

History

History
 
 
<!DOCTYPE html>


<!--
 | Generated by Apache Maven Doxia Site Renderer 2.0.0 from target/filtered-site/markdown/cookbook/README.md at 2026-04-26
 | Rendered using Apache Maven Fluido Skin 2.1.0
-->
<html xmlns="http://www.w3.org/1999/xhtml" lang="en">
  <head>
    <meta charset="UTF-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1" />
    <meta name="generator" content="Apache Maven Doxia Site Renderer 2.0.0" />
    <title>GitHub Copilot SDK Cookbook — Java – GitHub Copilot SDK :: Java</title>
    <link rel="stylesheet" href="../css/apache-maven-fluido-2.1.0.min.css" />
    <link rel="stylesheet" href="../css/site.css" />
    <link rel="stylesheet" href="../css/print.css" media="print" />
    <script src="../js/apache-maven-fluido-2.1.0.min.js"></script>
    <style>.github-fork-ribbon:before { background-color: gray; }</style>
  </head>
  <body class="topBarEnabled">
    <a class="github-fork-ribbon right-top" href="https://github.com/github/copilot-sdk-java" data-ribbon="Fork me on GitHub">Fork me on GitHub</a>
    <header id="topbar" class="navbar navbar-fixed-top ">
      <div class="navbar-inner">
        <div class="container-fluid">
        <a data-target=".nav-collapse" data-toggle="collapse" class="btn btn-navbar">
          <span class="icon-bar"></span>
          <span class="icon-bar"></span>
          <span class="icon-bar"></span>
        </a>
<a class="brand" href="../index.html">GitHub Copilot SDK for Java
</a>
            <ul class="nav">
      <li class="dropdown">
        <a class="dropdown-toggle" data-toggle="dropdown">Overview <b class="caret"></b></a>
        <ul class="dropdown-menu">
            <li><a href="../index.html">Introduction</a></li>
            <li><a href="../getting-started.html">Getting Started</a></li>
            <li><a href="../setup.html">Setup</a></li>
            <li><a href="../documentation.html">Documentation</a></li>
            <li><a href="../mcp.html">MCP Servers</a></li>
            <li><a href="../hooks.html">Session Hooks</a></li>
            <li><a href="../advanced.html">Advanced Usage</a></li>
            <li><a href="../apidocs/index.html">API Javadoc</a></li>
        </ul>
      </li>
      <li class="dropdown">
        <a class="dropdown-toggle" data-toggle="dropdown">Guides <b class="caret"></b></a>
        <ul class="dropdown-menu">
            <li><a href="../documentation.html#Basic_Usage">Basic Usage</a></li>
            <li><a href="../documentation.html#Handling_Responses">Handling Responses</a></li>
            <li><a href="../documentation.html#Streaming_Responses">Streaming</a></li>
            <li><a href="../documentation.html#Choosing_a_Model">Choosing a Model</a></li>
            <li><a href="../documentation.html#Session_Management">Session Management</a></li>
        </ul>
      </li>
      <li class="dropdown">
        <a class="dropdown-toggle" data-toggle="dropdown">Advanced <b class="caret"></b></a>
        <ul class="dropdown-menu">
            <li><a href="../advanced.html#Custom_Tools">Custom Tools</a></li>
            <li><a href="../advanced.html#System_Messages">System Messages</a></li>
            <li><a href="../advanced.html#File_Attachments">File Attachments</a></li>
            <li><a href="../advanced.html#Bring_Your_Own_Key_.28BYOK.29">BYOK</a></li>
            <li><a href="../advanced.html#Infinite_Sessions">Infinite Sessions</a></li>
            <li><a href="../advanced.html#MCP_Servers">MCP Servers</a></li>
            <li><a href="../advanced.html#Slash_Commands">Slash Commands</a></li>
            <li><a href="../advanced.html#Elicitation_UI_Dialogs">Elicitation</a></li>
            <li><a href="../advanced.html#Getting_Session_Metadata_by_ID">Session Metadata</a></li>
            <li><a href="../hooks.html">Session Hooks</a></li>
        </ul>
      </li>
      <li class="dropdown">
        <a class="dropdown-toggle" data-toggle="dropdown">Cookbook <b class="caret"></b></a>
        <ul class="dropdown-menu">
            <li><a>Overview</a></li>
            <li><a href="../cookbook/error-handling.html">Error Handling</a></li>
            <li><a href="../cookbook/multiple-sessions.html">Multiple Sessions</a></li>
            <li><a href="../cookbook/managing-local-files.html">Managing Local Files</a></li>
            <li><a href="../cookbook/pr-visualization.html">PR Visualization</a></li>
            <li><a href="../cookbook/persisting-sessions.html">Persisting Sessions</a></li>
        </ul>
      </li>
      <li class="dropdown">
        <a class="dropdown-toggle" data-toggle="dropdown">Project Documentation <b class="caret"></b></a>
        <ul class="dropdown-menu">
            <li class="dropdown-submenu">
<a href="../project-info.html">Project Information</a>
              <ul class="dropdown-menu">
                  <li><a href="../dependencies.html">Dependencies</a></li>
                  <li><a href="../dependency-info.html">Maven Coordinates</a></li>
                  <li><a href="../distribution-management.html">Distribution Management</a></li>
                  <li><a href="../index.html">About</a></li>
                  <li><a href="../licenses.html">Licenses</a></li>
                  <li><a href="../plugin-management.html">Plugin Management</a></li>
                  <li><a href="../plugins.html">Plugins</a></li>
                  <li><a href="../scm.html">Source Code Management</a></li>
                  <li><a href="../summary.html">Summary</a></li>
                  <li><a href="../team.html">Team</a></li>
              </ul>
            </li>
            <li class="dropdown-submenu">
<a href="../project-reports.html">Project Reports</a>
              <ul class="dropdown-menu">
                  <li><a href="../apidocs/index.html">Javadoc</a></li>
                  <li><a href="../surefire.html">Surefire</a></li>
                  <li><a href="../spotbugs.html">SpotBugs</a></li>
                  <li><a href="../taglist.html">Tag List</a></li>
                  <li><a href="../dependency-analysis.html">Dependency Analysis</a></li>
              </ul>
            </li>
        </ul>
      </li>
            </ul>
        </div>
      </div>
    </header>
    <div class="container-fluid container-fluid-top">
      <header>
        <div id="banner">
          <div class="pull-left"></div>
          <div class="pull-right"></div>
          <div class="clear"><hr/></div>
        </div>

        <div id="breadcrumbs">
          <ul class="breadcrumb">
        <li id="publishDate">Last Published: 2026-04-26<span class="divider">|</span>
</li>
          <li id="projectVersion">Version: 0.3.0-java.2<span class="divider">|</span></li>
      <li><a href="../index.html">Home</a><span class="divider">/</span></li>
    <li class="active">GitHub Copilot SDK Cookbook — Java</li>
          </ul>
        </div>
      </header>
      <div class="row-fluid">
        <header id="leftColumn" class="span2">
          <nav class="well sidebar-nav">
  <ul class="nav nav-list">
   <li class="nav-header">Overview</li>
    <li><a href="../index.html">Introduction</a></li>
    <li><a href="../getting-started.html">Getting Started</a></li>
    <li><a href="../setup.html">Setup</a></li>
    <li><a href="../documentation.html">Documentation</a></li>
    <li><a href="../mcp.html">MCP Servers</a></li>
    <li><a href="../hooks.html">Session Hooks</a></li>
    <li><a href="../advanced.html">Advanced Usage</a></li>
    <li><a href="../apidocs/index.html">API Javadoc</a></li>
   <li class="nav-header">Guides</li>
    <li><a href="../documentation.html#Basic_Usage">Basic Usage</a></li>
    <li><a href="../documentation.html#Handling_Responses">Handling Responses</a></li>
    <li><a href="../documentation.html#Streaming_Responses">Streaming</a></li>
    <li><a href="../documentation.html#Choosing_a_Model">Choosing a Model</a></li>
    <li><a href="../documentation.html#Session_Management">Session Management</a></li>
   <li class="nav-header">Advanced</li>
    <li><a href="../advanced.html#Custom_Tools">Custom Tools</a></li>
    <li><a href="../advanced.html#System_Messages">System Messages</a></li>
    <li><a href="../advanced.html#File_Attachments">File Attachments</a></li>
    <li><a href="../advanced.html#Bring_Your_Own_Key_.28BYOK.29">BYOK</a></li>
    <li><a href="../advanced.html#Infinite_Sessions">Infinite Sessions</a></li>
    <li><a href="../advanced.html#MCP_Servers">MCP Servers</a></li>
    <li><a href="../advanced.html#Slash_Commands">Slash Commands</a></li>
    <li><a href="../advanced.html#Elicitation_UI_Dialogs">Elicitation</a></li>
    <li><a href="../advanced.html#Getting_Session_Metadata_by_ID">Session Metadata</a></li>
    <li><a href="../hooks.html">Session Hooks</a></li>
   <li class="nav-header">Cookbook</li>
    <li class="active"><a>Overview</a></li>
    <li><a href="../cookbook/error-handling.html">Error Handling</a></li>
    <li><a href="../cookbook/multiple-sessions.html">Multiple Sessions</a></li>
    <li><a href="../cookbook/managing-local-files.html">Managing Local Files</a></li>
    <li><a href="../cookbook/pr-visualization.html">PR Visualization</a></li>
    <li><a href="../cookbook/persisting-sessions.html">Persisting Sessions</a></li>
   <li class="nav-header">Project Documentation</li>
    <li><a href="../project-info.html"><span class="icon-chevron-right"></span>Project Information</a></li>
    <li><a href="../project-reports.html"><span class="icon-chevron-right"></span>Project Reports</a></li>
  </ul>
          </nav>
          <div class="well sidebar-nav">
            <div id="poweredBy">
              <div class="clear"></div>
              <div class="clear"></div>
<a href="https://maven.apache.org/" class="builtBy" target="_blank"><img class="builtBy" alt="Built by Maven" src="../images/logos/maven-feather.png" /></a>
            </div>
          </div>
        </header>
        <main id="bodyColumn" class="span10">
<section><a id="GitHub_Copilot_SDK_Cookbook_.E2.80.94_Java"></a>
<h1>GitHub Copilot SDK Cookbook &#x2014; Java</h1>
<p>This folder hosts short, practical recipes for using the GitHub Copilot SDK with Java. Each recipe is concise, copy&#x2011;pasteable, and points to fuller examples and tests.</p><section><a id="Prerequisites"></a>
<h2>Prerequisites</h2>
<p>All cookbook examples can be run directly using <a href="https://www.jbang.dev/" class="externalLink">JBang</a>, which allows you to run Java code without a full project setup.</p>
<p><strong>Install JBang:</strong></p>

<pre class="prettyprint"><code class="language-bash"># macOS (using Homebrew)
brew install jbangdev/tap/jbang

# Linux/macOS (using curl)
curl -Ls https://sh.jbang.dev | bash -s - app setup

# Windows (using Scoop)
scoop install jbang
</code></pre>
<p>For other installation methods, see the <a href="https://www.jbang.dev/download/" class="externalLink">JBang installation guide</a>.</p></section><section><a id="Recipes"></a>
<h2>Recipes</h2>
<ul>

<li><a href="error-handling.html">Error Handling</a>: Handle errors gracefully including connection failures, timeouts, and cleanup.</li>
<li><a href="multiple-sessions.html">Multiple Sessions</a>: Manage multiple independent conversations simultaneously.</li>
<li><a href="managing-local-files.html">Managing Local Files</a>: Organize files by metadata using AI-powered grouping strategies.</li>
<li><a href="pr-visualization.html">PR Visualization</a>: Generate interactive PR age charts using GitHub MCP Server.</li>
<li><a href="persisting-sessions.html">Persisting Sessions</a>: Save and resume sessions across restarts.</li>
</ul></section><section><a id="Contributing"></a>
<h2>Contributing</h2>
<p>Add a new recipe by creating a markdown file in this folder and linking it above. Follow repository guidance in the <a href="https://github.com/github/copilot-sdk-java#contributing" class="externalLink">main README</a>.</p></section><section><a id="Status"></a>
<h2>Status</h2>
<p>These recipes are complete, practical examples and can be used directly or adapted for your own projects.</p></section></section>        </main>
      </div>
    </div>
    <hr/>
    <footer>
      <div class="container-fluid">
        <div class="row-fluid">
            <p>©      2026
</p>
        </div>
      </div>
    </footer>
  </body>
</html>