Skip to content

DaveCode v0.2.0

Latest

Choose a tag to compare

@DMRLZZ DMRLZZ released this 07 Oct 04:40
· 39 commits to main since this release
6fbde2d

First version validated end to end against a real (local, free) model: the autonomous runner
implemented, tested and merged a task on its own with qwen3:8b through Ollama.

Added

  • davecode is a standalone npm package: @davecode/core and @davecode/server are bundled in
    and the dashboard ships inside dist/dashboard.

  • Dashboard: New task and edit sheets (dependency multi-select that cannot pick the task itself or
    create a cycle), status actions (Start, Mark done, Mark failed, Reopen), Run now, confirmed delete,
    and a Routes editor (add, remove, rename, reorder targets, pin accounts, default route). Both work
    in mock mode.

  • PUT /api/routes: replace the route list and default route. Persisted to the global
    config.json (other keys preserved, atomic, locked) and applied to the live engine config
    immediately (Engine.updateRouting, writeGlobalRouting).

  • Task graph editing: POST /api/tasks, PATCH /api/tasks/:id and DELETE /api/tasks/:id
    through ProjectBrain (lock, validation, cycle paths in the cycle error, status
    transitions, has_dependents refusal), the task.removed event, optional write methods on
    BrainSource (501 brain_read_only without them) and ProjectBrain.createTask/removeTask.

  • Targeted runs: runOnce({ taskId }) and start({ taskId }) on the autonomous runner,
    davecode run --task <id> (replacing the "can only confirm the runner's pick" check) and an
    optional { "taskId" } body on POST /api/runner/start. A task that cannot run is refused with
    task_not_found (404), task_not_runnable or task_blocked (409, naming the dependencies).

Fixed

  • Client cancellations (closed connection, Esc in the TUI) no longer put the account in cooldown;
    they are recorded with the new cancelled usage status.
  • The builtin executor rejects a finish without any file written (once per pass) and logs why
    a tool call failed.
  • run_command accepts a whole command line such as node --test in command.
  • write_file/edit_file repair double-escaped newlines sent by small models.
  • /api/runner/* forwards RunnerError codes in 409 responses.

Try it for free

ollama pull qwen3:8b
davecode accounts add --provider openai-compatible --label ollama --base-url http://localhost:11434/v1 --model qwen3:8b --yes
davecode start

The davecode-0.2.0.tgz asset below is the standalone CLI: npm install -g ./davecode-0.2.0.tgz.