Files
awesome-copilot/cookbook/copilot-sdk/java/recipe
Bruno Borges 0f06f346be Address review feedback
- Replace Thread.sleep with sendAndWait in PRVisualization
- Fix top-level statements in multiple-sessions.md (wrap in class)
- Fix .getMessage() → .getData().content() in MultipleSessions.java
- Guard against null readLine() in AccessibilityReport.java
- Add null-safe getCause() + InterruptedException handling in ErrorHandling.java
- Fix paths: jbang commands now include recipe/ prefix
- Fix root README path: cd java/recipe (not java/cookbook/recipe)
- Fix recipe/README.md ralph-loop CLI example
2026-04-06 15:20:20 -04:00
..
2026-04-06 15:20:20 -04:00
2026-04-06 15:20:20 -04:00

Runnable Recipe Examples

This folder contains standalone, executable Java examples for each cookbook recipe. Each file can be run directly with JBang — no project setup required.

Prerequisites

  • Java 17 or later
  • JBang installed:
# 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

For other installation methods, see the JBang installation guide.

Running Examples

Each .java file is a complete, runnable program. Simply use:

jbang <FileName>.java

Available Recipes

Recipe Command Description
Error Handling jbang ErrorHandling.java Demonstrates error handling patterns
Multiple Sessions jbang MultipleSessions.java Manages multiple independent conversations
Managing Local Files jbang ManagingLocalFiles.java Organizes files using AI grouping
PR Visualization jbang PRVisualization.java Generates PR age charts
Persisting Sessions jbang PersistingSessions.java Save and resume sessions across restarts
Ralph Loop jbang RalphLoop.java Autonomous AI task loop
Accessibility Report jbang AccessibilityReport.java WCAG accessibility report generator

Examples with Arguments

PR Visualization with specific repo:

jbang PRVisualization.java github/copilot-sdk

Managing Local Files with specific folder:

jbang ManagingLocalFiles.java /path/to/your/folder

Ralph Loop with a custom prompt file:

jbang RalphLoop.java PROMPT_build.md 20

Why JBang?

JBang lets you run Java files as scripts — no pom.xml, no build.gradle, no project scaffolding. Dependencies are declared inline with //DEPS comments and resolved automatically.

Learning Resources