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

Uploaded Python 3

File details

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

File metadata

  • Download URL: 3tears_agent_intention-0.17.4.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.17.4.tar.gz
Algorithm Hash digest
SHA256 fcc48a6edefafc23d08353d49d5c486d27f06e336c18cdce8bfaeb0bd01662d9
MD5 20882b6fb56216ae01f74dc1813d62b3
BLAKE2b-256 1f69bb7e248ab89f8e6880719b40485dac1422a95163ce8788cb9109d28c3367

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for 3tears_agent_intention-0.17.4-py3-none-any.whl
Algorithm Hash digest
SHA256 041790447c85afe9aadd29055765956057a61971ffcfd82ee6a4e9b89512db7f
MD5 9996e8b018f3a5c9da009c6c51d26d29
BLAKE2b-256 6054a249ff2ee1dd23368711de8cf908ee515f004ce2f75d97163a606553fde8

See more details on using hashes here.

Provenance

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