Contributing

June 29, 2026 · View on GitHub

We welcome pull requests and issues on GitHub.

Full guide (setup, commits, releases, PR checklist): docs/contributing/contribution_guide.mdx · docs.page

Maintainers

Release legibility (cross-repo contract)

Product harness releases should keep changelog in git and binaries aligned with the tag. The normative pattern lives in Skill Steward:

mcp_flutter is the reference implementation: release-please on main, tag-triggered artifacts, consumer install.sh without a full clone.

Binary release train (this repo)

StepWhere
Version + changelog PRrelease-please → merge Release PR → tag vX.Y.Z
Build tarballs.github/workflows/release.yml or locally make release-artifactstool/release/build_release_artifacts.sh
Outputsdist/release/flutter_mcp_<version>_<triple>.tar.gz + dist/release/checksums.txt (SHA-256 per tarball)
Attach to GitHub ReleaseCI on tag (same filenames as checksums.txt entries)

Before merge, run make check-contracts (check_version_sync.sh, skill assets drift). Bundled skill: flutter-mcp-toolkit-repo-maintainer (.cursor/skills/flutter-mcp-toolkit-repo-maintainer).

Consumer install + checksum verification (install.sh)

End users should install from GitHub Release assets, not git clone:

curl -fsSL https://raw.githubusercontent.com/Arenukvern/mcp_flutter/main/install.sh | bash
# pinned:
curl -fsSL https://raw.githubusercontent.com/Arenukvern/mcp_flutter/main/install.sh | bash -s -- --version vX.Y.Z

Checksum flow (maintainers: keep CI and install.sh in sync):

  1. Download flutter_mcp_<version>_<triple>.tar.gz from https://github.com/Arenukvern/mcp_flutter/releases/download/v<version>/.
  2. Download checksums.txt from the same release URL.
  3. Find the line for the archive: sha256sum_value flutter_mcp_<version>_<triple>.tar.gz.
  4. Compute SHA-256 locally (sha256sum or shasum -a 256) and compare; install.sh aborts on mismatch.
  5. Extract tarball and install bin/flutter-mcp-toolkit and bin/flutter-mcp-toolkit-server to $HOME/.local/bin (or --install-dir).

Published triples: darwin-arm64, linux-x64 only. Intel macOS is unsupported for published binaries (install from source).

When changing artifact names or checksum layout, update tool/release/build_release_artifacts.sh, install.sh, and .github/workflows/release.yml in the same PR.