From claudikins-kernel
Enforces git workflow for claudikins-kernel:execute: decomposes plans into atomic tasks per branch, two-stage reviews, batch sizing, human checkpoints to prevent parallelization issues.
npx claudepluginhub elb-pr/claudikins-marketplace --plugin claudikins-kernelThis skill is limited to using the following tools:
Use this skill when you need to:
references/batch-patterns.mdreferences/batch-size-verification.mdreferences/branch-collision-detection.mdreferences/branch-guard-recovery.mdreferences/circuit-breakers.mdreferences/dependency-failure-chains.mdreferences/execution-tracing.mdreferences/review-conflict-matrix.mdreferences/review-criteria.mdreferences/task-branch-recovery.mdreferences/task-decomposition.mdGenerates design tokens/docs from CSS/Tailwind/styled-components codebases, audits visual consistency across 10 dimensions, detects AI slop in UI.
Records polished WebM UI demo videos of web apps using Playwright with cursor overlay, natural pacing, and three-phase scripting. Activates for demo, walkthrough, screen recording, or tutorial requests.
Delivers idiomatic Kotlin patterns for null safety, immutability, sealed classes, coroutines, Flows, extensions, DSL builders, and Gradle DSL. Use when writing, reviewing, refactoring, or designing Kotlin code.
Use this skill when you need to:
claudikins-kernel:execute command"I'd use 5-7 agents per SESSION, not 30 per batch." - Boris
Execution is about isolation, verification, and human checkpoints. Not speed.
context: fork gives a clean slateWrong: 30 agents for 10 tasks (3 per task micro-management) Right: 5-7 agents total (feature-level batches)
| Scenario | Wrong | Right |
|---|---|---|
| 10 tasks, 5 features | 30 micro-task agents | 5-7 feature agents |
| Simple refactor | 10 agents for tiny changes | 1-2 feature agents |
Default --batch 1 is correct. Features are the unit of work.
From a plan, extract tasks that are:
| Quality | Definition | Example |
|---|---|---|
| Atomic | Completable in one agent session | "Add auth middleware" not "Build auth system" |
| Testable | Has measurable acceptance criteria | "Returns 401 for invalid token" |
| Independent | Minimal dependencies on other tasks | Can be reviewed in isolation |
| Right-sized | Not too small (noise) or large (context death) | 50-200 lines of changes |
See task-decomposition.md for patterns.
Two reviewers with different jobs. Never skip either.
Question: "Did it do what was asked?"
Checks:
Output: PASS or FAIL with line references.
Question: "Is it well-written?"
Checks:
Output: PASS or CONCERNS with confidence scores.
See review-criteria.md for detailed checklists.
This is non-negotiable. Violations here break the entire workflow.
After EVERY task completes, you MUST spawn BOTH reviewer agents:
Task(spec-reviewer, {...})Task(code-reviewer, {...}) (if spec passes)| Allowed | NOT Allowed |
|---|---|
Task(spec-reviewer, { prompt: "...", context: "fork" }) | Inline spec check by orchestrator |
Task(code-reviewer, { prompt: "...", context: "fork" }) | "I'll just verify the code looks good" |
| Waiting for agent output JSON | Making your own compliance table |
Reading from .claude/reviews/spec/ | Skipping because "it's a simple task" |
If you find yourself doing ANY of these, you are VIOLATING the methodology:
The orchestrator does NOT review. The orchestrator SPAWNS reviewers.
Before ANY merge decision can be offered to the user:
□ .claude/reviews/spec/{task_id}.json EXISTS for each task
□ .claude/reviews/code/{task_id}.json EXISTS for each task
□ Both files contain valid JSON with "verdict" field
□ spec-reviewer verdict is PASS (or user override documented)
If ANY file is missing: DO NOT proceed to merge. You skipped the review.
What happens when reviewers return their verdicts:
| Spec Result | Code Result | Action |
|---|---|---|
| PASS | PASS | Offer [Accept] [Revise anyway] |
| PASS | CONCERNS | Offer [Accept with caveats] [Fix] [Klaus review] |
| FAIL | * | Always [Revise] or [Retry] |
See review-conflict-matrix.md for edge cases.
All tasks in batch complete?
├── No → Wait for remaining
└── Yes →
All reviews pass?
├── No →
│ Retry count < 3?
│ ├── Yes → Retry failed tasks
│ └── No → Escalate to Klaus or human
└── Yes →
Present results to human
└── Human decides: [Accept] [Revise] [Retry]
See batch-patterns.md for decision trees.
Agents under pressure find excuses. These are all violations:
| Excuse | Reality |
|---|---|
| "30 agents is fine, tasks are independent" | More agents = more chaos. 5-7 per session, features as units. |
| "I'll just checkout main to compare" | Agents don't own git. Use git show main:file instead. |
| "Skip spec review, code looks correct" | Spec review catches scope creep. Never skip. |
| "I'll do the review myself, it's simple" | Spawn the reviewer agents. Inline reviews are VIOLATIONS. |
| "Both passed, auto-merge is safe" | Human checkpoint required. Always. |
| "Context is fine, I'll continue" | ACM at 60% = checkpoint offer. 75% = mandatory stop. |
| "This tiny task doesn't need a branch" | One task = one branch. No exceptions. Isolation prevents pollution. |
| "Retry limit is just a guideline" | 2 retries then escalate. Infinite retry = infinite waste. |
| "I'll merge my changes when done" | Commands own merge. You own implementation. Stay in your lane. |
All of these mean: Follow the methodology. Speed is not the goal.
If you're thinking any of these, you're about to violate the methodology:
All of these mean: STOP. Commands own git. Humans own checkpoints. Reviewers own reviews. You own orchestration.
Things go wrong. Here's how to handle them.
If the capture hook fails, agent output is lost.
Pattern: Write to backup location first, then move to primary.
# Always backup first
echo "$OUTPUT" > "$BACKUP_DIR/agent-$(date +%s).json"
# Then move to primary
mv "$BACKUP_DIR/..." "$PRIMARY"
Agents sometimes produce invalid JSON.
Pattern: Validate required fields before accepting.
REQUIRED='["task_id", "status"]'
jq -e "all($REQUIRED[]; has(.))" "$OUTPUT" || exit 2
Agents need to know where to work.
Pattern: Export directory as environment variable in SubagentStart hook.
export TASK_BRANCH_DIR="$PROJECT_DIR"
export TASK_BRANCH_NAME="execute/task-${TASK_ID}-${SLUG}"
Opus gets rate limited more than Sonnet.
Pattern: Offer fallback options to human.
Agent runs out of context before finishing.
Pattern: Output partial state and mark as resumable.
{
"status": "partial",
"files_changed": ["completed work..."],
"next_steps": ["what remains..."],
"checkpoint_hash": "sha256:..."
}
Task Y depends on Task X. Task X fails. What happens to Y?
See dependency-failure-chains.md.
Two tasks accidentally get the same branch name.
See branch-collision-detection.md.
The git-branch-guard hook blocks something it shouldn't.
Validating batch sizes before execution starts.
See batch-size-verification.md.
Recovering orphaned branches from crashed sessions.
Preventing cascading failures when operations fail repeatedly.
Pattern: Track failure rate. If threshold exceeded, "open" the circuit - fail fast without attempting.
Circuit: agent_spawn
State: OPEN (3 failures in 60s)
Reset in: 30 seconds
[Wait for reset] [Force close] [Skip operation]
See circuit-breakers.md.
Debugging execution graphs and understanding what happened.
Pattern: Record spans for each operation. Visualise as waterfall or dependency graph.
Trace: exec-session-xyz
├── batch_1 (45s)
│ ├── task-1 (20s) ✓
│ └── task-2 (25s) ✓
└── batch_2 (60s)
└── task-3 (60s) ✓
Critical path: batch_1 → batch_2
See execution-tracing.md.
| Signal | Threshold | Response |
|---|---|---|
| Tool call flooding | 20 calls without file changes | Warning, then Klaus |
| Time without progress | 10 minutes | Warning, then Klaus |
| Repeated failures | Same error 3x | Pause, offer Klaus |
| Context burn rate | ACM at 60% | Checkpoint offer |
| Review timeout | 5 minutes per reviewer | Offer [Wait] [Skip] |
Don't do these:
Full documentation in this skill's references/ folder: