loki-mode 6.4.0 → 6.6.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/README.md CHANGED
@@ -9,7 +9,7 @@
9
9
  [![Agent Types](https://img.shields.io/badge/Agent%20Types-41-blue)]()
10
10
  [![Autonomi](https://img.shields.io/badge/Autonomi-autonomi.dev-5B4EEA)](https://www.autonomi.dev/)
11
11
 
12
- **Current Version: v6.2.1**
12
+ **Current Version: v6.6.0**
13
13
 
14
14
  ---
15
15
 
@@ -36,7 +36,7 @@ Every iteration follows the **RARV cycle**: Reason (read state, identify next ta
36
36
  | **Code Generation** | Full-stack apps from PRDs | Complex domain logic may need human review |
37
37
  | **Deployment** | Generates configs, Dockerfiles, CI/CD workflows | Does not deploy -- human provides cloud credentials and runs deploy |
38
38
  | **Testing** | 9 automated quality gates, blind review | Test quality depends on AI-generated assertions |
39
- | **Multi-Provider** | Claude (full), Codex/Gemini (sequential only) | Codex and Gemini lack parallel agents and Task tool |
39
+ | **Multi-Provider** | Claude (full), Codex/Gemini/Cline/Aider (sequential only) | Non-Claude providers lack parallel agents and Task tool |
40
40
  | **Enterprise** | TLS, OIDC, RBAC, audit trail | Self-signed certs only; some features require env var activation |
41
41
  | **Dashboard** | Real-time status, task queue, agents | Single-machine only; no multi-node clustering |
42
42
 
@@ -44,7 +44,7 @@ Every iteration follows the **RARV cycle**: Reason (read state, identify next ta
44
44
 
45
45
  ## Quick Start
46
46
 
47
- **Requirements:** Node.js 18+, Python 3.8+, macOS/Linux/WSL2, and at least one AI CLI (Claude Code, Codex, or Gemini).
47
+ **Requirements:** Node.js 18+, Python 3.8+, macOS/Linux/WSL2, and at least one AI CLI (Claude Code, Codex, Gemini, Cline, or Aider).
48
48
 
49
49
  ### CLI Mode
50
50
 
@@ -129,7 +129,7 @@ See [full architecture documentation](docs/enterprise/architecture.md) for the d
129
129
  | **Quality** | 9 gates: blind review, anti-sycophancy, mock/mutation detection | [Quality Gates](skills/quality-gates.md) |
130
130
  | **Dashboard** | Real-time monitoring, API v2, WebSocket, auto-starts with `loki start` | [Dashboard Guide](docs/dashboard-guide.md) |
131
131
  | **Memory** | 3-tier (episodic/semantic/procedural), knowledge graph, vector search | [Memory System](references/memory-system.md) |
132
- | **Providers** | Claude (full), Codex (sequential), Gemini (sequential) | [Provider Guide](skills/providers.md) |
132
+ | **Providers** | Claude (full), Codex/Gemini/Cline/Aider (sequential) | [Provider Guide](skills/providers.md) |
133
133
  | **Enterprise** | TLS, OIDC/SSO, RBAC, OTEL, policy engine, audit trails | [Enterprise Guide](docs/enterprise/architecture.md) |
134
134
  | **Integrations** | Jira, Slack, Teams, GitHub Actions (Linear: partial) | [Integration Cookbook](docs/enterprise/integration-cookbook.md) |
135
135
  | **Deployment** | Helm, Docker Compose, Terraform configs (AWS/Azure/GCP) | [Deployment Guide](deploy/helm/README.md) |
@@ -142,8 +142,10 @@ See [full architecture documentation](docs/enterprise/architecture.md) for the d
142
142
  | Claude Code | `npm i -g @anthropic-ai/claude-code` | `--dangerously-skip-permissions` | Yes (10+) |
143
143
  | Codex CLI | `npm i -g @openai/codex` | `--full-auto` | No (sequential) |
144
144
  | Gemini CLI | `npm i -g @google/gemini-cli` | `--approval-mode=yolo` | No (sequential) |
145
+ | Cline CLI | `npm i -g @anthropic-ai/cline` | `--auto-approve` | No (sequential) |
146
+ | Aider | `pip install aider-chat` | `--yes-always` | No (sequential) |
145
147
 
146
- Claude gets full features (subagents, parallelization, MCP, Task tool). Codex and Gemini run in sequential mode -- one agent at a time, no Task tool. See [Provider Guide](skills/providers.md) for the full comparison.
148
+ Claude gets full features (subagents, parallelization, MCP, Task tool). All other providers run in sequential mode -- one agent at a time, no Task tool. See [Provider Guide](skills/providers.md) for the full comparison.
147
149
 
148
150
  ---
149
151
 
package/SKILL.md CHANGED
@@ -3,11 +3,11 @@ name: loki-mode
3
3
  description: Multi-agent autonomous startup system. Triggers on "Loki Mode". Takes PRD to deployed product with minimal human intervention. Requires --dangerously-skip-permissions flag.
4
4
  ---
5
5
 
6
- # Loki Mode v6.4.0
6
+ # Loki Mode v6.6.0
7
7
 
8
8
  **You are an autonomous agent. You make decisions. You do not ask questions. You do not stop.**
9
9
 
10
- **New in v5.0.0:** Multi-provider support (Claude/Codex/Gemini), abstract model tiers, degraded mode for non-Claude providers. See `skills/providers.md`.
10
+ **New in v5.0.0:** Multi-provider support (Claude/Codex/Gemini/Cline/Aider), abstract model tiers, degraded mode for non-Claude providers. See `skills/providers.md`.
11
11
 
12
12
  ---
13
13
 
@@ -95,7 +95,7 @@ These rules guide autonomous operation. Test results and code quality always tak
95
95
 
96
96
  **Parallelization rule (Claude only):** Launch up to 10 agents simultaneously for independent tasks.
97
97
 
98
- **Degraded mode (Codex/Gemini):** No parallel agents or Task tool. Codex has MCP support. Runs RARV cycle sequentially. See `skills/model-selection.md`.
98
+ **Degraded mode (Codex/Gemini/Cline/Aider):** No parallel agents or Task tool. Codex has MCP support. Runs RARV cycle sequentially. See `skills/model-selection.md`.
99
99
 
100
100
  **Git worktree parallelism:** For true parallel feature development, use `--parallel` flag with run.sh. See `skills/parallel-workflows.md`.
101
101
 
@@ -187,6 +187,8 @@ claude --dangerously-skip-permissions
187
187
  ./autonomy/run.sh --provider claude ./prd.md # Default, full features
188
188
  ./autonomy/run.sh --provider codex ./prd.json # GPT-5.3 Codex, degraded mode
189
189
  ./autonomy/run.sh --provider gemini ./prd.md # Gemini 3 Pro, degraded mode
190
+ ./autonomy/run.sh --provider cline ./prd.md # Cline CLI, degraded mode
191
+ ./autonomy/run.sh --provider aider ./prd.md # Aider (18+ providers), degraded mode
190
192
 
191
193
  # Or via CLI wrapper
192
194
  loki start --provider codex ./prd.md
@@ -199,6 +201,8 @@ loki start --provider codex ./prd.md
199
201
  - **Claude**: Opus 4.6, 1M context (beta), 128K output, adaptive thinking, agent teams, full features (Task tool, parallel agents, MCP)
200
202
  - **Codex**: GPT-5.3, 400K context, 128K output, MCP support, --full-auto mode, degraded (sequential only, no Task tool)
201
203
  - **Gemini**: Degraded mode (sequential only, no Task tool, 1M context)
204
+ - **Cline**: Multi-provider CLI, degraded mode (sequential only, no Task tool)
205
+ - **Aider**: 18+ provider backends, degraded mode (sequential only, no Task tool)
202
206
 
203
207
  ---
204
208
 
@@ -263,4 +267,4 @@ The following features are documented in skill modules but not yet fully automat
263
267
  | Quality gates 3-reviewer system | Implemented (v5.35.0) | 5 specialist reviewers in `skills/quality-gates.md`; execution in run.sh |
264
268
  | Benchmarks (HumanEval, SWE-bench) | Infrastructure only | Runner scripts and datasets exist in `benchmarks/`; no published results |
265
269
 
266
- **v6.4.0 | [Autonomi](https://www.autonomi.dev/) flagship product | ~260 lines core**
270
+ **v6.6.0 | [Autonomi](https://www.autonomi.dev/) flagship product | ~260 lines core**
package/VERSION CHANGED
@@ -1 +1 @@
1
- 6.4.0
1
+ 6.6.0
@@ -663,6 +663,8 @@ council_member_review() {
663
663
  claude) command -v claude >/dev/null 2>&1 || { log_error "Claude CLI not found"; return 1; } ;;
664
664
  codex) command -v codex >/dev/null 2>&1 || { log_error "Codex CLI not found"; return 1; } ;;
665
665
  gemini) command -v gemini >/dev/null 2>&1 || { log_error "Gemini CLI not found"; return 1; } ;;
666
+ cline) command -v cline >/dev/null 2>&1 || { log_error "Cline CLI not found"; return 1; } ;;
667
+ aider) command -v aider >/dev/null 2>&1 || { log_error "Aider not found"; return 1; } ;;
666
668
  esac
667
669
 
668
670
  local evidence
@@ -753,6 +755,16 @@ ISSUES: CRITICAL:description (optional, one per line per issue)"
753
755
  verdict=$(echo "$prompt" | gemini 2>/dev/null | tail -5)
754
756
  fi
755
757
  ;;
758
+ cline)
759
+ if command -v cline &>/dev/null; then
760
+ verdict=$(cline -y "$prompt" 2>/dev/null | tail -5)
761
+ fi
762
+ ;;
763
+ aider)
764
+ if command -v aider &>/dev/null; then
765
+ verdict=$(aider --message "$prompt" --yes-always --no-auto-commits --no-git 2>/dev/null | tail -5)
766
+ fi
767
+ ;;
756
768
  esac
757
769
 
758
770
  # Fallback: if no AI provider available, use heuristic-based review
@@ -777,6 +789,8 @@ council_devils_advocate() {
777
789
  claude) command -v claude >/dev/null 2>&1 || { log_error "Claude CLI not found"; return 1; } ;;
778
790
  codex) command -v codex >/dev/null 2>&1 || { log_error "Codex CLI not found"; return 1; } ;;
779
791
  gemini) command -v gemini >/dev/null 2>&1 || { log_error "Gemini CLI not found"; return 1; } ;;
792
+ cline) command -v cline >/dev/null 2>&1 || { log_error "Cline CLI not found"; return 1; } ;;
793
+ aider) command -v aider >/dev/null 2>&1 || { log_error "Aider not found"; return 1; } ;;
780
794
  esac
781
795
 
782
796
  local evidence
@@ -830,6 +844,16 @@ REASON: your reasoning"
830
844
  verdict=$(echo "$prompt" | gemini 2>/dev/null | tail -5)
831
845
  fi
832
846
  ;;
847
+ cline)
848
+ if command -v cline &>/dev/null; then
849
+ verdict=$(cline -y "$prompt" 2>/dev/null | tail -5)
850
+ fi
851
+ ;;
852
+ aider)
853
+ if command -v aider &>/dev/null; then
854
+ verdict=$(aider --message "$prompt" --yes-always --no-auto-commits --no-git 2>/dev/null | tail -5)
855
+ fi
856
+ ;;
833
857
  esac
834
858
 
835
859
  if [ -z "$verdict" ]; then
@@ -282,6 +282,20 @@ Respond ONLY with a valid JSON object. No markdown fencing."
282
282
  result='{"verdict":"REJECT","reasoning":"reviewer CLI unavailable","issues":[]}'
283
283
  fi
284
284
  ;;
285
+ cline)
286
+ if command -v cline &>/dev/null; then
287
+ result=$(cline -y "$full_prompt" 2>/dev/null || echo '{"verdict":"REJECT","reasoning":"review execution failed","issues":[]}')
288
+ else
289
+ result='{"verdict":"REJECT","reasoning":"reviewer CLI unavailable","issues":[]}'
290
+ fi
291
+ ;;
292
+ aider)
293
+ if command -v aider &>/dev/null; then
294
+ result=$(aider --message "$full_prompt" --yes-always --no-auto-commits --no-git 2>/dev/null || echo '{"verdict":"REJECT","reasoning":"review execution failed","issues":[]}')
295
+ else
296
+ result='{"verdict":"REJECT","reasoning":"reviewer CLI unavailable","issues":[]}'
297
+ fi
298
+ ;;
285
299
  *)
286
300
  result='{"verdict":"REJECT","reasoning":"review not supported for this provider","issues":[]}'
287
301
  ;;
@@ -52,7 +52,7 @@ load_migration_hook_config() {
52
52
  # Parse YAML config safely using read/declare instead of eval
53
53
  while IFS='=' read -r key val; do
54
54
  case "$key" in
55
- HOOK_*) declare -g "$key=$val" ;;
55
+ HOOK_*) printf -v "$key" '%s' "$val" ;;
56
56
  esac
57
57
  done < <(python3 -c "
58
58
  import sys
@@ -224,7 +224,7 @@ try:
224
224
  print(len([s for s in steps if s.get('status') != 'completed']))
225
225
  except: print(-1)
226
226
  " 2>/dev/null || echo -1)
227
- [[ "$pending" -gt 0 ]] && echo "GATE_BLOCKED: ${pending} steps still pending" && return 1
227
+ [[ "$pending" -ne 0 ]] && echo "GATE_BLOCKED: ${pending} steps still pending (or plan missing)" && return 1
228
228
  ;;
229
229
  esac
230
230
 
@@ -236,6 +236,10 @@ hook_on_agent_stop() {
236
236
  local features_path="${LOKI_FEATURES_PATH:-}"
237
237
 
238
238
  [[ "$HOOK_ON_AGENT_STOP_ENABLED" != "true" ]] && return 0
239
+ if [[ -z "$features_path" ]]; then
240
+ echo "HOOK_BLOCKED: LOKI_FEATURES_PATH not set. Cannot verify features."
241
+ return 1
242
+ fi
239
243
  [[ ! -f "$features_path" ]] && return 0
240
244
 
241
245
  local failing