CLI Reference

Complete command reference for tend.

tend

TEND End-to-end scenario testing

A modern, Go-based end-to-end testing framework for Grove.

This tool provides structured, maintainable testing capabilities to replace ad-hoc bash scripts with proper error handling, cleanup, and beautiful output.

Features: • Interactive step-through testing mode • Parallel test execution • Beautiful terminal output with progress bars • Comprehensive logging and error reporting • Git worktree support for multi-branch testing • Docker container management • Grove-specific command helpers

USAGE tend [command]

COMMANDS completion Generate the autocompletion script for the specified shell demo Manage demo environments for screenshots and demos docs Print the structured JSON documentation for this tool ecosystem Run tests across the entire Grove ecosystem list List available test scenarios record Record a manual TUI session to multiple output formats run Run test scenarios sessions Manage tend test sessions tui Launch an interactive TUI for browsing and running tests validate Validate test scenarios version Print the version information for this binary

Flags: -c/—config, —docker-filter, -g/—grove, -h/—help, -i/—interactive, —json, -m/—monitor, -r/—root, -t/—tags, -v/—verbose, —very-verbose

Use “tend [command] —help” for more information.

tend demo

TEND DEMO Manage demo environments for screenshots and demos

Create and manage isolated demo environments for screenshots and demonstrations.

Demo environments provide complete, isolated Grove ecosystems for testing and demos. Each demo type creates different content (repositories, notes, plans, etc.) and can have its own tmux session with a preconfigured layout.

Available demos: homelab - Full-featured demo with 3 ecosystems, 13 repos, worktrees, notes, and plans

Commands: tend demo create <name> Create a new demo environment tend demo attach <name> Attach to the demo tmux session tend demo destroy <name> Remove the demo environment tend demo status <name> Show demo environment status

USAGE tend demo [command]

COMMANDS attach Attach to a demo tmux session create Create a new demo environment destroy Remove a demo environment status Show demo environment status

Flags: -h/—help

Use “tend demo [command] —help” for more information.

tend demo attach

TEND DEMO ATTACH Attach to a demo tmux session

Attach to the demo environment’s isolated tmux session.

This spawns a shell with the demo’s environment variables and connects to the demo’s tmux server.

USAGE tend demo attach <name> [flags]

FLAGS -h, —help help for attach -o, —output-dir Demo directory

tend demo create

TEND DEMO CREATE Create a new demo environment

Create a new demo environment with isolated ecosystems, repositories, and notebooks.

Available demos: homelab - Full ecosystem with 3 ecosystems, 13 repos, worktrees, notes, and plans

The environment is created at ~/.grove-demos/<name> by default, or at the path specified with —output-dir. Use —force to overwrite an existing demo environment.

After creation, use ‘tend demo attach <name>’ to connect to the demo tmux session.

USAGE tend demo create <name> [flags]

FLAGS -a, —attach Attach to the demo session immediately after creation -f, —force Overwrite existing demo environment -h, —help help for create -o, —output-dir Output directory (default: ~/.grove-demos/<name>)

tend demo destroy

TEND DEMO DESTROY Remove a demo environment

Remove the demo environment and all its contents.

This kills the demo tmux server and removes all demo files.

USAGE tend demo destroy <name> [flags]

FLAGS -f, —force Skip confirmation prompt -h, —help help for destroy -o, —output-dir Demo directory

tend demo status

TEND DEMO STATUS Show demo environment status

Display the current state of the demo environment.

USAGE tend demo status <name> [flags]

FLAGS -h, —help help for status -o, —output-dir Demo directory

tend docs

TEND DOCS Print the structured JSON documentation for this tool

This command outputs the structured documentation for this tool in JSON format, which is used by other ecosystem tools like grove-mcp.

USAGE tend docs [flags]

FLAGS -h, —help help for docs

tend ecosystem

TEND ECOSYSTEM Run tests across the entire Grove ecosystem

USAGE tend ecosystem [command]

COMMANDS run Discover and run all E2E test suites

Flags: -h/—help

Use “tend ecosystem [command] —help” for more information.

tend ecosystem run

TEND ECOSYSTEM RUN Discover and run all E2E test suites

USAGE tend ecosystem run [flags]

FLAGS -h, —help help for run -j, —jobs Number of parallel jobs (default: half of CPU cores) (default: 0) -p, —parallel Run ecosystem tests in parallel using a TUI

tend list

TEND LIST List available test scenarios

List all available test scenarios with their descriptions and tags.

This command helps you discover what scenarios are available and understand their purpose before running them.

USAGE tend list [flags]

FLAGS -h, —help help for list -k, —keyword Filter scenarios by keyword (searches name, description, and tags)

EXAMPLES tend list # List all scenarios tend list —tags=smoke # List scenarios tagged with ‘smoke’ tend list —keyword=git # List scenarios containing ‘git’ in name, description, or tags tend list —verbose # List with detailed information

tend record

TEND RECORD Record a manual TUI session to multiple output formats

Launches a command within a recordable sub-shell. All keystrokes and terminal output are captured and saved to five formats:

  • .html: Interactive HTML report (for human review)
  • .md: Markdown report (for LLM consumption, plain text)
  • .ansi.md: Markdown with ANSI codes (for color debugging)
  • .xml: XML report (for LLM consumption, plain text)
    • .ansi.xml: XML with ANSI codes (for color debugging)

This is useful for creating shareable, replayable recordings of a TUI session, often for providing context to an LLM for writing automated tests.

Use ’—’ to separate the recorder’s flags from the command you want to record. If no command is provided, it will default to launching your default shell ($SHELL).

USAGE tend record [—out basename] — <command…> [flags]

FLAGS -h, —help help for record -o, —out Base filename for output files (without extension) (default: tend-recording)

EXAMPLES tend record —out my-session nb tui # Creates: my-session.{html,md,ansi.md,xml,ansi.xml}

tend run

TEND RUN Run test scenarios

Run one or more test scenarios.

If no scenarios are specified, all scenarios in the scenarios directory will be run. Scenarios can be filtered by tags using the —tags flag.

USAGE tend run [scenario…] [flags]

FLAGS -d, —debug Enable debug mode (shorthand for -i —no-cleanup —tmux-split —nvim —very-verbose) —debug-session Enable debug mode in a new tmux session with windows (implies -i, —no-cleanup) —explicit Run only explicit-only scenarios (automatically enables —no-cleanup) —format Output format (text, json, junit) (default: text) -h, —help help for run —include-local Include local-only scenarios even when in a CI environment -j, —jobs Number of parallel jobs (default: half of CPU cores) (default: 0) —json Write JSON report to file —junit Write JUnit XML to file —no-cleanup Skip cleanup after scenario execution —nvim Start nvim in the new tmux split (requires —tmux-split) -p, —parallel Run scenarios in parallel —record-tui Directory to save TUI session recordings for failed tests —run-steps Run specific test steps at startup then pause (e.g., ‘1,2,3’) —server Debug session server type (‘main’ or ‘dedicated’). Overrides config. (requires —debug-session) —timeout Timeout for scenario execution (default: 10m0s) —tmux-split Split tmux window and cd to test directory —use-real-deps A comma-separated list of dependencies to use real binaries for instead of mocks (e.g., flow,cx). Use ‘all’ to swap all.

EXAMPLES tend run # Run all scenarios tend run agent-isolation # Run specific scenario tend run —tags=smoke # Run scenarios tagged with ‘smoke’ tend run —interactive agent-* # Run agent scenarios interactively tend run —parallel —timeout=5m # Run with 5 minute timeout in parallel

tend sessions

TEND SESSIONS Manage tend test sessions

Manage and navigate tend debug test sessions.

This command launches a TUI for listing, previewing, and managing tend debug sessions created with ‘tend run —debug-session’.

USAGE tend sessions [flags] tend sessions [command]

COMMANDS attach Attach to a running tend session capture Capture the contents of a tmux pane cleanup Clean up orphaned tend test tmux servers kill Kill one or more tend sessions list List active tend debug sessions send-keys Send keystrokes to a tmux pane

Flags: -h/—help

EXAMPLES tend sessions # List sessions for current workspace tend sessions —all # List sessions for all workspaces

Use “tend sessions [command] —help” for more information.

tend sessions attach

TEND SESSIONS ATTACH Attach to a running tend session

USAGE tend sessions attach <session-name> [flags]

FLAGS -h, —help help for attach

tend sessions capture

TEND SESSIONS CAPTURE Capture the contents of a tmux pane

USAGE tend sessions capture <session-target> [flags]

FLAGS -h, —help help for capture —timeout Timeout when using —wait-for (default: 5s) —wait-for Wait for text to appear before capturing —with-ansi Preserve ANSI escape codes in output (default: strip)

tend sessions cleanup

TEND SESSIONS CLEANUP Clean up orphaned tend test tmux servers

Clean up orphaned tmux servers created by tend tests.

Tend tests create isolated tmux servers using sockets named “tend-test-*”. These servers are normally cleaned up automatically, but may remain if tests are interrupted (Ctrl+C) or crash. This command finds and kills all orphaned tend test tmux servers.

USAGE tend sessions cleanup [flags]

FLAGS —dry-run Show what would be cleaned up without actually doing it -h, —help help for cleanup —remove-stale Also remove stale socket files where servers are not running

tend sessions kill

TEND SESSIONS KILL Kill one or more tend sessions

USAGE tend sessions kill [session-name…] [flags]

FLAGS —all Kill all active tend sessions -h, —help help for kill

tend sessions list

TEND SESSIONS LIST List active tend debug sessions

USAGE tend sessions list [flags]

FLAGS -h, —help help for list

tend tui

TEND TUI Launch an interactive TUI for browsing and running tests

Launch an interactive Terminal User Interface to browse, manage, and run ‘tend’ test scenarios across the ecosystem.

USAGE tend tui [flags]

FLAGS -h, —help help for tui

tend validate

TEND VALIDATE Validate test scenarios

Validate that all test scenarios are properly defined and can be loaded.

This command checks: • Scenario files can be parsed • Required fields are present • Steps are properly defined • No circular dependencies exist

This is useful for CI/CD pipelines to catch configuration errors early.

USAGE tend validate [flags]

FLAGS -h, —help help for validate

EXAMPLES tend validate # Validate all scenarios tend validate —verbose # Show detailed validation output

tend version

TEND VERSION Print the version information for this binary

USAGE tend version [flags]

FLAGS -h, —help help for version —json Output version information in JSON format