archived/skills/dogfood/SKILL.md
Generic reflective execution loop — learn from doing, capture friction, improve instructions
npx skillsauth add nicsuzor/academicops dogfoodInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
A generic loop for learning from doing. Works for framework development, research methodology, teaching design — any domain where the process itself is worth examining.
EXECUTE one step → REFLECT before proceeding → CODIFY if warranted → repeat
Per-step, not per-session. Reflect after every step, not batched at the end.
Do one discrete piece of work. While doing it, notice:
Before proceeding, ask: did the process work as designed?
| Observation | Action | | --------------------------------- | ------------------------------------------ | | One-time friction | Note in task body, continue | | Recurring pattern (seen 3+ times) | Check HEURISTICS.md — codify if missing | | Blocking current work | Fix minimally, file follow-up task | | Better approach found | Document what worked | | Tool or schema gap | File task under relevant project | | Strategic misalignment | Stop. Check vision doc. Discuss with user. |
The step most often skipped. Ask: "What did I learn that should change instructions for future work?"
| Learning type | Where it goes | | ------------------------- | ----------------------------- | | Better workflow steps | Update the workflow .md file | | Missing guardrail | HEURISTICS.md via /learn | | Agent behaviour fix | CORE.md or relevant SKILL.md | | Domain methodology update | The governing methodology doc | | Unclear instruction | Fix the instruction directly |
The loop only works if learnings are persisted as tasks. Otherwise they evaporate.
Create or bind to a parent task for the session's work. All findings are children.
If you found something worth acting on:
mcp__pkb__create_task(
title="[specific finding, not generic]",
parent="<session-task-id>",
tags=["learning", "<domain>"]
)
Title examples:
When creating or revising a plan, create an explicit feedback task:
mcp__pkb__create_task(
title="Review: [plan description] — get feedback on [specific question]",
tags=["feedback", "<domain>"]
)
When completing work that changed instructions or methodology:
mcp__pkb__create_task(
title="Verify: [change description] — did it work in practice?",
tags=["verification", "<domain>"],
body="Check in 3 sessions whether [specific observable outcome]."
)
Before starting, and when strategic misalignment is detected:
$AOPS/docs/VISION.md + $ACA_DATA/.agent/BUTLER.mdWhen explicitly dogfooding (e.g., "dogfood this", interactive framework session), the agent has scope over both the task being executed AND the instructions being tested. This is not scope expansion — it is the task. Custodiet should not flag inline fixes to the dogfooded artifact as out-of-scope.
aops-core/commands/learn.md — the framework's immune system (root cause → enforcement)aops-core/skills/hydrator/workflows/dogfooding.md — the original framework-specific versionspecs/feedback-loops.md — the full Observe→Analyze→Diagnose→Intervene→Verify architecturedata-ai
Canonical session close — commit, push, PR, release_task, reflection blocks, handover. Use /dump for emergency bail (no commit/PR/reflection).
data-ai
Emergency session bail — fast resume task + short handover, no commit/PR/reflection. For when you (or the user) need a clean context now. Use /end-session for canonical close.
data-ai
Daily note lifecycle — compose and maintain a factual daily note. Reports the state of the day; does not prioritise or recommend. SSoT for daily note structure.
testing
Launder supervisor/worker task-log output into a Nic-facing narrative — what happened, where things are headed, and what (if anything) is genuinely his to decide. Never relays raw process detail (worker IDs, thread pointers, log paths) or verbatim task-log stream-of-consciousness.