with one click
debug-log
Printf-style debug logging for development-time visibility
Install with Codex or Claude Copy this prompt, paste it into Codex, Claude, or another assistant, and let it review the skill page and install it for you.
Menu
Printf-style debug logging for development-time visibility
Install with Codex or Claude Copy this prompt, paste it into Codex, Claude, or another assistant, and let it review the skill page and install it for you.
Based on SOC occupation classification
| name | debug-log |
| description | Printf-style debug logging for development-time visibility |
Printf-style logging for development and debugging. Compiles away completely in release builds.
#include "debug_log.h"
DEBUG_LOG("value=%d state=%s", x, state_name);
DEBUG_LOG("=== Entering function ===");
DEBUG_LOG("buffer contents: %.*s", (int)len, buf);
| Build | DEBUG defined | Behavior |
|---|---|---|
| Debug | Yes | Writes to $IKIGAI_LOG_DIR/debug.log |
| Release | No | Compiles to ((void)0) - removed entirely |
In debug builds, call once early in main():
#ifdef DEBUG
ik_debug_log_init();
#endif
Or simply use the macro form (safe in any build):
ik_debug_log_init(); // No-op if DEBUG not defined
[2025-01-15 10:30:00] src/client.c:34:main: === Session starting, PID=12345 ===
Format: [timestamp] file:line:function: message
$IKIGAI_LOG_DIR/debug.log (default: .ikigai/logs/debug.log)$IKIGAI_LOG_DIR/YYYY-MM-DDTHH-MM-SS±HH-MM.log using the file's birth timedebug.log is truncated on each new runIKIGAI_LOG_DIR must be set or the process panics at startup. It is exported by .envrc.
tail -f .ikigai/logs/debug.log # follow current session
ls .ikigai/logs/ # list all archived sessions
ikigai runs in terminal alternate buffer mode. printf() and fprintf(stderr, ...) are not visible during execution. Use DEBUG_LOG instead.
apps/ikigai/debug_log.h - Macro definitionapps/ikigai/debug_log.c - Implementation (excluded from coverage)Automated quality check loops with escalation and fix sub-agents
JSON-based end-to-end test format, runner, and mock provider
Jujutsu (jj) skill for the ikigai project
How to write effective Ralph goals for Ikigai-driven workflows
Create and manage Ralph goals from Ikigai using the real ralph-pipeline scripts
Create repositories using the real ralph-pipeline repo-create script