Split flat docs/ into user-docs/ (guides, config, troubleshooting) and dev/ (ADRs, architecture, extension guides, proposals). Updated docs/README.md index to reflect new paths.
821 B
821 B
Message Rendering — Custom Message Display
Register a renderer for messages with your customType:
import { Text } from "@mariozechner/pi-tui";
pi.registerMessageRenderer("my-extension", (message, options, theme) => {
const { expanded } = options;
let text = theme.fg("accent", `[${message.customType}] `);
text += message.content;
if (expanded && message.details) {
text += "\n" + theme.fg("dim", JSON.stringify(message.details, null, 2));
}
return new Text(text, 0, 0);
});
Send messages that use this renderer:
pi.sendMessage({
customType: "my-extension", // Must match registerMessageRenderer
content: "Status update",
display: true, // Show in TUI
details: { progress: 50 }, // Available in renderer, NOT sent to LLM
});