Skip to main content

Standing-wants corpus for LLM agents -- intention lifecycle, salience decay, embedding dedup, and private deliberation tools

Project description

3tears Agent Intention

Standing-wants corpus for LLM agents. An intention is agent-authored deliberation output -- a want the agent is holding onto ("ask Pace about the migration", "check whether the wake threads are firing") -- with its own status lifecycle, salience decay, and restraint brakes so the agent surfaces a want at most occasionally rather than every turn.

Part of the 3tears framework.

Installation

pip install 3tears-agent-intention

Why a separate package (not a memory of kind=intention)

Memory is a hard-delete-only user-fact taxonomy with immutable scope columns and no lifecycle. An intention is all lifecycle: open -> asked -> granted / dropped, a partial index for "find the open wants", and a validated status value set. Riding the shared memory_type PG enum would pollute a user-fact taxonomy with an agent-internal control construct and force an irreversible enum add on six consumers.

Enhance-first is still honoured: intention consumes the reusable salience/decay substrate the agent/memory enhancement built (the same salience column shape and the shared apply_salience_decay helper), rather than reinventing it.

Components

intentions table

Partition on agent_id; composite PK (agent_id, intention_id); CAS on date_updated (mirrors memory). Columns: status (PG enum intention_status), content, embedding (pgvector 1024, for dedup on log), salience (NUMERIC(5,4), reuses the decay substrate), last_decayed_at (decay anchor), last_surfaced_at (cooldown anchor), source_memory_id / source_conversation_id (soft-ref provenance, no FK).

User isolation is a user_id WHERE clause, not RBAC

Every metallm user shares one agent_id, so the partition isolates nothing and the agent-owner RBAC short-circuit sees every want. user_id is the only boundary: the collection's user-facing reads take user_id as a required parameter, and every consumer read filters on it.

Versioning policy

The package version moves in lockstep with the rest of the 3tears monorepo -- every package tracks the framework git tag.

Project details


Download files

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

Source Distribution

3tears_agent_intention-0.18.0.tar.gz (41.4 kB view details)

Uploaded Source

Built Distribution

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

3tears_agent_intention-0.18.0-py3-none-any.whl (29.6 kB view details)

Uploaded Python 3

File details

Details for the file 3tears_agent_intention-0.18.0.tar.gz.

File metadata

  • Download URL: 3tears_agent_intention-0.18.0.tar.gz
  • Upload date:
  • Size: 41.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.14

File hashes

Hashes for 3tears_agent_intention-0.18.0.tar.gz
Algorithm Hash digest
SHA256 cd551b1569f0d308158587bfd5a3d32f6af8b3bf06fe50e16f997ea5eef18ca4
MD5 dd4215589b12121c91b1cd7fd0f75ff1
BLAKE2b-256 f6a078dcad9c0100d145d9a0c6ceb4abdb5691dd8628c5e0d2ca45820af6ec75

See more details on using hashes here.

Provenance

The following attestation bundles were made for 3tears_agent_intention-0.18.0.tar.gz:

Publisher: release.yml on pacepace/3tears

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

File details

Details for the file 3tears_agent_intention-0.18.0-py3-none-any.whl.

File metadata

File hashes

Hashes for 3tears_agent_intention-0.18.0-py3-none-any.whl
Algorithm Hash digest
SHA256 c69a7c49933a68770142f8a189950a468ffe258179bd609d2226dd9eb609a742
MD5 bb149c1a65e715f9d69ccea24c8c3e42
BLAKE2b-256 38f42a69591ce2636a0f93b96a5dc6e2918538f047f1286458fb702f8539c017

See more details on using hashes here.

Provenance

The following attestation bundles were made for 3tears_agent_intention-0.18.0-py3-none-any.whl:

Publisher: release.yml on pacepace/3tears

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

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page