You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
description: Merge reference implementation changes from the official Copilot SDK into this Java SDK.
4
+
license: MIT
5
+
---
6
+
7
+
Follow instructions in the [agentic-merge-reference-impl prompt](../../../.github/prompts/agentic-merge-reference-impl.prompt.md) to merge reference implementation changes from the official Copilot SDK into this Java SDK.
Copy file name to clipboardExpand all lines: .github/copilot-instructions.md
+10-9Lines changed: 10 additions & 9 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -9,7 +9,7 @@ These instructions guide GitHub Copilot when assisting with this repository. The
9
9
-**Tech Stack**: Java 17+, Maven, Jackson for JSON, JUnit for testing
10
10
-**Purpose**: Provide a Java SDK for programmatic control of GitHub Copilot CLI
11
11
-**Architecture**: JSON-RPC client communicating with Copilot CLI over stdio
12
-
-**Key Goals**: Maintain parity with upstream .NET SDK while following Java idioms
12
+
-**Key Goals**: Maintain parity with reference implementation .NET SDK while following Java idioms
13
13
14
14
## Build & Test Commands
15
15
@@ -85,13 +85,13 @@ Tests use the official copilot-sdk test harness from `https://github.com/github/
85
85
86
86
-**E2ETestContext** - Manages test environment with CapiProxy for deterministic API responses
87
87
-**CapiProxy** - Node.js-based replaying proxy using YAML snapshots from `test/snapshots/`
88
-
- Test snapshots are stored in the upstream repo's `test/snapshots/` directory
88
+
- Test snapshots are stored in the reference implementation repo's `test/snapshots/` directory
89
89
90
90
## Key Conventions
91
91
92
-
### Upstream Merging
92
+
### Reference Implementation Merging
93
93
94
-
This SDK tracks the official .NET implementation at `github/copilot-sdk`. The `.lastmerge` file contains the last merged upstream commit hash. Use the `agentic-merge-upstream` skill (see `.github/prompts/agentic-merge-upstream.prompt.md`) to port changes.
94
+
This SDK tracks the official .NET implementation at `github/copilot-sdk`. The `.lastmerge` file contains the last merged reference implementation commit hash. Use the `agentic-merge-reference-impl` skill (see `.github/prompts/agentic-merge-reference-impl.prompt.md`) to port changes.
95
95
96
96
When porting from .NET:
97
97
- Adapt to Java idioms, don't copy C# patterns directly
@@ -217,7 +217,7 @@ Test method names are converted to lowercase snake_case for snapshot filenames t
217
217
-**DO NOT** modify `target/` directory - this contains build artifacts
218
218
-**DO NOT** edit `pom.xml` dependencies without careful consideration - this SDK has minimal dependencies by design
219
219
-**DO NOT** change the Jackson version without testing against all serialization patterns
220
-
-**DO NOT** modify test snapshots in `target/copilot-sdk/test/snapshots/` - these come from upstream
220
+
-**DO NOT** modify test snapshots in `target/copilot-sdk/test/snapshots/` - these come from reference implementation
221
221
-**DO NOT** alter the Eclipse formatter configuration in `pom.xml` without team consensus
222
222
-**DO NOT** remove or skip Checkstyle or Spotless checks
223
223
@@ -278,7 +278,7 @@ The repository has a pre-commit hook (`.githooks/pre-commit`) that is **automati
278
278
- Include tests for new functionality
279
279
- Update documentation if adding/changing public APIs
280
280
- Reference related issues using `#issue-number`
281
-
- For upstream merges, follow the `agentic-merge-upstream` skill workflow
281
+
- For reference implementation merges, follow the `agentic-merge-reference-impl` skill workflow
282
282
283
283
## Development Workflow
284
284
@@ -299,12 +299,12 @@ The release process is automated via the `publish-maven.yml` GitHub Actions work
299
299
- Converts the `## [Unreleased]` section to `## [version] - date`
300
300
- Creates a new empty `## [Unreleased]` section at the top
301
301
- Updates version comparison links at the bottom of CHANGELOG.md
302
-
- Injects the upstream SDK commit hash (from `.lastmerge`) as a `> **Upstream sync:**` blockquote in both the new `[Unreleased]` section and the released version section
302
+
- Injects the reference implementation SDK commit hash (from `.lastmerge`) as a `> **Reference implementation sync:**` blockquote in both the new `[Unreleased]` section and the released version section
303
303
304
-
2.**Upstream Sync Tracking**: Each release records which commit from the official `github/copilot-sdk` it is synced to:
304
+
2.**Reference Implementation Sync Tracking**: Each release records which commit from the official `github/copilot-sdk` it is synced to:
305
305
- The `.lastmerge` file is read during the release workflow
306
306
- The commit hash is injected into `CHANGELOG.md` under the release heading
0 commit comments