loki-mode 8.8.0 → 8.9.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/mcp/__init__.py CHANGED
@@ -75,4 +75,4 @@ try:
75
75
  except ImportError:
76
76
  __all__ = ['mcp']
77
77
 
78
- __version__ = '8.8.0'
78
+ __version__ = '8.9.0'
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "loki-mode",
3
3
  "mcpName": "io.github.asklokesh/loki-mode",
4
- "version": "8.8.0",
4
+ "version": "8.9.0",
5
5
  "description": "Loki Mode by Autonomi. Autonomous spec-to-product system: takes a PRD, GitHub issue, OpenAPI/JSON/YAML, or one-line brief to a deployed app via the RARV-C closure loop with 8 quality gates. Provider-agnostic (Claude Code, OpenAI Codex, Cline, Aider).",
6
6
  "keywords": [
7
7
  "agent",
@@ -2,7 +2,7 @@
2
2
  "$schema": "https://json.schemastore.org/claude-code-plugin-manifest.json",
3
3
  "name": "loki-mode",
4
4
  "displayName": "Loki Mode",
5
- "version": "8.8.0",
5
+ "version": "8.9.0",
6
6
  "description": "Autonomous spec-to-product build system with a built-in trust layer (RARV-C closure loop, 8 quality gates, completion council). Ships Loki's spec-hardening, drift-detection, and deterministic PR verification commands plus the Loki MCP server.",
7
7
  "author": {
8
8
  "name": "Autonomi",
@@ -132,9 +132,27 @@ _codex_validate_model() {
132
132
  # fallback is validated, since it may carry Claude aliases (opus/sonnet/haiku)
133
133
  # that are invalid for Codex. Validating the whole chain silently downgraded a
134
134
  # trusted LOKI_CODEX_MODEL to the default (BUG-PROV-003 fix).
135
- PROVIDER_MODEL_PLANNING="${LOKI_CODEX_MODEL:-$(_codex_validate_model "${LOKI_MODEL_PLANNING:-$CODEX_DEFAULT_MODEL}")}"
136
- PROVIDER_MODEL_DEVELOPMENT="${LOKI_CODEX_MODEL:-$(_codex_validate_model "${LOKI_MODEL_DEVELOPMENT:-$CODEX_DEFAULT_MODEL}")}"
137
- PROVIDER_MODEL_FAST="${LOKI_CODEX_MODEL:-$(_codex_validate_model "${LOKI_MODEL_FAST:-$CODEX_DEFAULT_MODEL}")}"
135
+ #
136
+ # Each tier resolves from the catalog, which is the single source of truth for
137
+ # what "small / medium / high" means per provider. Before this, all three tiers
138
+ # fell back to CODEX_DEFAULT_MODEL (empty), so a codex run sent no --model at
139
+ # all and `LOKI_SESSION_MODEL=high` selected nothing -- the tier vocabulary was
140
+ # inert on codex and a user had to name a model by hand.
141
+ #
142
+ # The empty default is still the last resort: if the catalog lookup yields
143
+ # nothing, we send no --model and let Codex pick, which is the safe outcome for
144
+ # a ChatGPT-account user rather than a guessed name.
145
+ _codex_tier_model() {
146
+ local tier="$1" resolved=""
147
+ if command -v loki_latest_model >/dev/null 2>&1; then
148
+ resolved="$(loki_latest_model codex "$tier" 2>/dev/null)"
149
+ fi
150
+ printf '%s' "${resolved:-$CODEX_DEFAULT_MODEL}"
151
+ }
152
+
153
+ PROVIDER_MODEL_PLANNING="${LOKI_CODEX_MODEL:-$(_codex_validate_model "${LOKI_MODEL_PLANNING:-$(_codex_tier_model planning)}")}"
154
+ PROVIDER_MODEL_DEVELOPMENT="${LOKI_CODEX_MODEL:-$(_codex_validate_model "${LOKI_MODEL_DEVELOPMENT:-$(_codex_tier_model development)}")}"
155
+ PROVIDER_MODEL_FAST="${LOKI_CODEX_MODEL:-$(_codex_validate_model "${LOKI_MODEL_FAST:-$(_codex_tier_model fast)}")}"
138
156
 
139
157
  # Effort levels (Codex-specific: maps to reasoning time, not model capability)
140
158
  PROVIDER_EFFORT_PLANNING="xhigh"
@@ -49,17 +49,29 @@
49
49
  ]
50
50
  },
51
51
  "codex": {
52
- "latest_planning": "gpt-5.3-codex",
53
- "latest_development": "gpt-5.3-codex",
54
- "latest_fast": "gpt-5.3-codex",
55
- "tier_fallback": {
56
- "development": "planning",
57
- "fast": "planning"
58
- },
52
+ "latest_planning": "gpt-5.6-sol",
53
+ "latest_development": "gpt-5.6-terra",
54
+ "latest_fast": "gpt-5.6-luna",
59
55
  "models": [
56
+ {
57
+ "id": "gpt-5.6-sol",
58
+ "tier": "planning",
59
+ "notes": "high tier. OpenAI: 'Frontier model for complex professional work'. Verified against developers.openai.com/api/docs/models."
60
+ },
61
+ {
62
+ "id": "gpt-5.6-terra",
63
+ "tier": "development",
64
+ "notes": "medium tier, the DEFAULT. OpenAI: balances performance with affordability."
65
+ },
66
+ {
67
+ "id": "gpt-5.6-luna",
68
+ "tier": "fast",
69
+ "notes": "small tier. OpenAI: budget-conscious, high-volume."
70
+ },
60
71
  {
61
72
  "id": "gpt-5.3-codex",
62
- "tier": "planning"
73
+ "tier": "legacy",
74
+ "notes": "Prior default, superseded by the gpt-5.6 line. Kept discoverable, not dispatched."
63
75
  },
64
76
  {
65
77
  "id": "o3",