Back to list
cuioss

manage-logging

by cuioss

An orchestration layer for AI coding assistants (currently Claude Code) that enforces consistency, reliability, and more predictable outputs.

0🍴 0📅 Jan 17, 2026

SKILL.md


name: manage-logging description: Unified logging infrastructure for script execution and work progress tracking allowed-tools: Read, Bash

Logging Skill

Unified logging infrastructure providing script execution logging and semantic work progress tracking.

Overview

This skill provides a single unified API for two logging concerns:

  1. Script Execution Logging: Tracking of script executor invocations (type: script)
  2. Work Logging: Semantic tracking of work progress (type: work)

Log Files

Script Execution Log

File: .plan/plans/{plan-id}/script-execution.log (plan-scoped) Fallback: .plan/logs/script-execution-YYYY-MM-DD.log (global)

Work Log

File: .plan/plans/{plan-id}/work.log


CLI Script Usage

Script: plan-marshall:manage-logging:manage-log

Write API (Positional)

python3 .plan/execute-script.py plan-marshall:manage-logging:manage-log \
  {type} {plan_id} {level} "{message}"

Arguments (all positional, all required):

ArgumentValuesDescription
typescript, workLog type (determines output file)
plan_idkebab-casePlan identifier
levelINFO, WARN, ERRORLog level
messagestringLog message

Output: None (exit code only)

Read API

python3 .plan/execute-script.py plan-marshall:manage-logging:manage-log \
  read --plan-id {plan_id} --type {work|script} [--limit N] [--phase PHASE]

Arguments:

ArgumentRequiredDescription
--plan-idYesPlan identifier
--typeYesLog type: work or script
--limitNoMax entries to return (most recent)
--phaseNoFilter by phase (work logs only)

Output (TOON):

status: success
plan_id: my-plan
log_type: work
total_entries: 5
showing: 3

entries:
  - timestamp: 2025-12-11T11:14:30Z
    level: INFO
    category: DECISION
    message: Detected domain: java
    phase: init
  - timestamp: 2025-12-11T11:15:20Z
    level: INFO
    category: ARTIFACT
    message: Created deliverable: auth module

Examples

# Write: Script execution logging
python3 .plan/execute-script.py plan-marshall:manage-logging:manage-log \
  script my-plan INFO "pm-workflow:manage-task:manage-task add (0.15s)"

python3 .plan/execute-script.py plan-marshall:manage-logging:manage-log \
  script my-plan ERROR "pm-workflow:manage-task:manage-task add failed (exit 1)"

# Write: Work logging (include [TAG] (caller) prefix)
python3 .plan/execute-script.py plan-marshall:manage-logging:manage-log \
  work my-plan INFO "[ARTIFACT] (pm-workflow:phase-1-init) Created deliverable: auth module"

python3 .plan/execute-script.py plan-marshall:manage-logging:manage-log \
  work my-plan WARN "[STATUS] (pm-workflow:phase-4-execute) Skipped validation step"

# Read: All work log entries
python3 .plan/execute-script.py plan-marshall:manage-logging:manage-log \
  read --plan-id my-plan --type work

# Read: Last 5 work log entries
python3 .plan/execute-script.py plan-marshall:manage-logging:manage-log \
  read --plan-id my-plan --type work --limit 5

# Read: Work log entries for 1-init phase only
python3 .plan/execute-script.py plan-marshall:manage-logging:manage-log \
  read --plan-id my-plan --type work --phase 1-init

Log Format

Standard Entry Structure

[{timestamp}] [{level}] {message}

Since entries go to separate files (script-execution.log vs work.log), redundant type tags are omitted.

Example Output

script-execution.log:

[2025-12-11T12:14:26Z] [INFO] pm-workflow:manage-files:manage-files create (0.19s)
[2025-12-11T12:17:50Z] [ERROR] pm-workflow:manage-task:manage-task add failed (exit 1)

work.log:

[2025-12-11T11:14:30Z] [INFO] [STATUS] (pm-workflow:phase-1-init) Starting init phase
[2025-12-11T11:14:48Z] [INFO] [DECISION] (pm-workflow:phase-1-init) Detected domain: java (pom.xml found)
[2025-12-11T11:15:20Z] [INFO] [ARTIFACT] (pm-workflow:phase-1-init) Created deliverable: auth module

Log Levels

LevelDescription
INFOProgress, informational, or successful completion message
WARNWarning (non-fatal issue)
ERRORError with details

Python Import (from scripts run via executor)

Scripts run via the executor have PYTHONPATH set up for cross-skill imports:

from plan_logging import log_entry

# Log to global script log
log_entry('script', 'global', 'INFO', '[MY-COMPONENT] Processing started')

# Log to plan-specific log
log_entry('work', 'my-plan', 'INFO', '[ARTIFACT] Created deliverable')

Note: IDE warnings about unresolved imports are expected - PYTHONPATH is set at runtime by the executor.


Storage Locations

Plan-Scoped Logs

.plan/plans/{plan-id}/
├── script-execution.log    # Script execution tracking
└── work.log                # Work progress tracking

Global Logs

.plan/logs/
├── script-execution-YYYY-MM-DD.log    # Daily global script logs
└── work-YYYY-MM-DD.log                # Daily global work logs (when no plan)

Scope Selection:

  • If plan_id is provided and plan directory exists: plan-scoped log
  • Otherwise: global log (both script and work types supported)

Environment Variables

VariableDescriptionDefault
PLAN_BASE_DIRBase directory for .plan structure.plan
LOG_MAX_OUTPUTMax chars to capture from stdout/stderr2000
LOG_RETENTION_DAYSDays to keep global logs7

Integration Points

With Script Executor

The executor automatically calls log_script_execution() after each script run.

With Planning Skills

Planning skills call the simplified API:

python3 .plan/execute-script.py plan-marshall:manage-logging:manage-log \
  work my-plan INFO "[ARTIFACT] (pm-workflow:phase-3-plan) Created task: implement auth module"

Scripts

ScriptNotationDescription
manage-log.pyplan-marshall:manage-logging:manage-logCLI for logging operations (write and read)
plan_logging.py-Python module (imported, not executed)

Script Commands

CommandParametersDescription
(positional){type} {plan_id} {level} "{message}"Write log entry
read--plan-id --type [--limit] [--phase]Read log entries (TOON output)

Score

Total Score

70/100

Based on repository quality metrics

SKILL.md

SKILL.mdファイルが含まれている

+20
LICENSE

ライセンスが設定されている

+10
説明文

100文字以上の説明がある

+10
人気

GitHub Stars 100以上

0/15
最近の活動

3ヶ月以内に更新がある

0/10
フォーク

10回以上フォークされている

0/5
Issue管理

オープンIssueが50未満

+5
言語

プログラミング言語が設定されている

+5
タグ

1つ以上のタグが設定されている

0/5

Reviews

💬

Reviews coming soon