hippo-memory 1.70.0 → 1.72.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +2 -2
- package/dist/agent-memories/apply.d.ts +0 -11
- package/dist/agent-memories/apply.js +6 -21
- package/dist/agent-memories/claude-code.d.ts +4 -2
- package/dist/agent-memories/claude-code.js +15 -6
- package/dist/agent-memories/codex.js +1 -1
- package/dist/agent-memories/copilot.d.ts +1 -3
- package/dist/agent-memories/copilot.js +1 -17
- package/dist/agent-memories/files.js +23 -12
- package/dist/agent-memories/markdown.d.ts +1 -3
- package/dist/agent-memories/markdown.js +1 -3
- package/dist/agent-memories/project-folds.d.ts +10 -0
- package/dist/agent-memories/project-folds.js +34 -0
- package/dist/agent-memories/report.js +2 -1
- package/dist/agent-memories/sync.d.ts +4 -2
- package/dist/agent-memories/sync.js +18 -11
- package/dist/api/assemble.d.ts +7 -44
- package/dist/api/assemble.js +3 -23
- package/dist/api/audit.d.ts +33 -1
- package/dist/api/audit.js +48 -1
- package/dist/api/auth.d.ts +20 -26
- package/dist/api/auth.js +43 -29
- package/dist/api/auto-sleep.d.ts +5 -2
- package/dist/api/auto-sleep.js +9 -5
- package/dist/api/availability.d.ts +2 -15
- package/dist/api/availability.js +4 -18
- package/dist/api/cards.d.ts +42 -0
- package/dist/api/cards.js +52 -0
- package/dist/api/conflicts.d.ts +28 -0
- package/dist/api/conflicts.js +61 -0
- package/dist/api/context-render.js +4 -3
- package/dist/api/context-select.js +12 -15
- package/dist/api/context-types.d.ts +10 -35
- package/dist/api/context.d.ts +5 -22
- package/dist/api/context.js +38 -46
- package/dist/api/continuity.d.ts +47 -0
- package/dist/api/continuity.js +66 -0
- package/dist/{cli → api}/correction-latency.d.ts +2 -14
- package/dist/{cli → api}/correction-latency.js +2 -14
- package/dist/api/dormant.d.ts +5 -21
- package/dist/api/dormant.js +11 -28
- package/dist/api/drill-down.d.ts +7 -46
- package/dist/api/drill-down.js +6 -27
- package/dist/api/embeddings.d.ts +17 -0
- package/dist/api/embeddings.js +28 -0
- package/dist/api/error-reply.d.ts +8 -0
- package/dist/api/error-reply.js +21 -0
- package/dist/api/forget.d.ts +11 -26
- package/dist/api/forget.js +23 -35
- package/dist/api/goals.d.ts +1 -1
- package/dist/api/goals.js +5 -9
- package/dist/api/graph.d.ts +8 -0
- package/dist/api/graph.js +7 -0
- package/dist/api/index.d.ts +6 -2
- package/dist/api/index.js +6 -2
- package/dist/api/instruction-detect.js +21 -6
- package/dist/api/learn.d.ts +4 -0
- package/dist/api/learn.js +53 -27
- package/dist/api/ledger-db.d.ts +2 -5
- package/dist/api/ledger-db.js +5 -35
- package/dist/api/memories.d.ts +23 -0
- package/dist/api/memories.js +46 -0
- package/dist/api/objects.d.ts +9 -0
- package/dist/api/objects.js +11 -0
- package/dist/api/on-store.js +5 -3
- package/dist/api/outcome.js +1 -1
- package/dist/api/pilot-arm.d.ts +1 -11
- package/dist/api/pilot-arm.js +5 -45
- package/dist/api/predictions.d.ts +11 -0
- package/dist/api/predictions.js +24 -0
- package/dist/api/projects.d.ts +21 -0
- package/dist/api/projects.js +24 -0
- package/dist/api/promote.d.ts +13 -17
- package/dist/api/promote.js +12 -20
- package/dist/api/prompt-hook.d.ts +19 -6
- package/dist/api/prompt-hook.js +54 -13
- package/dist/api/provenance-coverage.d.ts +14 -0
- package/dist/{cli → api}/provenance-coverage.js +2 -6
- package/dist/api/recall-cli.d.ts +58 -0
- package/dist/api/recall-cli.js +103 -0
- package/dist/api/recall-core.js +17 -9
- package/dist/api/recall-finish.d.ts +53 -0
- package/dist/api/recall-finish.js +30 -0
- package/dist/api/recall-history.d.ts +17 -84
- package/dist/api/recall-history.js +15 -88
- package/dist/api/recall-pipeline.d.ts +2 -3
- package/dist/api/recall-pipeline.js +21 -15
- package/dist/api/recall-request.js +1 -1
- package/dist/api/recall-types.d.ts +64 -304
- package/dist/api/recall.d.ts +3 -34
- package/dist/api/recall.js +63 -89
- package/dist/api/refine.d.ts +7 -0
- package/dist/api/refine.js +10 -0
- package/dist/api/remember-local.d.ts +57 -0
- package/dist/api/remember-local.js +90 -0
- package/dist/api/remember.d.ts +20 -2
- package/dist/api/remember.js +16 -3
- package/dist/api/session-end.d.ts +22 -0
- package/dist/api/session-end.js +101 -0
- package/dist/api/sleep-run.d.ts +2 -4
- package/dist/api/sleep-run.js +28 -28
- package/dist/api/sleep.d.ts +9 -28
- package/dist/api/status.d.ts +24 -0
- package/dist/api/status.js +40 -0
- package/dist/api/store-init.d.ts +4 -0
- package/dist/api/store-init.js +9 -0
- package/dist/api/tokens.d.ts +3 -10
- package/dist/api/tokens.js +4 -11
- package/dist/api/types.d.ts +8 -29
- package/dist/api/types.js +10 -23
- package/dist/capture/caller-session.d.ts +0 -3
- package/dist/capture/caller-session.js +1 -12
- package/dist/capture/capture-error.d.ts +2 -2
- package/dist/capture/capture-error.js +23 -18
- package/dist/capture/codex-patch.js +3 -1
- package/dist/capture/command.d.ts +4 -12
- package/dist/capture/command.js +39 -114
- package/dist/capture/compact.d.ts +4 -15
- package/dist/capture/compact.js +26 -30
- package/dist/capture/compaction-items-caller.js +11 -20
- package/dist/capture/compaction-record.d.ts +7 -93
- package/dist/capture/compaction-record.js +34 -399
- package/dist/capture/compaction-spool.d.ts +5 -3
- package/dist/capture/compaction-spool.js +21 -7
- package/dist/capture/copilot-transcript.d.ts +2 -1
- package/dist/capture/copilot-transcript.js +2 -1
- package/dist/capture/extract.d.ts +5 -2
- package/dist/capture/extract.js +4 -3
- package/dist/capture/failure-caller.d.ts +1 -1
- package/dist/capture/failure-caller.js +21 -16
- package/dist/capture/failure-reading.d.ts +2 -1
- package/dist/capture/failure-reading.js +7 -9
- package/dist/capture/pre-compact-caller.js +5 -4
- package/dist/capture/session-digest.d.ts +1 -1
- package/dist/capture/session-digest.js +17 -10
- package/dist/capture/session-end-caller.js +2 -1
- package/dist/capture/session-worker.js +3 -4
- package/dist/capture/transcript.d.ts +4 -11
- package/dist/capture/transcript.js +10 -21
- package/dist/capture/working-state.d.ts +4 -2
- package/dist/capture/working-state.js +4 -2
- package/dist/cli/api-context.d.ts +3 -0
- package/dist/cli/api-context.js +6 -0
- package/dist/cli/audit-prune.d.ts +1 -59
- package/dist/cli/audit-prune.js +2 -61
- package/dist/cli/audit.d.ts +1 -1
- package/dist/cli/audit.js +42 -43
- package/dist/cli/auth.d.ts +2 -2
- package/dist/cli/auth.js +61 -44
- package/dist/cli/briefs.d.ts +1 -4
- package/dist/cli/briefs.js +42 -301
- package/dist/cli/card.d.ts +2 -2
- package/dist/cli/card.js +63 -56
- package/dist/cli/client.d.ts +12 -27
- package/dist/cli/client.js +41 -44
- package/dist/cli/compact-resume-payload.js +4 -3
- package/dist/cli/context.d.ts +2 -3
- package/dist/cli/context.js +22 -18
- package/dist/cli/continuity.d.ts +6 -6
- package/dist/cli/continuity.js +81 -86
- package/dist/cli/curate.d.ts +13 -17
- package/dist/cli/curate.js +88 -116
- package/dist/cli/dag.d.ts +4 -4
- package/dist/cli/dag.js +55 -34
- package/dist/cli/decisions.d.ts +2 -4
- package/dist/cli/decisions.js +18 -309
- package/dist/cli/eval.d.ts +1 -1
- package/dist/cli/eval.js +27 -26
- package/dist/cli/exit.d.ts +6 -0
- package/dist/cli/exit.js +11 -0
- package/dist/cli/explain.d.ts +2 -3
- package/dist/cli/explain.js +25 -27
- package/dist/cli/flag-values.d.ts +6 -1
- package/dist/cli/flag-values.js +42 -15
- package/dist/cli/flags.d.ts +0 -288
- package/dist/cli/flags.js +3 -138
- package/dist/cli/github.d.ts +14 -0
- package/dist/{connectors/github/cli-impl.js → cli/github.js} +43 -71
- package/dist/cli/goals.d.ts +2 -2
- package/dist/cli/goals.js +46 -50
- package/dist/cli/graph.d.ts +3 -0
- package/dist/cli/graph.js +83 -0
- package/dist/cli/hook-runtime.d.ts +12 -32
- package/dist/cli/hook-runtime.js +21 -64
- package/dist/cli/incidents.d.ts +3 -0
- package/dist/cli/incidents.js +112 -0
- package/dist/cli/init.d.ts +2 -2
- package/dist/cli/init.js +33 -30
- package/dist/cli/install-steps.d.ts +2 -1
- package/dist/cli/install-steps.js +13 -14
- package/dist/cli/last-sleep.d.ts +2 -1
- package/dist/cli/last-sleep.js +4 -1
- package/dist/cli/lenient-id.d.ts +2 -0
- package/dist/cli/lenient-id.js +13 -0
- package/dist/cli/maintenance.d.ts +5 -5
- package/dist/cli/maintenance.js +37 -43
- package/dist/cli/notes.d.ts +2 -0
- package/dist/cli/notes.js +41 -0
- package/dist/cli/object-verbs.js +4 -3
- package/dist/cli/open-browser.d.ts +14 -0
- package/dist/cli/open-browser.js +26 -0
- package/dist/cli/owner-validation.d.ts +5 -28
- package/dist/cli/owner-validation.js +5 -28
- package/dist/cli/playbooks.d.ts +3 -4
- package/dist/cli/playbooks.js +131 -300
- package/dist/cli/predictions.d.ts +3 -0
- package/dist/cli/predictions.js +175 -0
- package/dist/cli/print.d.ts +2 -5
- package/dist/cli/print.js +3 -5
- package/dist/cli/projects.d.ts +2 -2
- package/dist/cli/projects.js +31 -25
- package/dist/cli/quality-repair-once.d.ts +1 -1
- package/dist/cli/quality-repair-once.js +7 -6
- package/dist/cli/recall.d.ts +2 -4
- package/dist/cli/recall.js +67 -137
- package/dist/cli/refine-llm.d.ts +5 -31
- package/dist/cli/refine-llm.js +23 -50
- package/dist/cli/remember.d.ts +3 -3
- package/dist/cli/remember.js +134 -192
- package/dist/cli/scheduler.d.ts +2 -17
- package/dist/cli/scheduler.js +14 -19
- package/dist/cli/serve.js +23 -14
- package/dist/cli/session-hooks.d.ts +11 -19
- package/dist/cli/session-hooks.js +143 -214
- package/dist/cli/setup.d.ts +4 -4
- package/dist/cli/setup.js +35 -30
- package/dist/cli/shared.d.ts +7 -25
- package/dist/cli/shared.js +17 -60
- package/dist/cli/slack.d.ts +2 -2
- package/dist/cli/slack.js +19 -23
- package/dist/cli/sleep-render.js +6 -3
- package/dist/cli/sleep.d.ts +3 -2
- package/dist/cli/sleep.js +17 -49
- package/dist/cli/status.d.ts +11 -14
- package/dist/cli/status.js +74 -120
- package/dist/cli/stdin.d.ts +4 -6
- package/dist/cli/stdin.js +2 -3
- package/dist/cli/transfer.d.ts +9 -9
- package/dist/cli/transfer.js +87 -108
- package/dist/cli/usage.d.ts +0 -79
- package/dist/cli/usage.js +1 -689
- package/dist/cli/verb-row.d.ts +32 -0
- package/dist/cli/verb-row.js +6 -0
- package/dist/cli/verbs/health.d.ts +27 -0
- package/dist/cli/verbs/health.js +232 -0
- package/dist/cli/verbs/memory.d.ts +16 -0
- package/dist/cli/verbs/memory.js +244 -0
- package/dist/cli/verbs/objects.d.ts +20 -0
- package/dist/cli/verbs/objects.js +254 -0
- package/dist/cli/verbs/sessions.d.ts +31 -0
- package/dist/cli/verbs/sessions.js +312 -0
- package/dist/cli/verbs.d.ts +81 -0
- package/dist/cli/verbs.js +7 -0
- package/dist/cli/versioned-verbs.d.ts +51 -0
- package/dist/cli/versioned-verbs.js +79 -0
- package/dist/cli.d.ts +1 -654
- package/dist/cli.js +44 -510
- package/dist/connectors/dlq.d.ts +39 -3
- package/dist/connectors/dlq.js +37 -3
- package/dist/connectors/github/backfill.d.ts +5 -25
- package/dist/connectors/github/backfill.js +26 -52
- package/dist/connectors/github/deletion.d.ts +4 -18
- package/dist/connectors/github/deletion.js +2 -15
- package/dist/connectors/github/dlq.d.ts +8 -33
- package/dist/connectors/github/dlq.js +34 -93
- package/dist/connectors/github/ingest.d.ts +4 -12
- package/dist/connectors/github/ingest.js +5 -36
- package/dist/connectors/github/octokit-client.d.ts +4 -16
- package/dist/connectors/github/octokit-client.js +27 -24
- package/dist/connectors/github/ratelimit.d.ts +3 -14
- package/dist/connectors/github/ratelimit.js +3 -14
- package/dist/connectors/github/scope.d.ts +3 -5
- package/dist/connectors/github/scope.js +3 -5
- package/dist/connectors/github/signature.d.ts +4 -26
- package/dist/connectors/github/signature.js +4 -26
- package/dist/connectors/github/tenant-routing.d.ts +2 -24
- package/dist/connectors/github/tenant-routing.js +4 -26
- package/dist/connectors/github/transform.js +2 -16
- package/dist/connectors/github/types.d.ts +3 -15
- package/dist/connectors/github/types.js +2 -9
- package/dist/connectors/github/webhook.d.ts +3 -16
- package/dist/connectors/github/webhook.js +38 -23
- package/dist/connectors/ingest.d.ts +10 -0
- package/dist/connectors/ingest.js +28 -0
- package/dist/connectors/slack/backfill.d.ts +4 -17
- package/dist/connectors/slack/backfill.js +4 -13
- package/dist/connectors/slack/dlq.d.ts +2 -19
- package/dist/connectors/slack/dlq.js +51 -90
- package/dist/connectors/slack/ingest.d.ts +4 -9
- package/dist/connectors/slack/ingest.js +4 -30
- package/dist/connectors/slack/scope.d.ts +2 -8
- package/dist/connectors/slack/scope.js +2 -8
- package/dist/connectors/slack/signature.d.ts +1 -6
- package/dist/connectors/slack/tenant-routing.d.ts +2 -19
- package/dist/connectors/slack/tenant-routing.js +2 -21
- package/dist/connectors/slack/transform.d.ts +2 -18
- package/dist/connectors/slack/transform.js +2 -18
- package/dist/connectors/slack/types.d.ts +3 -9
- package/dist/connectors/slack/types.js +2 -4
- package/dist/connectors/slack/web-client.js +33 -27
- package/dist/connectors/slack/webhook.d.ts +3 -19
- package/dist/connectors/slack/webhook.js +6 -26
- package/dist/connectors/slack/workspaces.d.ts +4 -24
- package/dist/connectors/slack/workspaces.js +4 -24
- package/dist/consolidate/conflicts.js +7 -15
- package/dist/consolidate/dag-summary.d.ts +8 -0
- package/dist/consolidate/dag-summary.js +41 -0
- package/dist/consolidate/dag.d.ts +5 -28
- package/dist/consolidate/dag.js +29 -84
- package/dist/consolidate/decay.js +7 -19
- package/dist/consolidate/dedupe.d.ts +13 -52
- package/dist/consolidate/dedupe.js +18 -74
- package/dist/consolidate/flush-units.d.ts +3 -4
- package/dist/consolidate/flush-units.js +3 -3
- package/dist/consolidate/half-life-migration.d.ts +3 -26
- package/dist/consolidate/half-life-migration.js +11 -28
- package/dist/consolidate/llm-passes.js +49 -40
- package/dist/consolidate/memory-value-weights.d.ts +2 -13
- package/dist/consolidate/memory-value-weights.js +2 -13
- package/dist/consolidate/memory-value.d.ts +11 -84
- package/dist/consolidate/memory-value.js +18 -105
- package/dist/consolidate/merge.js +12 -33
- package/dist/consolidate/physics-pass.d.ts +6 -1
- package/dist/consolidate/physics-pass.js +27 -9
- package/dist/consolidate/replay.d.ts +6 -38
- package/dist/consolidate/replay.js +25 -56
- package/dist/consolidate/run.js +1 -1
- package/dist/consolidate/sleep.d.ts +1 -8
- package/dist/consolidate/sleep.js +13 -22
- package/dist/consolidate/trace.d.ts +3 -18
- package/dist/consolidate/trace.js +3 -18
- package/dist/consolidate/traces.js +9 -25
- package/dist/core/ablation.d.ts +14 -91
- package/dist/core/ablation.js +16 -91
- package/dist/core/active-scope.d.ts +7 -0
- package/dist/{sharing/scope.js → core/active-scope.js} +5 -12
- package/dist/core/ambient.d.ts +5 -8
- package/dist/core/ambient.js +40 -26
- package/dist/core/api-errors.d.ts +16 -0
- package/dist/core/api-errors.js +20 -0
- package/dist/core/capture-contract.d.ts +4 -2
- package/dist/core/capture-contract.js +4 -2
- package/dist/core/card.d.ts +4 -1
- package/dist/core/card.js +11 -1
- package/dist/core/compaction-timing.d.ts +7 -0
- package/dist/core/compaction-timing.js +9 -0
- package/dist/core/compare.d.ts +11 -67
- package/dist/core/compare.js +9 -63
- package/dist/core/config.d.ts +10 -24
- package/dist/core/config.js +20 -16
- package/dist/core/cosine.d.ts +3 -0
- package/dist/core/cosine.js +19 -0
- package/dist/core/handoff.d.ts +1 -7
- package/dist/core/handoff.js +1 -7
- package/dist/core/markdown.d.ts +6 -0
- package/dist/{store → core}/markdown.js +23 -22
- package/dist/core/memory-audit.d.ts +17 -0
- package/dist/core/memory-audit.js +54 -0
- package/dist/core/memory-quality.js +1 -1
- package/dist/core/memory.d.ts +51 -168
- package/dist/core/memory.js +76 -239
- package/dist/{consolidate → core}/merged-row.d.ts +1 -1
- package/dist/{consolidate → core}/merged-row.js +3 -2
- package/dist/core/package-root.d.ts +3 -0
- package/dist/core/package-root.js +5 -0
- package/dist/core/physics-config.d.ts +1 -4
- package/dist/core/physics-config.js +3 -8
- package/dist/core/physics.d.ts +15 -61
- package/dist/core/physics.js +65 -138
- package/dist/core/prediction.d.ts +3 -0
- package/dist/core/prediction.js +6 -0
- package/dist/core/project-identity.d.ts +20 -58
- package/dist/core/project-identity.js +27 -39
- package/dist/core/project-remote.js +13 -2
- package/dist/core/raw-append-only.d.ts +5 -0
- package/dist/core/raw-append-only.js +7 -0
- package/dist/core/recall-scope.d.ts +69 -0
- package/dist/core/recall-scope.js +138 -0
- package/dist/core/salience.d.ts +1 -7
- package/dist/core/salience.js +1 -7
- package/dist/dashboard/dashboard-actions.js +2 -2
- package/dist/dashboard/dashboard-snapshot.d.ts +2 -1
- package/dist/dashboard/dashboard-snapshot.js +11 -2
- package/dist/dashboard/dashboard-types.d.ts +2 -1
- package/dist/dashboard/dashboard.d.ts +1 -0
- package/dist/dashboard/dashboard.js +50 -4
- package/dist/db/busy.d.ts +3 -8
- package/dist/db/busy.js +37 -33
- package/dist/db/connect.js +7 -8
- package/dist/db/index.d.ts +3 -3
- package/dist/db/index.js +3 -3
- package/dist/db/migrate.js +3 -3
- package/dist/db/migrations/index.d.ts +1 -1
- package/dist/db/migrations/index.js +3 -1
- package/dist/db/migrations/types.d.ts +2 -5
- package/dist/db/migrations/v14.js +2 -3
- package/dist/db/migrations/v15.js +2 -8
- package/dist/db/migrations/v16.js +2 -3
- package/dist/db/migrations/v17.js +2 -3
- package/dist/db/migrations/v19.js +2 -5
- package/dist/db/migrations/v20.js +2 -7
- package/dist/db/migrations/v22.js +4 -17
- package/dist/db/migrations/v23.js +3 -14
- package/dist/db/migrations/v24.js +2 -4
- package/dist/db/migrations/v25.js +3 -8
- package/dist/db/migrations/v26.js +2 -13
- package/dist/db/migrations/v27.js +3 -11
- package/dist/db/migrations/v28.js +2 -14
- package/dist/db/migrations/v29.js +4 -18
- package/dist/db/migrations/v30.js +4 -16
- package/dist/db/migrations/v31.js +2 -15
- package/dist/db/migrations/v32.js +4 -22
- package/dist/db/migrations/v33.js +2 -15
- package/dist/db/migrations/v34.js +2 -11
- package/dist/db/migrations/v35.js +2 -11
- package/dist/db/migrations/v36.js +2 -11
- package/dist/db/migrations/v37.js +8 -33
- package/dist/db/migrations/v38.js +5 -38
- package/dist/db/migrations/v39.js +9 -20
- package/dist/db/migrations/v40.js +2 -9
- package/dist/db/migrations/v41.js +2 -24
- package/dist/db/migrations/v43.js +1 -1
- package/dist/db/migrations/v44.js +2 -8
- package/dist/db/migrations/v45.js +2 -7
- package/dist/db/migrations/v47.js +2 -3
- package/dist/db/migrations/v51.js +1 -1
- package/dist/db/migrations/v55.d.ts +3 -0
- package/dist/db/migrations/v55.js +17 -0
- package/dist/db/open.d.ts +2 -2
- package/dist/db/open.js +21 -9
- package/dist/db/physics-state.d.ts +6 -22
- package/dist/db/physics-state.js +28 -39
- package/dist/db/raw-archive-mirror-cleanup.d.ts +2 -17
- package/dist/db/raw-archive-mirror-cleanup.js +2 -17
- package/dist/db/tables.d.ts +2 -0
- package/dist/db/tables.js +6 -2
- package/dist/db/vector-store.d.ts +2 -0
- package/dist/db/vector-store.js +25 -5
- package/dist/db/wal-checkpointer.js +2 -1
- package/dist/doctor.js +85 -27
- package/dist/embeddings/local.d.ts +62 -0
- package/dist/embeddings/local.js +146 -0
- package/dist/embeddings/provider.d.ts +43 -0
- package/dist/{store/embeddings → embeddings}/provider.js +58 -83
- package/dist/embeddings/transformers.d.ts +26 -0
- package/dist/embeddings/transformers.js +89 -0
- package/dist/entry/session-text.d.ts +1 -1
- package/dist/entry/session-text.js +3 -2
- package/dist/eval/eval-stats.d.ts +15 -53
- package/dist/eval/eval-stats.js +12 -42
- package/dist/eval/eval-suite.d.ts +2 -13
- package/dist/eval/eval-suite.js +91 -45
- package/dist/eval/eval.d.ts +6 -24
- package/dist/eval/eval.js +8 -35
- package/dist/eval/judgment.d.ts +0 -3
- package/dist/eval/judgment.js +30 -15
- package/dist/extensions/openclaw-plugin/index.js +1 -1
- package/dist/graph/extract.d.ts +5 -27
- package/dist/graph/extract.js +10 -36
- package/dist/graph/recall.d.ts +7 -20
- package/dist/graph/recall.js +15 -77
- package/dist/graph/stream.d.ts +7 -39
- package/dist/graph/stream.js +11 -34
- package/dist/graph/view.d.ts +9 -35
- package/dist/graph/view.js +24 -44
- package/dist/graph/write.d.ts +1 -1
- package/dist/graph/write.js +9 -9
- package/dist/hooks/codex-session.js +3 -2
- package/dist/hooks/codex-wrapper.js +4 -3
- package/dist/hooks/copilot.js +2 -1
- package/dist/hooks/hook-blocks.d.ts +6 -2
- package/dist/hooks/hook-blocks.js +37 -124
- package/dist/hooks/json-hooks.d.ts +4 -36
- package/dist/hooks/json-hooks.js +22 -59
- package/dist/hooks/opencode.d.ts +0 -38
- package/dist/hooks/opencode.js +17 -81
- package/dist/hooks/shared.d.ts +6 -21
- package/dist/hooks/shared.js +31 -33
- package/dist/importers/core.d.ts +12 -37
- package/dist/importers/core.js +10 -28
- package/dist/importers/markdown-parse.d.ts +8 -22
- package/dist/importers/markdown-parse.js +8 -25
- package/dist/importers/markdown.js +3 -12
- package/dist/importers/sources.js +12 -39
- package/dist/importers/vault.d.ts +2 -8
- package/dist/importers/vault.js +31 -85
- package/dist/index.d.ts +8 -3
- package/dist/index.js +8 -3
- package/dist/learn/autolearn.d.ts +23 -42
- package/dist/learn/autolearn.js +45 -52
- package/dist/learn/churn-git.js +13 -4
- package/dist/learn/extract.d.ts +3 -2
- package/dist/learn/extract.js +8 -8
- package/dist/learn/forward-claim-detector.d.ts +6 -30
- package/dist/learn/forward-claim-detector.js +18 -68
- package/dist/learn/invalidation.d.ts +6 -18
- package/dist/learn/invalidation.js +18 -31
- package/dist/mcp/admin-tools.d.ts +2 -2
- package/dist/mcp/admin-tools.js +30 -53
- package/dist/mcp/format.js +3 -2
- package/dist/mcp/framing.d.ts +1 -0
- package/dist/mcp/framing.js +1 -1
- package/dist/mcp/memory-tools.js +7 -10
- package/dist/mcp/protocol.d.ts +15 -29
- package/dist/mcp/protocol.js +26 -16
- package/dist/mcp/recall-tools.js +14 -11
- package/dist/mcp/request.d.ts +3 -11
- package/dist/mcp/request.js +12 -27
- package/dist/mcp/server.d.ts +3 -9
- package/dist/mcp/server.js +5 -16
- package/dist/mcp/session-state.d.ts +1 -1
- package/dist/mcp/session-state.js +5 -11
- package/dist/mcp/stdio.d.ts +2 -6
- package/dist/mcp/stdio.js +68 -16
- package/dist/mcp/tool-args.js +2 -1
- package/dist/mcp/tools.js +47 -22
- package/dist/objects/customer-notes.d.ts +9 -44
- package/dist/objects/customer-notes.js +7 -48
- package/dist/objects/decisions.d.ts +14 -52
- package/dist/objects/decisions.js +15 -53
- package/dist/objects/descriptor.d.ts +1 -1
- package/dist/objects/incidents.d.ts +9 -40
- package/dist/objects/incidents.js +7 -41
- package/dist/objects/lifecycle.d.ts +1 -1
- package/dist/objects/lifecycle.js +2 -1
- package/dist/objects/policies.d.ts +13 -91
- package/dist/objects/policies.js +13 -99
- package/dist/objects/processes.d.ts +9 -54
- package/dist/objects/processes.js +7 -61
- package/dist/objects/project-briefs.d.ts +13 -57
- package/dist/objects/project-briefs.js +16 -78
- package/dist/objects/skills.d.ts +9 -44
- package/dist/objects/skills.js +8 -54
- package/dist/postinstall.js +7 -20
- package/dist/predictions/planning-fallacy.d.ts +11 -34
- package/dist/rerankers/clef.js +6 -37
- package/dist/rerankers/cross-encoder.d.ts +31 -2
- package/dist/rerankers/cross-encoder.js +65 -101
- package/dist/rerankers/index.js +5 -4
- package/dist/rerankers/jev.js +11 -10
- package/dist/rerankers/llm.d.ts +2 -11
- package/dist/rerankers/llm.js +14 -14
- package/dist/rerankers/outage-warning.d.ts +5 -2
- package/dist/rerankers/outage-warning.js +7 -4
- package/dist/rerankers/remote.d.ts +1 -0
- package/dist/rerankers/remote.js +2 -0
- package/dist/rerankers/types.d.ts +2 -14
- package/dist/search/bm25-search.js +1 -1
- package/dist/search/boosts.d.ts +0 -2
- package/dist/search/boosts.js +3 -3
- package/dist/search/embed-memories.d.ts +9 -0
- package/dist/search/embed-memories.js +377 -0
- package/dist/search/goal-boost.d.ts +23 -0
- package/dist/search/goal-boost.js +93 -0
- package/dist/search/hybrid.d.ts +11 -2
- package/dist/search/hybrid.js +9 -4
- package/dist/search/multihop.js +2 -3
- package/dist/search/path-context.d.ts +5 -18
- package/dist/search/path-context.js +5 -18
- package/dist/search/physics-search.d.ts +6 -3
- package/dist/search/physics-search.js +29 -19
- package/dist/search/rerank.js +1 -1
- package/dist/search/rrf.d.ts +7 -35
- package/dist/search/rrf.js +5 -30
- package/dist/search/vector.d.ts +13 -4
- package/dist/search/vector.js +40 -13
- package/dist/server/auth.d.ts +11 -28
- package/dist/server/auth.js +49 -32
- package/dist/server/boot.d.ts +2 -21
- package/dist/server/boot.js +69 -161
- package/dist/server/client-ip.d.ts +3 -21
- package/dist/server/client-ip.js +8 -30
- package/dist/server/deadline.d.ts +0 -2
- package/dist/server/deadline.js +1 -7
- package/dist/server/defaults.d.ts +4 -0
- package/dist/server/defaults.js +5 -0
- package/dist/server/key-check-bounds.d.ts +2 -1
- package/dist/server/lifecycle.d.ts +5 -4
- package/dist/server/lifecycle.js +19 -4
- package/dist/server/mcp-http.js +24 -53
- package/dist/server/rate-limit.d.ts +5 -18
- package/dist/server/rate-limit.js +4 -13
- package/dist/server/request.d.ts +4 -8
- package/dist/server/request.js +16 -19
- package/dist/server/route-checks.d.ts +7 -0
- package/dist/server/route-checks.js +42 -0
- package/dist/server/route-table.d.ts +9 -8
- package/dist/server/route-table.js +127 -139
- package/dist/server/routes/admin.d.ts +8 -8
- package/dist/server/routes/admin.js +35 -49
- package/dist/server/routes/customer-notes.d.ts +6 -6
- package/dist/server/routes/customer-notes.js +8 -14
- package/dist/server/routes/decisions.d.ts +6 -6
- package/dist/server/routes/decisions.js +12 -21
- package/dist/server/routes/incidents.d.ts +6 -6
- package/dist/server/routes/incidents.js +14 -25
- package/dist/server/routes/memories.d.ts +9 -9
- package/dist/server/routes/memories.js +20 -63
- package/dist/server/routes/object-routes.d.ts +6 -11
- package/dist/server/routes/object-routes.js +11 -22
- package/dist/server/routes/policies.d.ts +7 -7
- package/dist/server/routes/policies.js +12 -22
- package/dist/server/routes/predictions.d.ts +6 -6
- package/dist/server/routes/predictions.js +22 -38
- package/dist/server/routes/processes.d.ts +6 -6
- package/dist/server/routes/processes.js +17 -28
- package/dist/server/routes/project-briefs.d.ts +7 -7
- package/dist/server/routes/project-briefs.js +11 -20
- package/dist/server/routes/recall.d.ts +5 -5
- package/dist/server/routes/recall.js +16 -45
- package/dist/server/routes/skills.d.ts +7 -7
- package/dist/server/routes/skills.js +10 -22
- package/dist/server/server-detect.d.ts +15 -53
- package/dist/server/server-detect.js +55 -96
- package/dist/server/sleep-child.js +26 -7
- package/dist/server/sleep-offload.d.ts +11 -5
- package/dist/server/sleep-offload.js +21 -12
- package/dist/server/types.d.ts +32 -18
- package/dist/server/validation.d.ts +3 -2
- package/dist/server/validation.js +15 -33
- package/dist/server.d.ts +7 -6
- package/dist/server.js +8 -6
- package/dist/sharing/global-store.d.ts +19 -0
- package/dist/sharing/global-store.js +75 -0
- package/dist/sharing/global-sync.d.ts +6 -0
- package/dist/sharing/global-sync.js +73 -0
- package/dist/sharing/project-merge.d.ts +11 -19
- package/dist/sharing/project-merge.js +63 -125
- package/dist/sharing/search-both.d.ts +60 -0
- package/dist/sharing/search-both.js +138 -0
- package/dist/sharing/share.d.ts +40 -0
- package/dist/sharing/share.js +229 -0
- package/dist/store/ambient.js +9 -15
- package/dist/store/audit-event.d.ts +5 -13
- package/dist/store/audit-event.js +4 -12
- package/dist/store/audit.d.ts +2 -21
- package/dist/store/audit.js +8 -67
- package/dist/store/auth.d.ts +10 -8
- package/dist/store/auth.js +17 -12
- package/dist/store/candidates.d.ts +23 -5
- package/dist/store/candidates.js +119 -71
- package/dist/store/capture-write.d.ts +17 -0
- package/dist/store/capture-write.js +35 -0
- package/dist/store/card-detail.d.ts +2 -1
- package/dist/store/card-detail.js +2 -1
- package/dist/store/cards.d.ts +14 -9
- package/dist/store/cards.js +72 -126
- package/dist/store/compaction-caller.d.ts +18 -0
- package/dist/store/compaction-caller.js +29 -0
- package/dist/store/compactions-record.d.ts +115 -0
- package/dist/store/compactions-record.js +417 -0
- package/dist/store/compactions.js +6 -4
- package/dist/store/conflicts.d.ts +4 -21
- package/dist/store/conflicts.js +76 -152
- package/dist/store/connectors/dlq.d.ts +10 -0
- package/dist/store/connectors/dlq.js +32 -0
- package/dist/store/connectors/github.d.ts +14 -16
- package/dist/store/connectors/github.js +34 -57
- package/dist/store/connectors/slack.d.ts +2 -11
- package/dist/store/connectors/slack.js +18 -47
- package/dist/store/dashboard-reads.js +11 -14
- package/dist/store/delete-and-batch.d.ts +17 -31
- package/dist/store/delete-and-batch.js +84 -67
- package/dist/store/delivery-recorder.d.ts +15 -4
- package/dist/store/delivery-recorder.js +34 -17
- package/dist/store/descendant-page.js +6 -3
- package/dist/store/diagnostics.js +6 -13
- package/dist/store/dormant.d.ts +8 -30
- package/dist/store/dormant.js +18 -57
- package/dist/store/embeddings/index.d.ts +11 -90
- package/dist/store/embeddings/index.js +18 -523
- package/dist/store/entry-reads.d.ts +34 -61
- package/dist/store/entry-reads.js +111 -136
- package/dist/store/entry-row.d.ts +6 -35
- package/dist/store/entry-row.js +9 -37
- package/dist/store/entry-writes.d.ts +12 -18
- package/dist/store/entry-writes.js +46 -44
- package/dist/store/failure-log-at.d.ts +8 -0
- package/dist/store/failure-log-at.js +16 -0
- package/dist/store/failure-log.d.ts +2 -2
- package/dist/store/failure-log.js +5 -3
- package/dist/{trust → store}/gated-write.d.ts +3 -1
- package/dist/{trust → store}/gated-write.js +7 -5
- package/dist/store/goals.d.ts +3 -40
- package/dist/store/goals.js +41 -178
- package/dist/store/graph-queue.d.ts +6 -22
- package/dist/store/graph-queue.js +14 -45
- package/dist/store/graph-reads.d.ts +11 -35
- package/dist/store/graph-reads.js +24 -60
- package/dist/store/graph-rows.d.ts +3 -6
- package/dist/store/graph-rows.js +6 -9
- package/dist/store/graph-view-rows.d.ts +2 -1
- package/dist/store/graph-view-rows.js +2 -1
- package/dist/store/graph-writes.d.ts +10 -35
- package/dist/store/graph-writes.js +59 -106
- package/dist/store/half-life.d.ts +2 -1
- package/dist/store/half-life.js +14 -16
- package/dist/store/handoffs.d.ts +6 -12
- package/dist/store/handoffs.js +22 -40
- package/dist/store/index-and-stats.d.ts +6 -19
- package/dist/store/index-and-stats.js +36 -84
- package/dist/store/key-writes.js +1 -1
- package/dist/store/ledger-turn.d.ts +9 -0
- package/dist/store/ledger-turn.js +38 -0
- package/dist/store/mirrors.d.ts +2 -6
- package/dist/store/mirrors.js +24 -29
- package/dist/store/open.d.ts +0 -4
- package/dist/store/open.js +42 -62
- package/dist/store/pilot-arm.d.ts +12 -0
- package/dist/store/pilot-arm.js +42 -0
- package/dist/store/planning-fallacy-evidence.d.ts +2 -30
- package/dist/store/planning-fallacy-evidence.js +8 -37
- package/dist/store/port.d.ts +91 -82
- package/dist/store/port.js +8 -0
- package/dist/store/predictions.d.ts +12 -53
- package/dist/store/predictions.js +41 -125
- package/dist/store/project-tags.d.ts +62 -0
- package/dist/store/project-tags.js +67 -0
- package/dist/{cli → store}/quality-repair.js +15 -31
- package/dist/store/quarantine.js +2 -1
- package/dist/store/raw-archive.d.ts +4 -16
- package/dist/store/raw-archive.js +14 -29
- package/dist/store/recall-trace.d.ts +12 -77
- package/dist/store/recall-trace.js +37 -97
- package/dist/store/rejected-values.js +9 -20
- package/dist/store/rejection-probe.d.ts +4 -0
- package/dist/store/rejection-probe.js +19 -0
- package/dist/store/rejection.d.ts +10 -73
- package/dist/store/rejection.js +12 -84
- package/dist/store/report-reads.d.ts +6 -0
- package/dist/store/report-reads.js +29 -0
- package/dist/store/rows.d.ts +9 -19
- package/dist/store/rows.js +36 -34
- package/dist/store/rule-sql.d.ts +14 -0
- package/dist/store/rule-sql.js +56 -0
- package/dist/store/search-rows.d.ts +7 -38
- package/dist/store/search-rows.js +23 -54
- package/dist/store/sessions.d.ts +10 -47
- package/dist/store/sessions.js +21 -75
- package/dist/store/set-aside.d.ts +14 -0
- package/dist/store/set-aside.js +23 -0
- package/dist/store/sqlite/busy.d.ts +3 -0
- package/dist/store/sqlite/busy.js +8 -0
- package/dist/store/sqlite/connector-events-group.js +5 -8
- package/dist/store/sqlite/connector-writes-group.js +3 -3
- package/dist/store/sqlite/entry-writes-group.js +4 -4
- package/dist/store/sqlite/error-codec.js +8 -5
- package/dist/store/sqlite/executor.d.ts +2 -1
- package/dist/store/sqlite/executor.js +12 -5
- package/dist/store/sqlite/graph-reads-group.js +1 -1
- package/dist/store/sqlite/held-connection.d.ts +9 -0
- package/dist/store/sqlite/held-connection.js +41 -0
- package/dist/store/sqlite/local.d.ts +3 -3
- package/dist/store/sqlite/local.js +1 -0
- package/dist/store/sqlite/object-rows.d.ts +1 -1
- package/dist/store/sqlite/object-rows.js +6 -3
- package/dist/store/sqlite/objects-group.d.ts +1 -1
- package/dist/store/sqlite/objects-group.js +5 -3
- package/dist/store/sqlite/quarantine-group.js +2 -2
- package/dist/store/sqlite/store.d.ts +1 -4
- package/dist/store/sqlite/store.js +16 -15
- package/dist/store/sqlite/vector-reads-group.js +2 -2
- package/dist/store/sqlite/worker-jobs.js +1 -1
- package/dist/store/sqlite/worker-ops.d.ts +13 -2
- package/dist/store/sqlite/worker-ops.js +13 -2
- package/dist/store/sqlite/worker-store.js +5 -2
- package/dist/store/summaries.d.ts +11 -63
- package/dist/store/summaries.js +37 -148
- package/dist/store/summary-dirty.js +1 -1
- package/dist/store/tenant-lookup.d.ts +6 -1
- package/dist/store/tenant-lookup.js +7 -0
- package/dist/store/tenant.d.ts +2 -16
- package/dist/store/tenant.js +4 -19
- package/dist/store/token-ledger.d.ts +13 -50
- package/dist/store/token-ledger.js +19 -85
- package/dist/store/usage-reports.js +5 -13
- package/dist/store/vector-index.d.ts +46 -0
- package/dist/store/vector-index.js +171 -0
- package/dist/store/working-memory.d.ts +6 -25
- package/dist/store/working-memory.js +18 -52
- package/dist/support-bundle.js +9 -8
- package/dist/trust/reject-flow.js +3 -5
- package/dist/util/agent-homes.d.ts +15 -0
- package/dist/util/agent-homes.js +34 -0
- package/dist/util/anthropic-messages.d.ts +3 -0
- package/dist/util/anthropic-messages.js +35 -6
- package/dist/util/atomic-write.d.ts +2 -1
- package/dist/util/atomic-write.js +35 -4
- package/dist/util/capped-json.d.ts +6 -0
- package/dist/util/capped-json.js +46 -0
- package/dist/util/chunked.d.ts +3 -0
- package/dist/util/chunked.js +10 -0
- package/dist/util/crash-handlers.d.ts +8 -1
- package/dist/util/crash-handlers.js +52 -10
- package/dist/util/ellipsize.d.ts +3 -0
- package/dist/util/ellipsize.js +5 -0
- package/dist/util/env.d.ts +14 -6
- package/dist/util/env.js +15 -7
- package/dist/util/format.d.ts +3 -0
- package/dist/util/format.js +6 -0
- package/dist/util/home-path.d.ts +2 -1
- package/dist/util/home-path.js +4 -2
- package/dist/util/hook-payload.d.ts +8 -0
- package/dist/util/hook-payload.js +37 -0
- package/dist/util/http-retry.d.ts +9 -1
- package/dist/util/http-retry.js +67 -8
- package/dist/util/http-util.d.ts +0 -8
- package/dist/util/http-util.js +10 -21
- package/dist/util/limits.d.ts +7 -0
- package/dist/util/limits.js +14 -0
- package/dist/util/log.d.ts +7 -2
- package/dist/util/log.js +34 -9
- package/dist/util/request-scope.d.ts +5 -2
- package/dist/util/request-scope.js +13 -7
- package/dist/util/secret-detect.d.ts +5 -30
- package/dist/util/secret-detect.js +19 -40
- package/dist/util/sqlite-blocked.d.ts +2 -0
- package/dist/util/sqlite-blocked.js +5 -0
- package/dist/util/stored-json.d.ts +1 -1
- package/dist/util/stored-json.js +1 -1
- package/dist/util/stream-tee.d.ts +3 -0
- package/dist/util/stream-tee.js +35 -0
- package/dist/util/time.d.ts +4 -0
- package/dist/util/time.js +4 -0
- package/dist/util/token-text.d.ts +1 -4
- package/dist/util/token-text.js +1 -4
- package/dist/util/transcript-tail.d.ts +2 -0
- package/dist/util/transcript-tail.js +24 -23
- package/dist/util/version.d.ts +5 -20
- package/dist/util/version.js +5 -20
- package/dist/{store → util}/yaml.d.ts +1 -5
- package/dist/{store → util}/yaml.js +2 -6
- package/extensions/openclaw-plugin/index.ts +1 -1
- package/extensions/openclaw-plugin/openclaw.plugin.json +1 -1
- package/extensions/openclaw-plugin/package.json +1 -1
- package/openclaw.plugin.json +1 -1
- package/package.json +2 -2
- package/dist/cli/provenance-coverage.d.ts +0 -18
- package/dist/connectors/github/cli-impl.d.ts +0 -25
- package/dist/sharing/scope.d.ts +0 -14
- package/dist/sharing/shared.d.ts +0 -187
- package/dist/sharing/shared.js +0 -563
- package/dist/store/embeddings/local.d.ts +0 -15
- package/dist/store/embeddings/local.js +0 -192
- package/dist/store/embeddings/provider.d.ts +0 -77
- package/dist/store/markdown.d.ts +0 -10
- package/dist/store/recall-scope.d.ts +0 -138
- package/dist/store/recall-scope.js +0 -216
- package/dist/store/vector-writes.d.ts +0 -13
- package/dist/store/vector-writes.js +0 -89
- /package/dist/{store → core}/object-types.d.ts +0 -0
- /package/dist/{store → core}/object-types.js +0 -0
- /package/dist/{cli → store}/quality-repair.d.ts +0 -0
- /package/dist/{capture → util}/compaction-items.d.ts +0 -0
- /package/dist/{capture → util}/compaction-items.js +0 -0
package/dist/cli/transfer.js
CHANGED
|
@@ -1,40 +1,36 @@
|
|
|
1
1
|
// Verbs that move memories in and out: watch, learn, import, export, promote, sync, share and peers.
|
|
2
2
|
import * as path from 'path';
|
|
3
3
|
import * as fs from 'fs';
|
|
4
|
-
import {
|
|
5
|
-
import {
|
|
6
|
-
import {
|
|
7
|
-
import { readEntry, loadAllEntries } from '../store/entry-reads.js';
|
|
8
|
-
import { schemaFitInStore } from '../store/candidates.js';
|
|
9
|
-
import { updateStats } from '../store/index-and-stats.js';
|
|
10
|
-
import { RejectedValueError } from '../store/rejection.js';
|
|
11
|
-
import { embedAll, embedMemory, loadEmbeddingIndex } from '../store/embeddings/index.js';
|
|
12
|
-
import { loadConfig } from '../core/config.js';
|
|
4
|
+
import { isInitialized } from '../core/project-identity.js';
|
|
5
|
+
import { RejectedValueError } from '../core/api-errors.js';
|
|
6
|
+
import { embedCoverage, embedMissingMemories } from '../api/embeddings.js';
|
|
13
7
|
import { captureError, runWatched } from '../learn/autolearn.js';
|
|
14
8
|
import { currentMachine, importAtSessionEnd, importForStore } from '../agent-memories/sync.js';
|
|
15
9
|
import { detailLines } from '../agent-memories/report.js';
|
|
16
|
-
import { getGlobalRoot, initGlobal
|
|
10
|
+
import { getGlobalRoot, initGlobal } from '../sharing/global-store.js';
|
|
11
|
+
import { AUTO_SHARE_MIN_SCORE, shareMemory, listPeers, autoShare, transferScore } from '../sharing/share.js';
|
|
12
|
+
import { syncGlobalToLocal } from '../sharing/global-sync.js';
|
|
17
13
|
import { importChatGPT, importClaude, importCursor, importGenericFile, } from '../importers/sources.js';
|
|
18
14
|
import { importMarkdown } from '../importers/markdown.js';
|
|
19
15
|
import { importVault } from '../importers/vault.js';
|
|
20
16
|
import * as api from '../api/index.js';
|
|
17
|
+
import { getMemory, listMemories } from '../api/memories.js';
|
|
21
18
|
import * as client from './client.js';
|
|
22
|
-
import {
|
|
19
|
+
import { cliApiContext } from './api-context.js';
|
|
23
20
|
import { printError } from './output.js';
|
|
24
21
|
import { errorMessage, log } from '../util/log.js';
|
|
25
22
|
import { requireInit, runViaServerIfAvailable, learnFromRepo } from './shared.js';
|
|
26
23
|
import { fmt } from './print.js';
|
|
27
|
-
import { boolFlag, flagIsTrue, nonEmptyStringFlag } from './flag-values.js';
|
|
24
|
+
import { boolFlag, flagIsTrue, isStringFlag, nonEmptyStringFlag, numberFlag } from './flag-values.js';
|
|
28
25
|
import { CONTENT_PREVIEW_CHARS, DATE_PREFIX_CHARS } from '../util/token-text.js';
|
|
26
|
+
import { CliExit } from './exit.js';
|
|
29
27
|
const STDERR_PREVIEW_CHARS = 80;
|
|
30
28
|
const MAX_ENTRIES_SHOWN = 10;
|
|
31
|
-
// ---------------------------------------------------------------------------
|
|
32
29
|
// Watch command
|
|
33
|
-
|
|
34
|
-
async function cmdWatch(command, hippoRoot) {
|
|
30
|
+
async function cmdWatch(command, hippoRoot, tenantId) {
|
|
35
31
|
if (!command) {
|
|
36
32
|
printError('Usage: hippo watch "<command>"');
|
|
37
|
-
|
|
33
|
+
throw new CliExit(1);
|
|
38
34
|
}
|
|
39
35
|
const { exitCode, stderr } = await runWatched(command);
|
|
40
36
|
if (exitCode === 0) {
|
|
@@ -44,18 +40,21 @@ async function cmdWatch(command, hippoRoot) {
|
|
|
44
40
|
// Only create memory if hippo is initialized
|
|
45
41
|
if (!isInitialized(hippoRoot)) {
|
|
46
42
|
printError('Command failed but .hippo not initialized. Run `hippo init` to enable auto-learn.');
|
|
47
|
-
|
|
43
|
+
throw new CliExit(exitCode);
|
|
48
44
|
}
|
|
49
|
-
const
|
|
50
|
-
entry.schema_fit = schemaFitInStore(hippoRoot, entry.tenantId, entry.content, entry.tags);
|
|
51
|
-
entry.half_life_days = deriveHalfLife(loadConfig(hippoRoot).defaultHalfLifeDays, entry);
|
|
52
|
-
entry.strength = calculateStrength(entry);
|
|
45
|
+
const failure = captureError(exitCode, stderr, command, tenantId);
|
|
53
46
|
// A rejection-guard refusal of a failed command's output must not crash the watcher:
|
|
54
47
|
// skip with the message below and still exit with the wrapped command's real exit code.
|
|
55
48
|
try {
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
49
|
+
api.rememberLocally(cliApiContext(hippoRoot, tenantId), {
|
|
50
|
+
content: failure.content,
|
|
51
|
+
tags: failure.tags,
|
|
52
|
+
layer: failure.layer,
|
|
53
|
+
source: failure.source,
|
|
54
|
+
confidence: failure.confidence,
|
|
55
|
+
// A failure is stored each time it happens: watch has never put it to the salience gate.
|
|
56
|
+
force: true,
|
|
57
|
+
});
|
|
59
58
|
const preview = stderr.trim().slice(0, STDERR_PREVIEW_CHARS);
|
|
60
59
|
printError(`\nHippo learned from failure: "${preview}"`);
|
|
61
60
|
}
|
|
@@ -67,18 +66,16 @@ async function cmdWatch(command, hippoRoot) {
|
|
|
67
66
|
throw err;
|
|
68
67
|
}
|
|
69
68
|
}
|
|
70
|
-
|
|
69
|
+
throw new CliExit(exitCode);
|
|
71
70
|
}
|
|
72
|
-
// ---------------------------------------------------------------------------
|
|
73
71
|
// Learn command
|
|
74
|
-
|
|
75
|
-
export function cmdLearn(hippoRoot, flags) {
|
|
72
|
+
export function handleLearn({ hippoRoot, tenantId, flags }) {
|
|
76
73
|
requireInit(hippoRoot);
|
|
77
74
|
if (!flags['git']) {
|
|
78
75
|
printError('Usage: hippo learn --git [--days <n>] [--repos <paths>]');
|
|
79
|
-
|
|
76
|
+
throw new CliExit(1);
|
|
80
77
|
}
|
|
81
|
-
const days =
|
|
78
|
+
const days = numberFlag(flags, 'days') ?? 7;
|
|
82
79
|
console.log(`Scanning git log for the last ${days} days...`);
|
|
83
80
|
const reposFlag = nonEmptyStringFlag(flags, 'repos');
|
|
84
81
|
if (reposFlag) {
|
|
@@ -87,37 +84,41 @@ export function cmdLearn(hippoRoot, flags) {
|
|
|
87
84
|
let totalSkipped = 0;
|
|
88
85
|
for (const repo of repos) {
|
|
89
86
|
const label = path.basename(repo);
|
|
90
|
-
const { added, skipped } = learnFromRepo(hippoRoot, repo, days, label);
|
|
87
|
+
const { added, skipped } = learnFromRepo(hippoRoot, tenantId, repo, days, label);
|
|
91
88
|
totalAdded += added;
|
|
92
89
|
totalSkipped += skipped;
|
|
93
90
|
}
|
|
94
91
|
console.log(`Git learn complete: ${totalAdded} new lessons added, ${totalSkipped} duplicates skipped across ${repos.length} repos.`);
|
|
95
92
|
}
|
|
96
93
|
else {
|
|
97
|
-
const { added, skipped } = learnFromRepo(hippoRoot, process.cwd(), days);
|
|
94
|
+
const { added, skipped } = learnFromRepo(hippoRoot, tenantId, process.cwd(), days);
|
|
98
95
|
console.log(`Git learn complete: ${added} new lessons added, ${skipped} duplicates skipped.`);
|
|
99
96
|
}
|
|
100
97
|
}
|
|
101
|
-
// ---------------------------------------------------------------------------
|
|
102
98
|
// Import command
|
|
103
|
-
// ---------------------------------------------------------------------------
|
|
104
99
|
/** The rows are saved either way; a failed backfill only delays vectors, so it warns with how many wait and the command that finishes them. */
|
|
105
|
-
function warnBackfillFailed(
|
|
100
|
+
function warnBackfillFailed(ctx, embedCommand, err) {
|
|
106
101
|
let waiting;
|
|
107
102
|
try {
|
|
108
|
-
const
|
|
109
|
-
|
|
103
|
+
const { memoryIds, vectorIds } = embedCoverage(ctx);
|
|
104
|
+
const embedded = new Set(vectorIds);
|
|
105
|
+
waiting = String(memoryIds.filter((id) => !embedded.has(id)).length);
|
|
110
106
|
}
|
|
111
107
|
catch (countErr) {
|
|
112
108
|
waiting = `an unknown number of (count failed: ${errorMessage(countErr)})`;
|
|
113
109
|
}
|
|
114
110
|
log.warn(`import: embedding backfill failed (${errorMessage(err)}); ${waiting} rows have no vector; run '${embedCommand}' to backfill`);
|
|
115
111
|
}
|
|
112
|
+
/** Batch-embed freshly imported rows. The floating promise is deliberate: libuv keeps the process alive until it settles, and awaiting
|
|
113
|
+
* would block the CLI on model load; `hippo embed` is the backstop if interrupted. */
|
|
114
|
+
function backfillVectors(ctx, embedCommand) {
|
|
115
|
+
void embedMissingMemories(ctx).catch((err) => warnBackfillFailed(ctx, embedCommand, err));
|
|
116
|
+
}
|
|
116
117
|
function warnRedacted(count) {
|
|
117
118
|
if (count)
|
|
118
119
|
printError(`Warning: secret-shaped text was redacted from ${count} imported ${count === 1 ? 'entry' : 'entries'} before storing`);
|
|
119
120
|
}
|
|
120
|
-
export function
|
|
121
|
+
export function handleImport({ hippoRoot, tenantId, args, flags }) {
|
|
121
122
|
const useGlobal = boolFlag(flags, 'global');
|
|
122
123
|
const dryRun = boolFlag(flags, 'dry-run');
|
|
123
124
|
const extraTags = Array.isArray(flags['tag'])
|
|
@@ -140,15 +141,11 @@ export function cmdImport(hippoRoot, args, flags) {
|
|
|
140
141
|
extraTags,
|
|
141
142
|
hippoRoot,
|
|
142
143
|
};
|
|
143
|
-
// Vault import
|
|
144
|
-
//
|
|
145
|
-
// separately from the single-file `importer` function-pointer slot below.
|
|
146
|
-
// It writes through api.remember/archiveRaw which are tenant-scoped, so we
|
|
147
|
-
// resolve the tenant and pass it through. --global is not supported for
|
|
148
|
-
// vault import (the connector raw-archive path is tenant-local).
|
|
144
|
+
// Vault import is a FOLDER importer that dispatches apart from the single-file slot below; it writes through tenant-scoped api calls,
|
|
145
|
+
// so the tenant is resolved and passed through. --global is unsupported (the connector raw-archive path is tenant-local).
|
|
149
146
|
if (flags['vault'])
|
|
150
|
-
return importVaultFolder(hippoRoot, flags, importOptions, useGlobal, dryRun);
|
|
151
|
-
importFromFile(targetRoot, args, flags, { importOptions, useGlobal, dryRun });
|
|
147
|
+
return importVaultFolder(hippoRoot, tenantId, flags, importOptions, useGlobal, dryRun);
|
|
148
|
+
importFromFile(targetRoot, args, flags, { importOptions, useGlobal, dryRun, tenantId });
|
|
152
149
|
}
|
|
153
150
|
// Determine which importer to use based on flag
|
|
154
151
|
function pickImporter(args, flags) {
|
|
@@ -168,25 +165,20 @@ function pickImporter(args, flags) {
|
|
|
168
165
|
return { filePath: undefined, importer: undefined, importerName: '' };
|
|
169
166
|
}
|
|
170
167
|
function importFromFile(targetRoot, args, flags, options) {
|
|
171
|
-
const { importOptions, useGlobal, dryRun } = options;
|
|
168
|
+
const { importOptions, useGlobal, dryRun, tenantId } = options;
|
|
172
169
|
const { filePath, importer, importerName } = pickImporter(args, flags);
|
|
173
170
|
if (!filePath || !importer) {
|
|
174
171
|
printError('Usage: hippo import <--chatgpt|--claude|--cursor|--file|--markdown|--vault> <path>, or hippo import --agents [--dry-run]');
|
|
175
|
-
|
|
172
|
+
throw new CliExit(1);
|
|
176
173
|
}
|
|
177
174
|
if (!fs.existsSync(filePath)) {
|
|
178
175
|
printError(`File not found: ${filePath}`);
|
|
179
|
-
|
|
176
|
+
throw new CliExit(1);
|
|
180
177
|
}
|
|
181
178
|
const result = importer(filePath, importOptions);
|
|
182
|
-
//
|
|
183
|
-
// rather than per-row (importers.ts writeEntry sites don't embed). The
|
|
184
|
-
// floating promise is deliberate: libuv keeps the process alive until it
|
|
185
|
-
// settles, so it is not dropped on process exit; `hippo embed --global` (or
|
|
186
|
-
// a local `hippo embed`) is the backstop if it does get interrupted. Do not
|
|
187
|
-
// "fix" this by awaiting it, that would block the CLI on model load/backfill.
|
|
179
|
+
// The importers' writeEntry sites don't embed, so the new rows are embedded here in one pass.
|
|
188
180
|
if (!dryRun && result.imported >= 1) {
|
|
189
|
-
|
|
181
|
+
backfillVectors(cliApiContext(targetRoot, tenantId), useGlobal ? 'hippo embed --global' : 'hippo embed');
|
|
190
182
|
}
|
|
191
183
|
const storeLabel = useGlobal ? `global (${getGlobalRoot()})` : targetRoot;
|
|
192
184
|
printFileImportSummary(result, importerName, filePath, storeLabel, dryRun);
|
|
@@ -227,10 +219,9 @@ function importAgentMemories(hippoRoot, useGlobal, dryRun) {
|
|
|
227
219
|
for (const warning of report.warnings)
|
|
228
220
|
printError(`hippo: agent memories: ${warning}`);
|
|
229
221
|
}
|
|
230
|
-
function importVaultFolder(hippoRoot, flags, importOptions, useGlobal, dryRun) {
|
|
222
|
+
function importVaultFolder(hippoRoot, tenantId, flags, importOptions, useGlobal, dryRun) {
|
|
231
223
|
const folderPath = String(flags['vault']);
|
|
232
224
|
checkVaultArgs(folderPath, flags, useGlobal);
|
|
233
|
-
const tenantId = resolveTenantId({});
|
|
234
225
|
const vaultOptions = {
|
|
235
226
|
...importOptions,
|
|
236
227
|
tenantId,
|
|
@@ -238,32 +229,31 @@ function importVaultFolder(hippoRoot, flags, importOptions, useGlobal, dryRun) {
|
|
|
238
229
|
scope: flags['scope'] ? String(flags['scope']) : undefined,
|
|
239
230
|
};
|
|
240
231
|
const vaultResult = importVault(folderPath, vaultOptions);
|
|
241
|
-
printVaultSummary(vaultResult, folderPath, hippoRoot, dryRun);
|
|
232
|
+
printVaultSummary(vaultResult, folderPath, cliApiContext(hippoRoot, tenantId), dryRun);
|
|
242
233
|
}
|
|
243
234
|
function checkVaultArgs(folderPath, flags, useGlobal) {
|
|
244
235
|
if (!fs.existsSync(folderPath) || !fs.statSync(folderPath).isDirectory()) {
|
|
245
236
|
printError(`Vault folder not found (or not a directory): ${folderPath}`);
|
|
246
|
-
|
|
237
|
+
throw new CliExit(1);
|
|
247
238
|
}
|
|
248
239
|
if (useGlobal) {
|
|
249
240
|
printError('hippo import --vault does not support --global (raw rows are tenant-local).');
|
|
250
|
-
|
|
241
|
+
throw new CliExit(1);
|
|
251
242
|
}
|
|
252
|
-
if (
|
|
243
|
+
if (!isStringFlag(flags['name']) || !flags['name'].trim()) {
|
|
253
244
|
// --name keys the destructive source-deletion sync; a folder-basename default lets same-basename vaults clobber
|
|
254
245
|
// each other, and a valueless `--name` (boolean true) would silently import under vault:true:*.
|
|
255
246
|
printError('hippo import --vault requires --name <vault> (a non-empty identity key for source-deletion sync).');
|
|
256
|
-
|
|
247
|
+
throw new CliExit(1);
|
|
257
248
|
}
|
|
258
|
-
if (flags['scope'] !== undefined && (
|
|
259
|
-
// Same valueless-flag trap: a bare `--scope` must not become scope "true".
|
|
260
|
-
//
|
|
261
|
-
// is NOT treated as private by recall and importVault rejects it.
|
|
249
|
+
if (flags['scope'] !== undefined && (!isStringFlag(flags['scope']) || !flags['scope'].trim())) {
|
|
250
|
+
// Same valueless-flag trap: a bare `--scope` must not become scope "true". The example uses the source-prefixed private form,
|
|
251
|
+
// since a bare `private` scope is not treated as private by recall and importVault rejects it.
|
|
262
252
|
printError('hippo import --vault: --scope requires a value (e.g. --scope vault:private:notes).');
|
|
263
|
-
|
|
253
|
+
throw new CliExit(1);
|
|
264
254
|
}
|
|
265
255
|
}
|
|
266
|
-
function printVaultSummary(vaultResult, folderPath,
|
|
256
|
+
function printVaultSummary(vaultResult, folderPath, ctx, dryRun) {
|
|
267
257
|
console.log(`\nImport Vault: ${folderPath}${dryRun ? ' (dry run - no writes)' : ''}`);
|
|
268
258
|
console.log(` Notes found: ${vaultResult.total}`);
|
|
269
259
|
console.log(` ${dryRun ? 'Would import: ' : 'Imported: '}${vaultResult.imported}`);
|
|
@@ -273,28 +263,19 @@ function printVaultSummary(vaultResult, folderPath, hippoRoot, dryRun) {
|
|
|
273
263
|
}
|
|
274
264
|
warnRedacted(vaultResult.redacted);
|
|
275
265
|
console.log(` ${dryRun ? 'Would archive: ' : 'Archived (removed): '}${vaultResult.archived ?? 0}`);
|
|
276
|
-
console.log(` Store: ${hippoRoot}`);
|
|
277
|
-
//
|
|
278
|
-
|
|
279
|
-
|
|
280
|
-
if (!dryRun && vaultResult.imported >= 1) {
|
|
281
|
-
void embedAll(hippoRoot).catch((err) => warnBackfillFailed(hippoRoot, 'hippo embed', err));
|
|
282
|
-
}
|
|
266
|
+
console.log(` Store: ${ctx.hippoRoot}`);
|
|
267
|
+
// Vault rows write through api.remember, which never embeds, so backfill them as the single-file import does.
|
|
268
|
+
if (!dryRun && vaultResult.imported >= 1)
|
|
269
|
+
backfillVectors(ctx, 'hippo embed');
|
|
283
270
|
}
|
|
284
|
-
// ---------------------------------------------------------------------------
|
|
285
271
|
// Promote command
|
|
286
|
-
|
|
287
|
-
function cmdPromote(hippoRoot, id) {
|
|
272
|
+
function cmdPromote(hippoRoot, tenantId, id) {
|
|
288
273
|
requireInit(hippoRoot);
|
|
289
274
|
if (!id) {
|
|
290
275
|
printError('Usage: hippo promote <id>');
|
|
291
|
-
|
|
276
|
+
throw new CliExit(1);
|
|
292
277
|
}
|
|
293
|
-
const ctx =
|
|
294
|
-
hippoRoot,
|
|
295
|
-
tenantId: resolveTenantId({}),
|
|
296
|
-
actor: api.adminActor('cli'),
|
|
297
|
-
};
|
|
278
|
+
const ctx = cliApiContext(hippoRoot, tenantId);
|
|
298
279
|
try {
|
|
299
280
|
const result = api.promote(ctx, id);
|
|
300
281
|
console.log(`Promoted ${id} to global store as ${result.globalId}`);
|
|
@@ -302,13 +283,11 @@ function cmdPromote(hippoRoot, id) {
|
|
|
302
283
|
}
|
|
303
284
|
catch (err) {
|
|
304
285
|
printError(`Failed to promote: ${errorMessage(err)}`);
|
|
305
|
-
|
|
286
|
+
throw new CliExit(1);
|
|
306
287
|
}
|
|
307
288
|
}
|
|
308
|
-
// ---------------------------------------------------------------------------
|
|
309
289
|
// Sync command
|
|
310
|
-
|
|
311
|
-
export function cmdSync(hippoRoot, flags = {}) {
|
|
290
|
+
export function handleSync({ hippoRoot, flags }) {
|
|
312
291
|
requireInit(hippoRoot);
|
|
313
292
|
const globalRoot = getGlobalRoot();
|
|
314
293
|
if (!isInitialized(globalRoot)) {
|
|
@@ -318,17 +297,18 @@ export function cmdSync(hippoRoot, flags = {}) {
|
|
|
318
297
|
// v39: other-project rows are skipped by default; secrets always are.
|
|
319
298
|
const includeCrossProject = flagIsTrue(flags, 'cross-project');
|
|
320
299
|
const count = syncGlobalToLocal(hippoRoot, globalRoot, { includeCrossProject });
|
|
321
|
-
console.log(`Synced ${count} global memories into local project.${includeCrossProject ? '' : ' (other-project rows skipped; use --cross-project to
|
|
300
|
+
console.log(`Synced ${count} global memories into local project.${includeCrossProject ? '' : ' (other-project rows skipped; use --cross-project to ' +
|
|
301
|
+
'include them)'}`);
|
|
322
302
|
}
|
|
323
|
-
export async function handleWatch({ hippoRoot, args }) {
|
|
303
|
+
export async function handleWatch({ hippoRoot, tenantId, args }) {
|
|
324
304
|
const watchCmd = args.join(' ').trim();
|
|
325
|
-
await cmdWatch(watchCmd, hippoRoot);
|
|
305
|
+
await cmdWatch(watchCmd, hippoRoot, tenantId);
|
|
326
306
|
}
|
|
327
|
-
export async function handlePromote({ hippoRoot, args }) {
|
|
307
|
+
export async function handlePromote({ hippoRoot, tenantId, args }) {
|
|
328
308
|
const id = args[0];
|
|
329
309
|
if (!id) {
|
|
330
310
|
printError('Please provide a memory ID.');
|
|
331
|
-
|
|
311
|
+
throw new CliExit(1);
|
|
332
312
|
}
|
|
333
313
|
const promoted = await runViaServerIfAvailable(hippoRoot, async (info, apiKey) => {
|
|
334
314
|
try {
|
|
@@ -337,21 +317,21 @@ export async function handlePromote({ hippoRoot, args }) {
|
|
|
337
317
|
}
|
|
338
318
|
catch (err) {
|
|
339
319
|
printError(`Failed to promote: ${errorMessage(err)}`);
|
|
340
|
-
|
|
320
|
+
throw new CliExit(1);
|
|
341
321
|
}
|
|
342
322
|
});
|
|
343
323
|
if (promoted)
|
|
344
324
|
return;
|
|
345
|
-
cmdPromote(hippoRoot, id);
|
|
325
|
+
cmdPromote(hippoRoot, tenantId, id);
|
|
346
326
|
}
|
|
347
|
-
export function handleShare({ hippoRoot, args, flags }) {
|
|
327
|
+
export async function handleShare({ hippoRoot, tenantId, args, flags }) {
|
|
348
328
|
const shareId = args[0];
|
|
349
329
|
if (shareId === '--auto' || flags['auto']) {
|
|
350
330
|
// Auto-share mode
|
|
351
331
|
requireInit(hippoRoot);
|
|
352
|
-
const minScore =
|
|
332
|
+
const minScore = numberFlag(flags, 'min-score') ?? AUTO_SHARE_MIN_SCORE;
|
|
353
333
|
const dryRun = boolFlag(flags, 'dry-run');
|
|
354
|
-
const results = autoShare(hippoRoot, { minScore, dryRun, tenantId
|
|
334
|
+
const results = autoShare(hippoRoot, { minScore, dryRun, tenantId });
|
|
355
335
|
if (results.length === 0) {
|
|
356
336
|
console.log('No memories meet the sharing threshold.');
|
|
357
337
|
}
|
|
@@ -372,14 +352,13 @@ export function handleShare({ hippoRoot, args, flags }) {
|
|
|
372
352
|
else if (shareId) {
|
|
373
353
|
requireInit(hippoRoot);
|
|
374
354
|
const force = boolFlag(flags, 'force');
|
|
375
|
-
const tenantId = resolveTenantId({});
|
|
376
355
|
const result = shareMemory(hippoRoot, shareId, { force, tenantId });
|
|
377
356
|
if (result) {
|
|
378
357
|
console.log(`Shared [${result.id}] to global store.`);
|
|
379
358
|
console.log(` Source: ${result.source}`);
|
|
380
359
|
}
|
|
381
360
|
else {
|
|
382
|
-
const entry =
|
|
361
|
+
const entry = await getMemory(cliApiContext(hippoRoot, tenantId), shareId);
|
|
383
362
|
if (entry) {
|
|
384
363
|
const score = transferScore(entry);
|
|
385
364
|
console.log(`Transfer score too low (${fmt(score)}). This memory looks project-specific.`);
|
|
@@ -387,19 +366,19 @@ export function handleShare({ hippoRoot, args, flags }) {
|
|
|
387
366
|
}
|
|
388
367
|
else {
|
|
389
368
|
printError(`Memory not found: ${shareId}`);
|
|
390
|
-
|
|
369
|
+
throw new CliExit(1);
|
|
391
370
|
}
|
|
392
371
|
}
|
|
393
372
|
}
|
|
394
373
|
else {
|
|
395
374
|
printError('Usage: hippo share <memory_id> [--force] or hippo share --auto [--dry-run]');
|
|
396
|
-
|
|
375
|
+
throw new CliExit(1);
|
|
397
376
|
}
|
|
398
377
|
}
|
|
399
|
-
export function handlePeers({ flags }) {
|
|
378
|
+
export function handlePeers({ tenantId, flags }) {
|
|
400
379
|
// Tenant-scoped by default; --all-tenants gives the host-wide view for cross-tenant peer discovery.
|
|
401
380
|
const allTenants = flagIsTrue(flags, 'all-tenants');
|
|
402
|
-
const tenantScope = allTenants ? undefined :
|
|
381
|
+
const tenantScope = allTenants ? undefined : tenantId;
|
|
403
382
|
const peers = listPeers(undefined, tenantScope);
|
|
404
383
|
if (peers.length === 0) {
|
|
405
384
|
console.log('No peers found. Share memories with: hippo share <id>');
|
|
@@ -412,11 +391,11 @@ export function handlePeers({ flags }) {
|
|
|
412
391
|
}
|
|
413
392
|
}
|
|
414
393
|
}
|
|
415
|
-
export function handleExport({ hippoRoot, args, flags }) {
|
|
394
|
+
export function handleExport({ hippoRoot, tenantId, args, flags }) {
|
|
416
395
|
requireInit(hippoRoot);
|
|
417
|
-
const format = (flags['format'] || 'json');
|
|
396
|
+
const format = String(flags['format'] || 'json');
|
|
418
397
|
const outputPath = args[0] || null;
|
|
419
|
-
const entries =
|
|
398
|
+
const entries = listMemories(cliApiContext(hippoRoot, tenantId));
|
|
420
399
|
let output;
|
|
421
400
|
if (format === 'markdown' || format === 'md') {
|
|
422
401
|
output = entries.map(e => {
|
package/dist/cli/usage.d.ts
CHANGED
|
@@ -3,83 +3,4 @@ export declare function printSlackBackfillUsage(): void;
|
|
|
3
3
|
export declare function printSlackWorkspacesUsage(): void;
|
|
4
4
|
export declare const USAGE_HEADER = "\nHippo - Make your agent's memory work like a brain. Hippo is long-term memory for coding agents.\n\nUsage: hippo <command> [options]\n\nCommands:";
|
|
5
5
|
export declare const USAGE_EXAMPLES = "\n\nExamples:\n hippo init\n hippo remember \"FRED cache can silently drop series\" --tag error\n hippo recall \"data pipeline issues\" --budget 2000\n hippo context --auto --budget 1500\n hippo conflicts\n hippo reject mem_abc123 --reason \"leaked credential\"\n hippo reject --value \"never store my key again\" --reason \"secret\"\n hippo rejections\n hippo unreject a1b2c3d4e5f6\n hippo dormant \"staging hostname\"\n hippo dormant restore mem_abc123\n hippo tokens --days 7\n hippo session log --id sess_123 --task \"Ship feature\" --type progress --content \"Build is green, next step is docs\"\n hippo session latest --json\n hippo session resume\n hippo snapshot save --task \"Ship feature\" --summary \"Tests are green\" --next-step \"Open the PR\" --session sess_123\n hippo handoff create --summary \"PR is open, tests green\" --next \"Merge after review\" --session sess_123 --artifact src/foo.ts\n hippo handoff create --summary s --constraint a --constraint b --outcome partial --target-runtime codex --card-id c1 --tests pass\n hippo card create --title \"Add cards table\" --repo hippo --depends-on card_abc\n hippo card claim card_abc --runtime codex\n hippo card complete card_abc --outcome success\n hippo card heartbeat card_abc --run 7\n hippo card reclaim\n hippo embed --status\n hippo watch \"npm run build\"\n hippo learn --git --days 30\n hippo promote mem_abc123\n hippo sync\n hippo setup\n hippo hook install claude-code\n hippo decide \"Use PostgreSQL for new services\" --context \"JSONB support\"\n hippo incident \"Prod outage: DB connection pool exhausted\" --context \"spike at 14:00\"\n hippo process new \"Release\" --step \"run tests\" --step \"bump version\" --step \"publish\"\n hippo policy new \"Data retention\" --text \"Delete logs after 90 days\" --from 2026-01-01\n hippo policy asof 2026-03-01 --name \"Data retention\"\n hippo skill new \"Run tests\" --instructions \"npm test before every commit\" --trigger \"before commit\"\n hippo skill export\n hippo brief new \"hippo\" --summary \"Agent-memory library; E2 first-class objects in progress\"\n hippo brief refresh \"hippo\"\n hippo note new \"Acme Corp\" --text \"Renewal call: wants SSO before Q3; champion is the VP Eng\"\n hippo note list --customer \"Acme Corp\" --status active\n hippo graph extract\n hippo invalidate \"REST API\" --dry-run\n hippo invalidate \"REST API\" --reason \"migrated to GraphQL\"\n hippo invalidate --id mem_a1b2c3d4e5f6 --reason \"superseded by new policy\"\n hippo invalidate --churn --dry-run\n hippo export memories.json\n hippo export --format markdown memories.md\n hippo sleep --dry-run\n hippo outcome --good\n hippo status\n";
|
|
6
|
-
/** Each verb's help blocks for the command table, keyed like COMMANDS; a block opens with a newline. */
|
|
7
|
-
export declare const VERB_USAGE: {
|
|
8
|
-
init: string[];
|
|
9
|
-
remember: string[];
|
|
10
|
-
recall: string[];
|
|
11
|
-
drill: string[];
|
|
12
|
-
assemble: string[];
|
|
13
|
-
supersede: string[];
|
|
14
|
-
explain: string[];
|
|
15
|
-
eval: string[];
|
|
16
|
-
trace: string[];
|
|
17
|
-
refine: string[];
|
|
18
|
-
sleep: string[];
|
|
19
|
-
'last-sleep': string[];
|
|
20
|
-
'session-end': string[];
|
|
21
|
-
'pre-compact': string[];
|
|
22
|
-
'post-compact': string[];
|
|
23
|
-
'capture-error': string[];
|
|
24
|
-
'compact-resume': string[];
|
|
25
|
-
'codex-run': string[];
|
|
26
|
-
dedup: string[];
|
|
27
|
-
dag: string[];
|
|
28
|
-
auth: string[];
|
|
29
|
-
goal: string[];
|
|
30
|
-
slack: string[];
|
|
31
|
-
github: string[];
|
|
32
|
-
audit: string[];
|
|
33
|
-
'correction-latency': string[];
|
|
34
|
-
provenance: string[];
|
|
35
|
-
status: string[];
|
|
36
|
-
outcome: string[];
|
|
37
|
-
conflicts: string[];
|
|
38
|
-
resolve: string[];
|
|
39
|
-
reject: string[];
|
|
40
|
-
rejections: string[];
|
|
41
|
-
unreject: string[];
|
|
42
|
-
dormant: string[];
|
|
43
|
-
projects: string[];
|
|
44
|
-
quarantine: string[];
|
|
45
|
-
tokens: string[];
|
|
46
|
-
failures: string[];
|
|
47
|
-
doctor: string[];
|
|
48
|
-
'support-bundle': string[];
|
|
49
|
-
snapshot: string[];
|
|
50
|
-
session: string[];
|
|
51
|
-
handoff: string[];
|
|
52
|
-
card: string[];
|
|
53
|
-
predict: string[];
|
|
54
|
-
current: string[];
|
|
55
|
-
forget: string[];
|
|
56
|
-
inspect: string[];
|
|
57
|
-
context: string[];
|
|
58
|
-
hook: string[];
|
|
59
|
-
setup: string[];
|
|
60
|
-
'daily-runner': string[];
|
|
61
|
-
embed: string[];
|
|
62
|
-
watch: string[];
|
|
63
|
-
learn: string[];
|
|
64
|
-
promote: string[];
|
|
65
|
-
sync: string[];
|
|
66
|
-
share: string[];
|
|
67
|
-
peers: string[];
|
|
68
|
-
import: string[];
|
|
69
|
-
export: string[];
|
|
70
|
-
capture: string[];
|
|
71
|
-
dashboard: string[];
|
|
72
|
-
wm: string[];
|
|
73
|
-
mcp: string[];
|
|
74
|
-
serve: string[];
|
|
75
|
-
invalidate: string[];
|
|
76
|
-
decide: string[];
|
|
77
|
-
incident: string[];
|
|
78
|
-
process: string[];
|
|
79
|
-
policy: string[];
|
|
80
|
-
skill: string[];
|
|
81
|
-
brief: string[];
|
|
82
|
-
note: string[];
|
|
83
|
-
graph: string[];
|
|
84
|
-
};
|
|
85
6
|
//# sourceMappingURL=usage.d.ts.map
|