Skip to content

ahpd 0.11 ​

The good stuff ​

Bots and automations are Markdown files you edit by hand, and a quiet session sleeps.

0.11.0 - 2026-10-11 ​

Upgrading ​

  • On first start, the daemon converts its stores to Markdown files and keeps each original with a .migrated suffix:
    • each bot in <configDir>/bots/<slug>.json becomes <slug>.md;
    • automations.json becomes one file per automation in <configDir>/automations/<id>.md, with run state in automations-state.json.
  • Plugins now declare @ahpd/sdk with an upper bound: >=0.10 <1, and >=0.8 <1 for tunnel-devtunnel.
  • @ahpd/bot and @ahpd/push are published to npm for the first time.

Bots ​

  • A bot is a Markdown file: YAML frontmatter, with its instructions as the body. An edit to the file reaches the daemon without a restart. See docs/BOTS.md.
  • Making a bot starts its session, and a bot can be watched.
  • Bots have a catalogue, served as a channel.
  • An admin can make a bot for any owner.
  • A bot's colour is a name or a hex colour.

Automations ​

  • An automation is a Markdown file, with its message as the body. A copy under a new name is a new automation, and an edit is reloaded at once. See docs/AUTOMATIONS.md.
  • An automation can wake on what a session does, and can disable itself.
  • An automation carries its template's client plugins.

Plugins ​

  • Plugins keep records in the host's record store, written as Markdown files. A plugin also gets YAML from the host.
  • A plugin can serve a channel, and is a client of its own host.
  • A plugin is known by its id.
  • ahpd plugin install picks the newest version that fits the daemon's sdk, and plugin update --force installs each package on its own.

Sessions and VS Code parity ​

  • A quiet session sleeps and wakes when something needs it.
  • Stage, unstage, discard and commit take one file or the whole changeset. The working tree is the first changeset.
  • A chat can be reordered, moved to another session, read or archived on its own. A peer chat survives a restart.
  • A chat lists the shells and subagents running in its background, and an MCP server startup can be sent to the background.
  • Attachments reach Claude, pi, ACP and cofold turns.
  • The ACP bridge resumes without replay, forks where the server can, and asks the server's questions.
  • Root config declares VS Code's keys and refuses the rest.

Daemon and API ​

  • The host serves x- commands; people, policies and computers are channels; usage is read through commands.
  • The API answers only the origins a deployment names.
  • Each plugin config field can be overridden by a recorded flag.

Usage ​

  • A usage record keeps the provider's cost beside the charged one, split into sent and received tokens.
  • A usage list shows what a reader may read, by range and group.
  • A reset conversation starts the cost baseline again.

Push ​

  • A session's devices are told when it finishes a turn, as well as when it needs a person.