Run the release installer and reach the first conversation
Objective: show the full first-run path from the shell script to the PawFlow conversation screen with assistant selected.
1. Download the release zip, unzip it, and run scripts/install-pawflow.sh.Video: install script, browser wizard, and first chat.
terminal
Loading current release command...
Gateway screenOpen https://localhost:19990/install, accept the local certificate for private installs, enter the bootstrap key, then replace it with your real Private Gateway key.
Admin screenCreate the first admin account. This user owns the initial runtime resources and can configure global agents/services.
LLM provider screenSelect the first provider: Codex app-server, Claude Code interactive, Antigravity/Agy, Gemini CLI, Anthropic, OpenAI, or an OpenAI-compatible endpoint.
Summarizer screenChoose the summarizer service and context limits so compaction is explicit and does not flood provider context.
Runtime screenDeploy the main PawFlow Agent flow: httpReceiver to agentLoop to handleHTTPResponse.
Conversation screenOpen the starter conversation, confirm assistant is selected, send a small prompt, and verify streaming output.
Gateway and bootstrap key.Admin account.LLM service.First conversation.
Expected result: PawFlow is running on the selected port, the wizard is complete, and the first conversation can call the selected provider.
Desktop, noVNC, audio, screen tools
Use a relay desktop with noVNC, audio, screen, and see
Objective: explain the operator view and the agent-visible tools for desktop work. This applies to any relay running a desktop-capable image — server relay, remote Relay CLI, or Relay Desktop alike.
Desktop (VNC): noVNC opens the relay desktop in the browser.Audio only: stream the relay's sound without opening a desktop.Video: agent inspects the screen, then acts through approved tools.
Connect any relay whose image ships the virtual desktop (server relay, remote Relay CLI, or Relay Desktop); for a local GUI session, install Relay Desktop on the workstation that owns it.
Open Desktop from the webchat workspace menu and choose the relay's virtual desktop, or the local desktop when allow_local is intentionally enabled.
Use noVNC for operator observation/control; enable audio only for sessions that need sound playback or capture.
Let agents inspect UI state through screen screenshots or see multimodal analysis, then approve clicks/typing/shell/file actions separately.
Keep desktop permissions narrower than filesystem permissions when the task only needs visual inspection.
Expected result: the user can watch the same desktop surface the agent sees, while agent actions remain routed through auditable screen/see/tool calls.
Download the PawCode asset matching the release version shown above.
Install the package or unzip it into a directory on PATH.
Run PawCode, point it at the PawFlow server, and authenticate with the same user.
Select an existing conversation or create a new one; relays, memories, and tool policies stay server-side.
Expected result: terminal work and webchat share the same PawFlow conversation instead of creating an isolated provider session.
PawCode usage
Start PawCode with explicit server and Private Gateway settings
Objective: make the terminal client predictable across localhost, private deployments, and gateway-protected routes.
Set the server URL once, then login and resume shared conversations.Video: server URL, Private Gateway key, login, resume, and run a relay-backed command.PawCode in a terminal: live thinking, tool calls, and streaming responses over the same backend.
terminal
# Local server
PAWFLOW_SERVER="https://localhost:19990" pawcode --dir .
# Gateway-protected server
PAWFLOW_SERVER="https://pawflow.example.com" \
PAWFLOW_GATEWAY_KEY="your-private-gateway-key" \
pawcode --dir .
# Common flow after login
pawcode auth login
pawcode --dir .
Use PAWFLOW_SERVER for the exact PawFlow origin, including scheme and port.
Use PAWFLOW_GATEWAY_KEY when Private Gateway protects API/SSE routes; keep it in your shell profile or secret manager, not in prompts.
Run pawcode auth login if the browser auth token is missing or expired.
Use /conv and /resume <id> to continue webchat conversations.
Use /new --agent assistant --llm <service> --relay <relay_id> when creating a terminal-first conversation with an existing relay binding.
Expected result: PawCode connects to the intended PawFlow server, passes Private Gateway cleanly, and uses the same relay/tool permissions as webchat.
Install the PawFlow VS Code extension from a release VSIX
Objective: make the VS Code client installable without opening the extension source folder or running a development host.
Install the release .vsix, configure the server URL, then login.Video: install from VSIX, settings, login, chat sidebar, selection actions.The PawFlow panel in VS Code: chat, conversations, files, tools, and live streaming over the same backend.
Objective: run a full relay on the PawFlow server itself, so agents get filesystem, shell, and tool access to server-side workspaces — the pure remote self-hosted setup — and client relays can register against it.
Install PawFlow and complete the first-run wizard.
Open resources/services and add a `relay` service.
Leave `token` empty for a managed server relay.
Save and confirm health before attaching client relays.
Expected result: agents can work directly in server-side workspaces, and PawFlow can broker filesystem, shell, screen, browser, and desktop-capable clients.
Objective: connect the assistant to Codex app-server, Claude Code interactive, Antigravity/Agy, Gemini CLI, Anthropic, OpenAI, or a compatible endpoint.
Create or select an LLM service in the installer/resource panel.
Use direct `openai`/`anthropic` for API keys, `codex-app-server` for Codex subscriptions, `claude-code-interactive` for Claude subscriptions, and `antigravity-interactive` for Gemini subscriptions.
Set credentials through secrets or the matching OAuth credential provider.
Send a small inspection task before allowing edits or shell.
Expected result: streaming responses from the selected provider.
Objective: use a Telegram bot as a first-class client for the shared agent runtime, with the same durable conversations, agents, and tools as web chat and PawCode.
Create a bot with @BotFather and copy the bot token.
Store the token as a secret, then add a telegramBot service that references it. Set allowed_users to the Telegram user IDs you trust.
Deploy the Telegram agent flow: telegramReceiver ingests messages and telegramAgentClient submits them through the shared agent API. Add telegramConversationBridge to mirror live conversation events back to the chat.
Link your Telegram account to a PawFlow user from account settings, so messages run under your identity, scope, and permissions.
Message the bot: text, documents, photos, and voice are accepted. Use /new to start a conversation, /conv to switch, /tts for spoken replies, and /help for commands; slash commands mirror into the conversation.
Expected result: the same agents, multi-agent context, attachments, and FileStore outputs are available from Telegram, with responses streamed back to the chat.