Skip to main content

3tears-conversations

Canonical owner of the per-agent conversations table plus its entity and three-tier collection.

Purpose

Tracks one row per user-facing conversation an agent is engaged in: ownership scope (agent_id, customer_id, user_id), external reference (channel_type, conversation_ref), lifecycle (status, summary), timestamps (date_created, date_updated, date_last_message).

This table is owned here because multiple packages key off conversation_id (memory, agent-tools context items, workspace bindings) and no single consumer is the natural owner of the shape. Owning the table here lets each downstream package depend on conversations without pulling in memory's extraction pipeline.

Public API

Exports (see src/threetears/conversations/__init__.py):

  • Conversation -- BaseEntity subclass for a single row.
  • ConversationsCollection -- three-tier (L1 SQLite / L2 NATS KV / L3 postgres) collection with the usual get / save / subscript semantics.
  • register(runner) -- agent-scope migration entry point. Contributes the conversations table creation to a canonical threetears.core.data.migrations.MigrationRunner. No depends_on edges; this is the root of the agent-schema dependency graph, so memory / workspace / tools migrations that reference conversations.id sort after it.

Minimal usage

from threetears.conversations import Conversation, ConversationsCollection, register
from threetears.core.data.migrations import MigrationRunner

# 1. register the package's migrations on the runner; run_migrations pins one
#    pooled connection and holds the database-wide DDL lock for the whole run
runner = MigrationRunner()
register(runner)
await store.run_migrations(runner)

# 2. use the collection like any other 3tears collection
collection = ConversationsCollection(registry=registry)
conv = await collection.get(conversation_id)
conv.summary = "follow-up on last week's analysis"
await conv.save()

Reference

  • Downstream consumers: threetears.agent.memory, threetears.agent.tools (context items), threetears.agent.workspace (bindings)

Metadata

Release files for 3tears-conversations 0.71.0

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

Source distribution (sdist)

Source distribution for 3tears-conversations 0.71.0
File Size Uploaded Provenance
3tears_conversations-0.71.0.tar.gz 87.7 kB With provenance Details

Built distribution (wheel)

Table of built distributions (wheels) for 3tears-conversations 0.71.0
File Interpreter ABI Platform
3tears_conversations-0.71.0-py3-none-any.whl Python 3 none any Details

Total release size: 150.4 kB

Release files / 3tears_conversations-0.71.0.tar.gz

Download URL 3tears_conversations-0.71.0.tar.gz
Size 87.7 kB
Tags Source
SHA-256 checksum
How to use checksums
6a5467ab25a3ce6b7814c4973f22ccab048106fc409d474602ca2b156fea775b
BLAKE2b-256 checksum
How to use checksums
684242b41b9f97345ad1d48237b8a6b3b4c32ab1934aa43341445aed21fc37fe
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

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 18, 2026.

Transparency log

Release files / 3tears_conversations-0.71.0-py3-none-any.whl

Download URL 3tears_conversations-0.71.0-py3-none-any.whl
Size 62.7 kB
Tags Python 3
SHA-256 checksum
How to use checksums
9b20e4f1a30982339a96a217d0c4159866e67afd01a93169abe3b354f2763448
BLAKE2b-256 checksum
How to use checksums
46bd85c48bef4a6fcfe3386c55ed5cd0bed6953c06c8f1aee6c66c80b8e18f10
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

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 18, 2026.

Transparency log

Security for 3tears-conversations 0.71.0

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 3tears_conversations-0.71.0.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 18, 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.

Release history Release notifications | RSS feed

This release

0.71.0 This release

2 release files Full provenance

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