Files
pi-lgtm/CHANGELOG.md
T
tintinweb 86d2b64779 v0.1.0
2026-03-12 00:47:54 +01:00

2.6 KiB

Changelog

All notable changes to this project will be documented in this file.

The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.

0.1.0 - 2026-03-12

Initial release — Claude Code-style task tracking and coordination for pi.

Added

  • 6 LLM-callable toolsTaskCreate, TaskList, TaskGet, TaskUpdate, TaskOutput, TaskStop — matching Claude Code's exact tool specs, descriptions, and schemas.
  • System-reminder injection — periodic <system-reminder> nudges appended to non-task tool results when tasks exist but task tools haven't been used for 4+ turns. Matches Claude Code's host-level reminder mechanism.
  • Prompt guidelinespromptGuidelines on TaskCreate injects persistent guidance into the system prompt, nudging the LLM to use task tools for complex work.
  • Task state in system promptbefore_agent_start event appends current task state to the system prompt on every agent loop, ensuring task awareness survives context compaction.
  • Persistent widget — live task list above editor with (completed, strikethrough + dim), (in-progress), (pending), animated star spinner (✳✽) for active tasks with elapsed time and token counts (e.g., ✳ Running tests… (2m 49s · ↑ 4.1k ↓ 1.2k)).
  • Multiple parallel active tasks — widget supports multiple simultaneous spinners.
  • /tasks command — interactive menu: view tasks with actions (start, complete, delete), create tasks, clear completed.
  • Bidirectional dependency managementaddBlocks/addBlockedBy maintain both sides automatically. Edges cleaned up on task deletion.
  • Dependency warnings — cycles, self-dependencies, and dangling references produce warnings in TaskUpdate responses. Edges are still stored, matching Claude Code's permissive behavior.
  • File-backed shared storage — set PI_TASK_LIST_ID env var for multi-session coordination at ~/.pi/tasks/<id>.json. File locking with stale-lock detection prevents race conditions.
  • In-memory session-scoped mode — default when no env var is set, zero disk I/O.
  • Background process tracker — output buffering (stdout + stderr), waiter notification, graceful stop with timeout escalation (SIGTERM → 5s → SIGKILL).
  • 78 unit tests — task store CRUD, dependencies, warnings, file persistence; widget rendering, icons, spinners, token/duration formatting; process tracker lifecycle.