Files
obsidian-vault/100 inbox/Pi Agent Extensions & Skills.md
2026-05-15 19:08:38 +10:00

4.6 KiB

created, modified, type, tags, aliases
created modified type tags aliases
2026-05-15 18:53 2026-05-15 18:53 note

Pi Agent Extensions & Skills

Source Repositories

Source Location
Gitea (package) git:https://gitea.lab.audasmedia.com.au/sam/pi-config
Local filesystem ~/.agents/
Project settings sys_config/.pi/settings.json, ai_setup/.pi/settings.json

Extensions

Extension Source Purpose
pi-config ~/.agents /config-add, /config-remove, /config-show, /config-setup — manage which extensions/skills are active in a project
tavily-search Gitea tavily_search — web search via Tavily API (AI-optimized, replaces need for Google Search)
web-fetch ~/.agents web_fetch — fetch any URL and return clean markdown (HTML, PDF, JS-rendered pages with Jina fallback)
ask-user-question ~/.agents ask_user_question — LLM can present structured multiple-choice / text questions with keyboard UI
video-extract ~/.agents video_extract — extract frames from YouTube/local video + full Gemini analysis (requires ffmpeg + yt-dlp + GEMINI_API_KEY)
filechanges ~/.agents /filechanges, /filechanges-accept, /filechanges-decline — tracks every file LLM edits/writes, diff review, revert
pi-subagents (tintinweb v0.7.1) ~/.agents Spawn child Pi agents for delegated tasks (scout, researcher, worker)
pi-graphify ~/.agents Knowledge graph tools: build, query, path tracing, explain, watch, add, update
plannotator ~/.agents Interactive plan review with browser UI, annotations, code review
caveman ~/.agents Ultra-compressed communication mode

Skills

Skill Purpose
nixos-workflow STRICT workflow for managing Pi assets via Gitea on NixOS
system-architect Multi-machine NixOS infrastructure (Snapcast, MQTT, Docker, Nvim)
obsidian-cli Interact with Obsidian vault (notes, search, plugin dev, theme dev)
graphify Full-pipeline knowledge graph orchestration
caveman Caveman communication mode
openspec-propose Propose new changes with design docs, specs, tasks
openspec-apply-change Implement tasks from an OpenSpec change
openspec-archive-change Archive completed changes
openspec-explore Explore ideas and clarify requirements

Configuration Files

Global (~/.pi/agent/settings.json)

  • Nix store symlink — managed via /etc/nixos/home/sam/home.nix
  • Contains: providers (opencode-go, openrouter, google), packages (pi-memctx, Gitea)
  • Read-only — cannot be modified by pi install or /config-add

Project (<project-dir>/.pi/settings.json)

  • Overrides global settings (arrays replace, not merge)
  • Contains: ~/.agents package (extensions + skills), Gitea package (tavily-search)
  • Modified via /config-add / /config-remove commands

Per-folder Memory (via pi-memctx)

  • Memory stored in <chat-folder>/.pi/memory-vault/packs/
  • Workspace map at ~/.pi/agent/memory-vault/00-system/workspace-map.json
  • Each chat folder has isolated memory (prevents sibling directory contamination)

Useful Commands

Command What it does
/config-setup One-shot: creates .pi/, settings.json, memory vault in current folder
/config-add ext <name> Activate an extension from ~/.agents
/config-add skill <name> Activate a skill from ~/.agents
/config-show Show active extensions and skills
/memctx-init Scan folder, build initial memory pack
/memctx-status Show memory status
/memctx-refresh Re-scan and enrich memory
/filechanges Review changed files, diffs, accept/decline
/filechanges-accept Accept all changes
/filechanges-decline Revert all changes

Skipped / Bookmarked

Extension/Skill Reason
web-search (amosblomqvist) Redundant — Tavily does this
subagents (amosblomqvist) Redundant — pi-subagents already installed
bash-guard (amosblomqvist) Too aggressive — would interrupt flow
google-image-search (amosblomqvist) Would need Google Search API + CSE setup
pdf-reader (amosblomqvist) Bookmarked — Python + pymupdf setup needed

Tasks

  • Clean up workspace-map.json entries for any stale memory packs
  • Run /reload in Pi to activate filechanges
  • Add ffmpeg + yt-dlp to home.nix (done — needs rebuild)
  • Verify video-extract works with Gemini (GEMINI_API_KEY configured via Google provider)