MCP Template
CLI

Overview

Install and run CLI commands from your terminal

Installation

After installing the package, the daysurface command is available:

daysurface --help

If you installed from source, prefix with uv run:

uv run daysurface --help

Global Flags

Flags go before the subcommand:

daysurface [flags] <command> [args]
FlagShortDescription
--verbose-vIncrease output verbosity
--quiet-qSuppress non-essential output
--debugShow full tracebacks on error
--format-fOutput format: table (default), json, plain
--dry-runPreview actions without executing
--version-VPrint version and exit

Examples:

daysurface --format json config show      # JSON output
daysurface --dry-run greet Alice          # preview without executing
daysurface --debug config get bad.key     # full tracebacks on error

Scripting & agents

The CLI is built to be driven non-interactively (by scripts and AI agents):

  • Non-interactive by default. Prompts only appear on an interactive terminal. When stdin is not a TTY, missing required values fail fast with an actionable error instead of hanging on a prompt.

  • Values accept stdin. Anywhere a value is taken, pass - as the value or add --stdin to read it from stdin - handy for piping:

    echo true | daysurface config set llm_config.cache_enabled --stdin
    echo "$API_KEY" | daysurface secrets set OPENAI_API_KEY --stdin
    cat .env | daysurface secrets import --stdin
  • --dry-run previews destructive actions (config set, secrets set, secrets delete, secrets import) without writing anything.

  • Idempotent where it counts. Deleting an absent secret is a no-op success, so retries are safe.

  • Examples in every --help. Run daysurface <command> --help to see concrete invocations to pattern-match off.

On this page