Directories
¶
| Path | Synopsis |
|---|---|
|
Package ai provides pi's provider-neutral message and streaming contracts.
|
Package ai provides pi's provider-neutral message and streaming contracts. |
|
models
Package models contains the generated model catalog and its persisted refresh overlay.
|
Package models contains the generated model catalog and its persisted refresh overlay. |
|
models/cmd/genmodels
command
|
|
|
models/internal/cataloggen
Package cataloggen normalizes the models.dev api.json shape into pi models.
|
Package cataloggen normalizes the models.dev api.json shape into pi models. |
|
providers/faux
Package faux provides a scripted, in-memory provider for agent and provider tests.
|
Package faux provides a scripted, in-memory provider for agent and provider tests. |
|
Package chat implements the core of the pigo chat gateway (D27): platform-agnostic messages, the synchronous turn processor with its durable turn ledger, a preview coalescer, and a local single-process runner with a durable spool.
|
Package chat implements the core of the pigo chat gateway (D27): platform-agnostic messages, the synchronous turn processor with its durable turn ledger, a preview coalescer, and a local single-process runner with a durable spool. |
|
discord
Package discord implements the Discord adapter for the pigo chat gateway: Gateway (WebSocket) ingress over the internal RFC 6455 client — hello/heartbeat/identify, READY capture, resume-first reconnects — plus REST delivery with a refreshed typing indicator, streamed preview edits, chunked finalization with mass-mention suppression, and pre-signed attachment download.
|
Package discord implements the Discord adapter for the pigo chat gateway: Gateway (WebSocket) ingress over the internal RFC 6455 client — hello/heartbeat/identify, READY capture, resume-first reconnects — plus REST delivery with a refreshed typing indicator, streamed preview edits, chunked finalization with mass-mention suppression, and pre-signed attachment download. |
|
examples/localbot
command
Command localbot runs a minimal Telegram chat gateway: long-poll ingress, the durable local spool, and per-conversation agent sessions under a local data directory.
|
Command localbot runs a minimal Telegram chat gateway: long-poll ingress, the durable local spool, and per-conversation agent sessions under a local data directory. |
|
googlechat
Package googlechat implements the Google Chat adapter for the pigo chat gateway: an HTTP-endpoint Chat app with bearer-JWT-verified ingress, service-account authenticated delivery, and authenticated media download.
|
Package googlechat implements the Google Chat adapter for the pigo chat gateway: an HTTP-endpoint Chat app with bearer-JWT-verified ingress, service-account authenticated delivery, and authenticated media download. |
|
internal/graphhook
Package graphhook holds the Meta Graph webhook plumbing shared by the Cloud API chat adapters (WhatsApp today, Messenger next): the one-time hub.challenge subscribe handshake and the X-Hub-Signature-256 raw-body HMAC check.
|
Package graphhook holds the Meta Graph webhook plumbing shared by the Cloud API chat adapters (WhatsApp today, Messenger next): the one-time hub.challenge subscribe handshake and the X-Hub-Signature-256 raw-body HMAC check. |
|
internal/runechunk
Package runechunk splits platform text at readable rune boundaries.
|
Package runechunk splits platform text at readable rune boundaries. |
|
internal/wsclient
Package wsclient implements a minimal RFC 6455 WebSocket client on the standard library alone: client role only, no extensions, no compression, no subprotocol negotiation.
|
Package wsclient implements a minimal RFC 6455 WebSocket client on the standard library alone: client role only, no extensions, no compression, no subprotocol negotiation. |
|
messenger
Package messenger implements the Facebook Messenger (Meta Messenger Platform for Pages) adapter for the pigo chat gateway: webhook ingress over the Graph "page" object (hub handshake + HMAC-signed entry[].messaging[] events), final-message delivery via the Send API, sender-action typing, and direct-URL attachment download.
|
Package messenger implements the Facebook Messenger (Meta Messenger Platform for Pages) adapter for the pigo chat gateway: webhook ingress over the Graph "page" object (hub handshake + HMAC-signed entry[].messaging[] events), final-message delivery via the Send API, sender-action typing, and direct-URL attachment download. |
|
slack
Package slack implements the Slack adapter for the pigo chat gateway: Events API ingress over HTTP (v0 request signing, url_verification handshake, echo filtering), Web API delivery with a bot token (streamed preview edits via chat.update, mrkdwn finalization with chunking), and authenticated file download.
|
Package slack implements the Slack adapter for the pigo chat gateway: Events API ingress over HTTP (v0 request signing, url_verification handshake, echo filtering), Web API delivery with a bot token (streamed preview edits via chat.update, mrkdwn finalization with chunking), and authenticated file download. |
|
teams
Package teams implements the Microsoft Teams (Bot Framework) adapter for the pigo chat gateway, speaking the raw connector REST API with no SDK: JWT-validated webhook ingress, typing plus final-only delivery, markdown-subset formatting with UTF-16 chunking, and authenticated attachment download.
|
Package teams implements the Microsoft Teams (Bot Framework) adapter for the pigo chat gateway, speaking the raw connector REST API with no SDK: JWT-validated webhook ingress, typing plus final-only delivery, markdown-subset formatting with UTF-16 chunking, and authenticated attachment download. |
|
telegram
Package telegram implements the Telegram Bot API adapter for the pigo chat gateway: ingress (webhook and long poll), delivery (typing indicator, streamed preview edits, HTML finalization with chunking), and media download.
|
Package telegram implements the Telegram Bot API adapter for the pigo chat gateway: ingress (webhook and long poll), delivery (typing indicator, streamed preview edits, HTML finalization with chunking), and media download. |
|
whatsapp
Package whatsapp implements the WhatsApp Business Cloud API adapter for the pigo chat gateway: webhook ingress (hub handshake + HMAC-signed events), final-message delivery with reply threading, and authenticated media download.
|
Package whatsapp implements the WhatsApp Business Cloud API adapter for the pigo chat gateway: webhook ingress (hub handshake + HMAC-signed events), final-message delivery with reply threading, and authenticated media download. |
|
cmd
|
|
|
pigo
command
|
|
|
Package codingagent provides the high-level SDK for embedding pi's agent capabilities in Go programs.
|
Package codingagent provides the high-level SDK for embedding pi's agent capabilities in Go programs. |
|
examples/01_minimal
command
Minimal SDK usage with all defaults.
|
Minimal SDK usage with all defaults. |
|
examples/02_custom_model
command
Custom model selection and thinking level.
|
Custom model selection and thinking level. |
|
examples/03_custom_prompt
command
Custom system prompt replacement and extension through DefaultResourceLoader.
|
Custom system prompt replacement and extension through DefaultResourceLoader. |
|
examples/04_skills
command
Skills configuration through DefaultResourceLoader discovery and overrides.
|
Skills configuration through DefaultResourceLoader discovery and overrides. |
|
examples/05_tools
command
Tools configuration: tool allowlists and denylists.
|
Tools configuration: tool allowlists and denylists. |
|
examples/06_extensions
command
Extensions configuration through DefaultResourceLoader inline factories.
|
Extensions configuration through DefaultResourceLoader inline factories. |
|
examples/07_context_files
command
Context files discovered and extended through DefaultResourceLoader.
|
Context files discovered and extended through DefaultResourceLoader. |
|
examples/08_prompt_templates
command
Prompt templates discovered and extended through DefaultResourceLoader.
|
Prompt templates discovered and extended through DefaultResourceLoader. |
|
examples/09_api_keys
command
API key and OAuth configuration through ModelRegistry and runtime callbacks.
|
API key and OAuth configuration through ModelRegistry and runtime callbacks. |
|
examples/10_settings
command
Settings configuration through SettingsManager.
|
Settings configuration through SettingsManager. |
|
examples/11_sessions
command
Session management: in-memory, persistent, continue, list, and open.
|
Session management: in-memory, persistent, continue, list, and open. |
|
examples/12_full_control
command
Full control: explicit model, settings, session, ResourceLoader, and tools.
|
Full control: explicit model, settings, session, ResourceLoader, and tools. |
|
examples/13_session_runtime
command
Session runtime demonstrates recreating cwd-bound services when the active AgentSession is replaced and rebinding session-local host state.
|
Session runtime demonstrates recreating cwd-bound services when the active AgentSession is replaced and rebinding session-local host state. |
|
extensions
Package extensions provides the Go-native extension registry, API surface, and ordered event runner used by the coding agent.
|
Package extensions provides the Go-native extension registry, API surface, and ordered event runner used by the coding agent. |
|
extensions/jsbridge
Package jsbridge discovers, bundles, and runs TypeScript extensions in isolated Sobek runtimes backed by the Go-native extension API.
|
Package jsbridge discovers, bundles, and runs TypeScript extensions in isolated Sobek runtimes backed by the Go-native extension API. |
|
mcp
Package mcp implements pigo's bundled, settings-driven MCP extension.
|
Package mcp implements pigo's bundled, settings-driven MCP extension. |
|
modes
Package modes contains coding-agent run-mode orchestration.
|
Package modes contains coding-agent run-mode orchestration. |
|
session
Package session stores coding-agent conversations as pi-compatible JSONL trees.
|
Package session stores coding-agent conversations as pi-compatible JSONL trees. |
|
conformance
|
|
|
runner
Package runner provides shared conformance-fixture test helpers.
|
Package runner provides shared conformance-fixture test helpers. |
|
internal
|
|
|
ignorerules
Package ignorerules holds the shared gitignore-rule matching loop that both skill loaders (agent/harness and codingagent) port from the npm `ignore` dependency.
|
Package ignorerules holds the shared gitignore-rule matching loop that both skill loaders (agent/harness and codingagent) port from the npm `ignore` dependency. |
|
partialjson
Package partialjson parses the incomplete JSON emitted while tool-call arguments are streaming.
|
Package partialjson parses the incomplete JSON emitted while tool-call arguments are streaming. |
|
semver
Package semver implements the subset of npm's semver used by pi package management: exact versions, ranges (^ ~ x-ranges, hyphen, ||, primitives), Satisfies and MaxSatisfying with npm's prerelease-inclusion rule.
|
Package semver implements the subset of npm's semver used by pi package management: exact versions, ranges (^ ~ x-ranges, hyphen, ||, primitives), Satisfies and MaxSatisfying with npm's prerelease-inclusion rule. |
|
sync
Package upstreamsync analyzes and promotes pinned upstream revisions.
|
Package upstreamsync analyzes and promotes pinned upstream revisions. |
|
sync/cmd/pigosync
command
|
|
|
uuidv7
Package uuidv7 generates the monotonic UUID and short entry identifiers used by upstream harness session storage.
|
Package uuidv7 generates the monotonic UUID and short entry identifiers used by upstream harness session storage. |
|
Package tui provides pi's differential terminal renderer and components.
|
Package tui provides pi's differential terminal renderer and components. |
Click to show internal directories.
Click to hide internal directories.