@pi-unipi/utility — Agent Guidance

SkillDev tools

Guidance for using the @pi-unipi/utility extension commands and tools. Provides lifecycle management, diagnostics, cleanup, batch execution, environment inspection, and terminal utilities.

Available today. Use it from your connected AI after setup.

Connect ahel once, and every AI you use reads what you have installed.

Then ask your AI: use the @pi-unipi/utility — Agent Guidance skill

What this skill tells your AI

The instructions your AI receives, as published by neuron-mr-white/unipi in packages/utility/skills/utility/SKILL.md and read by ahel’s review.

Overview

The @pi-unipi/utility extension provides general-purpose utilities for the Pi coding agent. It is not related to compaction — it provides helpers that any module or agent can use.

Commands

CommandPurposeWhen to Use
/unipi:continueContinue agent without polluting contextAfter interruption, to resume cleanly
/unipi:reloadExplain how to reload extensionsWhen user asks about hot-reloading
/unipi:statusRequest status from all modulesTo check which modules are loaded
/unipi:cleanupClean stale files, DBs, sessionsWhen disk space is low or after crashes
/unipi:envShow environment infoFor debugging version/path issues
/unipi:doctorRun diagnosticsWhen something seems broken

Cleanup Options

  • --dry-run — Report what would be cleaned without removing anything
  • Default max ages: DBs 14 days, temp 7 days, sessions 30 days

Tools

ToolPurpose
ctx_batchAtomic batch execution of commands with rollback
ctx_envEnvironment inspection

Batch Execution Pattern

import { BatchBuilder } from "@pi-unipi/utility/tools/batch";

const report = await new BatchBuilder()
  .addCommand("search", { query: "foo" })
  .addTool("memory_search", { query: "bar" })
  .withOptions({ failFast: true, commandTimeoutMs: 30000 })
  .execute(myExecutor);

Modules (for code use)

ModuleImport PathPurpose
ProcessLifecycle@pi-unipi/utility/lifecycle/processParent PID polling, orphan detection, cleanup registry
cleanupStale@pi-unipi/utility/lifecycle/cleanupStale file/DB/session cleanup
TTLCache@pi-unipi/utility/cache/ttl-cacheIn-memory or SQLite-backed TTL cache
AnalyticsCollector@pi-unipi/utility/analytics/collectorPrivacy-respecting event collection
runDiagnostics@pi-unipi/utility/diagnostics/engineCross-module health checks
detectCapabilities@pi-unipi/utility/display/capabilitiesTerminal feature detection
clampWidth, wrapLines@pi-unipi/utility/display/widthANSI-aware text formatting
SettingsInspector@pi-unipi/utility/tui/settings-inspectorReusable settings overlay model

Integration Notes

  • Lifecycle manager is a singleton — use getLifecycle() to access
  • Analytics collector is a singleton — use getAnalyticsCollector()
  • Diagnostics engine supports custom plugins via registerDiagnosticPlugin()
  • TTLCache defaults to memory backend; set persistent: true for SQLite
  • All modules emit unipi events for cross-module integration

Signals

GitHub stars
64
Forks
15
Last commit
Sep 2026
Advanced
Catalog kind
skill
Gateway key
utility-neuron-mr-white
Source
github.com/neuron-mr-white/unipi