CLI Reference

Complete reference for every kendr subcommand and flag. Every command produces colored, structured terminal output via rich. Use --json for machine-readable output and --quiet to suppress progress messages.


Global Flags

These flags apply to the kendr root command and must appear before the subcommand.

FlagDescription
--no-colorDisable ANSI colors in all CLI output.
--log-level LEVELGlobal log verbosity hint for runtime services. Choices: silent, fatal, error, warn, info, debug, trace. Sets KENDR_LOG_LEVEL environment variable for the run.
-V / --versionPrint the current version and exit.

kendr run

Run the multi-agent orchestrator for a single query. This is the primary entry point for all intelligence workflows.

The gateway is NOT auto-started. If your query requires the gateway, start it first with kendr gateway start.

bash

kendr run [FLAGS] "your query"

Core Flags

FlagDefaultDescription
query_(positional)_The query or task to execute.
--max-steps N20Maximum orchestration steps before the run ends.
--working-directory PATH_(from env)_Directory for output artifacts.
--current-folder_(off)_Use the current terminal working directory as output.
--auto-approve_(off)_Auto-approve all blueprint and plan gates without interactive prompts.
--skip-reviews_(off)_Skip reviewer-agent checks between orchestration steps.
--max-step-revisions N0Override maximum reviewer revisions per step (0 = agent default).
--json_(off)_Emit the final run state as JSON instead of rich output.
--quiet_(off)_Suppress live step progress messages.

Research and Sources

FlagDefaultDescription
--sources LIST_(auto)_Comma-separated list of research sources for the multi-source pipeline. Options: web, arxiv (alias papers, academic), reddit (alias social), scholar, patents (alias patent), openalex, local (requires --drive). Example: --sources arxiv,reddit,web
--pages N0Target page count for long-form document output. Implies --long-document mode.
--research-model MODEL_(env)_Override the deep-research model for this run. Example: o4-mini-deep-research.
--research-instructions TEXT_(none)_Extra instructions appended to every deep-research call.
--research-max-wait-seconds N0Max seconds to wait per deep-research API call before timeout handling.
--research-poll-interval-seconds N0Polling interval for background deep-research status checks.
--research-max-tool-calls N0Maximum web tool calls per deep-research pass.
--research-max-output-tokens N0Optional output token cap per deep-research pass.

Long-Form Document Mode

FlagDefaultDescription
--long-document_(off)_Force staged long-form document workflow (chaptered research + merged output).
--long-document-pages N0Target page count for long-form output.
--long-document-sections N0Explicit chapter/section count.
--long-document-section-pages N0Approximate pages per section.
--long-document-title TITLE_(auto)_Override the report title.
--long-document-no-collect-sources_(off)_Skip the pre-collection evidence bank step.
--long-document-no-section-search_(off)_Skip per-section web search.
--long-document-section-search-results N0Web search results to gather per section.
--long-document-no-visuals_(off)_Skip generating tables and flowcharts.

Local Drive Intelligence

FlagDefaultDescription
--drive PATH_(none)_Local folder or file to ingest. Repeat for multiple paths.
--drive-min-files N0Minimum file count for long-form report mode.
--drive-max-files N0Maximum files to process.
--drive-extensions LIST_(all)_Comma-separated extension allowlist (example: pdf,docx,xlsx).
--drive-no-recursive_(off)_Disable recursive folder traversal.
--drive-include-hidden_(off)_Include hidden files and folders.
--drive-disable-image-ocr_(off)_Disable OCR for images in drive paths.
--drive-ocr-instruction TEXT_(auto)_Custom OCR instruction override.
--drive-no-memory-index_(off)_Skip vector-memory indexing of extracted summaries.
--drive-auto-generate-extension-handlers_(off)_Enable dynamic agent generation for unsupported file types.

Dev Pipeline Mode (--dev)

Activates the end-to-end dev pipeline: blueprint → scaffold → build → test → verify (with auto-fix) → zip export. Equivalent to kendr generate with full pipeline orchestration.

FlagDefaultDescription
--dev_(off)_Activate the dev pipeline mode.
--stack TEMPLATE_(LLM selects)_Tech stack template. Options: fastapi_postgres, fastapi_react_postgres, nextjs_prisma_postgres, express_prisma_postgres, mern_microservices_mongodb, pern_postgres, nextjs_static_site, django_react_postgres, custom_freeform.
--dev-skip-tests_(off)_Skip test generation and execution.
--dev-skip-devops_(off)_Skip Dockerfile, docker-compose, and CI/CD generation.
--dev-max-fix-rounds N3Maximum auto-fix rounds when the verifier fails.

Codebase Analysis

FlagDefaultDescription
--codebase_(off)_Analyze an existing codebase before planning.
--codebase-path PATH_(working dir)_Path to the existing project.
--codebase-max-files N0Maximum files to scan (0 = 1000).

superRAG Knowledge Engine

FlagDefaultDescription
--superrag-mode MODE_(none)_superRAG operating mode: build, chat, switch, list, status.
--superrag-session ID_(none)_Session ID to reuse or switch to.
--superrag-new-session_(off)_Force creation of a new session for build mode.
--superrag-session-title TITLE_(auto)_Human-readable title for the session.
--superrag-path PATH_(none)_Local path to ingest. Repeat for multiple.
--superrag-url URL_(none)_Seed URL to crawl and ingest. Repeat for multiple.
--superrag-db-url URL_(none)_Database URL for schema and row-sample ingestion.
--superrag-db-schema SCHEMA_(auto)_Optional database schema to target.
--superrag-onedrive_(off)_Enable OneDrive ingestion (requires Microsoft Graph).
--superrag-onedrive-path PATH_(root)_OneDrive folder path to ingest.
--superrag-chat QUESTION_(none)_Question to ask in chat mode.
--superrag-top-k N0Top-K vector matches for chat (0 = agent default).

Coding Workflows

FlagDefaultDescription
--coding-context-file FILE_(none)_Project file to load as coding context. Repeat for multiple.
--coding-write-path PATH_(none)_Target file for coding output.
--coding-instructions TEXT_(none)_Extra instructions for coding agents.
--coding-language LANG_(auto)_Coding language hint.
--coding-backend BACKENDautoPreferred code-generation backend: auto, codex-cli, openai-sdk, responses-http.

Local Command Execution

FlagDefaultDescription
--os-command CMD_(none)_Execute one explicit command through os_agent.
--os-shell SHELL_(auto)_Preferred shell: bash, powershell, cmd.
--os-timeout N0Command timeout in seconds.
--os-working-directory PATH_(working dir)_Working directory for command execution.
--target-os OS_(auto)_Target OS hint: linux, macos, windows.

Privileged Mode

FlagDefaultDescription
--privileged-mode_(off)_Enable privileged policy controls for this run.
--privileged-approved_(off)_Confirm explicit operator approval for privileged actions. Required together with --privileged-approval-note.
--privileged-approval-note NOTE_(none)_Ticket or approval reference for auditing.
--privileged-read-only_(off)_Force read-only execution; no writes or mutations.
--privileged-allow-root_(off)_Allow sudo/root escalation.
--privileged-allow-destructive_(off)_Allow destructive operations.
--privileged-enable-backup_(off)_Create filesystem snapshot before mutating actions.
--privileged-allowed-path PATH_(none)_Allowed path root. Repeat for multiple.
--privileged-allowed-domain DOMAIN_(none)_Allowed network domain. Repeat for multiple.
--kill-switch-file FILE_(env)_Halt if this file exists before next agent step.

Security Workflows

FlagDefaultDescription
--security-authorized_(off)_Confirm you are explicitly authorized to run defensive security tasks on the target.
--security-target-url URL_(none)_Target URL for security assessment.
--security-authorization-note NOTE_(none)_Ticket/approval reference proving assessment authorization.
--security-scan-profile PROFILEstandardScan depth: baseline, standard, deep, extensive.
--no-auto-install-security-tools_(off)_Disable automatic installation of missing security tools (nmap, zap).

Communication

FlagDefaultDescription
--communication-authorized_(off)_Confirm authorization to access communication channels for this run.
--communication-lookback-hours N24Lookback window in hours for the communication digest.
--whatsapp-to PHONE_(none)_Recipient phone in E.164 format for whatsapp_send_message_agent.
--whatsapp-message TEXT_(none)_Plain text message body.
--whatsapp-template NAME_(none)_WhatsApp template name.
--whatsapp-template-language CODEen_USLanguage code for the template.

Session Continuity

FlagDefaultDescription
--channel ID_(none)_Channel ID for conversational session continuity (e.g. webchat, slack).
--workspace-id ID_(none)_Workspace ID for session routing.
--sender-id ID_(none)_Sender/user ID for session routing.
--chat-id ID_(none)_Chat/thread ID for session routing.
--session-key KEY_(none)_Explicit session key in format channel:workspace:chat:scope.
--new-session_(off)_Force creation of a fresh session for this run.

Examples

bash

# Research brief
kendr run --current-folder "Analyze Stripe: business model, competitors, and key risks."

# Multi-source research into a 20-page document
kendr run --sources arxiv,web,reddit --pages 20 "AI safety landscape 2024"

# superRAG: build a knowledge base
kendr run --superrag-mode build --superrag-new-session --superrag-session-title "docs_kb" \
  --superrag-path ./docs --superrag-url https://example.com/help "Index our knowledge base."

# superRAG: chat with a session
kendr run --superrag-mode chat --superrag-session docs_kb \
  --superrag-chat "What are the installation requirements?"

# Dev pipeline with stack template
kendr run --dev --stack fastapi_postgres "Build a task management API"

# Privileged OS command
kendr run --current-folder --os-command "ls -la" --os-shell bash \
  --privileged-approved --privileged-approval-note "OPS-42 approved" "List project root."

# Communication digest (last 8 hours)
kendr run --communication-authorized \
  "Summarize my Slack and Gmail messages from the last 8 hours."

kendr research

Run the multi-source research pipeline and generate a document directly. A focused shortcut for research-specific workflows.

bash

kendr research [FLAGS] "research topic"
FlagDefaultDescription
query_(positional)_Research query or topic.
--sources LIST_(auto)_Comma-separated research sources: web, arxiv, reddit, scholar, patents, openalex, local.
--pages N0Target page count. Enables long-document mode automatically.
--title TEXT_(auto)_Optional report title.
--drive PATH_(none)_Local path to include as a research source. Repeat for multiple.
--research-model MODEL_(env)_Override the deep-research model.
--auto-approve_(off)_Auto-approve plan gates.
--max-steps N20Maximum orchestration steps.
--working-directory PATH_(env)_Output directory.
--current-folder_(off)_Use current terminal folder as output.
--json_(off)_Emit final state as JSON.
--quiet_(off)_Suppress progress messages.

Examples

bash

# Quick research brief
kendr research "Battery recycling market: key players and investment risks"

# Multi-source with document output
kendr research --sources arxiv,web --pages 15 --title "Quantum ML Survey 2024" \
  "Survey of quantum machine learning advances"

# Include local files as a source
kendr research --sources local,web --drive ./internal-reports \
  "Summarize our internal research and compare with market trends"

kendr generate

Generate a complete multi-agent software project from a description: blueprint → scaffold → build → test → verify → zip export.

bash

kendr generate [FLAGS] "project description"
FlagDefaultDescription
description_(positional)_Natural language project description.
--name NAME_(auto)_Project name in kebab-case. Derived from description if omitted.
--stack TEMPLATE_(LLM selects)_Tech stack template: fastapi_postgres, fastapi_react_postgres, nextjs_prisma_postgres, express_prisma_postgres, mern_microservices_mongodb, pern_postgres, nextjs_static_site, django_react_postgres, custom_freeform.
--output PATH_(working dir)_Output directory root.
--auto-approve_(off)_Auto-approve blueprint and plan gates.
--skip-tests_(off)_Skip test generation and execution.
--skip-devops_(off)_Skip Dockerfile, docker-compose, and CI/CD generation.
--skip-reviews_(off)_Skip reviewer agent checks between build steps.
--max-steps N40Maximum orchestration steps.
--working-directory PATH_(env)_Working directory for artifacts.
--current-folder_(off)_Use current terminal folder.
--json_(off)_Emit final state as JSON.
--quiet_(off)_Suppress progress messages.

Examples

bash

# Generate a FastAPI + PostgreSQL API
kendr generate --stack fastapi_postgres "A task management REST API with auth and tests"

# Full-stack with auto-approve
kendr generate --stack fastapi_react_postgres --auto-approve \
  "SaaS starter with user auth, billing, and an admin dashboard"

# Simple script project (LLM chooses stack)
kendr generate "A Python CLI tool for batch image resizing"

kendr gateway

Start, stop, restart, or inspect the HTTP gateway server. The gateway must be started explicitly before any workflow that requires it. It is never auto-started by kendr run, kendr research, or kendr generate.

bash

kendr gateway start
kendr gateway stop
kendr gateway restart
kendr gateway status [--json]
kendr gateway serve       # run in foreground (default when no action given)
ActionDescription
startStart the gateway server in the background. Writes PID to ~/.kendr/gateway.pid.
stopStop the gateway-owned process on the configured port. Does not kill unrelated processes.
restartStop the current gateway and start a fresh one.
statusShow gateway health, PID state, and port listener status.
serveRun the gateway in the foreground (default when no action is specified).
FlagDefaultDescription
--json_(off)_Emit machine-readable status as JSON (includes health_ok, pid_alive, pid_owned, port_listening).

Examples

bash

kendr gateway start
kendr gateway status
kendr gateway stop
kendr gateway restart
kendr gateway status --json
kendr gateway serve        # foreground — useful for debugging

kendr web

Alias for kendr gateway serve. Runs the gateway server in the foreground.

bash

kendr web

kendr setup-ui

Run the OAuth and setup UI directly in the foreground (shortcut for kendr setup ui).

bash

kendr setup-ui

kendr setup

Manage component configuration via the CLI. Use kendr setup status after any configuration change.

bash

kendr setup <action> [args]
ActionDescription
statusShow setup status: which components are configured, available agents, and setup actions.
componentsList all configurable components (integrations).
show COMPONENTShow one component's current configuration.
set COMPONENT KEY VALUESet one configuration field for a component (stored in local DB). Pass --secret to mark the value as a secret (accepted for compatibility — secret classification is otherwise catalog-driven).
unset COMPONENT KEYRemove one configuration field.
enable COMPONENTEnable a component.
disable COMPONENTDisable a component.
export-envExport current DB configuration as dotenv lines. Use --include-secrets to include secrets.
installInstall auto-installable local components (nmap, zap, dependency-check, playwright). Use --yes to skip confirmation, --only to install specific tools.
uiRun the web-based OAuth setup UI on http://127.0.0.1:8787.
oauth PROVIDERRun the OAuth login flow for a supported provider (google, microsoft, slack, all). Use --no-browser to print URLs without opening a browser. Use --ensure-ui for compatibility with environments that auto-start the setup UI.

Examples

bash

# Minimum viable setup
kendr setup set core_runtime KENDR_WORKING_DIR /home/user/kendr-work
kendr setup set openai OPENAI_API_KEY sk-...
kendr setup status

# Check one component
kendr setup show openai --json

# Install security tools
kendr setup install --yes

# Install only specific tools
kendr setup install --yes --only nmap zap

# Run OAuth flow without opening a browser (print URL to copy manually)
kendr setup oauth google --no-browser

# Export config for a .env file
kendr setup export-env > .env

kendr resume

Resume or inspect a previously run or paused orchestration session.

bash

kendr resume [FLAGS] [run-folder]
FlagDefaultDescription
target_(positional)_Run folder, manifest/checkpoint file, or working directory path.
query_(positional)_Optional reply or new query when resuming or branching.
--output-folder PATH_(none)_Explicit path to the run output folder or manifest.
--working-directory PATH_(none)_Working directory to search for persisted run folders.
--latest_(off)_Automatically use the newest discovered run candidate.
--inspect_(off)_Inspect the session without executing it.
--branch_(off)_Start a new child run from the saved context instead of resuming in place.
--reply TEXT_(none)_Explicit reply for a run paused at a user-input gate.
--force_(off)_Take over a run marked as running or stale.
--json_(off)_Emit resume candidate or result as JSON.

Examples

bash

# Inspect the most recent run in the current folder
kendr resume --working-directory . --latest --inspect

# Resume a specific run
kendr resume --output-folder ./output/runs/run_cli_abc123

# Reply to a paused approval gate
kendr resume --output-folder ./output/runs/run_cli_abc123 --reply approve

# Branch: start a new run from a completed session
kendr resume --output-folder ./output/runs/run_cli_abc123 --branch \
  "Expand the brief into an investor-facing memo."

kendr agents

List or inspect discovered agents.

bash

kendr agents list [FLAGS]
kendr agents show AGENT_NAME [--json]
FlagDescription
--plugin NAMEFilter by plugin name.
--contains TEXTFilter agent name/description by substring.
--limit NLimit number of results.
--jsonEmit as JSON.

Examples

bash

kendr agents list
kendr agents show deep_research_agent --json
kendr agents list --contains research

kendr plugins

List discovered plugins (built-in and external).

bash

kendr plugins list [FLAGS]
FlagDescription
--kind KINDFilter by plugin kind.
--contains TEXTFilter by name/description substring.
--limit NLimit results.
--jsonEmit as JSON.

kendr sessions

List and manage conversational sessions.

bash

kendr sessions list [FLAGS]
kendr sessions current
kendr sessions use SESSION_KEY
kendr sessions clear
FlagDescription
--limit NNumber of sessions to list (default 20).
--jsonEmit as JSON.

kendr workdir

Manage the configured working directory.

bash

kendr workdir show [--json]
kendr workdir set PATH
kendr workdir here
kendr workdir create PATH [--activate]
SubcommandDescription
showShow the currently configured working directory.
set PATHSet the working directory to an existing absolute path.
hereSet the current terminal folder as the working directory.
create PATHCreate a new working directory. Use --activate to set it active immediately.
clearClear the configured working directory (unset KENDR_WORKING_DIR).

Examples

bash

kendr workdir here
kendr workdir show
kendr workdir set /home/user/my-project

kendr status

Show a runtime status snapshot (agents available, setup health, session state).

bash

kendr status [--json]

kendr daemon

Run the always-on monitor and heartbeat loop for scheduled tasks and stock/news monitoring.

bash

kendr daemon [--poll-interval N] [--heartbeat-interval N] [--once]
FlagDefaultDescription
--poll-interval N_(env)_Seconds between monitor passes.
--heartbeat-interval N_(env)_Seconds between heartbeat log entries.
--once_(off)_Run one monitor pass and exit.

kendr rollback

List or apply filesystem snapshots created by privileged runs.

bash

kendr rollback list
kendr rollback apply --snapshot PATH [--target-dir PATH] [--overwrite] [--yes]

kendr hello

Display a quick-start welcome screen with setup guidance and example commands. Useful for first-time orientation.

bash

kendr hello [--json]
FlagDefaultDescription
--json_(off)_Emit quick-start info as JSON.

kendr help

Show help for a specific command.

bash

kendr help [TOPIC]
ArgumentDescription
topicOptional command name to show help for. Omit to show general help.

Examples

bash

kendr help
kendr help run
kendr help gateway

kendr mcp

Manage MCP (Model Context Protocol) server connections. Kendr acts as an MCP client — any tools exposed by registered servers are automatically discovered and made available to the agent runtime.

bash

kendr mcp <action> [args]

Subcommands

SubcommandDescription
listList all registered MCP servers and their discovered tools.
addRegister a new HTTP or stdio MCP server.
removeRemove a registered server by name or ID.
discoverRe-run tool discovery on a registered server.
testPing a server and list its available tools.
enableEnable a disabled server so kendr uses its tools.
disableDisable a server without removing it.
zapierQuick-connect your Zapier MCP server (see below).

kendr mcp list

List all registered servers with their connection type, status, tool count, and ID.

bash

kendr mcp list

kendr mcp add

Register a new MCP server. Supports both HTTP/SSE servers and stdio (subprocess) servers.

bash

kendr mcp add <name> <connection>
kendr mcp add --name <name> --url <url> [--type http|stdio] [--auth-token TOKEN] [--description TEXT] [--no-discover]
FlagDefaultDescription
name_(positional)_Human-readable server name.
connection_(positional)_HTTP endpoint URL or shell command (for stdio servers).
--name NAMEServer name (overrides positional).
--url URLConnection (overrides positional).
--typehttpConnection type: http (HTTP/SSE endpoint) or stdio (shell command).
--auth-token TOKENBearer token sent as Authorization: Bearer … for authenticated HTTP servers.
--description TEXTOptional description stored with the server entry.
--no-discover_(off)_Register without immediately running tool discovery.

#### Examples

bash

# Add an HTTP MCP server
kendr mcp add "My Server" http://localhost:8000/mcp

# Add with auth token
kendr mcp add "Private Server" https://api.example.com/mcp --auth-token sk-abc123

# Add a stdio server
kendr mcp add "Local Agent" "python mcp_servers/my_server.py" --type stdio

# Register without discovering tools yet
kendr mcp add "Slow Server" http://slow-server.internal/mcp --no-discover

kendr mcp remove

Remove a registered MCP server and all its discovered tool metadata.

bash

kendr mcp remove <name-or-id>

kendr mcp discover

Re-connect to a registered server and refresh its tool list. Useful after the server is updated.

bash

kendr mcp discover <name-or-id>

kendr mcp test

Ping a server and print all its available tools without modifying the registry.

bash

kendr mcp test <name-or-id>

kendr mcp enable / kendr mcp disable

Enable or disable a server. Disabled servers are skipped during agent runtime but remain in the registry.

bash

kendr mcp enable <name-or-id>
kendr mcp disable <name-or-id>

kendr mcp zapier

Quick-connect a Zapier MCP server. Zapier exposes 7,000+ app integrations (Gmail, Slack, Notion, GitHub, Salesforce, and more) through a single personal MCP endpoint.

bash

kendr mcp zapier <your-zapier-mcp-url>
kendr mcp zapier --url <url> [--name NAME] [--no-discover]
FlagDefaultDescription
mcp_url_(positional)_Your personal Zapier MCP URL.
--url URLAlternative to positional argument.
--name NAMEZapierName for this registry entry.
--no-discover_(off)_Register without running discovery immediately.

Get your Zapier MCP URL:

1. Go to zapier.com/mcp 2. Copy your personal MCP endpoint URL 3. It will look like: https://mcp.zapier.com/api/mcp/s/<token>/mcp

#### Examples

bash

# Connect Zapier MCP (tool discovery runs automatically)
kendr mcp zapier https://mcp.zapier.com/api/mcp/s/abc123xyz/mcp

# Connect with a custom name
kendr mcp zapier https://mcp.zapier.com/api/mcp/s/abc123xyz/mcp --name "My Zapier"

# Connect without immediate discovery
kendr mcp zapier https://mcp.zapier.com/api/mcp/s/abc123xyz/mcp --no-discover

Running this command without a URL prints setup instructions:

bash

kendr mcp zapier

Shell Automation

Kendr's shell automation lets agents install tools, run multi-step OS commands, and execute complex workflows directly on your machine — all from the chat UI or CLI.

How it works

When shell automation is active, the OS agent (os_agent) and the shell plan agent (shell_plan_agent) are authorised to:

- Run arbitrary shell commands (bash, sh, POSIX-compatible) - Install packages with apt, brew, pip, npm, cargo, go install, pipx, etc. - Start and manage services with docker, docker compose, systemctl, ollama, nginx, etc. - Clone repos, pull updates, and run build pipelines with git, make, cmake, etc.

For multi-step goals (e.g. "install Docker, pull an image, and run a container"), Kendr uses shell_plan_agent which:

1. Decomposes the goal into ordered steps via LLM 2. For each step, runs an optional check command first — if the check passes, the step is skipped (idempotent) 3. Executes the command and captures stdout/stderr 4. Reports per-step status: ✓ done / skipped / blocked / error

Enabling Shell Automation in the Chat UI

Click the 💻 Shell button in the chat header. When it turns amber the mode is active. A warning banner appears below the input box as a reminder that agents may run commands on your machine.

To disable, click the button again.

Enabling Shell Automation via CLI

Pass --privileged-approved together with a note to any kendr run invocation:

bash

kendr run "Install nginx, configure it, and start it" \
  --privileged-approved \
  --privileged-approval-note "Approved by me for nginx setup"

Or use the environment variable to auto-approve for all shell commands in a session:

bash

export KENDR_AUTO_APPROVE_COMMANDS=true
kendr run "Set up a Python venv and install fastapi uvicorn"

Policy and safety

Shell automation follows kendr's privileged control policy:

SituationBehaviour
Non-destructive command, auto-approve ONRuns automatically
Destructive command (rm -rf, DROP TABLE, etc.)Always prompts — never auto-approved
sudo or root-requiring commandBlocked unless --privileged-allow-root is set
Path outside working directoryBlocked unless --privileged-allowed-paths includes it

To allow destructive commands explicitly:

bash

kendr run "Clean build artefacts" \
  --privileged-approved \
  --privileged-approval-note "Safe to delete build/" \
  --privileged-allow-destructive

Terminal output rendering

Shell automation results in the Chat UI are rendered in a dark terminal style with colour-coded lines:

- Green — command being run - Blue-grey — standard output - Red — errors / stderr - Amber — blocked commands - Muted — skipped steps

Example goals

bash

# Install and start Ollama with llama3
kendr run "Install ollama, pull llama3, and start the server" --privileged-approved --privileged-approval-note "Local dev setup"

# Dockerise a project
kendr run "Write a Dockerfile for this Python project and build it" --privileged-approved --privileged-approval-note "Build image"

# Set up nginx reverse proxy
kendr run "Install nginx and configure it to proxy port 3000 on /app" --privileged-approved --privileged-approval-note "Dev proxy"