Move the to-do list from NOTES.md to a kandown board
Each note is a task in tasks/ with the owner's words under ## Context; the board rules are in .kandown/kandown_work.md and docs/kandown.md explains how kandown works here. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
+9
-3
@@ -18,7 +18,7 @@ decides something new, add it under "Decisions" with the date.
|
||||
- **Copy and paste of builds.** Pasting places ghosts that the bot builds from the bag.
|
||||
- **Tool upgrades are earned in a satisfying, not tedious way**, not bought with arbitrary
|
||||
credits. So far that means casting them: a drill bit in a Bit mold, a bigger bag in a Tank mold.
|
||||
The owner wants the whole upgrade system redesigned (see NOTES.md).
|
||||
The owner wants the whole upgrade system redesigned (task t14).
|
||||
- **A hovering bot that flies freely.** A limited bag that can be upgraded.
|
||||
- **An economy instead of a rocket or other final goal.**
|
||||
- Sell materials at the trade dock; refined goods and alloys pay more.
|
||||
@@ -165,7 +165,8 @@ above, including:
|
||||
refiners until none is left. The owner's reason: it is less profitable than making glass, so
|
||||
players will do it only when they need more ore rather than more money.
|
||||
- The project moved from a claude.ai artifact to local development with coding agents. It is
|
||||
built from small files, with `NOTES.md` as the owner's to-do inbox.
|
||||
built from small files, with `NOTES.md` as the owner's to-do inbox (since 2026-10-24, a
|
||||
kandown board in `tasks/`).
|
||||
- **Replace is held G, not Ctrl.** The owner hit the browser's Ctrl+W (close tab) and Ctrl+D
|
||||
(bookmark) while replacing and flying with WASD, and the game ignored WASD while Ctrl was held.
|
||||
|
||||
@@ -200,9 +201,14 @@ above, including:
|
||||
list loads, renames and deletes them, and a new or imported world never overwrites another. An
|
||||
old single save becomes 'World 1'. The owner asked for multiple saves.
|
||||
|
||||
**2026-10-24:**
|
||||
- **The to-do list is a kandown board.** `NOTES.md` became one task file per note in
|
||||
`tasks/` (Todo for tasks, Backlog for discussions and ideas, Review for "done, please check").
|
||||
The owner wanted a task tool built for AI agents.
|
||||
|
||||
## Ideas not built yet
|
||||
|
||||
- **Concrete**, as a stronger wall material from rubble.
|
||||
- **Upgrade ideas for the drill**: an amplifier, a tuning fork, harmonics. Also a Grav pick
|
||||
upgrade tool and mining charges. See `docs/systems/dig-tools.md`.
|
||||
- The owner's ideas for later are in the "Future features and ideas" section of `NOTES.md`.
|
||||
- The owner's ideas for later are tasks tagged `idea` in the Backlog of the task board.
|
||||
|
||||
+1
-1
@@ -9,7 +9,7 @@ top part by hand when the structure changes.
|
||||
|
||||
```
|
||||
AGENTS.md, CLAUDE.md instructions for coding agents
|
||||
NOTES.md the owner's to-do inbox
|
||||
tasks/, .kandown/ the owner's to-do list: a kandown board (docs/kandown.md)
|
||||
build.py joins src/ into dist/index.html (one self-contained page)
|
||||
src/manifest.json the build order: simulation files, then browser files
|
||||
src/shell.html page markup (HUD, menus, dialogs); CSS and JS are put in at the markers
|
||||
|
||||
@@ -4,6 +4,32 @@ What agents have done, newest first. Add an entry for every piece of work: the d
|
||||
note or request it was for, what changed, the files touched, the tests run, and anything left
|
||||
open or not verified. Keep each entry short; the git history has the details.
|
||||
|
||||
## 2026-10-24: the to-do list moved from NOTES.md to a kandown board (Claude Code)
|
||||
|
||||
Request: initialize kandown (https://kandown.dev, 0.52.0) for the project, move all the notes
|
||||
into it, and document how it works.
|
||||
|
||||
- Practised first in a scratch folder: `init --no-open` starts no daemon and makes no sample tasks
|
||||
when `tasks/` exists; `create` prints only the id and names the file `<id>_<slug>.md`; a
|
||||
multi-line `report: |` block is read (checked in kandown's parser) and `doctor` accepts it;
|
||||
`list --json` doesn't include `report`; project instructions in `.kandown/kandown_work.md`
|
||||
appear in `kandown work` (~1,100 tokens).
|
||||
- A mistake on the way: `kandown init --help` ran `init` in the vault (it ignores `--help`) and
|
||||
started a daemon there. Stopped it, and removed the vault's earlier kandown test files as the
|
||||
owner asked. `docs/kandown.md` warns about it.
|
||||
- `kandown init --no-open` in the repo. `.kandown/kandown.json`: default columns, Review's
|
||||
instructions say only the owner moves work to Done, tags and priority shown. `.gitignore`:
|
||||
`.kandown/kandown.html` (6.5 MB, regenerated).
|
||||
- 14 notes became tasks t1-t14 (Todo: 6 tasks; Backlog: 5 tagged `discussion`, 3 tagged
|
||||
`idea`), each with the owner's note word for word under `## Context` (checked by script: 14 of
|
||||
14). `kandown doctor` is clean.
|
||||
- `.kandown/kandown_work.md` holds the board rules (from AGENTS.md's old NOTES section);
|
||||
`docs/kandown.md` explains how kandown works here. `AGENTS.md` (session start, a new "Working
|
||||
from the task board" section linking both), `CLAUDE.md`, `README.md`, `docs/PROJECT_MAP.md`,
|
||||
`docs/DESIGN.md` (decision). `NOTES.md` removed.
|
||||
- `kandown list` and `kandown doctor` checked inside Codex's sandbox: they work.
|
||||
- Open: the web board (`kandown`) wasn't opened here; the owner uses it.
|
||||
|
||||
## 2026-10-24: several worlds, with a Worlds list (Claude Code, with Codex)
|
||||
|
||||
Note: "support multiple saves". The owner chose a world list.
|
||||
|
||||
+103
@@ -0,0 +1,103 @@
|
||||
# kandown: the task board
|
||||
|
||||
The owner's to-do list is a [kandown](https://kandown.dev) board: one Markdown file per task in
|
||||
`tasks/`, with settings in `.kandown/`. It replaced `NOTES.md` on 2026-10-24. This page records
|
||||
how it works here, as checked on kandown 0.52.0. The full upstream documentation is one file at
|
||||
https://kandown.dev/llms-full.txt (any docs page also works with `.md` added to its URL).
|
||||
|
||||
## Start of a session
|
||||
|
||||
```sh
|
||||
kandown work # the rules, our project instructions and the board, as Markdown (~1,900 tokens
|
||||
# with 14 tasks)
|
||||
kandown work t8 # the same, focused on one task
|
||||
```
|
||||
|
||||
Our project rules are in `.kandown/kandown_work.md`; `kandown work` includes them under
|
||||
"Project Instructions". `AGENTS.md` ends with the one-line pointer `kandown init` added; keep it.
|
||||
|
||||
## Columns
|
||||
|
||||
| Column | Role | What goes here |
|
||||
|---|---|---|
|
||||
| Backlog | backlog | Discussion notes (tag `discussion`) and ideas for later (tag `idea`) |
|
||||
| Todo | ready | The owner's tasks |
|
||||
| In Progress | active | What an agent is working on now |
|
||||
| Review | review | Finished work waiting for the owner to check in the game ("done, please check") |
|
||||
| Done | terminal | Checked by the owner. Only the owner moves tasks here |
|
||||
|
||||
## Commands
|
||||
|
||||
Task commands work offline and print data only on stdout (messages go to stderr), so they are
|
||||
safe to capture. Set `KANDOWN_NO_UPDATE=1` in scripts.
|
||||
|
||||
```sh
|
||||
kandown list # the board as a table; --json for data (no report field in it)
|
||||
kandown show t8 # one task file as it is on disk
|
||||
ID=$(kandown create "Title" --to Todo -t discussion) # prints only the new id, e.g. t15
|
||||
kandown move t8 "In Progress" # quote column names with spaces; "archived" archives
|
||||
kandown doctor # checks kandown.json and every task's frontmatter
|
||||
kandown # the owner's board: web page plus terminal UI (starts a daemon)
|
||||
kandown daemon stop # stop that daemon
|
||||
```
|
||||
|
||||
- **`--help` is not safe.** `kandown init --help` ignored the flag and ran `init` in the current
|
||||
folder, which also started a daemon. Use `kandown help` or the docs, never `<command> --help`.
|
||||
- `kandown init` starts the web daemon unless given `--no-open`. With an existing empty `tasks/`
|
||||
it created no sample tasks.
|
||||
- `kandown create` names the file from the id and the title: `tasks/t8_fog_war_unexplored.md`.
|
||||
Find it with `tasks/<id>_*.md`; don't rename it.
|
||||
- `kandown create` has no body option: write the body into the file after creating it.
|
||||
- `depends_on` blocks a move to Done until the listed tasks are done.
|
||||
|
||||
## A task file
|
||||
|
||||
```markdown
|
||||
---
|
||||
id: t8
|
||||
title: Fog of war for unexplored areas
|
||||
status: Review
|
||||
created: 2026-10-24
|
||||
updated: 2026-10-24T04:41:46Z
|
||||
tags: [discussion]
|
||||
report: |
|
||||
(agent) What changed, in a few lines.
|
||||
To check: how the owner sees it in the game.
|
||||
---
|
||||
|
||||
## Context
|
||||
|
||||
- The owner's note, word for word.
|
||||
|
||||
## Subtasks
|
||||
|
||||
- [x] A step
|
||||
report: What actually happened.
|
||||
```
|
||||
|
||||
- Only `id`, `title` and `status` are required. Unknown keys are kept.
|
||||
- **`report`** is the completion summary the board shows prominently. A multi-line `report: |`
|
||||
block works (kandown's parser reads block scalars); `kandown doctor` accepts it.
|
||||
- `## Context` holds why the task exists: here, the owner's own words. `## Subtasks` is a
|
||||
checklist whose items can carry a `report:` line.
|
||||
- Editing files directly is supported; the board notices changes. Run `kandown doctor` after.
|
||||
|
||||
## Files
|
||||
|
||||
| Path | Committed | What it is |
|
||||
|---|---|---|
|
||||
| `tasks/*.md`, `tasks/archive/` | yes | The tasks; the folder is the whole state, no index |
|
||||
| `.kandown/kandown.json` | yes | Columns, column instructions, workflow, which fields show |
|
||||
| `.kandown/kandown_work.md` | yes | Our project rules for agents |
|
||||
| `.kandown/agents.json`, `README.md`, `.gitignore` | yes | Written by `kandown init` |
|
||||
| `.kandown/kandown.html` | no (`.gitignore`) | The 6.5 MB web app; `kandown init` / `kandown update` rebuild it |
|
||||
| `.kandown/daemon.json` | no (`.kandown/.gitignore`) | The running daemon's port and access token |
|
||||
|
||||
## Codex and kandown
|
||||
|
||||
`kandown list` and `kandown doctor` were checked inside Codex's `workspace-write` sandbox and
|
||||
work; the other task commands also only read and write files in the repo. Not checked under
|
||||
Codex: the web daemon (`kandown`
|
||||
with no command), which serves a page on a local port. Codex's `workspace-write` sandbox blocks
|
||||
network sockets (it is why headless Chrome crashed under Codex until runs passed
|
||||
`-c sandbox_workspace_write.network_access=true`).
|
||||
Reference in New Issue
Block a user