Pi

Study Pi’s minimal agent core, extension packages, and reusable libraries to shape your own workflows. Compare where task instructions are enough, where runtime customization helps, and which execution boundaries your environment must provide.

Build a small repository-report loop

Pick a small task loop or a specific extension gap before adding runtime components. The request can compare clearer instructions with Pi's library responsibilities, then define a representative test that shows whether an executable extension is actually needed.

Specify the revision range, files to inspect, output format, and permitted tools.

Copy the request into a new Floatboat conversation and provide the required material.

Download Floatboat

Your request for Floatboat

Preview and copy the request. It is not sent automatically from this page.

Reference: Pi
https://github.com/earendil-works/pi

Read the original documentation and check the current environment and dependencies. Propose any new installation or tool connection before proceeding.

My task:
Use Pi’s toolkit documentation to design a weekly repository-change report. Define how to collect the commit range, inspect diffs, maintain the session, and produce a Markdown summary with file references. Start with a design and sample output, not a new installation.

Expected deliverable:
A minimal context/tool/session design and a reproducible sample report for review.

About Pi

Pi explicitly describes itself as a minimal, extensible agent harness. The project combines an interactive coding agent with supporting libraries for model access, agent execution, conversation state, and terminal interfaces. It is both a usable tool and a collection of building blocks.

Pi is useful when designing a workflow that needs a small core with selective additions. In Floatboat-related work, use it to distinguish a reusable task instruction from a new tool or runtime behavior. Some improvements only need better Skills; others justify evaluating an extension or library.

The current repository is earendil-works/pi, following the earlier badlogic/pi-mono location, and uses MIT. Pi also explicitly says it has no built-in permission system restricting filesystem, process, network, or credential access. Hosting it safely requires the surrounding environment to provide the boundaries you need.

Workflow Mechanisms to Learn From

Pi provides a small execution core alongside separate instruction, extension, and library responsibilities. Compare those layers before adding functionality, so a missing task method is not automatically treated as a need for another executable runtime component.

  • A small execution core

    Study the minimal harness to identify the state and tool feedback your workflow really needs before adding higher-level features.

  • Distinct extension layers

    Separate instructions, prompts, themes, and executable extensions so each workflow change is made at the right layer.

  • Reusable runtime components

    Evaluate the provider API, agent core, and conversation libraries independently when building a custom workflow component.

Use Cases for Pi

A small task loop, an unreliable Skill, and a custom runtime component need different extension decisions. Compare Pi's instruction and library boundaries before deciding whether clearer task knowledge or additional executable behavior would address the gap.

A lightweight task loop

A lightweight reporting loop can start with one objective, readable files, and a small permitted tool set. Use Pi's focused structure to describe how context leads to tool use and result review. Test a reproducible sample output before introducing a larger collection of runtime features.

Improving a reusable Skill

When a reusable Skill repeatedly fails, compare its current instructions and resources with the behavior you expect. Correct those gaps and test counterexamples before introducing another executable extension. The review should identify which instruction changes are sufficient and whether any runtime capability is still missing.

A custom agent component

A business workflow with its own model interface or execution boundaries can use Pi's library structure as a design reference. Map the required provider behavior and business interfaces to those responsibilities, then identify the adapters you would need. Keep the component design grounded in the environment you actually own.

Define the host's permission policy

A minimal agent core does not determine which files, processes, or services it may access in your environment. Use Pi's lack of a built-in permission system as an explicit design constraint when planning the host. Document allowed operations and review points, then test representative boundaries without mistaking package separation or clear instructions for enforced execution controls.

Define Pi’s host permissions

Pi does not provide a built-in permission system for the work it hosts. Define file, process, network, and credential access in the surrounding environment before testing an extension, keeping the host's actual execution boundary separate from its package structure.

  • Set the execution boundary

    Plan file, process, network, and credential access in the host environment; Pi does not supply a built-in permission system.

Choose and test a Pi extension

Extending Pi begins by identifying which layer the task actually needs. Test one instruction or runtime extension with representative material before combining more packages, and use the observed behavior to decide whether the additional execution surface is justified.

  1. Choose the extension layer

    Identify whether the gap is in instructions, available tools, conversation state, or the surrounding interface.

  2. Evaluate the smallest addition

    Validate one package or component against a representative task before combining several additions.

Related Software Projects

Compare the workflows, operating requirements, and source licenses of these projects.

Pi FAQ

Is Pi officially described as a harness?
Yes. The README explicitly calls Pi a minimal, extensible agent harness. It also contains a coding CLI and reusable libraries, so the repository covers more than one user-facing interface.
Why do old links use badlogic/pi-mono?
That was the earlier repository address. It currently redirects to earendil-works/pi. Use the current upstream for ownership and documentation, and check older package references before reusing them.
Does Pi include a built-in permission sandbox?
The README says Pi has no built-in permission system for restricting filesystem, process, network, or credential access. Required containment must come from the environment, not from an assumption that every harness provides it.
Are subagents and plan mode enabled by default?
The project deliberately leaves those features out of its core defaults. Extensions or packages may supply them, but their presence and behavior must be checked for the particular setup.
What is the difference between a Skill and an extension?
A Skill supplies reusable task instructions and resources. An extension changes or extends the running tool through the extension mechanism. They can work together, but their execution and trust boundaries differ.
Must I switch products to use these workflow ideas?
No. You can first use Pi as a reference for task structure, tool boundaries, and result review in your existing workflow. Reusing software is a separate choice that requires compatibility, permissions, and license checks; applying the design ideas does not automatically connect the software to Floatboat.