Skip to content

Prepare MemNet.Client and MemNet.AgentMemory for NuGet publishing#2

Open
TianqiZhang wants to merge 3 commits into
mainfrom
codex/examine-and-publish-memnet.client-and-memnet.agentmemory
Open

Prepare MemNet.Client and MemNet.AgentMemory for NuGet publishing#2
TianqiZhang wants to merge 3 commits into
mainfrom
codex/examine-and-publish-memnet.client-and-memnet.agentmemory

Conversation

@TianqiZhang

Copy link
Copy Markdown
Owner

Motivation

  • Make the first-party SDKs consumable from nuget.org by adding package metadata, readmes, and a controlled publish workflow so agents and apps can install MemNet.Client and MemNet.AgentMemory via NuGet.

Description

  • Add NuGet packaging metadata (Version, PackageId, Title, Description, Authors, PackageReadmeFile, GenerateDocumentationFile, etc.) to src/MemNet.Client/MemNet.Client.csproj and src/MemNet.AgentMemory/MemNet.AgentMemory.csproj so both projects can be packed as packages.
  • Include project-level README.md files and mark them to be packed into each package so NuGet package pages show first-party documentation (src/MemNet.Client/README.md, src/MemNet.AgentMemory/README.md).
  • Add a manual GitHub Actions workflow .github/workflows/publish-sdk-packages.yml that restores, runs SDK unit/integration tests, packs both SDKs, and pushes *.nupkg to https://api.nuget.org/v3/index.json using the NUGET_API_KEY secret.
  • Update the repository README.md with NuGet package links and install commands, and update docs/project/TASK_BOARD.md to record the packaging/publish work.

Testing

  • Ran git diff --check to validate whitespace/patch issues and it succeeded.
  • Attempted to run dotnet test tests/MemNet.Sdk.UnitTests/MemNet.Sdk.UnitTests.csproj -c Debug --configfile NuGet.Config, but the dotnet CLI is not available in this environment so the command failed with bash: command not found: dotnet.
  • Confirmed the environment lacks local dotnet/nuget tooling, so restore/build/test/pack/push steps are delegated to the new GitHub Actions workflow which runs these validations in CI (requires NUGET_API_KEY for publish).

Codex Task

Copilot AI review requested due to automatic review settings March 4, 2026 12:56

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 0a5e956735

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread src/MemNet.Client/MemNet.Client.csproj Outdated
</PropertyGroup>

<ItemGroup>
<None Include="README.md" Pack="true" PackagePath="/" />

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P1 Badge Use Update for README packing metadata

In SDK-style projects, README.md is already included as a default None item, so adding it again with <None Include="README.md" .../> creates a duplicate item and can fail dotnet build/pack with NETSDK1022 before the publish workflow reaches push. This blocks package publication for this project and the same pattern is also present in src/MemNet.AgentMemory/MemNet.AgentMemory.csproj.

Useful? React with 👍 / 👎.

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Prepares the MemNet .NET SDK projects (MemNet.Client and MemNet.AgentMemory) to be published on NuGet by adding package metadata/readmes and introducing a manual GitHub Actions publish workflow.

Changes:

  • Added NuGet package metadata + packed README files to both SDK .csproj projects.
  • Added a manual workflow_dispatch GitHub Actions workflow to restore, test, pack, and push packages to NuGet.org.
  • Updated repo documentation/task board to reflect NuGet packaging and installation.

Reviewed changes

Copilot reviewed 7 out of 7 changed files in this pull request and generated 2 comments.

Show a summary per file
File Description
src/MemNet.Client/README.md Adds package README content for NuGet package page.
src/MemNet.Client/MemNet.Client.csproj Adds NuGet metadata + packs README into the package.
src/MemNet.AgentMemory/README.md Adds package README content for NuGet package page.
src/MemNet.AgentMemory/MemNet.AgentMemory.csproj Adds NuGet metadata + packs README into the package.
README.md Adds NuGet package links and install commands.
.github/workflows/publish-sdk-packages.yml Adds manual CI workflow to test/pack/push SDK packages.
docs/project/TASK_BOARD.md Marks NuGet packaging/publish tasks as completed.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread README.md Outdated

## .NET SDK Quickstart

## .NET SDK Packages

Copilot AI Mar 4, 2026

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The new "## .NET SDK Packages" header is placed immediately after "## .NET SDK Quickstart", leaving the Quickstart section with no content and breaking the document hierarchy. Consider making Packages a subsection (e.g., "###") under the Quickstart heading, or move/rename headings so the structure matches the content that follows.

Suggested change
## .NET SDK Packages
### .NET SDK Packages

Copilot uses AI. Check for mistakes.
Comment thread .github/workflows/publish-sdk-packages.yml Outdated
…g push

- Change None Include to None Update for README.md in both SDK csproj
  files to avoid NETSDK1022 duplicate item errors in SDK-style projects
- Demote '.NET SDK Packages' to h3 subsection under '.NET SDK Quickstart'
  so the Quickstart heading is not left empty
- Add snupkg push step to publish workflow so symbol packages reach
  NuGet.org alongside the main nupkg files
- Add src/Directory.Build.props with shared VersionPrefix/VersionSuffix,
  SourceLink, symbol packages, and NuGet metadata for packable projects
- Slim down SDK csproj files to project-specific properties only
- Mark MemoryService as IsPackable=false, remove its duplicated
  SourceLink/symbols config (now inherited)
- Remove publish-sdk-packages.yml workflow; packages will be pushed
  manually via dotnet nuget push
Copilot AI review requested due to automatic review settings March 4, 2026 15:08

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 8 out of 8 changed files in this pull request and generated 1 comment.


💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment on lines +31 to +32
- [x] Add NuGet package metadata/readmes for `MemNet.Client` and `MemNet.AgentMemory`
- [x] Add manual publish workflow for SDK packages to nuget.org

Copilot AI Mar 4, 2026

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

TASK_BOARD marks the manual publish workflow as completed, but this PR doesn’t include the referenced GitHub Actions workflow file (only .github/workflows/ci.yml exists in the repo). Either add .github/workflows/publish-sdk-packages.yml as described in the PR, or adjust this checklist item so it matches what’s actually being shipped.

Copilot uses AI. Check for mistakes.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants