27 min read

Install Potpie with uv or pip for Claude Code and Codex

Install Potpie with uv or pip, verify its daemon and AI harness, then expose the discovered local graph UI through a Localtonet HTTP tunnel.

AI Developer Tools Β· Potpie 2.0.1 Β· Claude Code Β· OpenAI Codex Β· 2026

Build a verified Potpie context graph, connect an AI coding harness, and publish the graph explorer only when it is adequately protected

This tutorial installs the reproducible Potpie 2.0.1 release with uv or pip, completes the local setup, and verifies the daemon, active pot, repository source, graph, and integrations. It also covers installation, authentication, startup, and basic Potpie verification for Claude Code and OpenAI Codex. Finally, it explains how to expose the optional graph explorer through Localtonet, but only after confirming that the application has adequate access control.

πŸ”’ Access control before public exposure πŸ€– Claude Code and OpenAI Codex workflows ⚑ Reproducible Potpie 2.0.1 installation

What Potpie installs and why this guide pins version 2.0.1

Potpie connecting a software repository and graph explorer to AI coding tools, with optional remote browser access through an HTTP tunnel.
Potpie operates locally with supported AI coding harnesses, while the browser graph explorer can remain local or be exposed temporarily after an access-control review.

Potpie turns a codebase and its software development context into a graph that AI agents can query. It can index code, project structure, decisions, source history, team knowledge, and engineering workflows. That context helps an agent answer repository-specific questions, plan changes, investigate failures, and work with conventions that may not be visible in the current chat.

Potpie's current architecture is CLI-first. Developers and agents interact with the potpie command, while a local daemon supplies the supporting runtime. A pot is the active workspace through which Potpie resolves sources and context. The optional browser graph explorer gives you a visual way to inspect that context, but it is not required for every Claude Code or Codex task.

Diagram showing the Potpie CLI, daemon, active pot, context graph, skills, repository sources, Claude Code, and OpenAI Codex.
The Potpie CLI and daemon manage the active pot and context graph, while installed skills connect that workflow to a supported coding harness.

This tutorial is pinned to Potpie 2.0.1. Pinning matters because an unqualified command such as uv tool install potpie can install a newer release whose Python requirements, options, daemon behavior, or integrations differ from the commands verified here. Every Potpie installation command in the main workflow therefore requests potpie==2.0.1.

Version 2.0.1 consolidated the CLI and daemon under the root potpie package. It uses the canonical python -m potpie.daemon runtime internally, moved Context Engine imports to the potpie_context_engine namespace, and removed unsupported legacy service and pot-level ingestion commands. It also supports Python 3.12, 3.13, and 3.14. Its release artifacts were smoke-tested on macOS and Linux, although that statement is not a complete operating-system support matrix.

Latest-version installations require fresh validation

You may deliberately upgrade beyond 2.0.1, but do not assume that every version-specific note in this tutorial still applies. Check the active Potpie release, inspect its Python requirements and migration notes, rerun setup or skill installation when instructed, and complete all local verification checks before restoring remote access.

🧠 Context graph Potpie organizes project-specific code and engineering context so an agent can retrieve relevant information before acting.
⌨️ CLI-first operation Commands such as potpie status, potpie resolve, and potpie search support direct developer and agent workflows.
πŸ€– Harness skills The setup wizard can install Potpie guidance and skills for supported harnesses, including Claude Code and OpenAI Codex.
🩺 Local diagnostics Status, doctor, authentication, pot, and source commands help separate package, daemon, context, and integration problems.
πŸ•ΈοΈ Graph explorer potpie ui opens a browser-based graph explorer served by the local daemon.
🌐 Optional remote access A verified and adequately protected graph explorer can be mapped to a public HTTPS address with a Localtonet HTTP tunnel.

Prepare Python, uv or pip, and your development environment

Before installing Potpie, choose a repository for the initial test and decide whether Claude Code or OpenAI Codex will be the first configured harness. Keep the first test small and use a repository whose contents you are authorized to process. Potpie may work with code structure, source history, decisions, issue data, and team knowledge, so repository and integration permissions deserve the same care as other development credentials.

Check for a supported Python interpreter

Potpie 2.0.1 supports Python 3.12, 3.13, and 3.14. Check the interpreter your shell currently resolves:

python3 --version

On systems where the command is named python, use:

python --version

Continue if the reported version is within the supported 3.12 through 3.14 range. If Python is missing or outside that range, use an installer from the official Python downloads page, your operating system's supported package manager, or uv's managed Python installation described below. Avoid replacing an operating-system-managed Python interpreter merely to install one CLI.

Install and verify uv

Potpie recommends uv tool installation because it isolates CLI dependencies instead of globally mutating a Python environment. Review the current options in the official uv installation guide. On macOS or Linux, the documented standalone installer is:

curl -LsSf https://astral.sh/uv/install.sh | sh

On Windows PowerShell, the documented installer is:

powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex"

Read an installer script and confirm that its source is appropriate for your environment before executing it. When installation completes, open a new terminal if instructed and verify command availability:

uv --version

If you need a supported Python interpreter and want uv to manage it without replacing the system interpreter, install Python 3.12:

uv python install 3.12

Confirm that uv can see its managed installations:

uv python list

Check pip only if you are using the alternative path

If uv is unavailable or your environment requires pip, verify pip through the same supported Python interpreter you intend to use:

python3 -m pip --version

If that module is unavailable, follow the official pip installation guidance for your Python distribution. Do not download an unofficial copy of pip or run a privileged global package installation simply to make the command available.

Do not override an externally managed Python environment

Some Linux distributions mark their system Python as externally managed under PEP 668. In that environment, pip may reject even an otherwise familiar installation command. Do not respond by adding --break-system-packages or by using sudo pip. Install Potpie with uv tool, use a supported Python installation that you control, or create a dedicated virtual environment. These options avoid damaging packages required by the operating system.

Prepare the selected coding harness

Claude Code and OpenAI Codex are separate applications with their own installation and account authentication. Potpie installs guidance for a selected harness, but it does not install the harness itself or create an Anthropic or OpenAI account. The complete harness workflows appear later in this guide.

Requirement Minimum check Purpose
Python 3.12, 3.13, or 3.14 python3 --version Runs Potpie 2.0.1 and its CLI environment.
uv, recommended uv --version Installs Potpie as an isolated command-line tool.
pip, alternative python3 -m pip --version Installs the package into the selected user's Python environment.
Development repository Open a terminal in its root directory Supplies real project context for setup and verification.
Claude Code or Codex Run its version command after installation Acts as the coding harness that consumes Potpie guidance.
Browser, optional Open a local HTTP address Displays the Potpie graph explorer when potpie ui is used.

Install Potpie 2.0.1 with uv or pip

Potpie is published on PyPI as the potpie package. Use one package-management method consistently. Installing the same CLI with both uv and pip can leave multiple executables on your path and make version checks misleading.

Recommended uv tool installation

Install the pinned release as an isolated command-line tool:

uv tool install potpie==2.0.1

If uv does not select an appropriate interpreter automatically, explicitly request its managed Python 3.12 installation:

uv tool install --python 3.12 potpie==2.0.1

If uv reports that its executable directory is not on your shell path, use uv's supported path helper:

uv tool update-shell

Start a new shell and verify that Potpie is available:

potpie --version

Confirm that the output identifies version 2.0.1 before continuing. A different version means that another executable may be taking precedence or that an earlier installation is still active.

Alternative user-level pip installation

When pip is the appropriate installer for your environment, use the exact interpreter-qualified command documented by Potpie:

python3 -m pip install --user potpie==2.0.1

Then inspect the package through the same interpreter:

python3 -m pip show potpie

Verify that the displayed version is 2.0.1, then check the executable:

potpie --version

A successful pip installation does not guarantee that the user executable directory is on your shell path. If python3 -m pip show potpie succeeds but potpie is not found, read pip's installation output and determine the user executable directory for that exact interpreter. Do not copy a path from another operating system or Python distribution.

Package installation is only the first stage

The package manager places the CLI in an environment. Potpie is not ready for repository work until the setup wizard has created local configuration, storage, the daemon, a default pot, and agent skills.

Run Potpie setup and configure local context

Change into the repository you want to use for the initial test:

cd /path/to/your/repository

Replace the example path with your actual repository. Then run the interactive setup wizard:

potpie setup

Follow the prompts shown by the installed 2.0.1 release. The wizard provisions local configuration, storage, the daemon, a default pot, and agent skills. It also lets you choose integrations and the coding harness Potpie should configure. Select Claude Code or OpenAI Codex according to the harness you installed.

Potpie also documents this repository-specific Claude setup example:

potpie setup --repo . --agent claude

Run it only from the repository that the dot should represent. The . value means the current working directory. For Codex, use the interactive wizard because the verified Potpie material for this tutorial confirms Codex support but does not establish a literal command-line value for --agent.

A separate manual ingest command is not required

Potpie's documented workflow registers sources through the CLI, and the configured agent can ingest or update context when a task requires it. Instructions that use removed legacy service or pot-level ingestion commands do not apply to version 2.0.1.

Optional Potpie and source authentication

Basic local setup is distinct from account-backed features. When you need Potpie account-backed or managed capabilities, start the documented sign-in flow:

potpie login

Source integrations require separate authentication. For GitHub:

potpie github login

For Linear:

potpie linear login

Connect only the systems needed for the task. Use accounts with appropriately scoped repository, issue, or document permissions. Do not paste access tokens into prompts, repositories, screenshots, or support messages.

Inspect configured authentication state with:

potpie auth status

When you need a lightweight API check of configured integration credentials, run:

potpie auth status --verify

Install, authenticate, and verify Claude Code or OpenAI Codex

Complete one of the following harness workflows after installing Potpie. You may configure both later, but testing one at a time makes it easier to distinguish a Potpie problem from a harness installation or authentication problem.

Claude Code workflow

Use the current official Claude Code setup documentation to confirm that your operating system and account are supported. Anthropic provides native installers for common development environments.

On macOS, Linux, or Windows Subsystem for Linux, the official native installation command is:

curl -fsSL https://claude.ai/install.sh | bash

On Windows PowerShell, use:

irm https://claude.ai/install.ps1 | iex

Open a new terminal if the installer modifies your path, then verify the executable:

claude --version

Change into the repository and start Claude Code:

cd /path/to/your/repository
claude

On first launch, follow the authentication flow presented by Claude Code. Complete sign-in only through Anthropic's interface and do not copy session credentials into Potpie configuration or source control.

If you did not already configure Claude during Potpie setup, install or refresh its Potpie guidance with the verified agent identifier:

potpie skills install --agent claude

For a minimal integration check, open Claude Code from the repository and ask it to use Potpie to identify the repository's main components or retrieve the context needed before a small read-only task. Keep the first request non-destructive. If Claude cannot use Potpie, test the equivalent context operation directly with potpie resolve before changing harness settings.

OpenAI Codex workflow

OpenAI publishes the Codex CLI and its current installation details in the official OpenAI Codex repository. The npm installation path requires a supported Node.js and npm environment. Verify npm first:

node --version
npm --version

Install Codex globally through npm:

npm install -g @openai/codex

Verify that the command is available:

codex --version

Start Codex from the repository:

cd /path/to/your/repository
codex

Follow the authentication choices displayed by the current Codex CLI, such as its supported ChatGPT sign-in flow. If your organization uses another supported authentication method, follow the current OpenAI instructions and keep credentials out of shell history, source control, screenshots, and prompts.

Run potpie setup and select OpenAI Codex when the wizard asks which coding harness to configure. The evidence for this tutorial does not establish a literal Codex value for Potpie's --agent option, so do not guess one.

For the minimal check, ask Codex from the target repository to use Potpie to summarize the context needed for a small read-only task. If Codex does not invoke or follow the Potpie integration, verify Potpie directly and rerun the setup wizard with Codex selected.

Harness Installation verification Startup Potpie configuration
Claude Code claude --version claude from the repository Select Claude in setup or use --agent claude.
OpenAI Codex codex --version codex from the repository Select Codex interactively in potpie setup.
Direct Potpie CLI potpie --version Run a Potpie context command Useful for separating Potpie health from harness behavior.

Verify the daemon, active pot, source, graph, skills, and authentication

A successful installer exit is not enough. Verify the complete local chain before relying on Potpie inside a coding session.

Check overall context readiness

potpie status

Status reports readiness for the active pot, including daemon, graph, and skill checks. Read the complete output. A running daemon does not prove that the intended repository is registered, the expected pot is active, or the graph contains useful context.

Run local diagnostics

potpie doctor

The doctor command checks local daemon behavior, backend capabilities, and skill drift. Skill drift is especially relevant after a package upgrade, a harness change, or a partial setup rerun.

Inspect and select the active pot

potpie pot list

If the intended workspace is not active, use an identifier or name displayed by your own installation:

potpie pot use <id-or-name>

Pot identifiers and names are environment-specific. Do not copy them from another installation.

Register the current repository if necessary

From the repository root, run:

potpie source add repo .

Then repeat potpie status. Source registration and active-pot selection should be corrected before troubleshooting Claude Code or Codex.

Test context retrieval without a harness

Ask Potpie what context should be read before work begins:

potpie resolve "what should I know before working in this repository?"

Search for a specific concept:

potpie search "authentication flow"

If appropriate for the repository, record a durable project decision:

potpie record --type decision --summary "Prefer the Potpie CLI for graph work"

These direct commands create a useful troubleshooting boundary. If they work but the harness ignores Potpie, investigate harness skills or setup selection. If they fail, remain at the Potpie layer and inspect the daemon, pot, source, graph, and integration state.

Use read-only verification before allowing code changes

Begin with repository summaries, searches, and context-resolution requests. Confirm that Potpie resolves the intended repository and pot before asking an AI coding harness to edit files, run destructive commands, or interact with external systems.

Open the graph explorer and inspect its local security behavior

A terminal showing Potpie verification beside a browser displaying the graph explorer at the endpoint reported by the local installation.
Verify the daemon and graph first, then open the explorer at the exact local endpoint reported by Potpie.

Once local status and context checks succeed, open the optional graph explorer:

potpie ui

Observe the terminal output and the address opened by the browser. Record the complete endpoint, including its scheme, host, and port if present. Potpie's available documentation confirms that the command opens a graph explorer served by the daemon, but it does not establish one fixed hostname, port, scheme, or bind address for every installation.

Refresh the page and confirm that it represents the intended pot and repository. Also determine whether the UI requires authentication before showing project data. The available Potpie evidence does not establish an authentication default for the explorer, so this must be tested against the installed version rather than assumed.

Local graph explorer checklist

  • potpie ui runs without a daemon or graph error.
  • The browser opens the exact endpoint reported by the command.
  • Refreshing that address continues to load the explorer.
  • The displayed graph corresponds to the intended pot and repository.
  • You understand what repository, decision, issue, or integration data is visible.
  • You have confirmed whether authentication is required before the data appears.
This access-control decision blocks public exposure

Do not create or start a public tunnel until you have confirmed adequate application-level protection for the graph explorer. If the UI exposes repository context without authentication or another suitable access-control layer, keep it local. A public HTTPS address protects transport to the tunnel edge, but it does not create a Potpie login or authorize viewers.

Expose an adequately protected graph explorer with Localtonet

A public browser connecting through a Localtonet HTTP tunnel to a verified Potpie graph endpoint reachable from the Localtonet client device.
The Localtonet client can forward to Potpie through loopback on the same host or through another verified address reachable from the client device.

Continue only if the preceding security checkpoint passes. The Potpie UI must work locally, the target endpoint must be known, and the exposed application must have protection appropriate for the repository context it displays. If those conditions are not met, skip this section and keep the graph explorer local.

Localtonet exposes an existing service through an outbound connection to one of our relay servers. It does not install Potpie, initialize a pot, authenticate Potpie users, or repair a failed graph. An HTTP tunnel supplies a public HTTPS address without inbound router port forwarding, firewall changes, VPN setup, or a public IP address.

The client may run on the Potpie host and connect through a loopback address, or it may run on another device that can reach the verified Potpie service. In either case, use the exact reachable IP address and port. Do not assume that localhost on a different device refers to the Potpie machine.

1

Install and run the Localtonet client

Install our client on the device that can reach the verified Potpie HTTP endpoint. Confirm that the UI still works from that device before configuring a tunnel.

2

Select the client authentication token

Select the device-specific authentication token for the client that will run the tunnel. Treat it as a credential and never publish it in commands, screenshots, logs, source control, or support messages.

3

Open the HTTP tunnel configuration

Create an HTTP tunnel and choose the required process type. HTTP process types can use a random subdomain, a selected custom subdomain where supported, or a custom domain, with the content served at a public HTTPS address.

4

Select an available relay server

Choose an available server or region from the current Localtonet dashboard. Do not copy a hardcoded server code because available values may vary by current product configuration.

5

Enter the verified local IP address and port

Use the endpoint discovered from the working Potpie UI. If the client runs on another device, use an address for the Potpie host that the client device can actually reach rather than loopback on the client itself.

6

Start the tunnel only after the protection check passes

Press Start only when adequate access control is active. Creating a tunnel configuration does not start it. The selected client must also remain connected for the public address to work.

7

Verify the public HTTPS address

Open the assigned URL in a separate browser session and, when practical, from another network. Confirm that authorization is enforced before sensitive graph data appears and that the expected pot is displayed after authorized access.

8

Stop or delete the tunnel after use

Stop the tunnel when the remote inspection or collaboration session ends. Delete the configuration when it is no longer required. Potpie's local CLI workflow can continue without a public graph explorer.

Check the current Localtonet HTTP tunnel documentation while configuring the dashboard. If you use a custom domain, verify the current DNS requirements there before changing DNS records.

Never use a guessed port

Trying unrelated ports until one responds can expose the wrong development or administrative service. Forward only to the exact Potpie browser endpoint you verified. If the endpoint changes after a Potpie upgrade or restart, verify it locally before updating or restarting the tunnel.

Inspect, upgrade, reinstall, or remove Potpie safely

Inspect the active version

Check the command resolved by your shell:

potpie --version

For a pip installation, compare that result with the package metadata:

python3 -m pip show potpie

A disagreement can indicate that the shell is resolving a different installation. Resolve that ambiguity before upgrading or troubleshooting.

Reinstall or upgrade with uv

To reinstall the pinned release:

uv tool install --force potpie==2.0.1

When you deliberately choose to upgrade to the latest package available from the configured index, use:

uv tool upgrade potpie

A latest-version upgrade moves this environment beyond the pinned scope of the tutorial. Immediately inspect potpie --version, review the corresponding release notes, run potpie status and potpie doctor, refresh harness skills if required, and verify the UI locally. Keep any Localtonet tunnel stopped during that process.

Reinstall or upgrade with pip

To restore the pinned release:

python3 -m pip install --user --upgrade potpie==2.0.1

To deliberately request the newest package from the configured index:

python3 -m pip install --user --upgrade potpie

Do not add sudo or override externally managed environment safeguards. If pip rejects the user installation because the interpreter is externally managed, migrate the CLI to uv rather than forcing a system-level mutation.

Uninstall the package

Remove an uv tool installation with:

uv tool uninstall potpie

Remove a pip user installation through the same interpreter that installed it:

python3 -m pip uninstall potpie

Package uninstallation removes the installed package from that package-manager environment. Do not assume that it removes every local configuration file, graph artifact, cached item, integration credential, or external account authorization. Review local Potpie data and revoke source integrations separately according to your retention and security requirements.

Post-upgrade validation

After any version change, run this sequence before returning to normal work:

potpie --version
potpie status
potpie doctor
potpie auth status

Then run a small potpie resolve query, test the selected harness with a read-only request, and open potpie ui locally if you use the graph explorer. Confirm its endpoint and authentication behavior again before starting a stopped Localtonet tunnel.

Troubleshoot installation, harness, graph, and tunnel problems

The shell cannot find uv

Open a new terminal after running the installer and retry uv --version. If the installer reported a shell path change, follow that output. On an existing uv installation, uv tool update-shell can configure the tool executable directory. Do not repeatedly reinstall uv into unrelated locations without first checking which shell and user account are active.

The shell cannot find Potpie

For uv, inspect the installed tool list:

uv tool list

For pip, inspect the package:

python3 -m pip show potpie

If the package exists but the command is missing, correct the applicable user executable path. If both uv and pip copies are installed, uninstall the copy you do not intend to use and start a new shell.

pip reports an externally managed environment

Treat that message as a protection, not as an obstacle to disable. Do not use sudo pip or --break-system-packages. Install uv and use uv tool install potpie==2.0.1, or use a separate supported Python environment that you control.

Potpie has the wrong version

Run potpie --version and inspect the package through the installer you used. If the shell is resolving another copy, remove the duplicate or correct path ordering. Reinstall 2.0.1 with the pinned uv or pip command before following release-specific migration guidance.

Setup completes but status is not ready

potpie status
potpie doctor
potpie pot list

Check the daemon, graph, backend, and skill results. Select the correct pot if necessary. From the repository root, register the source with potpie source add repo ., then repeat status and a small resolve request.

Claude Code or Codex does not use Potpie

First test potpie resolve or potpie search directly. If those commands succeed, focus on the harness setup. For Claude, refresh guidance with potpie skills install --agent claude. For Codex, rerun potpie setup and select Codex interactively rather than guessing an agent identifier.

Also confirm that the harness was started from the intended repository and authenticated successfully. A working harness account does not prove that Potpie skills were installed, and a healthy Potpie daemon does not prove that the harness is operating from the correct directory.

The graph explorer does not open

Run potpie status and potpie doctor, then retry potpie ui and read its complete output. Do not substitute a port copied from a screenshot or another installation. Resolve the local Potpie problem before creating a Localtonet tunnel.

The local UI works but the public address does not

Confirm that the selected Localtonet client is connected and that the tunnel was explicitly started. Compare the tunnel target with the exact Potpie endpoint. If the client is on another device, verify that the target address is reachable from that device and is not a loopback address that points back to the client itself.

The public page shows the wrong graph

Localtonet forwards requests to the configured HTTP service, but it does not select a Potpie workspace. Stop the tunnel, use potpie pot list and potpie pot use <id-or-name>, confirm the repository source, and verify the corrected UI locally before restarting remote access.

An old tutorial mentions service or manual ingestion commands

Potpie 2.0.1 removed unsupported legacy service and pot-level ingestion commands. Use the current setup, source, pot, status, resolve, search, graph, and UI workflows. Do not mix commands from the older architecture with the pinned package in this tutorial.

Frequently asked questions

Should I install Potpie with uv or pip?

Potpie recommends uv tool installation because it isolates the CLI and its dependencies. Use pip's documented user-level command when uv is unavailable and the selected Python environment permits it. Do not install the same CLI through both methods unless you are deliberately managing separate environments.

Why does this tutorial install Potpie 2.0.1 instead of the latest release?

Pinning keeps the installation commands consistent with the verified Python support, architecture, migration notes, and CLI behavior described here. If you install a newer release, review its requirements and release notes and repeat all local verification before using it with a harness or tunnel.

Which Python versions support Potpie 2.0.1?

Potpie 2.0.1 supports Python 3.12, 3.13, and 3.14. A different Potpie release may change that requirement.

What should I do if pip says Python is externally managed?

Do not bypass the safeguard with --break-system-packages or sudo pip. Use uv tool install, a supported Python installation that you control, or a dedicated virtual environment.

Does Potpie install Claude Code or OpenAI Codex?

No. Install and authenticate the selected harness through Anthropic's or OpenAI's supported workflow. Potpie setup then installs its own instructions and skills for that harness.

Do I need a separate manual ingest command?

No separate manual ingest command is required in the documented 2.0.1 workflow. The CLI registers sources, and the configured agent can ingest or update context when a task requires it.

What port does the Potpie graph explorer use?

This workflow does not establish one fixed port, hostname, scheme, or bind address. Run potpie ui and use the complete endpoint reported by your installation.

Can I expose the Potpie UI if it does not require authentication?

Do not publish sensitive repository context without adequate access control. A Localtonet HTTP tunnel creates connectivity to the selected endpoint, but it does not create a Potpie login. Keep the UI local unless appropriate application authentication or another suitable protection layer is active.

Does the Localtonet client need to run on the Potpie host?

Not necessarily. It can run on the Potpie host or another device that can reach the verified Potpie HTTP endpoint. If it runs elsewhere, configure a reachable address for the Potpie host rather than using loopback on the Localtonet client device.

Should the Potpie UI tunnel stay online continuously?

Keep it stopped when remote graph access is not needed. Potpie is CLI-first, so Claude Code or Codex can continue using the local integration without a permanently public graph explorer.

Access a protected Potpie graph explorer remotely

Finish the pinned Potpie setup, verify your selected coding harness, confirm the graph explorer's actual endpoint and access controls, then create a temporary HTTP tunnel with Localtonet when remote access is genuinely required.

Get Started Free β†’

Corrections & updates

Substantive changes approved by the Localtonet editorial team are listed transparently below.

Remove the outer article wrapper, start the body with the hero, keep the clickable guide card immediately after it, and relocate the lead image to an appropriate educational section. Add self-contained Python and uv prerequisite checks, supported uv installation guidance, command availability verification, and safe handling of pip failures in externally managed Python environments. Either pin the tutorial consistently to Potpie 2.0.1 or revalidate every command and compatibility statement against the current Potpie release, clearly se

Localtonet is a secure multi-protocol tunneling and proxy platform designed to expose localhost, devices, private services, and AI agents to the public internet supporting HTTP/HTTPS tunnels, TCP/UDP forwarding, mobile proxy infrastructure, file server publishing, latency-optimized game connectivity, and developer-ready AI agent endpoint exposure from a single unified control plane.

support