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

Metadata

Release files for diploid-plugins 0.1.2

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for diploid-plugins 0.1.2
File Size Uploaded Provenance
diploid_plugins-0.1.2.tar.gz 89.3 kB With provenance Details

Built distribution (wheel)

Table of built distributions (wheels) for diploid-plugins 0.1.2
File Interpreter ABI Platform
diploid_plugins-0.1.2-py3-none-any.whl Python 3 none any Details

Total release size: 164.2 kB

Release files / diploid_plugins-0.1.2.tar.gz

Download URL diploid_plugins-0.1.2.tar.gz
Size 89.3 kB
Tags Source
SHA-256 checksum
How to use checksums
807d811c6f6cdb81e6145edc2a3f0623989bd5589210628ac12c53a7a7124bb1
BLAKE2b-256 checksum
How to use checksums
a578e42e11117736a3c0016d2ec33e158cfee50e02622241ca9c91d3125ed4e2
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 23, 2026.

Transparency log

Release files / diploid_plugins-0.1.2-py3-none-any.whl

Download URL diploid_plugins-0.1.2-py3-none-any.whl
Size 74.9 kB
Tags Python 3
SHA-256 checksum
How to use checksums
ed65d8fe921b389278d2618b77397d7f11e72150ec0ea2952930e3a71ffbb4b0
BLAKE2b-256 checksum
How to use checksums
a95388caa51d9caaee584d47d1c20da755093a0b5b9c96355d49f081d1254c8f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 23, 2026.

Transparency log

Security for diploid-plugins 0.1.2

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

Full provenance

All 2 files in this release have been uploaded with provenance metadata.

Select from 2 files

Attestation for diploid_plugins-0.1.2.tar.gz

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 23, 2026.

Transparency log

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

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