Skip to content
arxdeusPublic

About

Auto-continue Maki agent sessions while unfinished todos remain

Topics

Resources

Stars

1 star

Watchers

0 watching

Forks

Latest commit

 

History

5 Commits

Folders and files

Repository files navigation

maki-poke

Autonomously continues a maki session until the agent certifies that the user's original request is delivered and validated.

The plugin is independent of todo_write. At every TurnEnd, it sends a continuation unless the agent has called task_complete with a summary and concrete validation results, or task_blocked because progress genuinely requires external input.

Install

Linux

curl -fsSL https://raw.githubusercontent.com/arxdeus/maki-poke/main/install.sh | sh

The default destination is ${XDG_CONFIG_HOME:-$HOME/.config}/maki. Pass a directory to install elsewhere:

curl -fsSL https://raw.githubusercontent.com/arxdeus/maki-poke/main/install.sh | sh -s -- /path/to/project/.maki

Uninstall with:

curl -fsSL https://raw.githubusercontent.com/arxdeus/maki-poke/main/install.sh | sh -s -- --uninstall

Windows

.\install.ps1

Pass a configuration directory as the first argument. Uninstall with ./install.ps1 -Uninstall.

Configuration

Load the plugin after the existing maki.setup() call:

require("maki_poke").setup({
  default_on = false,
  max_pokes = 0,
})

max_pokes = 0 allows unlimited continuations. Set a positive value for a per-task circuit breaker. The plugin does not replace or require todo_write.

The module files must be available as:

lua/maki_poke.lua
lua/maki_poke_state.lua

Run /reload after installation.

Completion protocol

The main agent receives a task_complete tool. It must provide:

  • summary: the fully delivered outcome;
  • validation: one or more concrete checks and successful outcomes;
  • limitations: optional non-blocking limitations.

A progress report, partial completion, or statement of the next step does not stop continuation. A successful task_complete call stops it for the current task. The next regular user turn automatically starts a new completion cycle.

task_blocked pauses continuation only when the agent supplies a specific external requirement and at least one concrete attempt already made. The next user turn or /poke rearm resumes the cycle.

The tools enforce that evidence is present, but cannot independently prove that reported evidence is truthful. The agent remains responsible for meaningful checks and blocker investigation.

Commands

  • /poke or /poke on — enable, rearm, and immediately continue.
  • /poke rearm — rearm and immediately continue.
  • /poke off — disable continuation for the focused session.
  • /poke status — show state, phase, and accepted poke count.

Behavior and limitations

  • Auto-poke is disabled by default. Run /poke on for the focused session. Set default_on = true to opt in automatically.
  • TurnError clears an in-flight dispatch but does not itself start another continuation.
  • Async dispatches use generation IDs, so late results cannot mutate completed, blocked, disabled, reset, or rearmed cycles.
  • If TurnEnd is missed, the session's transition to idle dispatches the continuation as a fallback; duplicate events are suppressed.
  • Dispatch failures are shown in the UI and retained in /poke status.
  • Synthetic continuations are visible regular user turns because maki's public plugin API cannot mark them as hidden.
  • Runtime state resets after a full restart.
  • This plugin targets the interactive maki UI; maki.session.prompt requires a live session.

About

Auto-continue Maki agent sessions while unfinished todos remain

Topics

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages