flowdeck apps
List apps that were launched by FlowDeck.
# List running apps
flowdeck apps
# Include stopped apps
flowdeck apps --all
flowdeck apps -a
# Clean up stale entries
flowdeck apps --prune
# JSON output
flowdeck apps --json
# Show usage examples
flowdeck apps --examples
Options
| Option | Short | Description |
|---|
--examples | | Show usage examples |
--json | -j | Output as JSON |
--all | -a | Show all apps including stopped ones |
--prune | | Validate and prune stale entries |
JSON Output
{
"apps": [
{
"id": "abc12345-1234-5678-9abc-def012345678",
"shortId": "abc123",
"bundleId": "com.example.MyApp",
"status": "running",
"targetType": "simulator",
"targetName": "iPhone 16 Pro",
"scheme": "MyApp",
"pid": 54321,
"launchedAt": "2025-01-15T10:30:00Z"
}
],
"staleRemoved": 0
}
App Status Values:
| Status | Description |
|---|
running | App is currently running |
stopped | App was stopped normally |
crashed | App crashed |
exited | App exited |
waitingForDebugger | App waiting for debugger to attach |
unknown | Status cannot be determined |
flowdeck logs
Stream real-time logs from a running app. Alias: log
# Stream logs (use App ID from 'flowdeck apps')
flowdeck logs <app-id>
# Stream logs using short ID
flowdeck logs abc123
# Stream logs using bundle ID
flowdeck logs com.company.MyApp
# Stream logs in JSON format
flowdeck logs abc123 --json
# Show usage examples
flowdeck logs --examples
Arguments
| Argument | Description |
|---|
<identifier> | App identifier (short ID, full ID, or bundle ID) |
Options
| Option | Short | Description |
|---|
--examples | | Show usage examples |
--json | -j | Output as JSON |
Use flowdeck apps to get the app ID. You can use either the short ID (e.g., abc123) or the bundle ID.
Logs are prefixed by their source:
[console] Messages from print() statements
[category] Messages from os_log() with category
[subsystem] Messages from Logger() with subsystem
JSON Output
{"type":"log","level":"info","category":"console","message":"Hello, World!","timestamp":"2025-01-15T10:30:00Z"}
{"type":"log","level":"debug","category":"MyCategory","message":"User logged in","timestamp":"2025-01-15T10:30:01Z"}
flowdeck stop
Stop a running app.
# Stop specific app
flowdeck stop <app-id>
flowdeck stop abc123
# Stop by bundle ID
flowdeck stop com.company.MyApp
# Stop all running apps
flowdeck stop --all
flowdeck stop -a
# Force kill unresponsive app
flowdeck stop abc123 --force
flowdeck stop abc123 -f
# Force kill all apps
flowdeck stop --all --force
# JSON output
flowdeck stop abc123 --json
# Show usage examples
flowdeck stop --examples
Arguments
| Argument | Description |
|---|
<identifier> | App identifier (short ID, full ID, or bundle ID) |
Options
| Option | Short | Description |
|---|
--examples | | Show usage examples |
--all | -a | Stop all running apps |
--force | -f | Force kill (SIGKILL instead of SIGTERM) |
--json | -j | Output as JSON |
JSON Output
{
"type": "result",
"success": true,
"operation": "stop",
"appId": "abc123",
"bundleId": "com.example.MyApp"
}
flowdeck context
Discover project structure including workspace, schemes, simulators, and build configurations. This is the first command to run in a new project. Alias: ctx
# Human-readable output
flowdeck context
# JSON output (recommended for AI agents)
flowdeck context --json
# Specific project directory
flowdeck context -p /path/to/project
flowdeck context --project /path/to/project
# Show usage examples
flowdeck context --examples
Options
| Option | Short | Description |
|---|
--examples | | Show usage examples |
--project <path> | -p | Project directory (defaults to current directory) |
--json | -j | Output as JSON |
JSON Output
{
"workspace": "MyApp.xcworkspace",
"schemes": [
{
"name": "MyApp",
"category": "iOS",
"isShared": true,
"productType": "application",
"platform": "iOS"
},
{
"name": "MyAppTests",
"category": "Tests",
"isShared": true
}
],
"buildConfigurations": ["Debug", "Release"],
"simulators": [
{
"udid": "12345678-1234-1234-1234-123456789ABC",
"name": "iPhone 16 Pro",
"platform": "iOS",
"osVersion": "18.0",
"state": "Shutdown"
}
]
}
Typical Workflow
# 1. Discover project info
flowdeck context --json
# 2. Build with discovered parameters
flowdeck build --workspace MyApp.xcworkspace --simulator "iPhone 16"
# 3. Run with discovered parameters
flowdeck run --workspace MyApp.xcworkspace --simulator "iPhone 16 Pro"
For listing schemes and build configurations, see the System Commands documentation for flowdeck project schemes and flowdeck project configs.The legacy scheme list, scheme info, and buildconfig commands are still available for backward compatibility but are hidden from the main help output.