Kimi Council
KIMI
Kimi v1.27
Moonshot AI
Judge 1: README ACCURACY
- [CRITICAL]
pyproject.toml version is “0.1.0” but release is v0.2.0 (pyproject.toml:7)
- [CRITICAL]
src/casectl/__init__.py __version__ is “0.1.0” not “0.2.0” (src/casectl/__init__.py:3)
- [HIGH]
casectl top TUI command not mentioned anywhere in README (src/casectl/cli/main.py:592-676)
- [HIGH] REST API table uses POST for fan/led mode/speed/color but source code uses PUT
- [HIGH] Architecture diagram shows only 5 plugins but v0.2.0 has 8 (missing mqtt, automation, alerting)
- [MEDIUM] Missing documentation for MQTT plugin (Home Assistant auto-discovery)
- [MEDIUM] Missing documentation for Automation plugin (rule engine)
- [MEDIUM] Missing documentation for Alerting plugin (webhook, ntfy, SMTP)
- [MEDIUM] Missing documentation for fan curve feature
- [MEDIUM] No mention of SSE endpoint
/api/sse
- [MEDIUM] No mention of WebSocket bidirectional command protocol
- [LOW] README says “WebSocket real-time events” but doesn’t mention command capability
- [LOW] Features list doesn’t mention OLED power on/off endpoints
Judge 2: HELP TEXT QUALITY
- [HIGH]
oled screen command uses _api_post() but API expects PUT method (main.py:477)
- [HIGH]
oled rotation command uses _api_post() but API expects PUT (main.py:491)
- [MEDIUM]
fan mode help text excellent – includes all modes with descriptions
- [MEDIUM]
led mode help text excellent – includes all modes with descriptions
- [MEDIUM]
led color help text lists all 16 named colours correctly
- [MEDIUM]
top command help is comprehensive with interactive key documentation
- [LOW]
config set help could mention that values are coerced (bool/int/float/string)
- [POSITIVE] All command groups have concise, accurate docstrings
- [POSITIVE] Rich error messages with colour coding throughout
- [POSITIVE]
-h short option properly configured via CONTEXT_SETTINGS
- [POSITIVE]
--version flag properly configured via click.version_option
Judge 3: WEBSITE vs SOURCE CONSISTENCY
- [CRITICAL] Website Architecture page shows “TUI (soon)” but TUI is implemented (
architecture/_index.md:17)
- [CRITICAL] Architecture page lists only 5 plugins but source has 8 (
architecture/_index.md:26-34)
- [HIGH] CLI reference page completely missing
casectl top command
- [HIGH] API reference uses POST for mode/speed/color endpoints but source uses PUT
- [HIGH] API health example shows version “0.1.0”
- [HIGH] Configuration page missing MQTT config section
- [HIGH] Configuration page missing Automation rules section
- [HIGH] Configuration page missing Alerting/Notifications section
- [HIGH] Configuration page missing Fan Curve config section
- [MEDIUM] Architecture “Built-in Plugins” table missing mqtt, automation, alerting
- [MEDIUM] API reference missing SSE endpoint documentation
- [MEDIUM] WebSocket documented as event stream only, not bidirectional
- [MEDIUM] Getting Started doesn’t mention
casectl top
- [MEDIUM] Plugin Development events table missing automation/alerting events
- [LOW] Architecture diagram shows “HTMX” for Web but doesn’t mention SSE
Judge 4: VERSION & RELEASE READINESS
- [CRITICAL]
pyproject.toml version = “0.1.0” (must be “0.2.0”)
- [CRITICAL]
src/casectl/__init__.py __version__ = “0.1.0” (must be “0.2.0”)
- [HIGH]
server.py fallback version = “0.1.0”
- [HIGH]
api_version = “0.1” – should this be “0.2”?
- [MEDIUM] Website API health example shows version “0.1.0”
- [MEDIUM] Plugin examples show version “0.1.0” in code blocks
- [MEDIUM] Plugin
min_daemon_version values not verified
- [LOW] No CHANGELOG file exists for a release of this magnitude
- [POSITIVE] CLI has
--version flag properly wired via click.version_option
- [POSITIVE] Version is centralised in
__init__.py and imported by server.py
- [POSITIVE]
package_name="casectl" ensures version is read from package metadata
Consolidated Report
Critical Issues (must fix)
- Version string mismatch – pyproject.toml and
__init__.py both say “0.1.0”
- TUI undocumented –
casectl top is a major feature missing from docs
- Website architecture outdated – TUI shows “soon”, only lists 5/8 plugins
- API method documentation wrong – POST everywhere, code uses PUT
Important Issues (should fix)
- Missing plugin documentation (MQTT, Automation, Alerting)
- Missing SSE endpoint docs
- Missing WebSocket command protocol docs
- Missing fan curve documentation
- Configuration page incomplete (3 sections missing)
- Fallback version strings in server.py
- API version constant still “0.1”
- README architecture diagram shows only 5 plugins
- README API table uses wrong HTTP methods
- Getting Started doesn’t mention new features
Positive Observations
- CLI help text quality is excellent – comprehensive mode descriptions, all colours documented, interactive keys well explained
- Architecture is sound – plugin system is clean, entry points properly configured
- Code quality is high – Rich formatting, proper error handling, good separation of concerns
- v0.2.0 features are substantial – MQTT with HA discovery, automation engine, alerting channels, fan curves, TUI, SSE, WebSocket commands
- Version handling is centralised – one place to change propagates everywhere
- Documentation structure is good – website well-organised, just needs content updates
- Help formatting is consistent – all commands follow same patterns