Skip to main content

diploid-plugins

Built-in state plugins for diploid-agent.

These plugins implement the diploid-agent plugin contract (StatePlugin lifecycle hooks) and are loaded by the harness through the harness.plugins config.

Included plugins

  • body — physical/emotional body state that persists across sessions and transport restarts. Includes a felt layer: felt_warmth (an ember that fades per wake/turn, not per wall-clock minute — a restart is not an experience) and felt_summary (one agent-authored line of texture via the body_felt MCP tool; never synthesized from telemetry). Reads are pure — state_for_prompt never mutates.
  • bridge — writes a first-person BRIDGE at session close and surfaces a short SURFACE re-entry at the next wake. State is sourced from chat_self_state.md, chat_body_state.json, chat_working_memory.json, chat_PROMOTED.md, and chat_TASKS.md; output is written to chat_surface.md and chat_bridge.md.
  • continuity — wake state, time asleep, last stop reason, pending dispatches, and active/interrupted-turn breadcrumbs (current_intent/last_side_effect).
  • working_memory — a chat-scoped scratchpad for the current turn.
  • persistent_memory — auto-recall and auto-promote of ```memory blocks, including mid-stream promotion while the reply is still being written.
  • planner — turn a user request into an executable plan.
  • auto_continue — resume a turn automatically after a configured stop reason.
  • self_state — a first-person self-state note across sessions, with a first-person guard that keeps the previous note if a new block is not written in I am/We are/My form.
  • self_management — in-chat plugin enable/disable and approval tools.
  • curriculum — language-learning target, unit, and vocabulary tracking.
  • identity — self-narrative / identity prompt block.

Install

pip install diploid-agent[plugins]
# or explicitly
pip install diploid-agent diploid-plugins

Usage

In config/harness.yaml:

harness:
  plugins:
    - name: continuity
      module: diploid_plugins.continuity
      prompt_slot: wake
      first_prompt_only: true
      prompt_order: 0
      state_file: chat_wake_state.json
      max_prompt_chars: 1024
    - name: working_memory
      module: diploid_plugins.working_memory
      prompt_slot: working_memory
      first_prompt_only: false
      prompt_order: 40
      state_file: chat_working_memory.json
      max_prompt_chars: 1024
    # ... add the rest as needed

Development

python -m venv .venv
source .venv/bin/activate
pip install -e ".[dev]"
pytest

Hot reload

With an editable install, plugin changes go live in a running harness without a service restart: POST /plugin/reload (or Telegram /plugin reload <name>) deep-reloads the plugin's whole package subtree — every already-imported submodule, then the package itself — and recycles its instances.

Keep module-level code side-effect free: reload re-executes it. Do real work in start(), release resources in stop(). A module that fails to import makes the reload raise and leaves the running instances untouched. Changes in code outside the plugin's own subtree (e.g. a shared helper package) are not picked up — reload each dependent plugin or restart the service.

License

MIT

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

diploid_plugins-0.1.1.tar.gz (64.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

diploid_plugins-0.1.1-py3-none-any.whl (56.6 kB view details)

Uploaded Python 3

File details

Details for the file diploid_plugins-0.1.1.tar.gz.

File metadata

  • Download URL: diploid_plugins-0.1.1.tar.gz
  • Upload date:
  • Size: 64.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for diploid_plugins-0.1.1.tar.gz
Algorithm Hash digest
SHA256 82e61fa478a49ac1b25ad10064d3488528d48e797e0967e7c64a415cf17c12ea
MD5 231aa4caa07938fcd06d5fbfdef90b73
BLAKE2b-256 e3baba9b4016b0583517fee4c5ed4289e44353e87b4ee3190535b8253030d48c

See more details on using hashes here.

Provenance

The following attestation bundles were made for diploid_plugins-0.1.1.tar.gz:

Publisher: publish.yml on emiltsoi/diploid-plugins

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file diploid_plugins-0.1.1-py3-none-any.whl.

File metadata

File hashes

Hashes for diploid_plugins-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 4776fe4441429b7d7898efacb6b3f573d96c17fdb577690f6c51a99c9ec02e62
MD5 05e3a1b544e9b789fbe6f1e1e427263b
BLAKE2b-256 be74cff71f836240c6cb23eb997ccf5375ee430c38ef98e1667b95ae9be3207d

See more details on using hashes here.

Provenance

The following attestation bundles were made for diploid_plugins-0.1.1-py3-none-any.whl:

Publisher: publish.yml on emiltsoi/diploid-plugins

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Release history Release notifications | RSS feed

This release

0.1.1 This release

2 files

0.1.0

2 files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page