Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
34 changes: 34 additions & 0 deletions .github/workflows/winget.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,34 @@
name: Publish to WinGet

# Submits the signed MSI from a GitHub Release to microsoft/winget-pkgs.
# - `release` event fires automatically when CI / Release publishes the GitHub Release.
# - `workflow_dispatch` lets us re-publish a past version (used for the very first
# submission once this workflow exists on main).
#
# Requires repo secret WINGET_TOKEN: a classic PAT with `public_repo` scope.
# (winget-releaser does not yet support fine-grained tokens.)

on:
release:
types: [released]
workflow_dispatch:
inputs:
tag:
description: 'Release tag to publish (e.g. v0.4.0)'
required: true
type: string

permissions:
contents: read

jobs:
publish:
runs-on: ubuntu-latest
steps:
- name: Submit to winget-pkgs
uses: vedantmgoyal9/winget-releaser@v2
with:
identifier: UmageAI.CodeShellManager
installers-regex: '\.msi$'
release-tag: ${{ inputs.tag || github.event.release.tag_name }}
token: ${{ secrets.WINGET_TOKEN }}
2 changes: 2 additions & 0 deletions CLAUDE.md
Original file line number Diff line number Diff line change
Expand Up @@ -236,6 +236,8 @@ git push origin v1.2.3

The tag value overrides the csproj `<Version>` at publish time (`-p:Version=` flag). **Do not rely on the csproj version number** — bump it for local build clarity only. CI produces a signed exe, MSI installer, and portable ZIP, then creates a GitHub Release automatically.

A second workflow, `.github/workflows/winget.yml`, fires on the `release: released` event and submits the signed MSI to microsoft/winget-pkgs as `UmageAI.CodeShellManager` via [vedantmgoyal9/winget-releaser](https://github.com/vedantmgoyal9/winget-releaser). It needs the repo secret `WINGET_TOKEN` (classic PAT, `public_repo` scope). The same workflow is `workflow_dispatch`-able with a `tag` input to backfill or retry a release.

## Known Conventions

- All WPF color literals use Catppuccin Mocha hex values — do not introduce system colors
Expand Down
Loading