mirror of
https://github.com/basicmachines-co/basic-memory
synced 2026-06-21 13:47:35 +00:00
29 lines
906 B
Python
29 lines
906 B
Python
"""Database management commands."""
|
|
|
|
import asyncio
|
|
|
|
import logfire
|
|
import typer
|
|
from loguru import logger
|
|
|
|
from basic_memory.alembic import migrations
|
|
from basic_memory.cli.app import app
|
|
|
|
|
|
@app.command()
|
|
def reset(
|
|
reindex: bool = typer.Option(False, "--reindex", help="Rebuild indices from filesystem"),
|
|
): # pragma: no cover
|
|
"""Reset database (drop all tables and recreate)."""
|
|
with logfire.span("reset"): # pyright: ignore [reportGeneralTypeIssues]
|
|
if typer.confirm("This will delete all data in your db. Are you sure?"):
|
|
logger.info("Resetting database...")
|
|
asyncio.run(migrations.reset_database())
|
|
|
|
if reindex:
|
|
# Import and run sync
|
|
from basic_memory.cli.commands.sync import sync
|
|
|
|
logger.info("Rebuilding search index from filesystem...")
|
|
sync(watch=False) # pyright: ignore
|