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.15.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.15.0-py3-none-any.whl (29.6 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: 3tears_agent_intention-0.15.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.12

File hashes

Hashes for 3tears_agent_intention-0.15.0.tar.gz
Algorithm Hash digest
SHA256 4c64ba2e8cfc18d5eed75e761eaa9191f73d6082bcada85c7ada0150007539a4
MD5 9e4086560582b0351aac843962943ebd
BLAKE2b-256 6da8dac4856c2f25e1d0876e47d2c4982f0aa3ce9f45f13b4cb99e9246bf4a0a

See more details on using hashes here.

Provenance

The following attestation bundles were made for 3tears_agent_intention-0.15.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.15.0-py3-none-any.whl.

File metadata

File hashes

Hashes for 3tears_agent_intention-0.15.0-py3-none-any.whl
Algorithm Hash digest
SHA256 3be7927c3aee359f68acc599ef21c836caf9d674ddbd07e3601c50715c86ed36
MD5 de6619e0514702a44c9c0a9e16741207
BLAKE2b-256 0a6e022b7918edb896868287d4cd2d61a4f9c0453e26f2ed1b4a597393a6a943

See more details on using hashes here.

Provenance

The following attestation bundles were made for 3tears_agent_intention-0.15.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