Data and portability commands
Export and import a portable bundle
Section titled “Export and import a portable bundle”signet exportsignet export --jsonsignet export bundlesignet import ./signet-exportsignet import ./signet-export.json --json --conflict mergesignet export is equivalent to signet export bundle. Bundles carry the workspace identity files, agent.yaml, memory and ontology data, and installed skills. Import restores a bundle into the selected workspace.
Choose a conflict policy deliberately:
skip: keep existing memories and skip duplicates.overwrite: replace matching records.merge: merge compatible records when supported.
Treat an export as sensitive: it can include private identity and memory data. Encrypt it at rest and do not upload it to an untrusted service.
Export transcripts
Section titled “Export transcripts”signet export transcriptssignet export transcripts --output ./conversations.jsonlsignet export transcripts --harness hermes-agent --agent antsignet export transcripts --since 2026-06-01 --until 2026-07-01signet export transcripts --limit 5000 --offset 5000 --output ./part-2.jsonlsignet export transcripts --messages-onlysignet export transcripts --jsonTranscript export writes JSONL to standard output by default, or to --output. Use repeated --harness and --agent filters, --limit and --offset for resumable exports, and --messages-only to omit system and tool messages. --json emits a JSON array instead of JSONL.
Transcripts can contain credentials, personal data, and private project context. Review access controls before using an export for training or analysis.
Importing exported transcripts
Section titled “Importing exported transcripts”signet sources import <files...> --kind transcripts --schema signet --agent <id>
streams the current signet export transcripts JSONL shape into a durable daemon
job. signet sources imports list|status|pause|resume|retry|cancel reads or
controls that job. The daemon records per-line hashes, byte checkpoints,
statuses, rejection codes, and reconciliation counters; it does not store raw
transcript bodies in the ledgers.
The adapter is signet-export version 1. It preserves exact whitespace,
multiline messages, user/assistant/system/tool/unknown roles, projects,
historical timestamps, and source provenance. --agent is the target scope;
an embedded agent_id is not an authorization or routing override. Same
identity plus same content is duplicate; same identity plus changed content is
conversation_identity_conflict. Blank lines are counted separately from
rejected lines.
The managed transcript filesystem currently supports Linux and macOS only. On
Windows, the durable transcript import endpoints return HTTP 501 with
code: "transcript_import_unsupported_platform" before creating or mutating
an import job. Run the transcript import commands against a Linux or macOS
Signet daemon; other Windows source and native features remain supported.
Limits are one active job/file, 25 records per DB batch, 8 MiB per canonical
batch, 16 MiB per record, 4 MiB per message, and 50,000 messages. States are
staging, inventorying, queued, running, paused, completed,
completed_with_rejections, and cancelled. Restart recovers leases and byte
offsets. The terminal reconciliation invariant is `total = imported + duplicate
- rejected + pending
withpending = 0`. Exact corpus replay produces duplicates, not new evidence. Source removal purges staged/canonical/source rows, while bounded audit fingerprints/tombstones remain; derived knowledge is handled as unsupported/stale by the normal Dreaming review path.
Schema and vector migrations
Section titled “Schema and vector migrations”signet migrate-schemasignet migrate-schema --path /custom/path
signet migrate-vectors --dry-runsignet migrate-vectors --keep-blobssignet migrate-vectors --remove-zvecRun migrations against a backup and make sure the intended daemon/workspace is selected. migrate-schema is designed to be idempotent for supported legacy schemas. migrate-vectors --dry-run previews a vector migration before it changes data.
Audit embedding coverage
Section titled “Audit embedding coverage”signet embed auditsignet embed audit --jsonsignet embed backfill --dry-runsignet embed backfill --batch-size 100signet embed backfill --model-mismatch --dry-runsignet embed backfill --all --dry-runsignet embed audit is the supported coverage command. It reports total, embedded, missing, and coverage values, and may include staging information. signet embed gaps is retired and is not a valid CLI subcommand.
Use signet embed backfill to generate missing embeddings. --model-mismatch selects vectors with a different stored model or dimension. --all re-embeds every active memory and therefore requires either --dry-run or --model-mismatch as an explicit migration confirmation.
Embedding commands require a reachable daemon. See Runtime operations if it is not running.

