Documentation
¶
Overview ¶
Package ponytail implements a "lazy senior developer" instruction set that can be injected into the agent's system prompt before each turn, at three intensity levels (lite/full/ultra) plus an off switch.
It is a Go re-implementation of the ponytail skill by Dietrich Gebert (https://github.com/DietrichGebert/ponytail, MIT licensed). The injected text is reproduced faithfully from that project's SKILL.md. In Pando the ruleset is not delivered through host hooks but through the agent's existing per-turn skill injection (see internal/llm/agent.prepareProvider), so it works uniformly across the TUI, Web UI and ACP surfaces.
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func Description ¶
Description returns a one-line summary of a mode for confirmation messages.
func Instructions ¶
Instructions returns the full ponytail ruleset to inject for the given mode, or the empty string when the mode is off. The result is the always-on core plus the intensity snippet for the active level.
Types ¶
type Mode ¶
type Mode string
Mode is the ponytail intensity level for a session.
const ( // ModeOff disables ponytail; nothing is injected. ModeOff Mode = "" // ModeLite builds what's asked but names a lazier alternative in one line. ModeLite Mode = "lite" // ModeFull enforces "The Ladder": shortest diff, shortest explanation. Default. ModeFull Mode = "full" // ModeUltra is YAGNI-extremist: deletion before addition, challenge the ask. ModeUltra Mode = "ultra" )
func ParseMode ¶
ParseMode normalizes user input into a Mode. It accepts the level names plus a few natural-language off synonyms ("off", "stop", "normal", "none", "disable"). The second return value is false when the input is not a recognized token.