Audit, generate, update, and lint AGENTS.md files across all projects. Use when asked to check project context files, scaffold AGENTS.md for new projects, update stale ones, or run a cross-project audit.
日本語の概要は準備中です。原文の説明を表示しています。
Generate a full operational status report for the Aivena bot. Checks all subsystems: extensions, webserver, Telegram, chat bridge, heartbeat, cron, database, memory, CRM, calendar, task management, jobs/telemetry, and storage. **Triggers — use this skill when:** - User asks for "status", "bot status", "system status", "operational status" - User asks "is everything running?", "how's Aivena doing?" - User says "health check", "diagnostics", "systems check" - User asks "what's the state of the bot?"
インストールする前に、エージェントに与えられる指示の中身を確認できます。
Generate a comprehensive operational status report for the Aivena bot, covering every subsystem.
Produce all sections in order. Use status icons consistently:
Show:
Check both extension directories for installed extensions:
.pi/extensions/~/.pi/agent/extensions/ls -1 .pi/extensions/ 2>/dev/null
ls -1 ~/.pi/agent/extensions/ 2>/dev/null
For each extension found, read its package.json to get the version:
cat .pi/extensions/<name>/package.json 2>/dev/null | grep '"version"'
cat ~/.pi/agent/extensions/<name>/package.json 2>/dev/null | grep '"version"'
Report each extension with its source (workspace or global), version, and whether it's a symlink.
If an extension appears in both locations, note it — workspace takes precedence.
Format as a compact table:
Extensions (16 loaded)
Workspace (.pi/extensions/):
✅ pi-calendar 0.1.0 (symlink)
✅ pi-channels 0.1.0 (symlink)
Global (~/.pi/agent/extensions/):
✅ pi-memory 0.2.1 (symlink)
✅ pi-jobs 0.1.0 (symlink)
...
Check if the pi-webserver is responding:
curl -s --connect-timeout 5 --max-time 10 -o /dev/null -w "%{http_code}" http://localhost:4110/ 2>/dev/null
Report:
.pi/settings.json → pi-webserver.port)Format:
Webserver
✅ Responding on port 4110 (HTTP 200)
Autostart: enabled
If unreachable:
Webserver
❌ Not responding on port 4110
Read .pi/settings.json → pi-channels config and report:
Do NOT print the bot token — just confirm it's set (e.g., "Bot token: configured ✅").
Format:
Telegram & Chat Bridge
Telegram adapter: ✅ configured
Bot token: set
Polling: enabled (30s timeout)
Allowed chats: 1 configured
Chat bridge: ✅ enabled
Max queue: 5/sender, timeout: 300s, concurrency: 2
Routes:
ops → telegram → chat 5991...451
cron → telegram → chat 5991...451
Read .pi/settings.json → pi-heartbeat config:
Format:
Heartbeat
✅ Enabled — every 60min, 08:00–22:00
Route: ops
Autostart: enabled
Use the cron tool (action: list) to show all scheduled jobs:
If no jobs:
Cron Jobs
⚠️ No cron jobs configured
Check the SQLite database (managed by pi-kysely at .pi/db/aivena.db):
# Size
du -sh .pi/db/aivena.db
# Tables
sqlite3 -readonly .pi/db/aivena.db "SELECT name FROM sqlite_master WHERE type='table' ORDER BY name"
# Row counts for key tables (robust against missing tables)
for table in contacts interactions companies reminders; do
count=$(sqlite3 -readonly .pi/db/aivena.db "SELECT CASE WHEN EXISTS (SELECT 1 FROM sqlite_master WHERE type='table' AND name='$table') THEN (SELECT COUNT(*) FROM $table) ELSE 0 END" 2>/dev/null)
echo "$table: ${count:-0}"
done
If the database is empty (0 bytes) or has no tables, note it:
Database
⚠️ aivena.db exists but is empty (0 bytes)
If populated:
Database (.pi/db/aivena.db — 156KB)
Tables: contacts, interactions, companies, reminders, ...
CRM: 12 contacts, 34 interactions, 5 companies, 3 reminders
Check memory health:
# Long-term memory
wc -l < MEMORY.md 2>/dev/null
wc -c < MEMORY.md 2>/dev/null
# Daily logs
ls -1 .pi/memory/ 2>/dev/null | wc -l
ls -lt .pi/memory/ 2>/dev/null | head -3
Also use memory_read (target: long_term) to verify it's readable, and memory_read (target: list) to count daily logs.
Format:
Memory
✅ MEMORY.md: 142 lines, 4.2KB
📊 Daily logs: 8 files
Latest: 2026-02-12
Use the crm tool to check:
crm search with a broad query to count contactscrm upcoming to show upcoming reminderscrm list_companies to count companiesFormat:
CRM
✅ Operational
📊 15 contacts, 7 companies
Upcoming: 2 reminders in next 7 days
Or if empty:
CRM
⚠️ No contacts yet
Use the calendar tool:
calendar today — today's eventscalendar upcoming — next 7 daysFormat:
Calendar
Today: 2 events
10:00 — Team standup
14:00 — Client call
Next 7 days: 5 events
Or:
Calendar
Today: no events
Next 7 days: no events
td next 2>/dev/null
td reviewable 2>/dev/null
td list --status open 2>/dev/null | head -20
td list --status in_progress 2>/dev/null | head -10
td list --status in_review 2>/dev/null | head -10
Format:
Task Management
📊 Open: 12 issues, In progress: 2, In review: 3
Next up: td-abc123 "Some important task" (P1)
Reviewable: td-def456, td-ghi789
Use the jobs tool:
jobs stats — overall statisticsjobs recent (limit: 5) — recent runsFormat:
Jobs & Telemetry
📊 Total runs: 245, Errors: 3 (1.2%)
Avg duration: 28.4s
Total cost: $1.23
Recent:
12:05 — tui — 34s — success
11:42 — cron — 12s — success
11:00 — heartbeat — 45s — success
du -sh .pi/db/aivena.db
du -sh .pi/memory/
du -sh log/
du -sh .todos/
du -sh .pi/extensions/
# Total workspace size (excluding node_modules, .git)
du -sh --exclude=node_modules --exclude=.git . 2>/dev/null || du -sh . 2>/dev/null
Format:
Storage
aivena.db: 156KB
Memory: 12KB
Logs: 48KB
Tasks (.todos): 8KB
Extensions: 2.1MB
Workspace: 3.4MB
Cross-check .pi/settings.json for:
Config Validation
✅ All routes reference valid adapters
✅ Webserver port configured
✅ Bot token present
⚠️ pi-cron in settings but extension not found
Aggregate all checks into a health score:
Health Score: 12/14 checks passing
Summary:
Aivena is operational with 13 extensions loaded. Telegram bridge and
webserver are responding. No cron jobs configured — consider adding
scheduled tasks. Database is empty — CRM not yet populated.
Action Items:
1. ⚠️ Configure cron jobs for recurring tasks
2. ⚠️ Populate CRM with initial contacts
3. ✅ All core systems operational
Run all independent checks in parallel where possible (e.g., curl + sqlite + td can all run concurrently). Group tool calls that don't depend on each other.
-readonly flag for SQLite queriesまだレビューはありません。使ってみた感想をお寄せください。
概要と使いどころ
Audit, generate, update, and lint AGENTS.md files across all projects. Use when asked to check project context files, scaffold AGENTS.md for new projects, update stale ones, or run a cross-project audit.
日本語の概要は準備中です。原文の説明を表示しています。
Draft, edit, and publish blog posts for e9n.dev. Use when creating new posts, editing drafts, or refining existing content. Handles Eleventy frontmatter, Tailwind formatting, and Espen's authentic voice.
日本語の概要は準備中です。原文の説明を表示しています。
Parse git history and produce or update a CHANGELOG.md following the Keep a Changelog convention. Supports Conventional Commits, basic prefix conventions, and unstructured commit messages. Intelligently categorizes changes, detects breaking changes, links to PRs/issues, and handles both initial generation and incremental updates. **Triggers — use this skill when:** - User asks to "generate", "create", "update", or "write" a changelog - User mentions "CHANGELOG", "changelog", "release notes" - User says "document changes", "what changed since last release" - User wants to "prepare a release" and needs a changelog entry - User asks to "clean up" or "reformat" an existing changelog **Covers:** Any git-based project. Handles Conventional Commits (feat/fix/chore), Angular convention, basic prefixes (Add/Fix/Remove), and freeform commit messages. Outputs Keep a Changelog format with optional Common Changelog enhancements.
日本語の概要は準備中です。原文の説明を表示しています。
Orchestrate cmux terminal panes — split terminals, run parallel processes, read output from other panes, and use the built-in browser. Use when working inside cmux and you need to run a dev server, watch tests, spawn sub-agents, or preview web pages.
日本語の概要は準備中です。原文の説明を表示しています。
Review code for quality, security, performance, and maintainability. Use when reviewing PRs, auditing a codebase, or refactoring. Covers TypeScript, Node.js, infrastructure-as-code, and full-stack web apps.
日本語の概要は準備中です。原文の説明を表示しています。
Generate and maintain AI-readable markdown documentation for a codebase in docs/. Use this skill whenever the user asks to document their codebase, generate project docs, create architecture docs, update documentation after code changes, build a knowledge base for AI agents, create onboarding docs, map out a codebase, or explain a project structure. Also trigger when users say things like "document this repo", "create docs for my project", "update the docs", "write architecture documentation", "help AI understand my code", "generate a codebase overview", or "maintain docs". This skill is specifically about creating structured markdown files in a docs/ directory that serve as a knowledge base — NOT about writing inline code comments, README files, or API reference docs from docstrings.
日本語の概要は準備中です。原文の説明を表示しています。