Conversation
modified: .github/release.yml modified: .github/templates/index.html modified: .github/workflows/deploy-site.yml modified: .github/workflows/notes.template modified: .github/workflows/publish-maven.yml modified: README.md modified: jbang-example.java modified: pom.xml modified: src/main/java/com/github/copilot/sdk/package-info.java modified: src/site/markdown/cookbook/error-handling.md modified: src/site/markdown/cookbook/managing-local-files.md modified: src/site/markdown/cookbook/multiple-sessions.md modified: src/site/markdown/cookbook/persisting-sessions.md modified: src/site/markdown/cookbook/pr-visualization.md modified: src/site/markdown/getting-started.md modified: src/site/markdown/index.md modified: src/site/site.xml On branch edburns/dd-2785864-pre-public-non-code-changes modified: .github/release.yml modified: .github/templates/index.html modified: .github/workflows/deploy-site.yml modified: .github/workflows/notes.template modified: .github/workflows/publish-maven.yml modified: README.md modified: jbang-example.java modified: pom.xml modified: src/main/java/com/github/copilot/sdk/package-info.java modified: src/site/markdown/cookbook/error-handling.md modified: src/site/markdown/cookbook/managing-local-files.md modified: src/site/markdown/cookbook/multiple-sessions.md modified: src/site/markdown/cookbook/persisting-sessions.md modified: src/site/markdown/cookbook/pr-visualization.md modified: src/site/markdown/getting-started.md modified: src/site/markdown/index.md modified: src/site/site.xml Signed-off-by: Ed Burns <edburns@microsoft.com>
…this to be the official SDK, not a community SDK. modified: .github/copilot-instructions.md modified: .github/templates/index.html modified: .github/workflows/notes.template modified: README.md modified: SUPPORT.md modified: pom.xml modified: src/site/markdown/advanced.md modified: src/site/markdown/documentation.md modified: src/site/markdown/hooks.md modified: src/site/markdown/index.md modified: src/site/site.xml Signed-off-by: Ed Burns <edburns@microsoft.com>
modified: README.md modified: jbang-example.java modified: src/site/markdown/cookbook/error-handling.md modified: src/site/markdown/cookbook/managing-local-files.md modified: src/site/markdown/cookbook/multiple-sessions.md modified: src/site/markdown/cookbook/persisting-sessions.md modified: src/site/markdown/cookbook/pr-visualization.md Fixed comment from @brunoborges: > The pin snapshot version is 0.1.30, therefore all places that reference a version that is supposed to be on Maven Central, must be 0.1.29 (as if it was there already).
new file: .github/workflows/publish-snapshot.yml - New workflow, to publish `-SNAPSHOT` build. modified: .vscode/settings.json - Always reload. modified: README.md - Document `-SNAPSHOT` build. modified: pom.xml - Use correct `artifactId`. - Add `<distributionManagement />` section.
…pl is at 0.1.32. modified: README.md modified: jbang-example.java modified: pom.xml modified: src/site/markdown/cookbook/error-handling.md modified: src/site/markdown/cookbook/managing-local-files.md modified: src/site/markdown/cookbook/multiple-sessions.md modified: src/site/markdown/cookbook/persisting-sessions.md modified: src/site/markdown/cookbook/pr-visualization.md no changes added to commit (use "git add" and/or "git commit -a")
…785864-pre-public-non-code-changes
…785864-pre-public-non-code-changes # Conflicts: # README.md # jbang-example.java # pom.xml
…napshots to maven central instead of GitHub packages modified: .github/workflows/publish-snapshot.ym modified: README.md modified: pom.xml - Publish to snapshots to maven central instead of GitHub packages no changes added to commit (use "git add" and/or "git commit -a")
…factId modified: README.md
modified: .github/copilot-instructions.md modified: README.md modified: src/site/markdown/advanced.md modified: src/site/markdown/cookbook/error-handling.md modified: src/site/markdown/cookbook/managing-local-files.md modified: src/site/markdown/cookbook/multiple-sessions.md modified: src/site/markdown/cookbook/persisting-sessions.md modified: src/site/markdown/cookbook/pr-visualization.md modified: src/site/markdown/documentation.md modified: src/site/markdown/getting-started.md modified: src/site/markdown/hooks.md modified: src/site/markdown/index.md modified: src/site/markdown/mcp.md When the accessor style changed Commit f5e9662 — February 10, 2026, authored by Bruno Borges. "Refactor data access methods in tests to use new naming conventions" Updated test assertions … to reflect changes in data access methods from getX() to x(). This was a massive breaking change across all 40+ event data types in com.github.copilot.sdk.events. Every public static class FooData with JavaBean getters/setters was converted to a public record FooData(...). This removed all getX() / setX() methods and replaced them with record component accessors (x()). The commit was merged via PR #117 (feat/records-for-data-types) and shipped in v1.0.9 (the first release tag that contains it, alongside v1.0.10 and v1.0.11). Timeline summary: Before f5e9662: AssistantMessageData was a mutable static class with getContent(), setContent(), etc. After f5e9662 (v1.0.9+): all event data types became Java records — content(), currentTokens(), tokenLimit(), messagesLength(), etc. The README's Quick Start code was never updated to match — it still showed getContent() / getCurrentTokens() etc. until the fix applied in our current session.
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
…-getter-discrepancy On branch edburns/dd-2824425-fix-record-vs-getter-discrepancy
…785864-pre-public-non-code-changes
Co-authored-by: edburns <75821+edburns@users.noreply.github.com>
…tic-module-name Set Automatic-Module-Name: com.github.copilot.sdk.java in JAR manifest
…785864-pre-public-non-code-changes
… and execute a smoke test based on the most recently published snapshot release as documented in the top level README. new file: src/test/prompts/PROMPT-smoke-test.md
Execute this prompt to create and execute a smoke test
…785864-pre-public-non-code-changes
…785864-pre-public-non-code-changes
Your branch is up to date with 'origin/edburns/dd-2785864-pre-public-non-code-changes'. Changes not staged for commit: (use "git add <file>..." to update what will be committed) (use "git restore <file>..." to discard changes in working directory) modified: src/main/java/com/github/copilot/sdk/package-info.java no changes added to commit (use "git add" and/or "git commit -a")
…ntDownLatch The testShouldTriggerCompactionWithLowThresholdAndEmitEvents test was failing with compactionCompleteCount == 0 because the SessionCompactionCompleteEvent may arrive slightly after sendAndWait returns due to async event delivery from the Copilot CLI. Added a CountDownLatch that waits up to 10 seconds for the event after the third sendAndWait call completes, making the test resilient to minor timing differences across CI environments. Co-authored-by: edburns <75821+edburns@users.noreply.github.com>
…Id in jbang dependency lines like //DEPS should point to copilot-sdk-java modified: jbang-example.java modified: src/site/markdown/cookbook/error-handling.md modified: src/site/markdown/cookbook/managing-local-files.md modified: src/site/markdown/cookbook/multiple-sessions.md modified: src/site/markdown/cookbook/persisting-sessions.md modified: src/site/markdown/cookbook/pr-visualization.md modified: src/site/markdown/getting-started.md modified: src/site/markdown/index.md @brunoborges wrote: > The artifactId in jbang dependency lines like //DEPS should point to copilot-sdk-java
modified: src/site/markdown/getting-started.md @brunoborges wrote: > Fix artifactId
modified: .github/workflows/publish-maven.yml modified: src/site/markdown/index.md @brunoborges wrote: > Fix artifactId
…sion policy. modified: .github/templates/index.html docs/adr/adr-002-maven-version-and-reference-implementation-tracking.md
…nd versioning. modified: .github/templates/index.html modified: .github/workflows/notes.template
…to specific SHA per request from @karianna modified: .github/workflows/build-test.yml modified: .github/workflows/copilot-setup-steps.yml modified: .github/workflows/deploy-site.yml modified: .github/workflows/publish-maven.yml modified: .github/workflows/publish-snapshot.yml modified: .github/workflows/weekly-upstream-sync.yml > prefer #commmit versions e.g., actions/checkout@#4s9df7sdf98d7f8s9df7sd9f87ds #v6.0.0 modified: src/site/markdown/advanced.md > I think we can word that differently as we are the official SDK.
modified: src/site/markdown/advanced.md modified: src/site/markdown/documentation.md modified: src/site/markdown/hooks.md modified: src/site/markdown/index.md > OK yeah let's kill the excess dislcaimers
|
On teams: @brunoborges wrote:
|
There was a problem hiding this comment.
Pull request overview
This PR rebrands the project from the community fork to the official github/copilot-sdk-java repository, updating Maven coordinates, documentation/site URLs, and CI/CD publishing workflows to match the new identity and release process.
Changes:
- Update Maven coordinates (GAV), SCM metadata, and publishing configuration for Maven Central + snapshots.
- Refresh documentation and site content to use the new repository/coordinates and record-based accessors (
content(), etc.). - Adjust CI workflows (publishing, site deployment, upstream sync) including pinned action SHAs and a new snapshot publishing workflow.
Reviewed changes
Copilot reviewed 33 out of 34 changed files in this pull request and generated 19 comments.
Show a summary per file
| File | Description |
|---|---|
| src/test/prompts/PROMPT-smoke-test.md | Adds a smoke-test prompt to validate snapshot consumption and runtime execution via java -jar. |
| src/test/java/com/github/copilot/sdk/CompactionTest.java | Makes compaction E2E test more deterministic by waiting for a compaction-complete event. |
| src/site/site.xml | Updates site branding and GitHub projectId to the official repo. |
| src/site/markdown/mcp.md | Updates example accessor usage to record-style (content()). |
| src/site/markdown/index.md | Updates disclaimer and Maven coordinates/links for the official SDK. |
| src/site/markdown/hooks.md | Removes community disclaimer and updates example accessor usage. |
| src/site/markdown/getting-started.md | Updates install snippets (new GAV) and example accessor usage. |
| src/site/markdown/documentation.md | Updates examples for record accessors and refreshed tool event fields. |
| src/site/markdown/cookbook/pr-visualization.md | Updates JBang dependency coordinates and record accessor usage in examples. |
| src/site/markdown/cookbook/persisting-sessions.md | Updates JBang dependency coordinates and record accessor usage in examples. |
| src/site/markdown/cookbook/multiple-sessions.md | Updates JBang dependency coordinates and record accessor usage in examples. |
| src/site/markdown/cookbook/managing-local-files.md | Updates JBang dependency coordinates and tool event accessor usage in examples. |
| src/site/markdown/cookbook/error-handling.md | Updates JBang dependency coordinates and record accessor usage in examples. |
| src/site/markdown/advanced.md | Removes community disclaimer and updates compaction/example accessors to records. |
| src/main/java/com/github/copilot/sdk/package-info.java | Updates package Javadoc link to the official repository. |
| pom.xml | Renames GAV, resets version, adds snapshot distributionManagement, and moves publishing plugin into default build. |
| jbang-example.java | Updates dependency coordinates/version strategy for the JBang example. |
| docs/adr/adr-002-maven-version-and-reference-implementation-tracking.md | Adds ADR describing Maven versioning strategy relative to upstream releases. |
| SUPPORT.md | Updates support language to remove “community maintained” phrasing. |
| README.md | Rebrands badges/links/coordinates, adds snapshot usage instructions, and updates Quick Start code for record accessors. |
| .vscode/settings.json | Enables automatic Maven build configuration refresh in VS Code. |
| .gitignore | Ignores smoke-test directory. |
| .github/workflows/weekly-upstream-sync.yml | Pins actions/checkout to a specific commit SHA. |
| .github/workflows/weekly-upstream-sync.lock.yml | Updates pinned SHAs for artifact download steps. |
| .github/workflows/publish-snapshot.yml | Adds workflow to publish SNAPSHOTs to Maven Central snapshots. |
| .github/workflows/publish-maven.yml | Updates release workflow for new coordinates and pinned setup-java, plus doc/version update patterns. |
| .github/workflows/notes.template | Rebrands release notes template and updates documentation URLs. |
| .github/workflows/deploy-site.yml | Pins action SHAs and updates repo URL used during site generation. |
| .github/workflows/copilot-setup-steps.yml | Pins action SHAs for checkout/setup steps. |
| .github/workflows/build-test.yml | Pins action SHAs for CI and artifact upload. |
| .github/templates/index.html | Rebrands the GitHub Pages version index landing page and links. |
| .github/release.yml | Updates changelog link to the official repo. |
| .github/copilot-instructions.md | Removes “community-driven” phrasing and updates record accessor usage in examples. |
| .github/CODEOWNERS | Transfers ownership to @github/copilot-sdk-java. |
Comments suppressed due to low confidence (1)
.github/templates/index.html:27
- The Maven Central link still points to
com.github/copilot-sdk, but the artifactId in this PR iscopilot-sdk-java. Update the URL to point at the new coordinates so the button doesn’t 404 / show the wrong artifact.
<a href="https://central.sonatype.com/artifact/com.github/copilot-sdk" class="btn btn-maven">
<svg height="20" width="20" viewBox="0 0 24 24"><path d="M12 2L2 7l10 5 10-5-10-5zM2 17l10 5 10-5M2 12l10 5 10-5"></path></svg>
View on Maven Central
You can also share your feedback on Copilot code review. Take the survey.
| <div class="alert alert-warning"> | ||
| ⚠️ <strong>Disclaimer:</strong> This is an <strong>unofficial, community-driven SDK</strong> and is <strong>not supported or endorsed by GitHub</strong>. Use at your own risk. | ||
| <div class="alert alert-warning"> | ||
| ⚠️ <strong>Disclaimer:</strong> This is the official Java SDK for GitHub Copilot. This repository treats the official .NET and nodejs SDKs for GitHub Copilot as reference implementations. These SDKS are all officially supported as GitHub open source projects. The Java implementation follows the backward compatibility guarantees offered by the reference implementations. As such this implementation may introduce breaking changes, according to the policy declared by the reference implementations. Use at your own risk. |
| VERSION="${{ needs.publish-maven.outputs.version }}" | ||
| GROUP_ID="io.github.copilot-community-sdk" | ||
| GROUP_ID="com.github" | ||
| ARTIFACT_ID="copilot-sdk" |
| > ⚠️ **Disclaimer:** This is an **unofficial, community-driven SDK** and is **not supported or endorsed by GitHub**. Use at your own risk. | ||
| ⚠️ **Disclaimer:** This is the official Java SDK for GitHub Copilot. This repository treats the official .NET and nodejs SDKs for GitHub Copilot as reference implementations. These SDKS are all officially supported as GitHub open source projects. The Java implementation follows the backward compatibility guarantees offered by the reference implementations. As such this implementation may introduce breaking changes, according to the policy declared by the reference implementations. Use at your own risk. | ||
|
|
||
| ⚠️ **Artifact versioning plan:** Releases of this implementation track releases of the reference implementation. For each release of the reference implementation, there may follow a corresponding relase of this implementation with the same number as the reference implementation. Release identifiers of the reference implementation are in the form `vMaj.Min.Micro`. For example v0.1.32. The corresponding maven version for the release will be `Maj.Min.Micro-java.N`, where `Maj`, `Min` and `Micro` are the corresponding numbers for the reference impementation release, and `N` is a monotonically increasing sequence number starting with 0 for each release. See the corrseponding architectural decision record for more information in the `docs/adr` directory of the source code. |
| > ⚠️ **Disclaimer:** This is an **unofficial, community-driven SDK** and is **not supported or endorsed by GitHub**. Use at your own risk. | ||
| ⚠️ **Disclaimer:** This is the official Java SDK for GitHub Copilot. This repository treats the official .NET and nodejs SDKs for GitHub Copilot as reference implementations. These SDKS are all officially supported as GitHub open source projects. The Java implementation follows the backward compatibility guarantees offered by the reference implementations. As such this implementation may introduce breaking changes, according to the policy declared by the reference implementations. Use at your own risk. | ||
|
|
||
| ⚠️ **Artifact versioning plan:** Releases of this implementation track releases of the reference implementation. For each release of the reference implementation, there may follow a corresponding relase of this implementation with the same number as the reference implementation. Release identifiers of the reference implementation are in the form `vMaj.Min.Micro`. For example v0.1.32. The corresponding maven version for the release will be `Maj.Min.Micro-java.N`, where `Maj`, `Min` and `Micro` are the corresponding numbers for the reference impementation release, and `N` is a monotonically increasing sequence number starting with 0 for each release. See the corrseponding architectural decision record for more information in the `docs/adr` directory of the source code. |
|
|
||
| - Simple number qualifier (0.1.32-0, 0.1.32-1, ...) fails on a subtle but important point: 0.1.32-0 is treated identically to 0.1.32 by Maven (trailing zeros are normalized away), and bare numeric qualifiers are pre-release semantics. Your "first release" would sort before the upstream bare version. | ||
|
|
||
| - Java and number in the qualifier (0.1.32-java.N |
| > ⚠️ **Disclaimer:** This is an **unofficial, community-driven SDK** and is **not supported or endorsed by GitHub**. Use at your own risk. | ||
| ⚠️ **Disclaimer:** This is the official Java SDK for GitHub Copilot. This repository treats the official .NET and nodejs SDKs for GitHub Copilot as reference implementations. These SDKS are all officially supported as GitHub open source projects. The Java implementation follows the backward compatibility guarantees offered by the reference implementations. As such this implementation may introduce breaking changes, according to the policy declared by the reference implementations. Use at your own risk. | ||
|
|
||
| ⚠️ **Artifact versioning plan:** Releases of this implementation track releases of the reference implementation. For each release of the reference implementation, there may follow a corresponding relase of this implementation with the same number as the reference implementation. Release identifiers of the reference implementation are in the form `vMaj.Min.Micro`. For example v0.1.32. The corresponding maven version for the release will be `Maj.Min.Micro-java.N`, where `Maj`, `Min` and `Micro` are the corresponding numbers for the reference impementation release, and `N` is a monotonically increasing sequence number starting with 0 for each release. See the corrseponding architectural decision record for more information in the `docs/adr` directory of the source code. |
|
|
||
| ## Context and Problem Statement | ||
|
|
||
| Releases of this implementation track releases of the reference implementation. For each release of the reference implementation, there may follow a corresponding relase of this implementation with the same number as the reference implementation, allowing for additional metadata to version multiple releases of this implementation that track the same release of the reference implementation. |
| ### Quick Links | ||
|
|
||
| - [Getting Started](https://copilot-community-sdk.github.io/copilot-sdk-java/latest/documentation.html) | ||
| - [Javadoc API Reference](https://copilot-community-sdk.github.io/copilot-sdk-java/latest/apidocs/) | ||
| - [MCP Servers Integration](https://copilot-community-sdk.github.io/copilot-sdk-java/latest/mcp.html) | ||
| - [Getting Started](https://github.github.io/copilot-sdk-java/documentation.html) | ||
| - [Javadoc API Reference](https://github.github.io/copilot-sdk-java/apidocs/) | ||
| - [MCP Servers Integration](https://github.github.io/copilot-sdk-java/mcp.html) |
| # Copilot SDK for Java | ||
|
|
||
| > ⚠️ **Disclaimer:** This is an **unofficial, community-driven SDK** and is **not supported or endorsed by GitHub**. Use at your own risk. | ||
| > ⚠️ **Disclaimer:** This is the official Java SDK for GitHub Copilot. This repository treats the official .NET and nodejs SDKs for GitHub Copilot as reference implementations. These SDKS are all officially supported as GitHub open source projects. The Java implementation follows the backward compatibility guarantees offered by the reference implementations. As such this implementation may introduce breaking changes, according to the policy declared by the reference implementations. Use at your own risk. |
|
|
||
| //DEPS io.github.copilot-community-sdk:copilot-sdk:1.0.11 | ||
| ! | ||
| //DEPS com.github:copilot-sdk-java:${project.version} |
|
Warning This is an internal experiment to assess Copilot's ability to auto-approve PRs. Please 👍 this comment if the assessment below is correct and 👎 if not. Feedback in #f-ccr-auto-approve is appreciated! Copilot thinks this PR is not ready to merge — see review comments for details. |
Review work for this PR happened in public on PR 1.
This PR contains non-code changes to transition copilot-sdk-java from the
community-driven fork (copilot-community-sdk) to the official GitHub
repository (github/copilot-sdk-java). No source code logic is changed;
all modifications are to metadata, configuration, documentation, and CI
workflows.
Summary of changes (27 files)
Maven coordinates and versioning
io.github.copilot-community-sdk→com.githubcopilot-sdk→copilot-sdk-java1.0.12-SNAPSHOT→0.1.33-SNAPSHOT(latest release:0.1.32)<snapshotRepository>pointing to Maven Central Snapshotscentral-publishing-maven-pluginfrom release profile to default buildCI/CD workflows
publish-maven.yml: Updated groupId in GitHub Release steppublish-snapshot.yml: New workflow for publishing SNAPSHOT builds to Maven Centraldeploy-site.yml: Updated repository URL for site generationRepository metadata
CODEOWNERS:edburns@github.com→@github/copilot-sdk-javarelease.yml: Updated changelog linkcopilot-instructions.md: Removed "community-driven" qualifierSUPPORT.md: Removed "maintained by the community" language.vscode/settings.json: Addedjava.configuration.updateBuildConfiguration.gitignore: UpdatedDocumentation and site (17 files)
README.md: Updated all badge URLs, Maven coordinates, clone URL,JBang URL, documentation links, star-history chart. Added snapshot
builds section. Changed disclaimer from "unofficial, community-driven"
to "tracks the pre-GA GitHub Copilot SDKs".
jbang-example.java: Updated dependency coordinates and versionsrc/site/markdown/index.md: Updated URLs and coordinatessrc/site/markdown/getting-started.md: Updated URLssrc/site/markdown/advanced.md: Updated URLssrc/site/markdown/documentation.md: Updated URLssrc/site/markdown/hooks.md: Updated URLssrc/site/markdown/cookbook/*.md(5 files): Updated dependency coordinatessrc/site/site.xml: Updated site URLs.github/templates/index.html: Updated URLs.github/workflows/notes.template: Updated URLsSource files
src/main/java/com/github/copilot/sdk/package-info.java: Updated package Javadocsrc/test/prompts/PROMPT-smoke-test.md: Updated referencesWhat is NOT changed
Testing
All existing tests continue to pass (
mvn clean verify→ BUILD SUCCESS).These are purely non-code changes (URLs, coordinates, documentation text)
so functional behavior is unaffected.