Rename ModelKit -> WinML CLI across user-visible surface (Wave 1)#587
Merged
Conversation
Product name "ModelKit" / "WinML ModelKit" -> "WinML CLI" everywhere users
see the name:
- CLI help text, module docstrings (cli.py, __init__.py, __main__.py)
- All subcommand --help (build, catalog, config, inspect, serve, sys)
- Serve API titles, console banners, server_info["name"] response
- Rich UI panel titles (catalog, sys)
- Runtime rule information messages ("Use the WinML CLI rewrite flag...")
- README, CONTRIBUTING, SUPPORT, docs/Privacy, docs/naming-convention
- serve/static/index.html (browser title, logo, UI strings, code examples,
MCP server identifiers, Claude Code skill filename)
- scripts/mcp_server.py (FastMCP name, descriptions, log messages)
- Stale wmk CLI command examples in model docstrings -> winml
Internal rename for consistency:
- Telemetry event names ModelKit{Heartbeat,Action,Error} -> WinMLCLI{...}
(safe: not yet in production use)
- Cache filename modelkit.cache -> winmlcli.cache
- Internal attribute flags _modelkit_* -> _winmlcli_* in telemetry/
- Env vars MODELKIT_* -> WINMLCLI_*: _RULES_DIR, _SHOW_ALL_WARNINGS,
_TIMING_LOG, _TELEMETRY_CACHE_DIR
- Internal module docstrings (cache/, core/, onnx/, utils/, etc)
- ModelKitPlugin class identifier in Semantic Kernel example
- producer_name strings in test fixtures + pattern/base.py
Adjacent fixes pulled in:
- pyproject.toml URLs: github.com/microsoft/ModelKit -> WinML-ModelKit
(stale 404 URLs; real repo is microsoft/WinML-ModelKit)
- Same URL fix in README.md, SUPPORT.md, CONTRIBUTING.md
- WML abbreviation -> WinML expansion in __author__ and export subsystem
docstring (team identity unchanged)
- Stale duplicate copyright block (Apache-2.0 SPDX) removed from
graphpipe/builders test assets (verified original code, no Apache use)
Out of scope (deferred):
- Python module path winml.modelkit (high churn, low value)
- PyPI package name winml-modelkit (wave 3, needs repo coordination)
- GitHub Actions / Azure Pipelines yaml filenames (wave 2)
- gim-home/ModelKitArtifacts cross-repo asset references
- runtime_checker_query.py workspace marker substring match (behavior code)
- Azure DevOps modelkit-selfhost-pool / Modelkit feed (infra-managed)
- docs/superpowers/* historical design docs (preserve as-is)
Refs #583
xieofxie
approved these changes
May 12, 2026
The previous rename commit removed __version__ from analyze/__init__.py per user direction, but analyzer.py:482 imports it for OutputAggregator metadata. __author__ stays removed (verified unused).
Previous fix restored __version__ to analyze/__init__.py because analyzer.py imported it. Per user direction, analyze should not maintain a separate version — OutputAggregator already has a default analyzer_version value, so just drop the explicit kwarg. - analyzer.py: drop `from . import __version__` + `analyzer_version=` kwarg - analyze/__init__.py: drop __version__ definition + __all__ entry Tests pass: OutputAggregator default "0.1.0" matches existing assertions.
4 tasks
xieofxie
approved these changes
May 12, 2026
ssss141414
pushed a commit
that referenced
this pull request
May 15, 2026
Closes #583 ## Summary Rename the product from **"ModelKit"** / **"WinML ModelKit"** to **"WinML CLI"** everywhere users see the name. CLI binary (`winml`) and Python module path (`winml.modelkit`) are unchanged. 90 files, 314 / 316 lines (nearly symmetric — pure rename, near-zero behavior change). ## What changed ### User-visible (the main goal) - CLI `--help` text + module docstrings (`cli.py`, `__init__.py`, `__main__.py`) - All subcommand `--help` (`build`, `catalog`, `config`, `inspect`, `serve`, `sys`) - Serve API titles, console banners, `server_info["name"]` response - Rich UI panel titles (catalog, sys) - Runtime rule information messages - README, CONTRIBUTING, SUPPORT, docs/Privacy, docs/naming-convention - `serve/static/index.html` (browser title, logo, UI strings, code examples, MCP server identifiers, Claude Code skill filename) - `scripts/mcp_server.py` (FastMCP server name, descriptions, log messages) - Stale `wmk` CLI command examples in model docstrings -> `winml` ### Internal rename for consistency - Telemetry event names `ModelKit{Heartbeat,Action,Error}` -> `WinMLCLI{...}` (safe: not yet in production use, no dashboard coordination required) - Cache filename `modelkit.cache` -> `winmlcli.cache` - Internal attribute flags `_modelkit_*` -> `_winmlcli_*` in `telemetry/` - Env vars `MODELKIT_*` -> `WINMLCLI_*`: `_RULES_DIR`, `_SHOW_ALL_WARNINGS`, `_TIMING_LOG`, `_TELEMETRY_CACHE_DIR` - Internal module docstrings (`cache/`, `core/`, `onnx/`, `utils/`, etc) - `ModelKitPlugin` class identifier in Semantic Kernel example - `producer_name` strings in test fixtures + `pattern/base.py` ### Adjacent fixes pulled in - `pyproject.toml` URLs: `github.com/microsoft/ModelKit` -> `WinML-ModelKit` (stale 404 URLs; real repo is `microsoft/WinML-ModelKit`) - Same URL fix in `README.md`, `SUPPORT.md`, `CONTRIBUTING.md` - `WML` abbreviation -> `WinML` expansion in `__author__` and export subsystem docstring (team identity unchanged) - Stale duplicate copyright block (Apache-2.0 SPDX) removed from `graphpipe/builders` test assets — verified original Microsoft code, no Apache use ## Naming convention chosen Per `docs/naming-convention.md` (3-letter acronyms stay uppercase): - PascalCase: `WinMLCLI` (e.g. event names, class names) - ALL_CAPS env: `WINMLCLI_*` (e.g. `WINMLCLI_RULES_DIR`) - lowercase id: `winmlcli` (e.g. cache filename, MCP server name) - Two-word user-facing: `WinML CLI` (e.g. docs, help text)
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Closes #583
Summary
Rename the product from "ModelKit" / "WinML ModelKit" to "WinML CLI" everywhere users see the name. CLI binary (
winml) and Python module path (winml.modelkit) are unchanged.90 files, 314 / 316 lines (nearly symmetric — pure rename, near-zero behavior change).
What changed
User-visible (the main goal)
--helptext + module docstrings (cli.py,__init__.py,__main__.py)--help(build,catalog,config,inspect,serve,sys)server_info["name"]responseserve/static/index.html(browser title, logo, UI strings, code examples, MCP server identifiers, Claude Code skill filename)scripts/mcp_server.py(FastMCP server name, descriptions, log messages)wmkCLI command examples in model docstrings ->winmlInternal rename for consistency
ModelKit{Heartbeat,Action,Error}->WinMLCLI{...}(safe: not yet in production use, no dashboard coordination required)modelkit.cache->winmlcli.cache_modelkit_*->_winmlcli_*intelemetry/MODELKIT_*->WINMLCLI_*:_RULES_DIR,_SHOW_ALL_WARNINGS,_TIMING_LOG,_TELEMETRY_CACHE_DIRcache/,core/,onnx/,utils/, etc)ModelKitPluginclass identifier in Semantic Kernel exampleproducer_namestrings in test fixtures +pattern/base.pyAdjacent fixes pulled in
pyproject.tomlURLs:github.com/microsoft/ModelKit->WinML-ModelKit(stale 404 URLs; real repo ismicrosoft/WinML-ModelKit)README.md,SUPPORT.md,CONTRIBUTING.mdWMLabbreviation ->WinMLexpansion in__author__and export subsystem docstring (team identity unchanged)graphpipe/builderstest assets — verified original Microsoft code, no Apache useNaming convention chosen
Per
docs/naming-convention.md(3-letter acronyms stay uppercase):WinMLCLI(e.g. event names, class names)WINMLCLI_*(e.g.WINMLCLI_RULES_DIR)winmlcli(e.g. cache filename, MCP server name)WinML CLI(e.g. docs, help text)