Files
Memoh/mise.toml
T

128 lines
2.6 KiB
TOML

experimental_monorepo_root = true
[tools]
# Go version from go.mod
go = "1.25.6"
# Node.js for frontend packages
node = "25"
# Bun for agent gateway
bun = "latest"
# pnpm for workspace management
pnpm = "10"
# sqlc for sql management
sqlc = "latest"
# typos for spell check
typos = "latest"
[task_config]
dir = "{{cwd}}"
[settings]
experimental = true
[tasks.pnpm-install]
description = "Install dependencies"
env = { CI = "true" }
run = "pnpm install"
[tasks.go-install]
description = "Install Go dependencies"
run = "go mod download"
[tasks.swagger-generate]
description = "Generate Swagger documentation"
depends = [
"//:go-install",
]
run = "cd internal/handlers && go generate"
[tasks.sdk-generate]
description = "Generate SDK code"
run = "pnpm run generate-sdk"
depends = [
"//:pnpm-install",
"//:swagger-generate"
]
[tasks.sqlc-generate]
description = "Generate SQL code"
run = "sqlc generate"
[tasks.infra]
description = "Start dev infrastructure (postgres + qdrant)"
run = "docker compose -f devenv/docker-compose.yml up -d"
[tasks.infra-down]
description = "Stop dev infrastructure"
run = "docker compose -f devenv/docker-compose.yml down"
[tasks.infra-logs]
description = "View dev infrastructure logs"
run = "docker compose -f devenv/docker-compose.yml logs -f"
[tasks.db-up]
description = "Initialize and Migrate Database"
run = "scripts/db-up.sh"
[tasks.db-down]
description = "Drop Database"
run = "scripts/db-drop.sh"
[tasks.release]
description = "Release new version"
run = "pnpm release"
[tasks.install-cli]
description = "Install CLI"
depends = ["//:pnpm-install"]
run = "cd packages/cli && npm install -g"
[task.install-socktainer]
description = "Install socktainer"
run = "brew tap socktainer/tap && brew install socktainer"
[tasks.dev]
description = "Start development environment"
depends = [
"//:swagger-generate",
"//:sdk-generate",
"//agent:dev",
"//cmd/agent:start",
"//packages/web:dev",
]
[tasks.setup]
description = "Setup development environment"
depends = [
"//:sqlc-generate",
"//:pnpm-install",
"//:go-install",
"//:install-cli",
]
run = """
#!/bin/bash
set -e
# Auto-copy dev config if config.toml doesn't exist
if [ ! -f config.toml ]; then
cp conf/app.dev.toml config.toml
echo '✓ Copied conf/app.dev.toml → config.toml'
fi
# Start dev infrastructure
docker compose -f devenv/docker-compose.yml up -d
# Wait for postgres to be healthy
echo 'Waiting for postgres...'
until docker compose -f devenv/docker-compose.yml exec -T postgres pg_isready -U memoh >/dev/null 2>&1; do
sleep 1
done
echo '✓ Postgres ready'
# Run migrations
scripts/db-up.sh
echo '✓ Setup complete! Run: mise run dev'
"""