kitchen: README + MISSIONS/engine-c keep-drop notes
This commit is contained in:
parent
1d351918da
commit
575d7d29b8
130 changed files with 9817 additions and 1 deletions
9
openkknd2-am-coder/.agent-coder-resume.sh
Executable file
9
openkknd2-am-coder/.agent-coder-resume.sh
Executable file
|
|
@ -0,0 +1,9 @@
|
|||
#!/usr/bin/env bash
|
||||
set -euo pipefail
|
||||
export PATH="${HOME}/.local/bin:/usr/local/bin:/usr/bin:/bin:${PATH:-}"
|
||||
export LLM_CONFIGS=/home/vx/src/llm-configs
|
||||
export OPENCLAW_MODEL=ollama/qwen3:14b
|
||||
export OPENCLAW_TIMEOUT=900
|
||||
export AGENT_WORKDIR=/home/vx/src/openkknd2-am-coder
|
||||
cd /home/vx/src/openkknd2-am-coder
|
||||
exec /home/vx/agent-coder -s ok2meta-r6-qwen314 -A --max-turns 8 --iref 21-always-agent-logs.md RESUME:\ continue\ from\ AGENT_LOG.md\ and\ STATUS.md\ in\ this\ workdir.\ Do\ not\ re-ask.\ Emit\ ##\ AUTONOMOUS_STOP\ only\ when\ truly\ blocked.
|
||||
144
openkknd2-am-coder/.am-meta/META_LOG.md
Normal file
144
openkknd2-am-coder/.am-meta/META_LOG.md
Normal file
|
|
@ -0,0 +1,144 @@
|
|||
# am-meta log
|
||||
|
||||
- workdir: `/home/vx/src/openkknd2-am-coder`
|
||||
- created: 2026-07-22T05:21:20Z
|
||||
|
||||
- **2026-07-22T05:21:22Z** · meta-stop · hand off to am-meta
|
||||
|
||||
## meta-start 2026-07-22T05:21:24Z
|
||||
- workdir: `/home/vx/src/openkknd2-am-coder`
|
||||
- models: `--devstral --coder --qwen314 --qwen14 --deepseek --qwen38`
|
||||
- max_rounds: 16 max_turns/round: 8 min_line_delta: 30
|
||||
- **2026-07-22T05:21:24Z** · meta detached pid=1722387 out=/home/vx/src/openkknd2-am-coder/.am-meta/meta.out
|
||||
|
||||
### round 1 / 16 · `--devstral` · before `9 183 0`
|
||||
- **2026-07-22T05:21:25Z** · launch · flag=`--devstral` session=`ok2meta-r1-devstral` turns=8
|
||||
- **2026-07-22T05:21:34Z** · after `9 183 0`
|
||||
- **2026-07-22T05:21:34Z** · progress · NO with `--devstral` (streak_fail=1) — next model
|
||||
|
||||
### round 2 / 16 · `--coder` · before `9 183 0`
|
||||
- **2026-07-22T05:21:35Z** · launch · flag=`--coder` session=`ok2meta-r2-coder` turns=8
|
||||
- **2026-07-22T05:22:20Z** · meta-stop · redeploy race fix
|
||||
|
||||
## meta-start 2026-07-22T05:22:25Z
|
||||
- workdir: `/home/vx/src/openkknd2-am-coder`
|
||||
- models: `--devstral --coder --qwen314 --qwen14 --deepseek --qwen38`
|
||||
- max_rounds: 16 max_turns/round: 8 min_line_delta: 30
|
||||
- **2026-07-22T05:22:25Z** · meta detached pid=1725467 out=/home/vx/src/openkknd2-am-coder/.am-meta/meta.out
|
||||
|
||||
### round 1 / 16 · `--devstral` · before `9 183 0`
|
||||
- **2026-07-22T05:22:26Z** · launch · flag=`--devstral` session=`ok2meta-r1-devstral` turns=8
|
||||
- **2026-07-22T05:28:56Z** · after `9 183 0`
|
||||
- **2026-07-22T05:28:56Z** · progress · NO with `--devstral` (streak_fail=1) — next model
|
||||
|
||||
### round 2 / 16 · `--coder` · before `9 183 0`
|
||||
- **2026-07-22T05:28:58Z** · launch · flag=`--coder` session=`ok2meta-r2-coder` turns=8
|
||||
- **2026-07-22T05:34:48Z** · after `9 183 0`
|
||||
- **2026-07-22T05:34:48Z** · progress · NO with `--coder` (streak_fail=2) — next model
|
||||
|
||||
### round 3 / 16 · `--qwen314` · before `9 183 0`
|
||||
- **2026-07-22T05:34:49Z** · launch · flag=`--qwen314` session=`ok2meta-r3-qwen314` turns=8
|
||||
- **2026-07-22T05:50:19Z** · after `10 208 2`
|
||||
- **2026-07-22T05:50:19Z** · progress · YES with `--qwen314` — keep same model
|
||||
|
||||
### round 4 / 16 · `--qwen314` · before `10 208 2`
|
||||
- **2026-07-22T05:50:20Z** · launch · flag=`--qwen314` session=`ok2meta-r4-qwen314` turns=8
|
||||
- **2026-07-22T05:54:31Z** · after `10 208 2`
|
||||
- **2026-07-22T05:54:31Z** · progress · NO with `--qwen314` (streak_fail=1) — next model
|
||||
|
||||
### round 5 / 16 · `--qwen14` · before `10 208 2`
|
||||
- **2026-07-22T05:54:32Z** · launch · flag=`--qwen14` session=`ok2meta-r5-qwen14` turns=8
|
||||
- **2026-07-22T05:59:02Z** · after `10 208 2`
|
||||
- **2026-07-22T05:59:02Z** · progress · NO with `--qwen14` (streak_fail=2) — next model
|
||||
|
||||
### round 6 / 16 · `--deepseek` · before `10 208 2`
|
||||
- **2026-07-22T05:59:03Z** · launch · flag=`--deepseek` session=`ok2meta-r6-deepseek` turns=8
|
||||
- **2026-07-22T05:59:53Z** · after `10 208 2`
|
||||
- **2026-07-22T05:59:53Z** · progress · NO with `--deepseek` (streak_fail=3) — next model
|
||||
|
||||
### round 7 / 16 · `--qwen38` · before `10 208 2`
|
||||
- **2026-07-22T05:59:54Z** · launch · flag=`--qwen38` session=`ok2meta-r7-qwen38` turns=8
|
||||
- **2026-07-22T06:03:58Z** · meta-stop · user: beende alle aufgaben
|
||||
- **2026-07-22T06:05:00Z** · meta-stop · clean restart
|
||||
|
||||
## meta-start 2026-07-22T06:05:01Z
|
||||
- workdir: `/home/vx/src/openkknd2-am-coder`
|
||||
- models: `--devstral --coder --qwen314 --qwen14 --deepseek --qwen38` (first = standard)
|
||||
- stalls_before_switch: 2 accept_needs: 1
|
||||
- max_rounds: 16 max_turns/round: 8 min_line_delta: 30
|
||||
- mission: /home/vx/src/llm-configs/prompts/openkknd2-mission.md
|
||||
- **2026-07-22T06:05:01Z** · meta detached pid=3574950 out=/home/vx/src/openkknd2-am-coder/.am-meta/meta.out
|
||||
|
||||
### round 1 / 16 · `--devstral` · before `11 228 2` · streak_fail=0
|
||||
- **2026-07-22T06:05:02Z** · launch · flag=`--devstral` session=`ok2meta-r1-devstral` turns=8
|
||||
- **2026-07-22T06:05:32Z** · after `11 228 2`
|
||||
- **2026-07-22T06:05:32Z** · needs · harvested NEED_INSTRUCTIONS → additive.md (mission unchanged)
|
||||
- **2026-07-22T06:05:32Z** · DONE detected after round 1
|
||||
- **2026-07-22T06:07:12Z** · meta-stop · restart after false-DONE fix
|
||||
|
||||
## meta-start 2026-07-22T06:07:13Z
|
||||
- workdir: `/home/vx/src/openkknd2-am-coder`
|
||||
- models: `--devstral --coder --qwen314 --qwen14 --deepseek --qwen38` (first = standard)
|
||||
- stalls_before_switch: 2 accept_needs: 1
|
||||
- max_rounds: 16 max_turns/round: 8 min_line_delta: 30
|
||||
- mission: /home/vx/src/llm-configs/prompts/openkknd2-mission.md
|
||||
- **2026-07-22T06:07:13Z** · meta detached pid=3577057 out=/home/vx/src/openkknd2-am-coder/.am-meta/meta.out
|
||||
|
||||
### round 1 / 16 · `--devstral` · before `11 228 2` · streak_fail=0
|
||||
- **2026-07-22T06:07:14Z** · launch · flag=`--devstral` session=`ok2meta-r1-devstral` turns=8
|
||||
- **2026-07-22T06:07:43Z** · after `11 228 2`
|
||||
- **2026-07-22T06:07:43Z** · progress · NO with `--devstral` (streak_fail=1 < 2) — **retry same model**
|
||||
|
||||
### round 2 / 16 · `--devstral` · before `11 228 2` · streak_fail=1
|
||||
- **2026-07-22T06:07:44Z** · launch · flag=`--devstral` session=`ok2meta-r2-devstral` turns=8
|
||||
- **2026-07-22T06:09:11Z** · meta-stop · user: session end
|
||||
|
||||
## meta-start 2026-07-22T06:09:21Z
|
||||
- workdir: `/home/vx/src/openkknd2-am-coder`
|
||||
- models: `--devstral --coder --qwen314 --qwen14 --deepseek --qwen38` (first = standard)
|
||||
- stalls_before_switch: 2 accept_needs: 1
|
||||
- max_rounds: 16 max_turns/round: 8 min_line_delta: 30
|
||||
- mission: /home/vx/src/llm-configs/prompts/openkknd2-mission.md
|
||||
- **2026-07-22T06:09:21Z** · meta detached pid=3579576 out=/home/vx/src/openkknd2-am-coder/.am-meta/meta.out
|
||||
|
||||
### round 1 / 16 · `--devstral` · before `11 228 2` · streak_fail=0
|
||||
- **2026-07-22T06:09:22Z** · launch · flag=`--devstral` session=`ok2meta-r1-devstral` turns=8
|
||||
- **2026-07-22T06:09:37Z** · meta-stop · user: n — todos beenden
|
||||
- **2026-07-22T06:09:56Z** · meta-stop · recover after wrong stop
|
||||
|
||||
## meta-start 2026-07-22T06:09:57Z
|
||||
- workdir: `/home/vx/src/openkknd2-am-coder`
|
||||
- models: `--devstral --coder --qwen314 --qwen14 --deepseek --qwen38` (first = standard)
|
||||
- stalls_before_switch: 2 accept_needs: 1
|
||||
- max_rounds: 16 max_turns/round: 8 min_line_delta: 30
|
||||
- mission: /home/vx/src/llm-configs/prompts/openkknd2-mission.md
|
||||
- **2026-07-22T06:09:57Z** · meta detached pid=3580490 out=/home/vx/src/openkknd2-am-coder/.am-meta/meta.out
|
||||
|
||||
### round 1 / 16 · `--devstral` · before `11 228 2` · streak_fail=0
|
||||
- **2026-07-22T06:09:59Z** · launch · flag=`--devstral` session=`ok2meta-r1-devstral` turns=8
|
||||
- **2026-07-22T06:10:28Z** · after `11 228 2`
|
||||
- **2026-07-22T06:10:28Z** · progress · NO with `--devstral` (streak_fail=1 < 2) — **retry same model**
|
||||
|
||||
### round 2 / 16 · `--devstral` · before `11 228 2` · streak_fail=1
|
||||
- **2026-07-22T06:10:29Z** · launch · flag=`--devstral` session=`ok2meta-r2-devstral` turns=8
|
||||
- **2026-07-22T06:15:58Z** · after `11 228 2`
|
||||
- **2026-07-22T06:15:58Z** · progress · NO with `--devstral` (streak_fail=2 ≥ 2) — **switch model**
|
||||
|
||||
### round 3 / 16 · `--coder` · before `11 228 2` · streak_fail=0
|
||||
- **2026-07-22T06:15:59Z** · launch · flag=`--coder` session=`ok2meta-r3-coder` turns=8
|
||||
- **2026-07-22T06:21:48Z** · after `12 273 2`
|
||||
- **2026-07-22T06:21:48Z** · progress · YES with `--coder` — keep same model; reset stall counter
|
||||
|
||||
### round 4 / 16 · `--coder` · before `12 273 2` · streak_fail=0
|
||||
- **2026-07-22T06:21:50Z** · launch · flag=`--coder` session=`ok2meta-r4-coder` turns=8
|
||||
- **2026-07-22T06:26:39Z** · after `12 273 2`
|
||||
- **2026-07-22T06:26:39Z** · progress · NO with `--coder` (streak_fail=1 < 2) — **retry same model**
|
||||
|
||||
### round 5 / 16 · `--coder` · before `12 273 2` · streak_fail=1
|
||||
- **2026-07-22T06:26:40Z** · launch · flag=`--coder` session=`ok2meta-r5-coder` turns=8
|
||||
- **2026-07-22T06:30:49Z** · after `12 273 2`
|
||||
- **2026-07-22T06:30:49Z** · progress · NO with `--coder` (streak_fail=2 ≥ 2) — **switch model**
|
||||
|
||||
### round 6 / 16 · `--qwen314` · before `12 273 2` · streak_fail=0
|
||||
- **2026-07-22T06:30:50Z** · launch · flag=`--qwen314` session=`ok2meta-r6-qwen314` turns=8
|
||||
- **2026-07-22T06:46:00Z** · stall · AGENT_LOG frozen ≥900s while task active → stop child
|
||||
6
openkknd2-am-coder/.am-meta/additive.md
Normal file
6
openkknd2-am-coder/.am-meta/additive.md
Normal file
|
|
@ -0,0 +1,6 @@
|
|||
# Additive instructions (harvested / evolved)
|
||||
|
||||
These lines may grow when the agent emits `## NEED_INSTRUCTIONS`.
|
||||
They **must not** contradict the mission in `mission.md`.
|
||||
Mission always wins.
|
||||
|
||||
|
|
@ -0,0 +1,24 @@
|
|||
AGENT_WORKDIR=/home/vx/src/openkknd2-am-coder
|
||||
logs: /home/vx/src/openkknd2-am-coder/AGENT_LOG.md /home/vx/src/openkknd2-am-coder/STATUS.md /home/vx/src/openkknd2-am-coder/TASK.md
|
||||
detached pid=1722763 log=/tmp/agent-coder-detach-20260722T052130Z.log
|
||||
control: am-task list | am-task stop latest | am-task resume latest
|
||||
### ACTIVE (/home/vx/.am-agent-tasks/active)
|
||||
|
||||
(none active)
|
||||
|
||||
### RECENT HISTORY (5) (/home/vx/.am-agent-tasks/history)
|
||||
|
||||
════════════════════════════════════════════════════════════
|
||||
id: 20260722T051649Z-1717777
|
||||
status: interrupted [process dead]
|
||||
kind: agent-coder
|
||||
host: amanita
|
||||
model: ollama/devstral:latest
|
||||
session: ok2-rot1-devstral
|
||||
pid / pgid: 1717646 / 1717475
|
||||
started: 2026-07-22T05:16:49Z
|
||||
stopped: 2026-07-22T05:21:20Z
|
||||
elapsed: 4m 31s
|
||||
stop_reason: hand off to am-meta
|
||||
stop_how: am-task stop
|
||||
stop_hard: False
|
||||
24
openkknd2-am-coder/.am-meta/launch-20260722T052135Zcoder.log
Normal file
24
openkknd2-am-coder/.am-meta/launch-20260722T052135Zcoder.log
Normal file
|
|
@ -0,0 +1,24 @@
|
|||
AGENT_WORKDIR=/home/vx/src/openkknd2-am-coder
|
||||
logs: /home/vx/src/openkknd2-am-coder/AGENT_LOG.md /home/vx/src/openkknd2-am-coder/STATUS.md /home/vx/src/openkknd2-am-coder/TASK.md
|
||||
detached pid=1723577 log=/tmp/agent-coder-detach-20260722T052143Z.log
|
||||
control: am-task list | am-task stop latest | am-task resume latest
|
||||
### ACTIVE (/home/vx/.am-agent-tasks/active)
|
||||
|
||||
════════════════════════════════════════════════════════════
|
||||
id: 20260722T052138Z-1723242
|
||||
status: running [process alive]
|
||||
kind: agent-coder
|
||||
host: amanita
|
||||
model: ollama/devstral:latest
|
||||
session: ok2meta-r1-devstral
|
||||
pid / pgid: 1722763 / 1722243
|
||||
started: 2026-07-22T05:21:38Z
|
||||
stopped: — (still running)
|
||||
elapsed: 6s
|
||||
title: CONTINUE openkknd2 ONLY under /home/vx/src/openkknd2-am-coder (this workdir).
|
||||
|
||||
Headless smoke is GREEN (map + units). You implement the next milestones yourself.
|
||||
|
||||
This turn must produce REAL file changes (not just plans):
|
||||
1. Add building placement (HQ and/or barracks) with resource cost — new headers/sources if needed
|
||||
2. Add a simple faction AI tick (gather / build / train)
|
||||
|
|
@ -0,0 +1,24 @@
|
|||
AGENT_WORKDIR=/home/vx/src/openkknd2-am-coder
|
||||
logs: /home/vx/src/openkknd2-am-coder/AGENT_LOG.md /home/vx/src/openkknd2-am-coder/STATUS.md /home/vx/src/openkknd2-am-coder/TASK.md
|
||||
detached pid=1725651 log=/tmp/agent-coder-detach-20260722T052230Z.log
|
||||
control: am-task list | am-task stop latest | am-task resume latest
|
||||
### ACTIVE (/home/vx/.am-agent-tasks/active)
|
||||
|
||||
(none active)
|
||||
|
||||
### RECENT HISTORY (5) (/home/vx/.am-agent-tasks/history)
|
||||
|
||||
════════════════════════════════════════════════════════════
|
||||
id: 20260722T052152Z-1724054
|
||||
status: done [process dead]
|
||||
kind: agent-coder
|
||||
host: amanita
|
||||
model: ollama/qwen3-coder:latest
|
||||
session: ok2meta-r2-coder
|
||||
pid / pgid: 1723577 / 1722243
|
||||
started: 2026-07-22T05:21:52Z
|
||||
stopped: 2026-07-22T05:22:19Z
|
||||
elapsed: 27s
|
||||
exit_code: 0
|
||||
stop_reason: completed
|
||||
stop_how: finish
|
||||
24
openkknd2-am-coder/.am-meta/launch-20260722T052858Zcoder.log
Normal file
24
openkknd2-am-coder/.am-meta/launch-20260722T052858Zcoder.log
Normal file
|
|
@ -0,0 +1,24 @@
|
|||
AGENT_WORKDIR=/home/vx/src/openkknd2-am-coder
|
||||
logs: /home/vx/src/openkknd2-am-coder/AGENT_LOG.md /home/vx/src/openkknd2-am-coder/STATUS.md /home/vx/src/openkknd2-am-coder/TASK.md
|
||||
detached pid=1737910 log=/tmp/agent-coder-detach-20260722T052901Z.log
|
||||
control: am-task list | am-task stop latest | am-task resume latest
|
||||
### ACTIVE (/home/vx/.am-agent-tasks/active)
|
||||
|
||||
(none active)
|
||||
|
||||
### RECENT HISTORY (5) (/home/vx/.am-agent-tasks/history)
|
||||
|
||||
════════════════════════════════════════════════════════════
|
||||
id: 20260722T052232Z-1725762
|
||||
status: done [process dead]
|
||||
kind: agent-coder
|
||||
host: amanita
|
||||
model: ollama/devstral:latest
|
||||
session: ok2meta-r1-devstral
|
||||
pid / pgid: 1725651 / 1725180
|
||||
started: 2026-07-22T05:22:32Z
|
||||
stopped: 2026-07-22T05:28:47Z
|
||||
elapsed: 6m 15s
|
||||
exit_code: 0
|
||||
stop_reason: completed
|
||||
stop_how: finish
|
||||
|
|
@ -0,0 +1,24 @@
|
|||
AGENT_WORKDIR=/home/vx/src/openkknd2-am-coder
|
||||
logs: /home/vx/src/openkknd2-am-coder/AGENT_LOG.md /home/vx/src/openkknd2-am-coder/STATUS.md /home/vx/src/openkknd2-am-coder/TASK.md
|
||||
detached pid=2574247 log=/tmp/agent-coder-detach-20260722T053453Z.log
|
||||
control: am-task list | am-task stop latest | am-task resume latest
|
||||
### ACTIVE (/home/vx/.am-agent-tasks/active)
|
||||
|
||||
(none active)
|
||||
|
||||
### RECENT HISTORY (5) (/home/vx/.am-agent-tasks/history)
|
||||
|
||||
════════════════════════════════════════════════════════════
|
||||
id: 20260722T052904Z-1738030
|
||||
status: done [process dead]
|
||||
kind: agent-coder
|
||||
host: amanita
|
||||
model: ollama/qwen3-coder:latest
|
||||
session: ok2meta-r2-coder
|
||||
pid / pgid: 1737910 / 1725180
|
||||
started: 2026-07-22T05:29:04Z
|
||||
stopped: 2026-07-22T05:34:35Z
|
||||
elapsed: 5m 31s
|
||||
exit_code: 0
|
||||
stop_reason: completed
|
||||
stop_how: finish
|
||||
|
|
@ -0,0 +1,24 @@
|
|||
AGENT_WORKDIR=/home/vx/src/openkknd2-am-coder
|
||||
logs: /home/vx/src/openkknd2-am-coder/AGENT_LOG.md /home/vx/src/openkknd2-am-coder/STATUS.md /home/vx/src/openkknd2-am-coder/TASK.md
|
||||
detached pid=3217597 log=/tmp/agent-coder-detach-20260722T055024Z.log
|
||||
control: am-task list | am-task stop latest | am-task resume latest
|
||||
am-task overview · host resources: WARN
|
||||
────────────────────────────────────────────────────────────────────────────────────────────────
|
||||
RAM 12.2GiB/62.7GiB used (19%) avail 50.5GiB
|
||||
load 9.86 13.58 10.98 cpus=32
|
||||
swap 7.7GiB/62.7GiB (12%)
|
||||
GPU0 NVIDIA GeForce GTX 1060 6GB VRAM 4987/6144 MiB (81%) util 0% high
|
||||
ollama qwen3:14b bdbd181c33f2 12 GB 68%/32% CPU/GPU 32768 4 minutes from now
|
||||
────────────────────────────────────────────────────────────────────────────────────────────────
|
||||
● running ● done ● interrupted ● failed ● run/DEAD · am-task show <id> | list --full
|
||||
|
||||
ID STATUS MODEL ELAPSED CODE SESSION WORKDIR / TITLE
|
||||
────────────────────────────────────────────────────────────────────────────────────────────────
|
||||
ACTIVE (none)
|
||||
|
||||
RECENT HISTORY (8)
|
||||
20260722T053455Z-2574378 done qwen3:14b 15m13s 207 ok2meta-r3-qwen3 ~/src/openkknd2-am-coder
|
||||
CONTINUE openkknd2 ONLY under /home/vx/src/openkknd2-am-coder (this w…
|
||||
20260722T052904Z-1738030 done qwen3-coder:latest 5m31s 207 ok2meta-r2-coder ~/src/openkknd2-am-coder
|
||||
CONTINUE openkknd2 ONLY under /home/vx/src/openkknd2-am-coder (this w…
|
||||
20260722T052232Z-1725762 done devstral:latest 6m15s 207 ok2meta-r1-devst ~/src/openkknd2-am-coder
|
||||
|
|
@ -0,0 +1,24 @@
|
|||
AGENT_WORKDIR=/home/vx/src/openkknd2-am-coder
|
||||
logs: /home/vx/src/openkknd2-am-coder/AGENT_LOG.md /home/vx/src/openkknd2-am-coder/STATUS.md /home/vx/src/openkknd2-am-coder/TASK.md
|
||||
detached pid=3338342 log=/tmp/agent-coder-detach-20260722T055435Z.log
|
||||
control: am-task list | am-task stop latest | am-task resume latest
|
||||
am-task overview · host resources: OK
|
||||
────────────────────────────────────────────────────────────────────────────────────────────────
|
||||
RAM 8.9GiB/62.7GiB used (14%) avail 53.8GiB
|
||||
load 8.99 10.51 10.27 cpus=32
|
||||
swap 7.7GiB/62.7GiB (12%)
|
||||
GPU0 NVIDIA GeForce GTX 1060 6GB VRAM 1063/6144 MiB (17%) util 0%
|
||||
ollama (no chat model loaded)
|
||||
────────────────────────────────────────────────────────────────────────────────────────────────
|
||||
● running ● done ● interrupted ● failed ● run/DEAD · am-task show <id> | list --full
|
||||
|
||||
ID STATUS MODEL ELAPSED CODE SESSION WORKDIR / TITLE
|
||||
────────────────────────────────────────────────────────────────────────────────────────────────
|
||||
ACTIVE (none)
|
||||
|
||||
RECENT HISTORY (8)
|
||||
20260722T055027Z-3217726 done qwen3:14b 4m04s 207 ok2meta-r4-qwen3 ~/src/openkknd2-am-coder
|
||||
CONTINUE openkknd2 ONLY under /home/vx/src/openkknd2-am-coder (this w…
|
||||
20260722T053455Z-2574378 done qwen3:14b 15m13s 207 ok2meta-r3-qwen3 ~/src/openkknd2-am-coder
|
||||
CONTINUE openkknd2 ONLY under /home/vx/src/openkknd2-am-coder (this w…
|
||||
20260722T052904Z-1738030 done qwen3-coder:latest 5m31s 207 ok2meta-r2-coder ~/src/openkknd2-am-coder
|
||||
|
|
@ -0,0 +1,24 @@
|
|||
AGENT_WORKDIR=/home/vx/src/openkknd2-am-coder
|
||||
logs: /home/vx/src/openkknd2-am-coder/AGENT_LOG.md /home/vx/src/openkknd2-am-coder/STATUS.md /home/vx/src/openkknd2-am-coder/TASK.md
|
||||
detached pid=3346536 log=/tmp/agent-coder-detach-20260722T055907Z.log
|
||||
control: am-task list | am-task stop latest | am-task resume latest
|
||||
am-task overview · host resources: OK
|
||||
────────────────────────────────────────────────────────────────────────────────────────────────
|
||||
RAM 8.9GiB/62.7GiB used (14%) avail 53.7GiB
|
||||
load 7.76 8.74 9.51 cpus=32
|
||||
swap 7.8GiB/62.7GiB (12%)
|
||||
GPU0 NVIDIA GeForce GTX 1060 6GB VRAM 1063/6144 MiB (17%) util 0%
|
||||
ollama (no chat model loaded)
|
||||
────────────────────────────────────────────────────────────────────────────────────────────────
|
||||
● running ● done ● interrupted ● failed ● run/DEAD · am-task show <id> | list --full
|
||||
|
||||
ID STATUS MODEL ELAPSED CODE SESSION WORKDIR / TITLE
|
||||
────────────────────────────────────────────────────────────────────────────────────────────────
|
||||
ACTIVE (none)
|
||||
|
||||
RECENT HISTORY (8)
|
||||
20260722T055438Z-3338469 done qwen2.5-coder:14b 4m08s 207 ok2meta-r5-qwen1 ~/src/openkknd2-am-coder
|
||||
CONTINUE openkknd2 ONLY under /home/vx/src/openkknd2-am-coder (this w…
|
||||
20260722T055027Z-3217726 done qwen3:14b 4m04s 207 ok2meta-r4-qwen3 ~/src/openkknd2-am-coder
|
||||
CONTINUE openkknd2 ONLY under /home/vx/src/openkknd2-am-coder (this w…
|
||||
20260722T053455Z-2574378 done qwen3:14b 15m13s 207 ok2meta-r3-qwen3 ~/src/openkknd2-am-coder
|
||||
|
|
@ -0,0 +1,24 @@
|
|||
AGENT_WORKDIR=/home/vx/src/openkknd2-am-coder
|
||||
logs: /home/vx/src/openkknd2-am-coder/AGENT_LOG.md /home/vx/src/openkknd2-am-coder/STATUS.md /home/vx/src/openkknd2-am-coder/TASK.md
|
||||
detached pid=3348289 log=/tmp/agent-coder-detach-20260722T055958Z.log
|
||||
control: am-task list | am-task stop latest | am-task resume latest
|
||||
am-task overview · host resources: OK
|
||||
────────────────────────────────────────────────────────────────────────────────────────────────
|
||||
RAM 8.8GiB/62.7GiB used (14%) avail 53.9GiB
|
||||
load 6.07 8.23 9.30 cpus=32
|
||||
swap 7.8GiB/62.7GiB (12%)
|
||||
GPU0 NVIDIA GeForce GTX 1060 6GB VRAM 1063/6144 MiB (17%) util 0%
|
||||
ollama (no chat model loaded)
|
||||
────────────────────────────────────────────────────────────────────────────────────────────────
|
||||
● running ● done ● interrupted ● failed ● run/DEAD · am-task show <id> | list --full
|
||||
|
||||
ID STATUS MODEL ELAPSED CODE SESSION WORKDIR / TITLE
|
||||
────────────────────────────────────────────────────────────────────────────────────────────────
|
||||
ACTIVE (none)
|
||||
|
||||
RECENT HISTORY (8)
|
||||
20260722T055909Z-3346665 done deepseek-coder:6.7b 29s 207 ok2meta-r6-deeps ~/src/openkknd2-am-coder
|
||||
CONTINUE openkknd2 ONLY under /home/vx/src/openkknd2-am-coder (this w…
|
||||
20260722T055438Z-3338469 done qwen2.5-coder:14b 4m08s 207 ok2meta-r5-qwen1 ~/src/openkknd2-am-coder
|
||||
CONTINUE openkknd2 ONLY under /home/vx/src/openkknd2-am-coder (this w…
|
||||
20260722T055027Z-3217726 done qwen3:14b 4m04s 207 ok2meta-r4-qwen3 ~/src/openkknd2-am-coder
|
||||
|
|
@ -0,0 +1,24 @@
|
|||
AGENT_WORKDIR=/home/vx/src/openkknd2-am-coder
|
||||
logs: /home/vx/src/openkknd2-am-coder/AGENT_LOG.md /home/vx/src/openkknd2-am-coder/STATUS.md /home/vx/src/openkknd2-am-coder/TASK.md
|
||||
detached pid=3575225 log=/tmp/agent-coder-detach-20260722T060506Z.log
|
||||
control: am-task list | am-task stop latest | am-task resume latest
|
||||
am-task overview · host resources: OK
|
||||
────────────────────────────────────────────────────────────────────────────────────────────────
|
||||
RAM 8.8GiB/62.7GiB used (14%) avail 53.9GiB
|
||||
load 5.14 8.06 9.00 cpus=32
|
||||
swap 7.8GiB/62.7GiB (12%)
|
||||
GPU0 NVIDIA GeForce GTX 1060 6GB VRAM 1063/6144 MiB (17%) util 0%
|
||||
ollama (no chat model loaded)
|
||||
────────────────────────────────────────────────────────────────────────────────────────────────
|
||||
● running ● done ● interrupted ● failed ● run/DEAD · am-task show <id> | list --full
|
||||
|
||||
ID STATUS MODEL ELAPSED CODE SESSION WORKDIR / TITLE
|
||||
────────────────────────────────────────────────────────────────────────────────────────────────
|
||||
ACTIVE (none)
|
||||
|
||||
RECENT HISTORY (8)
|
||||
20260722T060000Z-3348413 interrupted qwen3:8b 3m57s 226 ok2meta-r7-qwen3 ~/src/openkknd2-am-coder
|
||||
CONTINUE openkknd2 ONLY under /home/vx/src/openkknd2-am-coder (this w…
|
||||
20260722T055909Z-3346665 done deepseek-coder:6.7b 29s 226 ok2meta-r6-deeps ~/src/openkknd2-am-coder
|
||||
CONTINUE openkknd2 ONLY under /home/vx/src/openkknd2-am-coder (this w…
|
||||
20260722T055438Z-3338469 done qwen2.5-coder:14b 4m08s 226 ok2meta-r5-qwen1 ~/src/openkknd2-am-coder
|
||||
|
|
@ -0,0 +1,24 @@
|
|||
AGENT_WORKDIR=/home/vx/src/openkknd2-am-coder
|
||||
logs: /home/vx/src/openkknd2-am-coder/AGENT_LOG.md /home/vx/src/openkknd2-am-coder/STATUS.md /home/vx/src/openkknd2-am-coder/TASK.md
|
||||
detached pid=3577255 log=/tmp/agent-coder-detach-20260722T060718Z.log
|
||||
control: am-task list | am-task stop latest | am-task resume latest
|
||||
am-task overview · host resources: OK
|
||||
────────────────────────────────────────────────────────────────────────────────────────────────
|
||||
RAM 8.5GiB/62.7GiB used (14%) avail 54.2GiB
|
||||
load 1.46 5.59 7.96 cpus=32
|
||||
swap 7.8GiB/62.7GiB (12%)
|
||||
GPU0 NVIDIA GeForce GTX 1060 6GB VRAM 1063/6144 MiB (17%) util 0%
|
||||
ollama (no chat model loaded)
|
||||
────────────────────────────────────────────────────────────────────────────────────────────────
|
||||
● running ● done ● interrupted ● failed ● run/DEAD · am-task show <id> | list --full
|
||||
|
||||
ID STATUS MODEL ELAPSED CODE SESSION WORKDIR / TITLE
|
||||
────────────────────────────────────────────────────────────────────────────────────────────────
|
||||
ACTIVE (none)
|
||||
|
||||
RECENT HISTORY (8)
|
||||
20260722T060509Z-3575357 done devstral:latest 13s 226 ok2meta-r1-devst ~/src/openkknd2-am-coder
|
||||
# MISSION (immutable — do not renegotiate) # Mission (immutable) — o…
|
||||
20260722T060000Z-3348413 interrupted qwen3:8b 3m57s 226 ok2meta-r7-qwen3 ~/src/openkknd2-am-coder
|
||||
CONTINUE openkknd2 ONLY under /home/vx/src/openkknd2-am-coder (this w…
|
||||
20260722T055909Z-3346665 done deepseek-coder:6.7b 29s 226 ok2meta-r6-deeps ~/src/openkknd2-am-coder
|
||||
|
|
@ -0,0 +1,24 @@
|
|||
AGENT_WORKDIR=/home/vx/src/openkknd2-am-coder
|
||||
logs: /home/vx/src/openkknd2-am-coder/AGENT_LOG.md /home/vx/src/openkknd2-am-coder/STATUS.md /home/vx/src/openkknd2-am-coder/TASK.md
|
||||
detached pid=3578155 log=/tmp/agent-coder-detach-20260722T060748Z.log
|
||||
control: am-task list | am-task stop latest | am-task resume latest
|
||||
am-task overview · host resources: OK
|
||||
────────────────────────────────────────────────────────────────────────────────────────────────
|
||||
RAM 8.6GiB/62.7GiB used (14%) avail 54.1GiB
|
||||
load 1.39 5.18 7.75 cpus=32
|
||||
swap 7.8GiB/62.7GiB (12%)
|
||||
GPU0 NVIDIA GeForce GTX 1060 6GB VRAM 1063/6144 MiB (17%) util 0%
|
||||
ollama (no chat model loaded)
|
||||
────────────────────────────────────────────────────────────────────────────────────────────────
|
||||
● running ● done ● interrupted ● failed ● run/DEAD · am-task show <id> | list --full
|
||||
|
||||
ID STATUS MODEL ELAPSED CODE SESSION WORKDIR / TITLE
|
||||
────────────────────────────────────────────────────────────────────────────────────────────────
|
||||
ACTIVE (none)
|
||||
|
||||
RECENT HISTORY (8)
|
||||
20260722T060720Z-3577414 done devstral:latest 14s 226 ok2meta-r1-devst ~/src/openkknd2-am-coder
|
||||
# MISSION (immutable — do not renegotiate) # Mission (immutable) — o…
|
||||
20260722T060509Z-3575357 done devstral:latest 13s 226 ok2meta-r1-devst ~/src/openkknd2-am-coder
|
||||
# MISSION (immutable — do not renegotiate) # Mission (immutable) — o…
|
||||
20260722T060000Z-3348413 interrupted qwen3:8b 3m57s 226 ok2meta-r7-qwen3 ~/src/openkknd2-am-coder
|
||||
|
|
@ -0,0 +1,24 @@
|
|||
AGENT_WORKDIR=/home/vx/src/openkknd2-am-coder
|
||||
logs: /home/vx/src/openkknd2-am-coder/AGENT_LOG.md /home/vx/src/openkknd2-am-coder/STATUS.md /home/vx/src/openkknd2-am-coder/TASK.md
|
||||
detached pid=3579768 log=/tmp/agent-coder-detach-20260722T060925Z.log
|
||||
control: am-task list | am-task stop latest | am-task resume latest
|
||||
am-task overview · host resources: OK
|
||||
────────────────────────────────────────────────────────────────────────────────────────────────
|
||||
RAM 8.7GiB/62.7GiB used (14%) avail 54.0GiB
|
||||
load 2.27 4.51 7.25 cpus=32
|
||||
swap 7.8GiB/62.7GiB (12%)
|
||||
GPU0 NVIDIA GeForce GTX 1060 6GB VRAM 1063/6144 MiB (17%) util 0%
|
||||
ollama (no chat model loaded)
|
||||
────────────────────────────────────────────────────────────────────────────────────────────────
|
||||
● running ● done ● interrupted ● failed ● run/DEAD · am-task show <id> | list --full
|
||||
|
||||
ID STATUS MODEL ELAPSED CODE SESSION WORKDIR / TITLE
|
||||
────────────────────────────────────────────────────────────────────────────────────────────────
|
||||
ACTIVE (none)
|
||||
|
||||
RECENT HISTORY (8)
|
||||
20260722T060750Z-3578279 interrupted devstral:latest 1m20s 226 ok2meta-r2-devst ~/src/openkknd2-am-coder
|
||||
# MISSION (immutable — do not renegotiate) # Mission (immutable) — o…
|
||||
20260722T060720Z-3577414 done devstral:latest 14s 226 ok2meta-r1-devst ~/src/openkknd2-am-coder
|
||||
# MISSION (immutable — do not renegotiate) # Mission (immutable) — o…
|
||||
20260722T060509Z-3575357 done devstral:latest 13s 226 ok2meta-r1-devst ~/src/openkknd2-am-coder
|
||||
|
|
@ -0,0 +1,24 @@
|
|||
AGENT_WORKDIR=/home/vx/src/openkknd2-am-coder
|
||||
logs: /home/vx/src/openkknd2-am-coder/AGENT_LOG.md /home/vx/src/openkknd2-am-coder/STATUS.md /home/vx/src/openkknd2-am-coder/TASK.md
|
||||
detached pid=3580679 log=/tmp/agent-coder-detach-20260722T061002Z.log
|
||||
control: am-task list | am-task stop latest | am-task resume latest
|
||||
am-task overview · host resources: OK
|
||||
────────────────────────────────────────────────────────────────────────────────────────────────
|
||||
RAM 8.7GiB/62.7GiB used (14%) avail 54.0GiB
|
||||
load 1.71 4.12 7.02 cpus=32
|
||||
swap 7.8GiB/62.7GiB (12%)
|
||||
GPU0 NVIDIA GeForce GTX 1060 6GB VRAM 1063/6144 MiB (17%) util 0%
|
||||
ollama (no chat model loaded)
|
||||
────────────────────────────────────────────────────────────────────────────────────────────────
|
||||
● running ● done ● interrupted ● failed ● run/DEAD · am-task show <id> | list --full
|
||||
|
||||
ID STATUS MODEL ELAPSED CODE SESSION WORKDIR / TITLE
|
||||
────────────────────────────────────────────────────────────────────────────────────────────────
|
||||
ACTIVE (none)
|
||||
|
||||
RECENT HISTORY (8)
|
||||
20260722T060928Z-3579895 interrupted devstral:latest 8s 226 ok2meta-r1-devst ~/src/openkknd2-am-coder
|
||||
# MISSION (immutable — do not renegotiate) # Mission (immutable) — o…
|
||||
20260722T060750Z-3578279 interrupted devstral:latest 1m20s 226 ok2meta-r2-devst ~/src/openkknd2-am-coder
|
||||
# MISSION (immutable — do not renegotiate) # Mission (immutable) — o…
|
||||
20260722T060720Z-3577414 done devstral:latest 14s 226 ok2meta-r1-devst ~/src/openkknd2-am-coder
|
||||
|
|
@ -0,0 +1,24 @@
|
|||
AGENT_WORKDIR=/home/vx/src/openkknd2-am-coder
|
||||
logs: /home/vx/src/openkknd2-am-coder/AGENT_LOG.md /home/vx/src/openkknd2-am-coder/STATUS.md /home/vx/src/openkknd2-am-coder/TASK.md
|
||||
detached pid=3581522 log=/tmp/agent-coder-detach-20260722T061032Z.log
|
||||
control: am-task list | am-task stop latest | am-task resume latest
|
||||
am-task overview · host resources: OK
|
||||
────────────────────────────────────────────────────────────────────────────────────────────────
|
||||
RAM 8.7GiB/62.7GiB used (14%) avail 54.0GiB
|
||||
load 1.62 3.87 6.84 cpus=32
|
||||
swap 7.8GiB/62.7GiB (12%)
|
||||
GPU0 NVIDIA GeForce GTX 1060 6GB VRAM 1063/6144 MiB (17%) util 0%
|
||||
ollama (no chat model loaded)
|
||||
────────────────────────────────────────────────────────────────────────────────────────────────
|
||||
● running ● done ● interrupted ● failed ● run/DEAD · am-task show <id> | list --full
|
||||
|
||||
ID STATUS MODEL ELAPSED CODE SESSION WORKDIR / TITLE
|
||||
────────────────────────────────────────────────────────────────────────────────────────────────
|
||||
ACTIVE (none)
|
||||
|
||||
RECENT HISTORY (8)
|
||||
20260722T061005Z-3580802 done devstral:latest 13s 226 ok2meta-r1-devst ~/src/openkknd2-am-coder
|
||||
# MISSION (immutable — do not renegotiate) # Mission (immutable) — o…
|
||||
20260722T060928Z-3579895 interrupted devstral:latest 8s 226 ok2meta-r1-devst ~/src/openkknd2-am-coder
|
||||
# MISSION (immutable — do not renegotiate) # Mission (immutable) — o…
|
||||
20260722T060750Z-3578279 interrupted devstral:latest 1m20s 226 ok2meta-r2-devst ~/src/openkknd2-am-coder
|
||||
24
openkknd2-am-coder/.am-meta/launch-20260722T061559Zcoder.log
Normal file
24
openkknd2-am-coder/.am-meta/launch-20260722T061559Zcoder.log
Normal file
|
|
@ -0,0 +1,24 @@
|
|||
AGENT_WORKDIR=/home/vx/src/openkknd2-am-coder
|
||||
logs: /home/vx/src/openkknd2-am-coder/AGENT_LOG.md /home/vx/src/openkknd2-am-coder/STATUS.md /home/vx/src/openkknd2-am-coder/TASK.md
|
||||
detached pid=3590824 log=/tmp/agent-coder-detach-20260722T061603Z.log
|
||||
control: am-task list | am-task stop latest | am-task resume latest
|
||||
am-task overview · host resources: OK
|
||||
────────────────────────────────────────────────────────────────────────────────────────────────
|
||||
RAM 8.9GiB/62.7GiB used (14%) avail 53.8GiB
|
||||
load 10.51 8.21 7.68 cpus=32
|
||||
swap 7.8GiB/62.7GiB (12%)
|
||||
GPU0 NVIDIA GeForce GTX 1060 6GB VRAM 1063/6144 MiB (17%) util 0%
|
||||
ollama (no chat model loaded)
|
||||
────────────────────────────────────────────────────────────────────────────────────────────────
|
||||
● running ● done ● interrupted ● failed ● run/DEAD · am-task show <id> | list --full
|
||||
|
||||
ID STATUS MODEL ELAPSED CODE SESSION WORKDIR / TITLE
|
||||
────────────────────────────────────────────────────────────────────────────────────────────────
|
||||
ACTIVE (none)
|
||||
|
||||
RECENT HISTORY (8)
|
||||
20260722T061035Z-3581648 done devstral:latest 5m10s 226 ok2meta-r2-devst ~/src/openkknd2-am-coder
|
||||
# MISSION (immutable — do not renegotiate) # Mission (immutable) — o…
|
||||
20260722T061005Z-3580802 done devstral:latest 13s 226 ok2meta-r1-devst ~/src/openkknd2-am-coder
|
||||
# MISSION (immutable — do not renegotiate) # Mission (immutable) — o…
|
||||
20260722T060928Z-3579895 interrupted devstral:latest 8s 226 ok2meta-r1-devst ~/src/openkknd2-am-coder
|
||||
24
openkknd2-am-coder/.am-meta/launch-20260722T062150Zcoder.log
Normal file
24
openkknd2-am-coder/.am-meta/launch-20260722T062150Zcoder.log
Normal file
|
|
@ -0,0 +1,24 @@
|
|||
AGENT_WORKDIR=/home/vx/src/openkknd2-am-coder
|
||||
logs: /home/vx/src/openkknd2-am-coder/AGENT_LOG.md /home/vx/src/openkknd2-am-coder/STATUS.md /home/vx/src/openkknd2-am-coder/TASK.md
|
||||
detached pid=424118 log=/tmp/agent-coder-detach-20260722T062153Z.log
|
||||
control: am-task list | am-task stop latest | am-task resume latest
|
||||
am-task overview · host resources: WARN
|
||||
────────────────────────────────────────────────────────────────────────────────────────────────
|
||||
RAM 10.0GiB/62.7GiB used (16%) avail 52.7GiB
|
||||
load 5.82 6.64 7.07 cpus=32
|
||||
swap 7.8GiB/62.7GiB (12%)
|
||||
GPU0 NVIDIA GeForce GTX 1060 6GB VRAM 5069/6144 MiB (83%) util 0% high
|
||||
ollama qwen3-coder:latest 06c1097efce0 20 GB 80%/20% CPU/GPU 32768 4 minutes fro
|
||||
────────────────────────────────────────────────────────────────────────────────────────────────
|
||||
● running ● done ● interrupted ● failed ● run/DEAD · am-task show <id> | list --full
|
||||
|
||||
ID STATUS MODEL ELAPSED CODE SESSION WORKDIR / TITLE
|
||||
────────────────────────────────────────────────────────────────────────────────────────────────
|
||||
ACTIVE (none)
|
||||
|
||||
RECENT HISTORY (8)
|
||||
20260722T061605Z-3590955 done qwen3-coder:latest 5m40s 270 ok2meta-r3-coder ~/src/openkknd2-am-coder
|
||||
# MISSION (immutable — do not renegotiate) # Mission (immutable) — o…
|
||||
20260722T061035Z-3581648 done devstral:latest 5m10s 270 ok2meta-r2-devst ~/src/openkknd2-am-coder
|
||||
# MISSION (immutable — do not renegotiate) # Mission (immutable) — o…
|
||||
20260722T061005Z-3580802 done devstral:latest 13s 270 ok2meta-r1-devst ~/src/openkknd2-am-coder
|
||||
24
openkknd2-am-coder/.am-meta/launch-20260722T062640Zcoder.log
Normal file
24
openkknd2-am-coder/.am-meta/launch-20260722T062640Zcoder.log
Normal file
|
|
@ -0,0 +1,24 @@
|
|||
AGENT_WORKDIR=/home/vx/src/openkknd2-am-coder
|
||||
logs: /home/vx/src/openkknd2-am-coder/AGENT_LOG.md /home/vx/src/openkknd2-am-coder/STATUS.md /home/vx/src/openkknd2-am-coder/TASK.md
|
||||
detached pid=1588119 log=/tmp/agent-coder-detach-20260722T062643Z.log
|
||||
control: am-task list | am-task stop latest | am-task resume latest
|
||||
am-task overview · host resources: WARN
|
||||
────────────────────────────────────────────────────────────────────────────────────────────────
|
||||
RAM 9.9GiB/62.7GiB used (16%) avail 52.8GiB
|
||||
load 7.55 7.23 7.16 cpus=32
|
||||
swap 7.8GiB/62.7GiB (12%)
|
||||
GPU0 NVIDIA GeForce GTX 1060 6GB VRAM 5069/6144 MiB (83%) util 0% high
|
||||
ollama qwen3-coder:latest 06c1097efce0 20 GB 80%/20% CPU/GPU 32768 4 minutes fro
|
||||
────────────────────────────────────────────────────────────────────────────────────────────────
|
||||
● running ● done ● interrupted ● failed ● run/DEAD · am-task show <id> | list --full
|
||||
|
||||
ID STATUS MODEL ELAPSED CODE SESSION WORKDIR / TITLE
|
||||
────────────────────────────────────────────────────────────────────────────────────────────────
|
||||
ACTIVE (none)
|
||||
|
||||
RECENT HISTORY (8)
|
||||
20260722T062156Z-424245 done qwen3-coder:latest 4m40s 270 ok2meta-r4-coder ~/src/openkknd2-am-coder
|
||||
# MISSION (immutable — do not renegotiate) # Mission (immutable) — o…
|
||||
20260722T061605Z-3590955 done qwen3-coder:latest 5m40s 270 ok2meta-r3-coder ~/src/openkknd2-am-coder
|
||||
# MISSION (immutable — do not renegotiate) # Mission (immutable) — o…
|
||||
20260722T061035Z-3581648 done devstral:latest 5m10s 270 ok2meta-r2-devst ~/src/openkknd2-am-coder
|
||||
|
|
@ -0,0 +1,24 @@
|
|||
AGENT_WORKDIR=/home/vx/src/openkknd2-am-coder
|
||||
logs: /home/vx/src/openkknd2-am-coder/AGENT_LOG.md /home/vx/src/openkknd2-am-coder/STATUS.md /home/vx/src/openkknd2-am-coder/TASK.md
|
||||
detached pid=2474402 log=/tmp/agent-coder-detach-20260722T063054Z.log
|
||||
control: am-task list | am-task stop latest | am-task resume latest
|
||||
am-task overview · host resources: OK
|
||||
────────────────────────────────────────────────────────────────────────────────────────────────
|
||||
RAM 9.0GiB/62.7GiB used (14%) avail 53.7GiB
|
||||
load 5.73 6.57 6.86 cpus=32
|
||||
swap 7.8GiB/62.7GiB (12%)
|
||||
GPU0 NVIDIA GeForce GTX 1060 6GB VRAM 1063/6144 MiB (17%) util 0%
|
||||
ollama (no chat model loaded)
|
||||
────────────────────────────────────────────────────────────────────────────────────────────────
|
||||
● running ● done ● interrupted ● failed ● run/DEAD · am-task show <id> | list --full
|
||||
|
||||
ID STATUS MODEL ELAPSED CODE SESSION WORKDIR / TITLE
|
||||
────────────────────────────────────────────────────────────────────────────────────────────────
|
||||
ACTIVE (none)
|
||||
|
||||
RECENT HISTORY (8)
|
||||
20260722T062646Z-1588248 done qwen3-coder:latest 3m50s 270 ok2meta-r5-coder ~/src/openkknd2-am-coder
|
||||
# MISSION (immutable — do not renegotiate) # Mission (immutable) — o…
|
||||
20260722T062156Z-424245 done qwen3-coder:latest 4m40s 270 ok2meta-r4-coder ~/src/openkknd2-am-coder
|
||||
# MISSION (immutable — do not renegotiate) # Mission (immutable) — o…
|
||||
20260722T061605Z-3590955 done qwen3-coder:latest 5m40s 270 ok2meta-r3-coder ~/src/openkknd2-am-coder
|
||||
150
openkknd2-am-coder/.am-meta/meta.out
Normal file
150
openkknd2-am-coder/.am-meta/meta.out
Normal file
|
|
@ -0,0 +1,150 @@
|
|||
|
||||
## meta-start 2026-07-22T05:21:24Z
|
||||
- workdir: `/home/vx/src/openkknd2-am-coder`
|
||||
- models: `--devstral --coder --qwen314 --qwen14 --deepseek --qwen38`
|
||||
- max_rounds: 16 max_turns/round: 8 min_line_delta: 30
|
||||
<stdin>:25: DeprecationWarning: datetime.datetime.utcnow() is deprecated and scheduled for removal in a future version. Use timezone-aware objects to represent datetimes in UTC: datetime.datetime.now(datetime.UTC).
|
||||
/home/vx/src/openkknd2-am-coder/.am-meta/state.json
|
||||
<stdin>:25: DeprecationWarning: datetime.datetime.utcnow() is deprecated and scheduled for removal in a future version. Use timezone-aware objects to represent datetimes in UTC: datetime.datetime.now(datetime.UTC).
|
||||
/home/vx/src/openkknd2-am-coder/.am-meta/state.json
|
||||
|
||||
### round 1 / 16 · `--devstral` · before `9 183 0`
|
||||
- **2026-07-22T05:21:34Z** · after `9 183 0`
|
||||
- **2026-07-22T05:21:34Z** · progress · NO with `--devstral` (streak_fail=1) — next model
|
||||
<stdin>:25: DeprecationWarning: datetime.datetime.utcnow() is deprecated and scheduled for removal in a future version. Use timezone-aware objects to represent datetimes in UTC: datetime.datetime.now(datetime.UTC).
|
||||
/home/vx/src/openkknd2-am-coder/.am-meta/state.json
|
||||
<stdin>:25: DeprecationWarning: datetime.datetime.utcnow() is deprecated and scheduled for removal in a future version. Use timezone-aware objects to represent datetimes in UTC: datetime.datetime.now(datetime.UTC).
|
||||
/home/vx/src/openkknd2-am-coder/.am-meta/state.json
|
||||
|
||||
### round 2 / 16 · `--coder` · before `9 183 0`
|
||||
|
||||
## meta-start 2026-07-22T05:22:25Z
|
||||
- workdir: `/home/vx/src/openkknd2-am-coder`
|
||||
- models: `--devstral --coder --qwen314 --qwen14 --deepseek --qwen38`
|
||||
- max_rounds: 16 max_turns/round: 8 min_line_delta: 30
|
||||
/home/vx/src/openkknd2-am-coder/.am-meta/state.json
|
||||
/home/vx/src/openkknd2-am-coder/.am-meta/state.json
|
||||
|
||||
### round 1 / 16 · `--devstral` · before `9 183 0`
|
||||
- **2026-07-22T05:28:56Z** · after `9 183 0`
|
||||
- **2026-07-22T05:28:56Z** · progress · NO with `--devstral` (streak_fail=1) — next model
|
||||
/home/vx/src/openkknd2-am-coder/.am-meta/state.json
|
||||
/home/vx/src/openkknd2-am-coder/.am-meta/state.json
|
||||
|
||||
### round 2 / 16 · `--coder` · before `9 183 0`
|
||||
- **2026-07-22T05:34:48Z** · after `9 183 0`
|
||||
- **2026-07-22T05:34:48Z** · progress · NO with `--coder` (streak_fail=2) — next model
|
||||
/home/vx/src/openkknd2-am-coder/.am-meta/state.json
|
||||
/home/vx/src/openkknd2-am-coder/.am-meta/state.json
|
||||
|
||||
### round 3 / 16 · `--qwen314` · before `9 183 0`
|
||||
- **2026-07-22T05:50:19Z** · after `10 208 2`
|
||||
- **2026-07-22T05:50:19Z** · progress · YES with `--qwen314` — keep same model
|
||||
/home/vx/src/openkknd2-am-coder/.am-meta/state.json
|
||||
/home/vx/src/openkknd2-am-coder/.am-meta/state.json
|
||||
|
||||
### round 4 / 16 · `--qwen314` · before `10 208 2`
|
||||
- **2026-07-22T05:54:31Z** · after `10 208 2`
|
||||
- **2026-07-22T05:54:31Z** · progress · NO with `--qwen314` (streak_fail=1) — next model
|
||||
/home/vx/src/openkknd2-am-coder/.am-meta/state.json
|
||||
/home/vx/src/openkknd2-am-coder/.am-meta/state.json
|
||||
|
||||
### round 5 / 16 · `--qwen14` · before `10 208 2`
|
||||
- **2026-07-22T05:59:02Z** · after `10 208 2`
|
||||
- **2026-07-22T05:59:02Z** · progress · NO with `--qwen14` (streak_fail=2) — next model
|
||||
/home/vx/src/openkknd2-am-coder/.am-meta/state.json
|
||||
/home/vx/src/openkknd2-am-coder/.am-meta/state.json
|
||||
|
||||
### round 6 / 16 · `--deepseek` · before `10 208 2`
|
||||
- **2026-07-22T05:59:53Z** · after `10 208 2`
|
||||
- **2026-07-22T05:59:53Z** · progress · NO with `--deepseek` (streak_fail=3) — next model
|
||||
/home/vx/src/openkknd2-am-coder/.am-meta/state.json
|
||||
/home/vx/src/openkknd2-am-coder/.am-meta/state.json
|
||||
|
||||
### round 7 / 16 · `--qwen38` · before `10 208 2`
|
||||
|
||||
## meta-start 2026-07-22T06:05:01Z
|
||||
- workdir: `/home/vx/src/openkknd2-am-coder`
|
||||
- models: `--devstral --coder --qwen314 --qwen14 --deepseek --qwen38` (first = standard)
|
||||
- stalls_before_switch: 2 accept_needs: 1
|
||||
- max_rounds: 16 max_turns/round: 8 min_line_delta: 30
|
||||
- mission: /home/vx/src/llm-configs/prompts/openkknd2-mission.md
|
||||
/home/vx/src/openkknd2-am-coder/.am-meta/state.json
|
||||
/home/vx/src/openkknd2-am-coder/.am-meta/state.json
|
||||
|
||||
### round 1 / 16 · `--devstral` · before `11 228 2` · streak_fail=0
|
||||
- **2026-07-22T06:05:32Z** · after `11 228 2`
|
||||
- **2026-07-22T06:05:32Z** · needs · harvested NEED_INSTRUCTIONS → additive.md (mission unchanged)
|
||||
- **2026-07-22T06:05:32Z** · DONE detected after round 1
|
||||
/home/vx/src/openkknd2-am-coder/.am-meta/state.json
|
||||
|
||||
## meta-start 2026-07-22T06:07:13Z
|
||||
- workdir: `/home/vx/src/openkknd2-am-coder`
|
||||
- models: `--devstral --coder --qwen314 --qwen14 --deepseek --qwen38` (first = standard)
|
||||
- stalls_before_switch: 2 accept_needs: 1
|
||||
- max_rounds: 16 max_turns/round: 8 min_line_delta: 30
|
||||
- mission: /home/vx/src/llm-configs/prompts/openkknd2-mission.md
|
||||
/home/vx/src/openkknd2-am-coder/.am-meta/state.json
|
||||
/home/vx/src/openkknd2-am-coder/.am-meta/state.json
|
||||
|
||||
### round 1 / 16 · `--devstral` · before `11 228 2` · streak_fail=0
|
||||
- **2026-07-22T06:07:43Z** · after `11 228 2`
|
||||
- **2026-07-22T06:07:43Z** · progress · NO with `--devstral` (streak_fail=1 < 2) — **retry same model**
|
||||
/home/vx/src/openkknd2-am-coder/.am-meta/state.json
|
||||
/home/vx/src/openkknd2-am-coder/.am-meta/state.json
|
||||
|
||||
### round 2 / 16 · `--devstral` · before `11 228 2` · streak_fail=1
|
||||
|
||||
## meta-start 2026-07-22T06:09:21Z
|
||||
- workdir: `/home/vx/src/openkknd2-am-coder`
|
||||
- models: `--devstral --coder --qwen314 --qwen14 --deepseek --qwen38` (first = standard)
|
||||
- stalls_before_switch: 2 accept_needs: 1
|
||||
- max_rounds: 16 max_turns/round: 8 min_line_delta: 30
|
||||
- mission: /home/vx/src/llm-configs/prompts/openkknd2-mission.md
|
||||
/home/vx/src/openkknd2-am-coder/.am-meta/state.json
|
||||
/home/vx/src/openkknd2-am-coder/.am-meta/state.json
|
||||
|
||||
### round 1 / 16 · `--devstral` · before `11 228 2` · streak_fail=0
|
||||
|
||||
## meta-start 2026-07-22T06:09:57Z
|
||||
- workdir: `/home/vx/src/openkknd2-am-coder`
|
||||
- models: `--devstral --coder --qwen314 --qwen14 --deepseek --qwen38` (first = standard)
|
||||
- stalls_before_switch: 2 accept_needs: 1
|
||||
- max_rounds: 16 max_turns/round: 8 min_line_delta: 30
|
||||
- mission: /home/vx/src/llm-configs/prompts/openkknd2-mission.md
|
||||
/home/vx/src/openkknd2-am-coder/.am-meta/state.json
|
||||
/home/vx/src/openkknd2-am-coder/.am-meta/state.json
|
||||
|
||||
### round 1 / 16 · `--devstral` · before `11 228 2` · streak_fail=0
|
||||
- **2026-07-22T06:10:28Z** · after `11 228 2`
|
||||
- **2026-07-22T06:10:28Z** · progress · NO with `--devstral` (streak_fail=1 < 2) — **retry same model**
|
||||
/home/vx/src/openkknd2-am-coder/.am-meta/state.json
|
||||
/home/vx/src/openkknd2-am-coder/.am-meta/state.json
|
||||
|
||||
### round 2 / 16 · `--devstral` · before `11 228 2` · streak_fail=1
|
||||
- **2026-07-22T06:15:58Z** · after `11 228 2`
|
||||
- **2026-07-22T06:15:58Z** · progress · NO with `--devstral` (streak_fail=2 ≥ 2) — **switch model**
|
||||
/home/vx/src/openkknd2-am-coder/.am-meta/state.json
|
||||
/home/vx/src/openkknd2-am-coder/.am-meta/state.json
|
||||
|
||||
### round 3 / 16 · `--coder` · before `11 228 2` · streak_fail=0
|
||||
- **2026-07-22T06:21:48Z** · after `12 273 2`
|
||||
- **2026-07-22T06:21:48Z** · progress · YES with `--coder` — keep same model; reset stall counter
|
||||
/home/vx/src/openkknd2-am-coder/.am-meta/state.json
|
||||
/home/vx/src/openkknd2-am-coder/.am-meta/state.json
|
||||
|
||||
### round 4 / 16 · `--coder` · before `12 273 2` · streak_fail=0
|
||||
- **2026-07-22T06:26:39Z** · after `12 273 2`
|
||||
- **2026-07-22T06:26:39Z** · progress · NO with `--coder` (streak_fail=1 < 2) — **retry same model**
|
||||
/home/vx/src/openkknd2-am-coder/.am-meta/state.json
|
||||
/home/vx/src/openkknd2-am-coder/.am-meta/state.json
|
||||
|
||||
### round 5 / 16 · `--coder` · before `12 273 2` · streak_fail=1
|
||||
- **2026-07-22T06:30:49Z** · after `12 273 2`
|
||||
- **2026-07-22T06:30:49Z** · progress · NO with `--coder` (streak_fail=2 ≥ 2) — **switch model**
|
||||
/home/vx/src/openkknd2-am-coder/.am-meta/state.json
|
||||
/home/vx/src/openkknd2-am-coder/.am-meta/state.json
|
||||
|
||||
### round 6 / 16 · `--qwen314` · before `12 273 2` · streak_fail=0
|
||||
- **2026-07-22T06:46:00Z** · stall · AGENT_LOG frozen ≥900s while task active → stop child
|
||||
20260722T063056Z-2474530
|
||||
1
openkknd2-am-coder/.am-meta/meta.pid
Normal file
1
openkknd2-am-coder/.am-meta/meta.pid
Normal file
|
|
@ -0,0 +1 @@
|
|||
3580490
|
||||
19
openkknd2-am-coder/.am-meta/mission.md
Normal file
19
openkknd2-am-coder/.am-meta/mission.md
Normal file
|
|
@ -0,0 +1,19 @@
|
|||
# Mission (immutable) — openkknd2
|
||||
|
||||
Build and grow **openkknd2**: an original open-source post-apoc RTS scaffold (genre-inspired only; **not** commercial KKnD).
|
||||
|
||||
## Fixed goals
|
||||
|
||||
1. Work only under the designated workdir (`openkknd2-am-coder` / `$OPENKKND2_ROOT`).
|
||||
2. Keep `./scripts/ci-headless.sh` **GREEN** after meaningful changes.
|
||||
3. Advance the milestone ladder: map/units → buildings/economy → faction AI → playable skirmish loop → (later) cinematics.
|
||||
4. **Legal:** MIT/original only — never proprietary KKnD assets, rips, or reverse-engineered game files.
|
||||
5. Always append `AGENT_LOG.md` and keep `STATUS.md` current.
|
||||
|
||||
## Non-goals (do not replace the mission with these)
|
||||
|
||||
- Rewriting the project as a different game
|
||||
- Asking the user for permission to continue
|
||||
- Stopping after planning without code/test changes
|
||||
|
||||
This mission text is **law** for all models and all meta rounds.
|
||||
20
openkknd2-am-coder/.am-meta/state.json
Normal file
20
openkknd2-am-coder/.am-meta/state.json
Normal file
|
|
@ -0,0 +1,20 @@
|
|||
{
|
||||
"status": "running",
|
||||
"stop_reason": "recover after wrong stop",
|
||||
"updated": "2026-07-22T06:30:49Z",
|
||||
"meta_pid": 3580490,
|
||||
"workdir": "/home/vx/src/openkknd2-am-coder",
|
||||
"round": 6,
|
||||
"max_rounds": 16,
|
||||
"model_flag": "--qwen314",
|
||||
"session": "ok2meta-r6-qwen314",
|
||||
"before": "12 273 2",
|
||||
"streak_fail": 0,
|
||||
"after": "12 273 2",
|
||||
"next_model": "--qwen314",
|
||||
"last_progress": "--coder",
|
||||
"stalls_before_switch": 2,
|
||||
"accept_needs": 1,
|
||||
"winner": "--devstral",
|
||||
"switched": 1
|
||||
}
|
||||
1926
openkknd2-am-coder/AGENT_LOG.md
Normal file
1926
openkknd2-am-coder/AGENT_LOG.md
Normal file
File diff suppressed because it is too large
Load diff
8
openkknd2-am-coder/CMakeLists.txt
Normal file
8
openkknd2-am-coder/CMakeLists.txt
Normal file
|
|
@ -0,0 +1,8 @@
|
|||
cmake_minimum_required(VERSION 3.10)
|
||||
project(openkknd2 C)
|
||||
set(CMAKE_C_STANDARD 99)
|
||||
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wall -Wextra")
|
||||
add_executable(openkknd2 src/main.c src/ok_map.c src/ok_unit.c)
|
||||
target_include_directories(openkknd2 PRIVATE include)
|
||||
enable_testing()
|
||||
add_test(NAME smoke_test COMMAND openkknd2 --headless --smoke)
|
||||
21
openkknd2-am-coder/LICENSE
Normal file
21
openkknd2-am-coder/LICENSE
Normal file
|
|
@ -0,0 +1,21 @@
|
|||
MIT License
|
||||
|
||||
Copyright (c) 2026 openkknd2 contributors
|
||||
|
||||
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
of this software and associated documentation files (the "Software"), to deal
|
||||
in the Software without restriction, including without limitation the rights
|
||||
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||
copies of the Software, and to permit persons to whom the Software is
|
||||
furnished to do so, subject to the following conditions:
|
||||
|
||||
The above copyright notice and this permission notice shall be included in all
|
||||
copies or substantial portions of the Software.
|
||||
|
||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
||||
SOFTWARE.
|
||||
12
openkknd2-am-coder/README.md
Normal file
12
openkknd2-am-coder/README.md
Normal file
|
|
@ -0,0 +1,12 @@
|
|||
# openkknd2
|
||||
|
||||
An original open-source post-apocalyptic RTS game, inspired by 1990s wasteland RTS games.
|
||||
|
||||
## Status
|
||||
|
||||
This is a work in progress. See [STATUS.md](STATUS.md) for current status.
|
||||
|
||||
## Legal
|
||||
|
||||
This project uses only original work, CC0/CC-BY (attributed), MIT/BSD/Zlib code with compatible license policy.
|
||||
No KKnD / KKnD2 / Xtreme game files, ISOs, rips, sprites, music, maps, voices, or FMV are used.
|
||||
13
openkknd2-am-coder/RESUME.md
Normal file
13
openkknd2-am-coder/RESUME.md
Normal file
|
|
@ -0,0 +1,13 @@
|
|||
# Resume
|
||||
|
||||
- **task_id:** `20260722T060928Z-3579895`
|
||||
- **interrupted:** 2026-07-22T06:09:37Z
|
||||
- **reason:** user: n — todos beenden
|
||||
|
||||
## Command
|
||||
|
||||
```bash
|
||||
bash /home/vx/src/openkknd2-am-coder/.agent-coder-resume.sh
|
||||
```
|
||||
|
||||
Or: `am-task resume 20260722T060928Z-3579895`
|
||||
64
openkknd2-am-coder/STATUS.md
Normal file
64
openkknd2-am-coder/STATUS.md
Normal file
|
|
@ -0,0 +1,64 @@
|
|||
# Status
|
||||
|
||||
- **state:** RUNNING
|
||||
- **updated:** 2026-07-22T06:30:56Z
|
||||
- **host:** amanita
|
||||
- **workdir:** `/home/vx/src/openkknd2-am-coder`
|
||||
- **title:** # MISSION (immutable — do not renegotiate)
|
||||
|
||||
# Mission (immutable) — openkknd2
|
||||
|
||||
Build and grow **openkknd2**: an original open-source post-apoc RTS scaffold (genre-inspired only; **not** commercial KKnD).
|
||||
|
||||
## Fixed goals
|
||||
|
||||
1. Work only under the designated workdir (`openkknd2-am-coder` / `$OPENKKND2_ROOT`).
|
||||
2. Keep `./scripts/ci-headless.sh` **GREEN** after meaningful changes.
|
||||
3. Advance the milestone ladder: map/units → buildings/economy → faction AI → playable skirmish loop → (later) cinematics.
|
||||
4. **Legal:** MIT/original only — never proprietary KKnD assets, rips, or reverse-engineered game files.
|
||||
5. Always append `AGENT_LOG.md` and keep `STATUS.md` current.
|
||||
|
||||
## Non-goals (do not replace the mission with these)
|
||||
|
||||
- Rewriting the project as a different game
|
||||
- Asking the user for permission to continue
|
||||
- Stopping after planning without code/test changes
|
||||
|
||||
This mission text is **law** for all models and all meta rounds.
|
||||
|
||||
---
|
||||
|
||||
# This round
|
||||
|
||||
CONTINUE openkknd2 ONLY under /home/vx/src/openkknd2-am-coder (this workdir).
|
||||
|
||||
Headless smoke is GREEN (map + units). You implement the next milestones yourself.
|
||||
|
||||
This turn must produce REAL file changes (not just plans):
|
||||
1. Add building placement (HQ and/or barracks) with resource cost — new headers/sources if needed
|
||||
2. Add a simple faction AI tick (gather / build / train)
|
||||
3. Wire into `ok_world_tick` or main smoke
|
||||
4. Run `./scripts/ci-headless.sh` and keep it GREEN
|
||||
5. Append AGENT_LOG.md + update STATUS.md
|
||||
|
||||
Rules: MIT/original only; no proprietary KKnD assets. No empty turns. AUTONOMOUS_STOP only if blocked or verified done.
|
||||
Read src/ and include/ first.
|
||||
|
||||
---
|
||||
|
||||
## Protocol
|
||||
- Work thoroughly; no empty turns.
|
||||
- Emit ## AUTONOMOUS_STOP only when DONE or truly blocked.
|
||||
- If missing *actionable* rules would unlock autonomy (not a rewrite of the mission),
|
||||
append exactly one block:
|
||||
|
||||
## NEED_INSTRUCTIONS
|
||||
why: <one line>
|
||||
need:
|
||||
- <concrete rule or checklist item the next rounds should remember>
|
||||
|
||||
Do not use NEED_INSTRUCTIONS to change the mission goal.
|
||||
|
||||
## Last note
|
||||
|
||||
Session started.
|
||||
72
openkknd2-am-coder/TASK.md
Normal file
72
openkknd2-am-coder/TASK.md
Normal file
|
|
@ -0,0 +1,72 @@
|
|||
# Task
|
||||
|
||||
- **started:** 2026-07-22T06:30:56Z
|
||||
- **host:** amanita
|
||||
- **workdir:** `/home/vx/src/openkknd2-am-coder`
|
||||
|
||||
## Brief
|
||||
|
||||
# MISSION (immutable — do not renegotiate)
|
||||
|
||||
# Mission (immutable) — openkknd2
|
||||
|
||||
Build and grow **openkknd2**: an original open-source post-apoc RTS scaffold (genre-inspired only; **not** commercial KKnD).
|
||||
|
||||
## Fixed goals
|
||||
|
||||
1. Work only under the designated workdir (`openkknd2-am-coder` / `$OPENKKND2_ROOT`).
|
||||
2. Keep `./scripts/ci-headless.sh` **GREEN** after meaningful changes.
|
||||
3. Advance the milestone ladder: map/units → buildings/economy → faction AI → playable skirmish loop → (later) cinematics.
|
||||
4. **Legal:** MIT/original only — never proprietary KKnD assets, rips, or reverse-engineered game files.
|
||||
5. Always append `AGENT_LOG.md` and keep `STATUS.md` current.
|
||||
|
||||
## Non-goals (do not replace the mission with these)
|
||||
|
||||
- Rewriting the project as a different game
|
||||
- Asking the user for permission to continue
|
||||
- Stopping after planning without code/test changes
|
||||
|
||||
This mission text is **law** for all models and all meta rounds.
|
||||
|
||||
---
|
||||
|
||||
# This round
|
||||
|
||||
CONTINUE openkknd2 ONLY under /home/vx/src/openkknd2-am-coder (this workdir).
|
||||
|
||||
Headless smoke is GREEN (map + units). You implement the next milestones yourself.
|
||||
|
||||
This turn must produce REAL file changes (not just plans):
|
||||
1. Add building placement (HQ and/or barracks) with resource cost — new headers/sources if needed
|
||||
2. Add a simple faction AI tick (gather / build / train)
|
||||
3. Wire into `ok_world_tick` or main smoke
|
||||
4. Run `./scripts/ci-headless.sh` and keep it GREEN
|
||||
5. Append AGENT_LOG.md + update STATUS.md
|
||||
|
||||
Rules: MIT/original only; no proprietary KKnD assets. No empty turns. AUTONOMOUS_STOP only if blocked or verified done.
|
||||
Read src/ and include/ first.
|
||||
|
||||
---
|
||||
|
||||
## Protocol
|
||||
- Work thoroughly; no empty turns.
|
||||
- Emit ## AUTONOMOUS_STOP only when DONE or truly blocked.
|
||||
- If missing *actionable* rules would unlock autonomy (not a rewrite of the mission),
|
||||
append exactly one block:
|
||||
|
||||
## NEED_INSTRUCTIONS
|
||||
why: <one line>
|
||||
need:
|
||||
- <concrete rule or checklist item the next rounds should remember>
|
||||
|
||||
Do not use NEED_INSTRUCTIONS to change the mission goal.
|
||||
|
||||
## Instruction refs
|
||||
|
||||
(filled by launcher if any)
|
||||
|
||||
## Notes
|
||||
|
||||
- Always append to `AGENT_LOG.md` after each chunk.
|
||||
- Keep `STATUS.md` current.
|
||||
- On finish or hard stop, set STATUS and log `AUTONOMOUS_STOP` / DONE.
|
||||
10
openkknd2-am-coder/THIRD_PARTY.md
Normal file
10
openkknd2-am-coder/THIRD_PARTY.md
Normal file
|
|
@ -0,0 +1,10 @@
|
|||
# Third-Party Dependencies
|
||||
|
||||
This project uses only original work, CC0/CC-BY (attributed), MIT/BSD/Zlib code with compatible license policy.
|
||||
No KKnD / KKnD2 / Xtreme game files, ISOs, rips, sprites, music, maps, voices, or FMV are used.
|
||||
|
||||
## Tools Used
|
||||
|
||||
- CMake for build system
|
||||
- SDL2 for windowing and input
|
||||
- GCC/Clang for compilation
|
||||
11
openkknd2-am-coder/docs/BUILD.md
Normal file
11
openkknd2-am-coder/docs/BUILD.md
Normal file
|
|
@ -0,0 +1,11 @@
|
|||
# Build openkknd2
|
||||
|
||||
```bash
|
||||
cd ~/src/openkknd2-am-coder
|
||||
./scripts/ci-headless.sh
|
||||
# or:
|
||||
cmake -S . -B build && cmake --build build
|
||||
./build/openkknd2 --headless --smoke
|
||||
```
|
||||
|
||||
Deps: CMake, C compiler. SDL2 optional (not required for headless sim).
|
||||
8
openkknd2-am-coder/docs/LORE.md
Normal file
8
openkknd2-am-coder/docs/LORE.md
Normal file
|
|
@ -0,0 +1,8 @@
|
|||
# Lore (original)
|
||||
|
||||
Working names (change freely; **do not** use commercial KKnD faction trademarks as official names):
|
||||
|
||||
- Faction A: **Ashcoat Compact** (scrap tech, discipline)
|
||||
- Faction B: **Bloomed** (mutated ecology, swarm tactics)
|
||||
|
||||
Tone: dry wasteland humor, not a copy of any commercial script.
|
||||
25
openkknd2-am-coder/include/ok_buildings.h
Normal file
25
openkknd2-am-coder/include/ok_buildings.h
Normal file
|
|
@ -0,0 +1,25 @@
|
|||
#ifndef OK_BUILDINGS_H
|
||||
#define OK_BUILDINGS_H
|
||||
#include "ok_types.h"
|
||||
|
||||
// Building types
|
||||
enum OkBuildingKind {
|
||||
OK_BUILDING_HQ = 0,
|
||||
OK_BUILDING_BARRACKS = 1,
|
||||
OK_BUILDING_MAX
|
||||
};
|
||||
|
||||
// Building structure
|
||||
typedef struct {
|
||||
int x, y;
|
||||
OkBuildingKind kind;
|
||||
OkFaction faction;
|
||||
int resource_cost;
|
||||
bool built;
|
||||
} OkBuilding;
|
||||
|
||||
// Function declarations
|
||||
void ok_buildings_init(OkWorld *w);
|
||||
void ok_buildings_place(OkWorld *w, int x, int y, OkBuildingKind kind, OkFaction faction);
|
||||
void ok_buildings_update(OkWorld *w);
|
||||
#endif // OK_BUILDINGS_H
|
||||
6
openkknd2-am-coder/include/ok_map.h
Normal file
6
openkknd2-am-coder/include/ok_map.h
Normal file
|
|
@ -0,0 +1,6 @@
|
|||
#ifndef OK_MAP_H
|
||||
#define OK_MAP_H
|
||||
#include "ok_types.h"
|
||||
void ok_map_init(OkWorld *w, uint32_t seed);
|
||||
bool ok_map_walkable(const OkWorld *w, int x, int y);
|
||||
#endif
|
||||
31
openkknd2-am-coder/include/ok_types.h
Normal file
31
openkknd2-am-coder/include/ok_types.h
Normal file
|
|
@ -0,0 +1,31 @@
|
|||
#ifndef OK_TYPES_H
|
||||
#define OK_TYPES_H
|
||||
#include <stdint.h>
|
||||
#include <stdbool.h>
|
||||
|
||||
#define OK_WORLD_W 32
|
||||
#define OK_WORLD_H 24
|
||||
#define OK_MAX_UNITS 64
|
||||
|
||||
typedef enum { OK_TILE_EMPTY = 0, OK_TILE_BLOCK = 1, OK_TILE_RES = 2 } OkTile;
|
||||
typedef enum { OK_FACTION_A = 0, OK_FACTION_B = 1 } OkFaction;
|
||||
typedef enum { OK_UNIT_SCOUT = 0, OK_UNIT_WORKER = 1 } OkUnitKind;
|
||||
|
||||
typedef struct {
|
||||
int x, y;
|
||||
OkFaction faction;
|
||||
OkUnitKind kind;
|
||||
int hp;
|
||||
bool alive;
|
||||
} OkUnit;
|
||||
|
||||
typedef struct {
|
||||
OkTile tiles[OK_WORLD_H][OK_WORLD_W];
|
||||
OkUnit units[OK_MAX_UNITS];
|
||||
int unit_count;
|
||||
int tick;
|
||||
int resources_a;
|
||||
int resources_b;
|
||||
} OkWorld;
|
||||
|
||||
#endif
|
||||
8
openkknd2-am-coder/include/ok_unit.h
Normal file
8
openkknd2-am-coder/include/ok_unit.h
Normal file
|
|
@ -0,0 +1,8 @@
|
|||
#ifndef OK_UNIT_H
|
||||
#define OK_UNIT_H
|
||||
#include "ok_types.h"
|
||||
int ok_unit_spawn(OkWorld *w, OkFaction f, OkUnitKind k, int x, int y);
|
||||
void ok_unit_step_toward(OkWorld *w, int uid, int tx, int ty);
|
||||
void ok_world_tick(OkWorld *w);
|
||||
int ok_world_alive_count(const OkWorld *w, OkFaction f);
|
||||
#endif
|
||||
16
openkknd2-am-coder/launch-q36.out
Normal file
16
openkknd2-am-coder/launch-q36.out
Normal file
|
|
@ -0,0 +1,16 @@
|
|||
instruction-ref → /home/vx/src/llm-configs/instructions/18-openkknd2-autonomous-rebuild.md
|
||||
instruction-ref → /home/vx/src/llm-configs/instructions/20-autonomous-until-blocked.md
|
||||
instruction-ref → /home/vx/src/llm-configs/instructions/21-always-agent-logs.md
|
||||
AGENT_WORKDIR=/home/vx/src/openkknd2-am-coder
|
||||
logs: /home/vx/src/openkknd2-am-coder/AGENT_LOG.md /home/vx/src/openkknd2-am-coder/STATUS.md /home/vx/src/openkknd2-am-coder/TASK.md
|
||||
detached pid=1582837 log=/tmp/agent-coder-detach-20260722T045311Z.log
|
||||
control: am-task list | am-task stop latest | am-task resume latest
|
||||
=== active (/home/vx/.am-agent-tasks/active) ===
|
||||
(none)
|
||||
|
||||
=== recent history (5) ===
|
||||
20260722T044928Z-1206819 interrupted CONTINUE openkknd2 in /home/vx/src/openkknd2-am-co
|
||||
20260722T044107Z-3833063 done OPENKKND2 autonomy demo. Work ONLY under /home/vx/
|
||||
20260722T043957Z-3831609 interrupted resume:w
|
||||
20260722T043953Z-3831497 resumed w
|
||||
20260722T043858Z-3830593 resumed heartbeat worker
|
||||
16
openkknd2-am-coder/launch-w2.out
Normal file
16
openkknd2-am-coder/launch-w2.out
Normal file
|
|
@ -0,0 +1,16 @@
|
|||
instruction-ref → /home/vx/src/llm-configs/instructions/18-openkknd2-autonomous-rebuild.md
|
||||
instruction-ref → /home/vx/src/llm-configs/instructions/20-autonomous-until-blocked.md
|
||||
instruction-ref → /home/vx/src/llm-configs/instructions/21-always-agent-logs.md
|
||||
AGENT_WORKDIR=/home/vx/src/openkknd2-am-coder
|
||||
logs: /home/vx/src/openkknd2-am-coder/AGENT_LOG.md /home/vx/src/openkknd2-am-coder/STATUS.md /home/vx/src/openkknd2-am-coder/TASK.md
|
||||
detached pid=1206638 log=/tmp/agent-coder-detach-20260722T044925Z.log
|
||||
control: am-task list | am-task stop latest | am-task resume latest
|
||||
=== active (/home/vx/.am-agent-tasks/active) ===
|
||||
(none)
|
||||
|
||||
=== recent history (5) ===
|
||||
20260722T044107Z-3833063 done OPENKKND2 autonomy demo. Work ONLY under /home/vx/
|
||||
20260722T043957Z-3831609 interrupted resume:w
|
||||
20260722T043953Z-3831497 resumed w
|
||||
20260722T043858Z-3830593 resumed heartbeat worker
|
||||
20260722T043822Z-3830147 interrupted s15
|
||||
16
openkknd2-am-coder/launch.out
Normal file
16
openkknd2-am-coder/launch.out
Normal file
|
|
@ -0,0 +1,16 @@
|
|||
instruction-ref → /home/vx/src/llm-configs/instructions/18-openkknd2-autonomous-rebuild.md
|
||||
instruction-ref → /home/vx/src/llm-configs/instructions/20-autonomous-until-blocked.md
|
||||
instruction-ref → /home/vx/src/llm-configs/instructions/21-always-agent-logs.md
|
||||
AGENT_WORKDIR=/home/vx/src/openkknd2-am-coder
|
||||
logs: /home/vx/src/openkknd2-am-coder/AGENT_LOG.md /home/vx/src/openkknd2-am-coder/STATUS.md /home/vx/src/openkknd2-am-coder/TASK.md
|
||||
detached pid=3832877 log=/tmp/agent-coder-detach-20260722T044105Z.log
|
||||
control: am-task list | am-task stop latest | am-task resume latest
|
||||
=== active (/home/vx/.am-agent-tasks/active) ===
|
||||
(none)
|
||||
|
||||
=== recent history (5) ===
|
||||
20260722T043957Z-3831609 interrupted resume:w
|
||||
20260722T043953Z-3831497 resumed w
|
||||
20260722T043858Z-3830593 resumed heartbeat worker
|
||||
20260722T043822Z-3830147 interrupted s15
|
||||
20260722T043752Z-3829738 interrupted sleep25
|
||||
7
openkknd2-am-coder/rotate-logs/LOAD-POLICY.txt
Normal file
7
openkknd2-am-coder/rotate-logs/LOAD-POLICY.txt
Normal file
|
|
@ -0,0 +1,7 @@
|
|||
single-flight policy
|
||||
- only one agent-coder job at a time (am-task)
|
||||
- only one ollama chat model loaded (devstral during openkknd2 rotate)
|
||||
- no parallel ollama pull during agent runs
|
||||
- no parallel pics/vids/showcase on this host while rotation runs
|
||||
- rotation is sequential (one model finishes before next)
|
||||
updated: 2026-07-22T05:18:40+00:00
|
||||
|
|
@ -0,0 +1,9 @@
|
|||
# openkknd2 model rotation
|
||||
|
||||
- started: 2026-07-22T05:16:43Z
|
||||
- workdir: `/home/vx/src/openkknd2-am-coder`
|
||||
- prompt: `/home/vx/src/llm-configs/prompts/openkknd2-rotate-kick.md`
|
||||
- max_turns: 10
|
||||
|
||||
| # | flag | session | before lines | after lines | progress | ci |
|
||||
|---|------|---------|--------------|-------------|----------|----|
|
||||
6
openkknd2-am-coder/rotate-logs/rotate.out
Normal file
6
openkknd2-am-coder/rotate-logs/rotate.out
Normal file
|
|
@ -0,0 +1,6 @@
|
|||
=== model rotation start 2026-07-22T05:16:43Z ===
|
||||
ROOT=/home/vx/src/openkknd2-am-coder models=--devstral --coder --qwen314 --qwen14 --deepseek --qwen38
|
||||
|
||||
>>> [1/6] model flag=--devstral session=ok2-rot1-devstral 2026-07-22T05:16:43Z
|
||||
before: files=9 lines=183 build=0 ai=0
|
||||
launch_ec=0 log=/home/vx/src/openkknd2-am-coder/rotate-logs/run-1devstral.log
|
||||
24
openkknd2-am-coder/rotate-logs/run-1devstral.log
Normal file
24
openkknd2-am-coder/rotate-logs/run-1devstral.log
Normal file
|
|
@ -0,0 +1,24 @@
|
|||
AGENT_WORKDIR=/home/vx/src/openkknd2-am-coder
|
||||
logs: /home/vx/src/openkknd2-am-coder/AGENT_LOG.md /home/vx/src/openkknd2-am-coder/STATUS.md /home/vx/src/openkknd2-am-coder/TASK.md
|
||||
detached pid=1717646 log=/tmp/agent-coder-detach-20260722T051647Z.log
|
||||
control: am-task list | am-task stop latest | am-task resume latest
|
||||
### ACTIVE (/home/vx/.am-agent-tasks/active)
|
||||
|
||||
(none active)
|
||||
|
||||
### RECENT HISTORY (5) (/home/vx/.am-agent-tasks/history)
|
||||
|
||||
════════════════════════════════════════════════════════════
|
||||
id: 20260722T050209Z-1707242
|
||||
status: interrupted [process dead]
|
||||
kind: stats-demo
|
||||
host: amanita
|
||||
model: (none / not set)
|
||||
session: (none)
|
||||
pid / pgid: 1707246 / 1707246
|
||||
started: 2026-07-22T05:02:09Z
|
||||
stopped: 2026-07-22T05:02:11Z
|
||||
elapsed: 2s
|
||||
stop_reason: demo: user requested clear stop stats
|
||||
stop_how: am-task stop
|
||||
stop_hard: False
|
||||
10
openkknd2-am-coder/scripts/ci-headless.sh
Executable file
10
openkknd2-am-coder/scripts/ci-headless.sh
Executable file
|
|
@ -0,0 +1,10 @@
|
|||
#!/usr/bin/env bash
|
||||
set -euo pipefail
|
||||
ROOT="$(cd "$(dirname "$0")/.." && pwd)"
|
||||
cd "$ROOT"
|
||||
echo "ci-headless: $ROOT"
|
||||
mkdir -p build
|
||||
cmake -S . -B build -DCMAKE_BUILD_TYPE=Release >/tmp/ok2-cmake.log 2>&1
|
||||
cmake --build build -j"$(nproc 2>/dev/null || echo 2)" >/tmp/ok2-build.log 2>&1
|
||||
./build/openkknd2 --headless --smoke
|
||||
echo "HEADLESS_GREEN"
|
||||
20
openkknd2-am-coder/src/building.h
Normal file
20
openkknd2-am-coder/src/building.h
Normal file
|
|
@ -0,0 +1,20 @@
|
|||
# src/building.h
|
||||
|
||||
#ifndef BUILDING_H
|
||||
#define BUILDING_H
|
||||
|
||||
#include "entity.h"
|
||||
|
||||
enum BuildingType {
|
||||
BUILDING_HQ,
|
||||
BUILDING_BARRACKS,
|
||||
BUILDING_COUNT
|
||||
};
|
||||
|
||||
typedef struct {
|
||||
Entity entity;
|
||||
BuildingType type;
|
||||
int resourceCost;
|
||||
} Building;
|
||||
|
||||
#endif // BUILDING_H
|
||||
36
openkknd2-am-coder/src/main.c
Normal file
36
openkknd2-am-coder/src/main.c
Normal file
|
|
@ -0,0 +1,36 @@
|
|||
#include <stdio.h>
|
||||
#include <string.h>
|
||||
#include <stdlib.h>
|
||||
#include "ok_types.h"
|
||||
#include "ok_map.h"
|
||||
#include "ok_unit.h"
|
||||
|
||||
static int run_smoke(void) {
|
||||
OkWorld w;
|
||||
ok_map_init(&w, 42);
|
||||
int a = ok_unit_spawn(&w, OK_FACTION_A, OK_UNIT_SCOUT, 1, 1);
|
||||
int b = ok_unit_spawn(&w, OK_FACTION_B, OK_UNIT_SCOUT, OK_WORLD_W - 2, OK_WORLD_H - 2);
|
||||
if (a < 0 || b < 0) { fprintf(stderr, "spawn failed\n"); return 2; }
|
||||
for (int t = 0; t < 40; t++) ok_world_tick(&w);
|
||||
if (ok_world_alive_count(&w, OK_FACTION_A) < 1 || ok_world_alive_count(&w, OK_FACTION_B) < 1) {
|
||||
fprintf(stderr, "units died\n"); return 3;
|
||||
}
|
||||
if (w.units[a].x == 1 && w.units[a].y == 1) {
|
||||
fprintf(stderr, "unit A did not move\n"); return 4;
|
||||
}
|
||||
printf("openkknd2: headless smoke test passed (ticks=%d units=%d resA=%d resB=%d)\n",
|
||||
w.tick, w.unit_count, w.resources_a, w.resources_b);
|
||||
return 0;
|
||||
}
|
||||
|
||||
int main(int argc, char *argv[]) {
|
||||
int headless = 0, smoke = 0;
|
||||
for (int i = 1; i < argc; i++) {
|
||||
if (strcmp(argv[i], "--headless") == 0) headless = 1;
|
||||
else if (strcmp(argv[i], "--smoke") == 0) smoke = 1;
|
||||
}
|
||||
if (headless && smoke) return run_smoke();
|
||||
printf("openkknd2 - original open post-apoc RTS scaffold (not KKnD)\n");
|
||||
printf("Usage: %s --headless --smoke\n", argv[0]);
|
||||
return headless ? 0 : 1;
|
||||
}
|
||||
45
openkknd2-am-coder/src/ok_buildings.c
Normal file
45
openkknd2-am-coder/src/ok_buildings.c
Normal file
|
|
@ -0,0 +1,45 @@
|
|||
#include "ok_buildings.h"
|
||||
#include "ok_map.h"
|
||||
#include <stdio.h>
|
||||
|
||||
void ok_buildings_init(OkWorld *w) {
|
||||
// Initialize buildings array - for now we'll use a simple approach
|
||||
// In a more complete implementation, we'd have an actual building array
|
||||
}
|
||||
|
||||
void ok_buildings_place(OkWorld *w, int x, int y, OkBuildingKind kind, OkFaction faction) {
|
||||
// Check if placement is valid (walkable tile and not occupied)
|
||||
if (!ok_map_walkable(w, x, y)) {
|
||||
return;
|
||||
}
|
||||
|
||||
// For now, we'll just update the resource count when a building is placed
|
||||
int cost = 0;
|
||||
switch (kind) {
|
||||
case OK_BUILDING_HQ:
|
||||
cost = 50;
|
||||
break;
|
||||
case OK_BUILDING_BARRACKS:
|
||||
cost = 30;
|
||||
break;
|
||||
default:
|
||||
return;
|
||||
}
|
||||
|
||||
// Check if faction has enough resources
|
||||
int *resources = (faction == OK_FACTION_A) ? &w->resources_a : &w->resources_b;
|
||||
if (*resources < cost) {
|
||||
return;
|
||||
}
|
||||
|
||||
// Deduct cost and mark building as placed
|
||||
*resources -= cost;
|
||||
|
||||
printf("Faction %d placed %s at (%d,%d)\n", faction,
|
||||
(kind == OK_BUILDING_HQ) ? "HQ" : "Barracks", x, y);
|
||||
}
|
||||
|
||||
void ok_buildings_update(OkWorld *w) {
|
||||
// Simple building update logic - in a real implementation this would handle
|
||||
// building construction, production, etc.
|
||||
}
|
||||
29
openkknd2-am-coder/src/ok_map.c
Normal file
29
openkknd2-am-coder/src/ok_map.c
Normal file
|
|
@ -0,0 +1,29 @@
|
|||
#include "ok_map.h"
|
||||
#include <string.h>
|
||||
|
||||
static uint32_t rng_u32(uint32_t *s) {
|
||||
*s = *s * 1664525u + 1013904223u;
|
||||
return *s;
|
||||
}
|
||||
|
||||
void ok_map_init(OkWorld *w, uint32_t seed) {
|
||||
memset(w, 0, sizeof(*w));
|
||||
uint32_t s = seed ? seed : 1u;
|
||||
for (int y = 0; y < OK_WORLD_H; y++) {
|
||||
for (int x = 0; x < OK_WORLD_W; x++) {
|
||||
uint32_t r = rng_u32(&s);
|
||||
if ((r % 17u) == 0u) w->tiles[y][x] = OK_TILE_BLOCK;
|
||||
else if ((r % 11u) == 0u) w->tiles[y][x] = OK_TILE_RES;
|
||||
else w->tiles[y][x] = OK_TILE_EMPTY;
|
||||
}
|
||||
}
|
||||
w->tiles[1][1] = OK_TILE_EMPTY;
|
||||
w->tiles[OK_WORLD_H - 2][OK_WORLD_W - 2] = OK_TILE_EMPTY;
|
||||
w->resources_a = 100;
|
||||
w->resources_b = 100;
|
||||
}
|
||||
|
||||
bool ok_map_walkable(const OkWorld *w, int x, int y) {
|
||||
if (x < 0 || y < 0 || x >= OK_WORLD_W || y >= OK_WORLD_H) return false;
|
||||
return w->tiles[y][x] != OK_TILE_BLOCK;
|
||||
}
|
||||
46
openkknd2-am-coder/src/ok_unit.c
Normal file
46
openkknd2-am-coder/src/ok_unit.c
Normal file
|
|
@ -0,0 +1,46 @@
|
|||
#include "ok_unit.h"
|
||||
#include "ok_map.h"
|
||||
|
||||
int ok_unit_spawn(OkWorld *w, OkFaction f, OkUnitKind k, int x, int y) {
|
||||
if (w->unit_count >= OK_MAX_UNITS) return -1;
|
||||
if (!ok_map_walkable(w, x, y)) return -1;
|
||||
int id = w->unit_count++;
|
||||
OkUnit *u = &w->units[id];
|
||||
u->x = x; u->y = y; u->faction = f; u->kind = k;
|
||||
u->hp = (k == OK_UNIT_SCOUT) ? 40 : 30;
|
||||
u->alive = true;
|
||||
return id;
|
||||
}
|
||||
|
||||
void ok_unit_step_toward(OkWorld *w, int uid, int tx, int ty) {
|
||||
if (uid < 0 || uid >= w->unit_count) return;
|
||||
OkUnit *u = &w->units[uid];
|
||||
if (!u->alive) return;
|
||||
int nx = u->x + (tx > u->x) - (tx < u->x);
|
||||
int ny = u->y + (ty > u->y) - (ty < u->y);
|
||||
if (ok_map_walkable(w, nx, u->y)) u->x = nx;
|
||||
if (ok_map_walkable(w, u->x, ny)) u->y = ny;
|
||||
if (w->tiles[u->y][u->x] == OK_TILE_RES) {
|
||||
if (u->faction == OK_FACTION_A) w->resources_a += 1;
|
||||
else w->resources_b += 1;
|
||||
w->tiles[u->y][u->x] = OK_TILE_EMPTY;
|
||||
}
|
||||
}
|
||||
|
||||
void ok_world_tick(OkWorld *w) {
|
||||
w->tick++;
|
||||
for (int i = 0; i < w->unit_count; i++) {
|
||||
OkUnit *u = &w->units[i];
|
||||
if (!u->alive) continue;
|
||||
int tx = (u->faction == OK_FACTION_A) ? (OK_WORLD_W - 3) : 2;
|
||||
int ty = (u->faction == OK_FACTION_A) ? (OK_WORLD_H - 3) : 2;
|
||||
ok_unit_step_toward(w, i, tx, ty);
|
||||
}
|
||||
}
|
||||
|
||||
int ok_world_alive_count(const OkWorld *w, OkFaction f) {
|
||||
int n = 0;
|
||||
for (int i = 0; i < w->unit_count; i++)
|
||||
if (w->units[i].alive && w->units[i].faction == f) n++;
|
||||
return n;
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue