← Back to directory

pi-powerline-footer

Powerline-style status bar extension for pi coding agent

InterfaceCaution★ 169MIT

Safety notes

Caution
Powerline-style status bar and welcome overlay; package scripts include build hooks, review before global use.

Static scan findings

This is a first-pass static screen, not a formal audit. It flags patterns worth reading before install.

MEDIUM · token_access
types.ts
  • | "tokens"
  • | "token_in"
  • | "token_out"
MEDIUM · token_access
theme.example.json
  • "tokens": "muted",
MEDIUM · token_access
working-vibes.ts
  • // Truncate user prompt to save tokens (most context in first 100 chars)
  • const auth = await extensionCtx.modelRegistry.getApiKeyAndHeaders(model);
  • const response = await complete(model, aiContext, { apiKey: auth.apiKey, headers: auth.headers, signal });
MEDIUM · spawn_shell
git-status.ts
  • import { spawn } from "node:child_process";
  • const proc = spawn("git", args, {
MEDIUM · token_access
presets.ts
  • tokens: "muted",
  • rightSegments: ["token_in", "token_out", "cache_read", "cost", "context_pct", "time_spent", "time", "extension_statuses"],
  • rightSegments: ["token_in", "token_out", "cache_read", "cache_write", "cost", "context_pct", "context_total", "time_spent", "time", "extension_statuses"],
MEDIUM · token_access
icons.ts
  • tokens: string;
  • tokens: "\uE26B", // nf-seti-html (tokens symbol)
  • tokens: "⊛",
MEDIUM · token_access
README.md
  • **Token intelligence** — Smart formatting (1.2k, 45M), subscription detection (shows "(sub)" vs dollar cost).
  • | `default` | Model, thinking, path (basename), git, context, tokens, cost |
  • `model` · `thinking` · `shell_mode` · `path` · `git` · `subagents` · `token_in` · `token_out` · `token_total` · `cost` · `context_pct` · `context_total` · `time_spent` · `time` · `
MEDIUM · token_access
segments.ts
  • function formatTokens(n: number): string {
  • const tokenInSegment: StatusLineSegment = {
  • id: "token_in",
MEDIUM · token_access
CHANGELOG.md
  • - **Broken vibe generation after pi update** — Migrated from removed `modelRegistry.getApiKey()` to `getApiKeyAndHeaders()`, passing both `apiKey` and `headers` through to `complet
  • - **`nerd` preset crash on `primary` theme color** — Replaced invalid `tokens: "primary"` with `tokens: "muted"` so `/powerline nerd` no longer trips `Unknown theme color: primary`
MEDIUM · token_access
theme.ts
  • tokens: "muted",

Package scripts captured

package.json
{
  "test": "node --experimental-strip-types --test tests/**/*.test.ts"
}