v1.0.0 #356
Teingi
announced in
Announcements
v1.0.0
#356
Replies: 0 comments
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
-
Why We're Shipping the CLI and Dashboard
We believe that in the Agent era, the products that pull ahead will not be the ones with only a UI for humans to click. They will be the ones that deliver two layers at once: a layer where Agents can connect, execute, and orchestrate with low friction; and a layer where humans can understand the whole picture, form judgment, and consume results. The CLI is the operation surface for Agents and automation. The Dashboard is the cognition surface for people. Only when both exist does a product complete the shift from “software for humans” to “a system where humans and Agents work together.” That’s why, in v1.0.0, we’re making the CLI and the Memory Statistics and Analytics Dashboard first-class parts of PowerMem.
CLI — the operation layer.
Agents and scripts need a stable, scriptable interface: same config (
.env), same storage as the SDK and API. The CLI (pmem) gives them exactly that—add/search/list/backup/restore from the terminal, in CI, or via an interactive shell (pmem shell)—without requiring a Python runtime or HTTP client in every context. It’s the low-friction surface for Agents to plug in and for you to automate bootstrap, migration, and recovery.Dashboard — the cognition layer.
Humans need to see what’s in the system: how many memories, how they’re distributed by user/agent/type, and how healthy the system is. The dashboard is a web UI on top of the same HTTP API server, so operators and developers can build a mental model and make decisions without calling APIs or writing scripts. It’s optional to build and serve, but it’s the place where the “global view” lives.
Together, CLI and Dashboard close the loop: Agents operate; humans understand. That’s the dual-surface we’re shipping in v1.0.0.
New Features
1. CLI (
pmem) — Command structure and config initCommand structure
All memory operations now live under the
memorysubcommand so the CLI has a clear hierarchy and room for other command groups (config, stats, manage, shell).Command overview:
.envconfiguration.Invocation: After
pip install powermem, usepmemorpowermem-cli. Global options:--env-file PATH/-e,--json/-j,--verbose/-v,--install-completion SHELL,--version,--help.Usage examples:
pmem config initInteractive wizard to create or update a
.envfile so you can bootstrap PowerMem without copying.env.exampleby hand.--env-file PATH(target file),--dry-run(no write),--test/--no-test(run validation after writing),--component(e.g.database,llm,embedder,all) when using--test.Examples:
Full command reference: CLI Usage Guide.
2. Memory Statistics and Analytics Dashboard
A web-based dashboard for memory statistics and basic analytics, served by the same PowerMem HTTP API server. It gives a visual view of memory counts, distributions (e.g. by user, agent, type), and health-oriented metrics so you can monitor and debug without calling APIs or using the CLI.
When to use it: Inspecting how many memories you have, how they’re spread across users/agents, and whether the system is healthy. Useful for ops, support, and development.
How to run it:
Start the PowerMem HTTP API server (same as before):
Or from source:
make server-start, or Docker/Compose as in the API Server docs.Build the dashboard and copy assets into the server so it can serve the UI:
Then start (or restart) the server. If the
src/server/dashboard/directory exists and is populated, the server mounts the dashboard at/dashboard/.Open in a browser:
(Replace host/port if you changed
--host/--port.)The dashboard uses the server’s existing API and configuration; no extra services are required. If you don’t build or copy the dashboard assets, the server still runs and only the
/dashboard/UI is unavailable.3. Documentation
New guide at docs/guides/0012-cli_usage.md with:
pmem,powermem-cli), global options.Improvements and Fixes
HTTP API Server
OceanBase storage
where_clauseis now passed in a shape compatible with pyobvector, fixing hybrid search when using OceanBase as the backend.New Contributors
Full Changelog: v0.4.0...v1.0.0
This discussion was created from the release v1.0.0.
Beta Was this translation helpful? Give feedback.
All reactions