Documentation
¶
Overview ¶
Package pig exposes build-time-embedded resources for the pig binary.
This is the only file at module root; runtime code lives in cmd/, internal/, coding/. Its sole purpose is to host `//go:embed` directives that need access to files at the repo root (Go embed cannot traverse to parent directories from a sub-package).
Currently embeds: - CHANGELOG.md, surfaced via the `/changelog` slash command.
Index ¶
Constants ¶
This section is empty.
Variables ¶
View Source
var Changelog string
Changelog is the bundled CHANGELOG.md, embedded at build time. Read by internal/codingagent's `/changelog` slash handler. Empty when the file is missing at build time (which would fail the embed and the build).
Functions ¶
This section is empty.
Types ¶
This section is empty.
Directories
¶
| Path | Synopsis |
|---|---|
|
Package agent provides the core agent loop and message types.
|
Package agent provides the core agent loop and message types. |
|
Package ai provides provider abstractions, model definitions, and auth storage for pig.
|
Package ai provides provider abstractions, model definitions, and auth storage for pig. |
|
automation
|
|
|
ci/divguard
command
Command divguard fails CI on hidden, arbitrary divergences from Pi: invented limits, timeouts and defaults, silent exits, swallowed errors and dropped events that no docs/parity/DIVERGENCES.md entry records.
|
Command divguard fails CI on hidden, arbitrary divergences from Pi: invented limits, timeouts and defaults, silent exits, swallowed errors and dropped events that no docs/parity/DIVERGENCES.md entry records. |
|
ci/slopmetrics
command
Command slopmetrics measures two code-quality signals from SlopCodeBench (arXiv:2603.24755) over the repository's hand-written Go code:
|
Command slopmetrics measures two code-quality signals from SlopCodeBench (arXiv:2603.24755) over the repository's hand-written Go code: |
|
layout/scan
command
Command scan parses tracked Go files without evaluating build constraints.
|
Command scan parses tracked Go files without evaluating build constraints. |
|
release/modulehash
Package modulehash computes the Go publication hashes of tracked module files.
|
Package modulehash computes the Go publication hashes of tracked module files. |
|
release/set-version
command
Set-version synchronizes repository release pins without publishing anything.
|
Set-version synchronizes repository release pins without publishing anything. |
|
Package chord ports the parts of Pi's @earendil-works/chord application runtime that the durable packages consume: strict JSON copies and the publication-only replicated state attached to an authoritative source.
|
Package chord ports the parts of Pi's @earendil-works/chord application runtime that the durable packages consume: strict JSON copies and the publication-only replicated state attached to an authoritative source. |
|
delta
Package delta produces immutable JSON revisions and exact operation batches for ordered replicas.
|
Package delta produces immutable JSON revisions and exact operation batches for ordered replicas. |
|
cmd
|
|
|
check-model-data
command
Command check-model-data validates a hydrated upstream model catalog before generation.
|
Command check-model-data validates a hydrated upstream model catalog before generation. |
|
gen-classifier-models
command
Command gen-classifier-models imports the CLASSIFIER_MODELS export of a published Pi models.generated.js and emits ai/classifier_models_generated.go.
|
Command gen-classifier-models imports the CLASSIFIER_MODELS export of a published Pi models.generated.js and emits ai/classifier_models_generated.go. |
|
gen-models
command
Command gen-models reads upstream pi's catalog and emits ai/models_generated.go.
|
Command gen-models reads upstream pi's catalog and emits ai/models_generated.go. |
|
pig
command
Command pig provides the PiG coding agent CLI.
|
Command pig provides the PiG coding agent CLI. |
|
Package codemode runs a model-written JavaScript script against a table of host tools and globals.
|
Package codemode runs a model-written JavaScript script against a table of host tools and globals. |
|
Package coding is the public SDK for embedding the pig coding agent as a Go library.
|
Package coding is the public SDK for embedding the pig coding agent as a Go library. |
|
extension
Package extension defines the contract every pig extension speaks.
|
Package extension defines the contract every pig extension speaks. |
|
extension/builtin
Package builtin is the registry of upstream's built-in extensions that PiG implements natively: the `builtin:<name>` extension paths of codemode and tool-search (docs/specs/builtin-codemode-tool-search.md).
|
Package builtin is the registry of upstream's built-in extensions that PiG implements natively: the `builtin:<name>` extension paths of codemode and tool-search (docs/specs/builtin-codemode-tool-search.md). |
|
extension/builtin/codemode
Package codemode is the built-in `codemode` extension: the tool that lets the model write JavaScript that calls other tools.
|
Package codemode is the built-in `codemode` extension: the tool that lets the model write JavaScript that calls other tools. |
|
extension/builtin/toolsearch
Package toolsearch is the built-in `tool_search` extension: tool discovery with a BM25 ranker over tool metadata, shared by `searchTools()` in codemode scripts and the optional `tool_search` tool.
|
Package toolsearch is the built-in `tool_search` extension: tool discovery with a BM25 ranker over tool metadata, shared by `searchTools()` in codemode scripts and the optional `tool_search` tool. |
|
extension/extensiontest
Package extensiontest provides test doubles for the extension.API surface.
|
Package extensiontest provides test doubles for the extension.API surface. |
|
extension/host/cellpack
Package cellpack is the Piglet-Binary-side counterpart to the host's prebuilt-cell seam (runtimecell.PrebuiltResolver).
|
Package cellpack is the Piglet-Binary-side counterpart to the host's prebuilt-cell seam (runtimecell.PrebuiltResolver). |
|
extension/host/fusepack
Package fusepack holds Go extensions fused into a Piglet Binary.
|
Package fusepack holds Go extensions fused into a Piglet Binary. |
|
extension/host/inproc
Package inproc implements the in-process Go dispatch runner for extensions.
|
Package inproc implements the in-process Go dispatch runner for extensions. |
|
extension/host/runtimecell
Package runtimecell builds and resolves packed extension runtime cells.
|
Package runtimecell builds and resolves packed extension runtime cells. |
|
extension/host/subprocess
Package subprocess implements pig's out-of-process extension transport: extensions communicate over a local stream socket with length-prefixed JSON framing.
|
Package subprocess implements pig's out-of-process extension transport: extensions communicate over a local stream socket with length-prefixed JSON framing. |
|
extension/host/subprocess/internal/noderuntimegen
command
Command noderuntimegen packages the Node runtime and its content identity reproducibly.
|
Command noderuntimegen packages the Node runtime and its content identity reproducibly. |
|
extension/installresolver
Package installresolver is Pig's product-neutral seam for contributed package-source behavior.
|
Package installresolver is Pig's product-neutral seam for contributed package-source behavior. |
|
extension/pigsdk
Package pigsdk stages Pig's extension SDKs (Go, Python, and Rust) into the config root so out-of-tree extension builds and packed runtime cells can use the API that matches the running binary.
|
Package pigsdk stages Pig's extension SDKs (Go, Python, and Rust) into the config root so out-of-tree extension builds and packed runtime cells can use the API that matches the running binary. |
|
extension/source
Package source resolves an authorized extension path into one conventional factory or exact isolated standalone definition.
|
Package source resolves an authorized extension path into one conventional factory or exact isolated standalone definition. |
|
hookconfig
Package hookconfig parses and validates command hook files shared by Package validation and the runtime hook bridge.
|
Package hookconfig parses and validates command hook files shared by Package validation and the runtime hook bridge. |
|
mcpext
Package mcpext is the built-in MCP integration (`builtin:mcp`).
|
Package mcpext is the built-in MCP integration (`builtin:mcp`). |
|
packagecontent
Ports packages/coding-agent/src/core/package-manager.ts.
|
Ports packages/coding-agent/src/core/package-manager.ts. |
|
piglet
Package piglet provides piglet-based capability scoping for pig sessions.
|
Package piglet provides piglet-based capability scoping for pig sessions. |
|
piglet/artifact
Package artifact defines executable Piglet component plans and artifact records.
|
Package artifact defines executable Piglet component plans and artifact records. |
|
piglet/release
Package release verifies and installs signed Piglet Binary releases.
|
Package release verifies and installs signed Piglet Binary releases. |
|
piglet/signature
Package signature signs and verifies Piglet Binaries.
|
Package signature signs and verifies Piglet Binaries. |
|
pigletbuild
Package pigletbuild validates Piglet closure and builds source or binary Piglet artifacts.
|
Package pigletbuild validates Piglet closure and builds source or binary Piglet artifacts. |
|
pigletbuild/binarypiglet
Package binarypiglet holds the Piglet and resolution record embedded in a Piglet Binary.
|
Package binarypiglet holds the Piglet and resolution record embedded in a Piglet Binary. |
|
piglogin
Package piglogin is PiG's built-in sprite login: the sprite's 16-by-14 pig, which the startup header shows in Pi's logo slot, the full login art (the 12-pixel "PiG." hero wordmark with its drop shadow beside that pig) that /sprite preview shows, the sprites `/sprite` chooses from, and the selection kept under $PIG_HOME/state/pig-standard/login.json.
|
Package piglogin is PiG's built-in sprite login: the sprite's 16-by-14 pig, which the startup header shows in Pi's logo slot, the full login art (the 12-pixel "PiG." hero wordmark with its drop shadow beside that pig) that /sprite preview shows, the sprites `/sprite` chooses from, and the selection kept under $PIG_HOME/state/pig-standard/login.json. |
|
rpcclient
Ports packages/coding-agent/src/modes/rpc/jsonl.ts
|
Ports packages/coding-agent/src/modes/rpc/jsonl.ts |
|
secretresolver
Package secretresolver provides the product-neutral resolver seam for typed Piglet secret refs.
|
Package secretresolver provides the product-neutral resolver seam for typed Piglet secret refs. |
|
source
Package source parses the source-reference vocabulary shared by package installation and Pig piglet resource origins.
|
Package source parses the source-reference vocabulary shared by package installation and Pig piglet resource origins. |
|
Package durable ports the root module of Pi's @earendil-works/pi-durable: the durable conversation, task, and document runtime types, the ID kinds, the errors, the built-in entry kinds, document and task definitions, and the tool-output truncation helpers.
|
Package durable ports the root module of Pi's @earendil-works/pi-durable: the durable conversation, task, and document runtime types, the ID kinds, the errors, the built-in entry kinds, document and task definitions, and the tool-output truncation helpers. |
|
durabletest
Package durabletest holds runner-independent conformance cases and benchmark workloads for durable.Storage implementations.
|
Package durabletest holds runner-independent conformance cases and benchmark workloads for durable.Storage implementations. |
|
env
Package env declares the portable execution environment of pi-durable: a file system and a shell that tools and prompt sections use through a conversation's environment.
|
Package env declares the portable execution environment of pi-durable: a file system and a shell that tools and prompt sections use through a conversation's environment. |
|
env/node
Package node is the local execution environment of pi-durable: NodeExecutionEnv runs on the host file system and shell.
|
Package node is the local execution environment of pi-durable: NodeExecutionEnv runs on the host file system and shell. |
|
session
Package session ports the pi-durable Session kernel: one mutation line, the loaded document tracker cache, transactions, document forks, and committed publication and observation.
|
Package session ports the pi-durable Session kernel: one mutation line, the loaded document tracker cache, transactions, document forks, and committed publication and observation. |
|
session/sessiontest
Package sessiontest holds the shared Session test support: a controlled memory storage and an opened Session kernel with its publications.
|
Package sessiontest holds the shared Session test support: a controlled memory storage and an opened Session kernel with its publications. |
|
storage
Package storage holds the in-memory reference implementation of the durable Storage contract.
|
Package storage holds the in-memory reference implementation of the durable Storage contract. |
|
storage/internal/ops
Package ops replays stored Chord operation batches for the storage backends.
|
Package ops replays stored Chord operation batches for the storage backends. |
|
storage/internal/writes
Package writes normalizes durable storage writes for the storage backends.
|
Package writes normalizes durable storage writes for the storage backends. |
|
storage/jsonl
Package jsonl is the portable JSONL implementation of the durable Storage contract: one main commit log and per-document and per-task sidecar logs in one directory, accessed through a file system capability.
|
Package jsonl is the portable JSONL implementation of the durable Storage contract: one main commit log and per-document and per-task sidecar logs in one directory, accessed through a file system capability. |
|
storage/jsonl/node
Package node opens JSONL durable storage on the local file system, the Go counterpart of Pi's Node JSONL adapter.
|
Package node opens JSONL durable storage on the local file system, the Go counterpart of Pi's Node JSONL adapter. |
|
storage/sqlite
Package sqlite is the portable SQLite storage core of pi-durable: the database facade, the schema migrations, and SqliteStorage.
|
Package sqlite is the portable SQLite storage core of pi-durable: the database facade, the schema migrations, and SqliteStorage. |
|
storage/sqlite/node
Package node adapts a native SQLite connection to the portable durable SQLite facade.
|
Package node adapts a native SQLite connection to the portable durable SQLite facade. |
|
tools
Package tools is the coding tools of pi-durable: read, write, edit and bash over an execution environment.
|
Package tools is the coding tools of pi-durable: read, write, edit and bash over an execution environment. |
|
examples
|
|
|
sdk
command
Command sdk-example is a minimal demonstration of embedding the pig coding agent as a Go library via the public `coding` package.
|
Command sdk-example is a minimal demonstration of embedding the pig coding agent as a Go library via the public `coding` package. |
|
extensions
|
|
|
sdk-py
Package pysdk carries the Python extension SDK sources so an installed pig can stage a buildable copy to disk.
|
Package pysdk carries the Python extension SDK sources so an installed pig can stage a buildable copy to disk. |
|
sdk-rs
Package rssdk carries the Rust extension SDK sources so an installed pig can stage a buildable copy to disk.
|
Package rssdk carries the Rust extension SDK sources so an installed pig can stage a buildable copy to disk. |
|
sdk
module
|
|
|
internal
|
|
|
bodyreadhook
Package bodyreadhook lets a test fixture synchronize with a provider's HTTP connection reads.
|
Package bodyreadhook lets a test fixture synchronize with a provider's HTTP connection reads. |
|
bodyreadhook/readbarrier
Package readbarrier synchronizes a test fixture server with the owned provider transport's socket reads.
|
Package readbarrier synchronizes a test fixture server with the owned provider transport's socket reads. |
|
buildprogress
Package buildprogress reports product-neutral diagnostics for explicit builds.
|
Package buildprogress reports product-neutral diagnostics for explicit builds. |
|
bytesize
Package bytesize parses the byte sizes PiG commands accept, such as 5GiB.
|
Package bytesize parses the byte sizes PiG commands accept, such as 5GiB. |
|
childwait
Waiting for a child's output pipes after it exits.
|
Waiting for a child's output pipes after it exits. |
|
chord
Package chord ports Pi 1.0.0's packages/chord: replicated state, the remote service provider and its endpoint, the operation-stream replica binding, facet hosts and JSON-copy transports.
|
Package chord ports Pi 1.0.0's packages/chord: replicated state, the remote service provider and its endpoint, the operation-stream replica binding, facet hosts and JSON-copy transports. |
|
chord/chordctx
Package chordctx ports packages/chord/src/context/index.ts onto context.Context.
|
Package chordctx ports packages/chord/src/context/index.ts onto context.Context. |
|
chord/chordjson
Package chordjson ports packages/chord/src/json.ts: strict-JSON checking and alias-free copying.
|
Package chordjson ports packages/chord/src/json.ts: strict-JSON checking and alias-free copying. |
|
chord/delta
Package delta ports @earendil-works/chord/delta (packages/chord/src/delta): immutable JSON revisions, exact operation batches for ordered replicas, the operation applier, the path-interning wire codec, revision diffing, and the revision tracker.
|
Package delta ports @earendil-works/chord/delta (packages/chord/src/delta): immutable JSON revisions, exact operation batches for ordered replicas, the operation applier, the path-interning wire codec, revision diffing, and the revision tracker. |
|
coding/pigidentity
Package pigidentity holds the product identity PiG sends to services in place of Pi's.
|
Package pigidentity holds the product identity PiG sends to services in place of Pi's. |
|
coding/pigversion
Package pigversion provides PiG and upstream Pi version pins to packages that cannot import coding.
|
Package pigversion provides PiG and upstream Pi version pins to packages that cannot import coding. |
|
codingagent
Model picker auth-filter scope toggle.
|
Model picker auth-filter scope toggle. |
|
codingagent/compaction
Ports packages/coding-agent/src/core/compaction/branch-summarization.ts Branch summarization for tree navigation.
|
Ports packages/coding-agent/src/core/compaction/branch-summarization.ts Branch summarization for tree navigation. |
|
codingagent/export
Ports packages/coding-agent/src/core/export-html/ansi-to-html.ts
|
Ports packages/coding-agent/src/core/export-html/ansi-to-html.ts |
|
codingagent/frontmatter
Ports packages/coding-agent/src/utils/frontmatter.ts.
|
Ports packages/coding-agent/src/utils/frontmatter.ts. |
|
codingagent/llama
Package llama ports Pi's built-in llama.cpp extension (packages/coding-agent/src/extensions/llama/): the router HTTP/SSE client, Hugging Face search and download, the dynamic provider, the manager UI, and the /llama command.
|
Package llama ports Pi's built-in llama.cpp extension (packages/coding-agent/src/extensions/llama/): the router HTTP/SSE client, Hugging Face search and download, the dynamic provider, the manager UI, and the /llama command. |
|
codingagent/prompts
Package prompts builds the default coding-agent system prompt.
|
Package prompts builds the default coding-agent system prompt. |
|
codingagent/tools
tools/bash_executor.go: user bash execution (!cmd, RPC bash, SDK ExecuteBash).
|
tools/bash_executor.go: user bash execution (!cmd, RPC bash, SDK ExecuteBash). |
|
configvalue
Package configvalue mirrors upstream pi's packages/coding-agent/src/core/resolve-config-value.ts (v0.78.1).
|
Package configvalue mirrors upstream pi's packages/coding-agent/src/core/resolve-config-value.ts (v0.78.1). |
|
crossspawn
Package crossspawn starts a program the way upstream's spawnProcess does (coding-agent utils/child-process.ts): Node's spawn on Unix, and on Windows the cross-spawn package, which checks shebang interpreters before selecting direct execution or escaped cmd.exe execution for command shims.
|
Package crossspawn starts a program the way upstream's spawnProcess does (coding-agent utils/child-process.ts): Node's spawn on Unix, and on Windows the cross-spawn package, which checks shebang interpreters before selecting direct execution or escaped cmd.exe execution for command shims. |
|
ctxowner
Package ctxowner joins the lifetime of one context with the request values of another.
|
Package ctxowner joins the lifetime of one context with the request values of another. |
|
ecmascript
Package ecmascript preserves JavaScript JSON and string semantics at native boundaries.
|
Package ecmascript preserves JavaScript JSON and string semantics at native boundaries. |
|
evals
Package evals ports Pi's documentation eval tooling: the task plan, the paired comparison report, the harness's prompt and environment helpers, and the fixtures the evals use.
|
Package evals ports Pi's documentation eval tooling: the task plan, the paired comparison report, the harness's prompt and environment helpers, and the fixtures the evals use. |
|
experimental
Ports packages/coding-agent/src/experimental/client-tui.ts.
|
Ports packages/coding-agent/src/experimental/client-tui.ts. |
|
experimental/client
Package client implements the experimental Pi client over ordered byte transports.
|
Package client implements the experimental Pi client over ordered byte transports. |
|
experimental/durableadapter
Package durableadapter adapts the pi-durable Harness (durable/harness) to the consumer-owned boundaries of the experimental worker services.
|
Package durableadapter adapts the pi-durable Harness (durable/harness) to the consumer-owned boundaries of the experimental worker services. |
|
experimental/durableagent
Package durableagent holds the pi setup of a coding agent over the pi-durable Harness: the coding registry, the Harness settings, the execution environments, the HTTP setup and the initial model.
|
Package durableagent holds the pi setup of a coding agent over the pi-durable Harness: the coding registry, the Harness settings, the execution environments, the HTTP setup and the initial model. |
|
experimental/durableagent/main
command
Command main runs the durable coding agent: pi's coding tools on the pi-durable Harness, with its own TUI.
|
Command main runs the durable coding agent: pi's coding tools on the pi-durable Harness, with its own TUI. |
|
experimental/durabletest
Package durabletest opens pi-durable Harnesses for the experimental tests: an in-memory one over the faux provider (packages/coding-agent/test/experimental-durable-support.ts openFauxConversation), and a file-backed SQLite one for worker processes.
|
Package durabletest opens pi-durable Harnesses for the experimental tests: an in-memory one over the faux provider (packages/coding-agent/test/experimental-durable-support.ts openFauxConversation), and a file-backed SQLite one for worker processes. |
|
experimental/protocol
Package protocol implements the framed experimental Pi wire contract.
|
Package protocol implements the framed experimental Pi wire contract. |
|
experimental/routing
Package routing hosts contract-agnostic experimental server and client routing.
|
Package routing hosts contract-agnostic experimental server and client routing. |
|
experimental/routing/routingtest
Package routingtest ports the server package's testing subpath (packages/server/src/testing): a scripted Session host, a protocol test client, and an unstarted test server for transport and routing conformance tests.
|
Package routingtest ports the server package's testing subpath (packages/server/src/testing): a scripted Session host, a protocol test client, and an unstarted test server for transport and routing conformance tests. |
|
experimental/services
Package services contains the opt-in experimental presentation service contracts.
|
Package services contains the opt-in experimental presentation service contracts. |
|
experimental/vacation
Package vacation is a durable vacation planning agent on the pi-durable Harness: the coding agent of internal/experimental/durableagent with the coding tools and pi's coding prompt replaced by a vacation planner.
|
Package vacation is a durable vacation planning agent on the pi-durable Harness: the coding agent of internal/experimental/durableagent with the coding tools and pi's coding prompt replaced by a vacation planner. |
|
experimental/vacation/main
command
Command main runs the durable vacation planner: a research subagent that reports back, on the pi-durable Harness, with the durable agent's TUI.
|
Command main runs the durable vacation planner: a research subagent that reports back, on the pi-durable Harness, with the durable agent's TUI. |
|
ignorerules
Package ignorerules applies .gitignore, .ignore, and .fdignore files the way upstream Pi's package manager does when it discovers package resources.
|
Package ignorerules applies .gitignore, .ignore, and .fdignore files the way upstream Pi's package manager does when it discovers package resources. |
|
imageprocessing
Image resize + re-encode policy for CLI/LLM image attachments, plus the EXIF orientation reader (upstream exif-orientation.ts).
|
Image resize + re-encode policy for CLI/LLM image attachments, plus the EXIF orientation reader (upstream exif-orientation.ts). |
|
installchange
Package installchange tells a running pig that the files it runs from changed on disk.
|
Package installchange tells a running pig that the files it runs from changed on disk. |
|
jsarray
Package jsarray implements JavaScript Array semantics that ported code observes.
|
Package jsarray implements JavaScript Array semantics that ported code observes. |
|
jsnumber
Package jsnumber implements ECMAScript numeric conversion and serialization for values that arrive as JSON.
|
Package jsnumber implements ECMAScript numeric conversion and serialization for values that arrive as JSON. |
|
jsonparse
Package jsonparse reports ECMAScript JSON.parse syntax errors for rejected JSON text.
|
Package jsonparse reports ECMAScript JSON.parse syntax errors for rejected JSON text. |
|
jsonstringify
Package jsonstringify implements ECMAScript serialization for parsed JSON data.
|
Package jsonstringify implements ECMAScript serialization for parsed JSON data. |
|
jsstring
Package jsstring preserves JavaScript UTF-16 units at Go string boundaries.
|
Package jsstring preserves JavaScript UTF-16 units at Go string boundaries. |
|
latex
Package latex renders a basic subset of LaTeX math as terminal-friendly Unicode text.
|
Package latex renders a basic subset of LaTeX math as terminal-friendly Unicode text. |
|
latex/gentables
command
Command gentables extracts the static lookup tables from upstream pi's tui/src/latex.ts into Go source (symbols.go), so the LaTeX->Unicode port never hand-transcribes ~230 symbol rows.
|
Command gentables extracts the static lookup tables from upstream pi's tui/src/latex.ts into Go source (symbols.go), so the LaTeX->Unicode port never hand-transcribes ~230 symbol rows. |
|
lazyregexp
Package lazyregexp compiles a package-level regular expression when it is first used instead of when its package initializes.
|
Package lazyregexp compiles a package-level regular expression when it is first used instead of when its package initializes. |
|
linkerexec
Package linkerexec starts programs on Android builds that forbid executing files in an app's data directory.
|
Package linkerexec starts programs on Android builds that forbid executing files in an app's data directory. |
|
managementhttp
Package managementhttp ports upstream coding-agent utils/management-http.ts: a bounded immediate retry for idempotent management requests (tool downloads, release lookups).
|
Package managementhttp ports upstream coding-agent utils/management-http.ts: a bounded immediate retry for idempotent management requests (tool downloads, release lookups). |
|
mermaid
Package mermaid renders Mermaid diagrams as Unicode box-drawing art for terminals.
|
Package mermaid renders Mermaid diagrams as Unicode box-drawing art for terminals. |
|
nativeplatform
Package nativeplatform provides operating-system queries and native clipboard transfers.
|
Package nativeplatform provides operating-system queries and native clipboard transfers. |
|
nodeerrno
Package nodeerrno maps operating-system errors to the error codes, descriptions and errnos Node reports for them.
|
Package nodeerrno maps operating-system errors to the error codes, descriptions and errnos Node reports for them. |
|
nodepath
Package nodepath ports the parts of Node's path module Pi resolves file paths with.
|
Package nodepath ports the parts of Node's path module Pi resolves file paths with. |
|
nodesemver
Package nodesemver translates the npm semver package (semver 7.8.5) calls Pi's package manager makes.
|
Package nodesemver translates the npm semver package (semver 7.8.5) calls Pi's package manager makes. |
|
nodespawn
Package nodespawn builds the Windows command line that Node's child_process.spawn(file, args) passes to CreateProcessW when neither shell nor windowsVerbatimArguments is set.
|
Package nodespawn builds the Windows command line that Node's child_process.spawn(file, args) passes to CreateProcessW when neither shell nor windowsVerbatimArguments is set. |
|
nodeurl
Package nodeurl ports the Node URL host/path handling and fileURLToPath semantics used by PiG.
|
Package nodeurl ports the Node URL host/path handling and fileURLToPath semantics used by PiG. |
|
orderedjson
Package orderedjson holds JSON objects that keep their keys in the order they were read or set, the way a JavaScript object does.
|
Package orderedjson holds JSON objects that keep their keys in the order they were read or set, the way a JavaScript object does. |
|
outputfiles
Package outputfiles creates the files pi writes so the model can use output it was not shown in full: the full text of truncated tool output, binary MCP resources and images shown by codemode scripts.
|
Package outputfiles creates the files pi writes so the model can use output it was not shown in full: the full text of truncated tool output, binary MCP resources and images shown by codemode scripts. |
|
ownerfile
Package ownerfile makes files accessible to their owner only and checks that they are: mode 0600 and no group or other bits on POSIX, and on Windows, which has no mode bits, a DACL (D68).
|
Package ownerfile makes files accessible to their owner only and checks that they are: mode 0600 and no group or other bits on POSIX, and on Windows, which has no mode bits, a DACL (D68). |
|
packagemanager
Package packagemanager resolves, installs and reads the Packages that settings configure.
|
Package packagemanager resolves, installs and reads the Packages that settings configure. |
|
pigdocs
Package pigdocs materializes the reference documentation embedded in Stock Pig under the user's config root (`~/.pig/docs` by default).
|
Package pigdocs materializes the reference documentation embedded in Stock Pig under the user's config root (`~/.pig/docs` by default). |
|
pigsdklock
Package pigsdklock coordinates readers and writers of staged Pig extension SDKs within one configuration root.
|
Package pigsdklock coordinates readers and writers of staged Pig extension SDKs within one configuration root. |
|
pilock
Package pilock implements Pi's proper-lockfile directory-lock protocol for shared stores.
|
Package pilock implements Pi's proper-lockfile directory-lock protocol for shared stores. |
|
profiling
Package profiling writes Go runtime profiles when PIG_PROFILE names them.
|
Package profiling writes Go runtime profiles when PIG_PROFILE names them. |
|
resolvepath
Package resolvepath resolves user-supplied resource paths the way Pi's resolvePath does.
|
Package resolvepath resolves user-supplied resource paths the way Pi's resolvePath does. |
|
scalarjson
Package scalarjson supports JSON-normalized scalar copies without serialization.
|
Package scalarjson supports JSON-normalized scalar copies without serialization. |
|
shellconfig
Package shellconfig resolves the bash shell PiG runs commands through, mirroring upstream packages/coding-agent/src/utils/shell.ts getShellConfig and getBashShellConfig.
|
Package shellconfig resolves the bash shell PiG runs commands through, mirroring upstream packages/coding-agent/src/utils/shell.ts getShellConfig and getBashShellConfig. |
|
termuxenv
Package termuxenv prepares a PiG process for Termux on Android.
|
Package termuxenv prepares a PiG process for Termux on Android. |
|
testbudget
Package testbudget sizes the deadlines tests use to bound a hang.
|
Package testbudget sizes the deadlines tests use to bound a hang. |
|
testenv
Package testenv checks host capabilities a test needs, so a test runs wherever the host provides them and says why it skipped where the host does not.
|
Package testenv checks host capabilities a test needs, so a test runs wherever the host provides them and says why it skipped where the host does not. |
|
text
Package text ports upstream packages/coding-agent/src/utils/text.ts: the leading byte order mark helpers every Pi reader applies before parsing user-authored JSON, markdown, and text files.
|
Package text ports upstream packages/coding-agent/src/utils/text.ts: the leading byte order mark helpers every Pi reader applies before parsing user-authored JSON, markdown, and text files. |
|
toolchain
Package toolchain locates the build tools PiG uses for compiled extension cells and Piglet Binaries, and installs a PiG-managed Go toolchain for users who installed only the pig binary.
|
Package toolchain locates the build tools PiG uses for compiled extension cells and Piglet Binaries, and installs a PiG-managed Go toolchain for users who installed only the pig binary. |
|
tui/parity
Package parity provides the test harness for TUI byte-level and visible-state parity against upstream pi-tui.
|
Package parity provides the test harness for TUI byte-level and visible-state parity against upstream pi-tui. |
|
tui/termsim
Package termsim is a headless ANSI terminal simulator for byte-level parity testing.
|
Package termsim is a headless ANSI terminal simulator for byte-level parity testing. |
|
usagetotals
Package usagetotals sums model usage records.
|
Package usagetotals sums model usage records. |
|
wordsegmenter
Package wordsegmenter implements word segments used by the terminal editor.
|
Package wordsegmenter implements word segments used by the terminal editor. |
|
Package mcp is a small, standalone Model Context Protocol client.
|
Package mcp is a small, standalone Model Context Protocol client. |
|
mcptest
Package mcptest holds test doubles for package mcp.
|
Package mcptest holds test doubles for package mcp. |
|
oauth
Package oauth is the MCP OAuth client subset: protected-resource and authorization-server discovery, the PKCE authorization code flow, dynamic client registration, token refresh (one refresh shared by concurrent 401s), and step-up authorization for insufficient_scope.
|
Package oauth is the MCP OAuth client subset: protected-resource and authorization-server discovery, the PKCE authorization code flow, dynamic client registration, token refresh (one refresh shared by concurrent 401s), and step-up authorization for insufficient_scope. |
|
Package telemetry provides backend-neutral span carriers and in-memory recording.
|
Package telemetry provides backend-neutral span carriers and in-memory recording. |
|
telemetrytest
Package telemetrytest holds runner-independent conformance cases for telemetry.TelemetryContext adapters.
|
Package telemetrytest holds runner-independent conformance cases for telemetry.TelemetryContext adapters. |
|
test
|
|
|
extension-conformance/testfixture
Command sdk-fixture is a minimal SDK-based extension for integration testing.
|
Command sdk-fixture is a minimal SDK-based extension for integration testing. |
|
extension-conformance/testfixture/cmd
command
Command sdk-fixture runs the canonical Go SDK conformance extension over a subprocess socket.
|
Command sdk-fixture runs the canonical Go SDK conformance extension over a subprocess socket. |
|
extension-conformance/testfixture/extensionapi
Package extensionapi is the Go SDK extension of the Pi 0.99.1 extension API conformance rows.
|
Package extensionapi is the Go SDK extension of the Pi 0.99.1 extension API conformance rows. |
|
extension-conformance/testfixture/modeltypes
Package modeltypes is the Go SDK extension of the typed model operation conformance rows: ctx.modelRegistry's typed reads, getAvailableOfType, classify and registerVirtualModel, and the image and classifier implementations of a provider config and of a Provider object.
|
Package modeltypes is the Go SDK extension of the typed model operation conformance rows: ctx.modelRegistry's typed reads, getAvailableOfType, classify and registerVirtualModel, and the image and classifier implementations of a provider config and of a Provider object. |
|
integration
Package integration holds end-to-end tests that drive the real `pig` binary through a tmux PTY and assert on captured pane output.
|
Package integration holds end-to-end tests that drive the real `pig` binary through a tmux PTY and assert on captured pane output. |
|
parity/closure
Package closure stores and verifies the evidence graph used to assess PiG's correspondence with the pinned Pi source.
|
Package closure stores and verifies the evidence graph used to assess PiG's correspondence with the pinned Pi source. |
|
parity/cmd/asynccheck
command
Command asynccheck proves that every upstream source file with Promise/async behavior has an explicit cross-language disposition and durable evidence.
|
Command asynccheck proves that every upstream source file with Promise/async behavior has an explicit cross-language disposition and durable evidence. |
|
parity/cmd/behaviorcheck
command
|
|
|
parity/cmd/checkparityran
command
Command checkparityran answers one question: did the parity suite actually compare pig against a real pi, or did it just skip?
|
Command checkparityran answers one question: did the parity suite actually compare pig against a real pi, or did it just skip? |
|
parity/cmd/closure
command
|
|
|
parity/cmd/correspondence
command
|
|
|
parity/cmd/coverage
command
Command coverage produces a markdown report linking parity scenarios to docs/parity/PORT_MAP.md entries.
|
Command coverage produces a markdown report linking parity scenarios to docs/parity/PORT_MAP.md entries. |
|
parity/cmd/customfactoryledger
command
Command customfactoryledger derives the internal custom-UI factory draft ledger from the pinned upstream public interface inventory.
|
Command customfactoryledger derives the internal custom-UI factory draft ledger from the pinned upstream public interface inventory. |
|
parity/cmd/extensioncorpus
command
|
|
|
parity/cmd/familygaps
command
Command familygaps reports, for one behavior family, which upstream PORT_MAP entries fall within its scope and which lack behavioral verification.
|
Command familygaps reports, for one behavior family, which upstream PORT_MAP entries fall within its scope and which lack behavioral verification. |
|
parity/cmd/formatversions
command
|
|
|
parity/cmd/gointerfaces
command
|
|
|
parity/cmd/interfacedelta
command
|
|
|
parity/cmd/interfaceinventory
command
|
|
|
parity/cmd/interfacerecommend
command
|
|
|
parity/cmd/lint
command
Command lint validates parity scenarios against quality rules that AGENTS.md declares.
|
Command lint validates parity scenarios against quality rules that AGENTS.md declares. |
|
parity/cmd/newscenario
command
|
|
|
parity/cmd/porter
command
|
|
|
parity/cmd/portreconcile
command
Command portreconcile produces the honest gap ledger for the Pig port.
|
Command portreconcile produces the honest gap ledger for the Pig port. |
|
parity/cmd/sdksurface
command
Command sdksurface generates docs/extension-sdk-surface.md: every extension-facing surface of Pi's extension API, read from the pinned upstream types.ts and the declarations it re-exports or exposes, with one column per PiG extension runtime (the Node runtime and the Go, Rust and Python SDKs).
|
Command sdksurface generates docs/extension-sdk-surface.md: every extension-facing surface of Pi's extension API, read from the pinned upstream types.ts and the declarations it re-exports or exposes, with one column per PiG extension runtime (the Node runtime and the Go, Rust and Python SDKs). |
|
parity/cmd/sourcehygiene
command
|
|
|
parity/cmd/testinventorycheck
command
Command testinventorycheck validates the reviewed disposition mapping over the upstream-test inventory.
|
Command testinventorycheck validates the reviewed disposition mapping over the upstream-test inventory. |
|
parity/cmd/upstreamdelta
command
Command upstreamdelta proves that every changed upstream source file in a version leap received an explicit disposition and durable evidence.
|
Command upstreamdelta proves that every changed upstream source file in a version leap received an explicit disposition and durable evidence. |
|
parity/correspondence
Package correspondence compares pinned Pi source interfaces with PiG targets and produces deterministic review packets.
|
Package correspondence compares pinned Pi source interfaces with PiG targets and produces deterministic review packets. |
|
parity/internal/gitsnapshot
Package gitsnapshot resolves and validates immutable Git tree identities for parity evidence.
|
Package gitsnapshot resolves and validates immutable Git tree identities for parity evidence. |
|
parity/knowngaps
Package knowngaps loads test/parity/known-gaps.toml, the one ledger of parity gaps that gates tolerate against the pinned Pi version.
|
Package knowngaps loads test/parity/known-gaps.toml, the one ledger of parity gaps that gates tolerate against the pinned Pi version. |
|
parity/porter
Package porter exposes the single deterministic process contract used by the direct Porter adapter and the Pig Porter extension.
|
Package porter exposes the single deterministic process contract used by the direct Porter adapter and the Pig Porter extension. |
|
upstream-parity
Package parity parses upstream pi TypeScript declarations to drive parity tests.
|
Package parity parses upstream pi TypeScript declarations to drive parity tests. |
|
Package tui provides Pi-compatible terminal rendering, input, components, keybindings, and screen lifecycle management.
|
Package tui provides Pi-compatible terminal rendering, input, components, keybindings, and screen lifecycle management. |
|
widthx
Package widthx implements Pi's terminal width, grapheme and ANSI operations with JavaScript UTF-16 semantics.
|
Package widthx implements Pi's terminal width, grapheme and ANSI operations with JavaScript UTF-16 semantics. |
Click to show internal directories.
Click to hide internal directories.