
gjkim-instruction
Create and maintain gjkiminstruction.md, the root document for a loop-engineering effort. The document holds only the minimum requirements and confirmed decisions, and deliberately leaves everything else open so that later iterations are not locked into early guesses. Use whenever the user mentions gjkiminstruction.md, a root document or root doc for a loop, loop engineering, starting a long-running agent loop on a goal, or asks to record a requirement or a confirmed decision for such an effort. Also use at the start of a loop iteration to check what is already decided versus still open.
- Installs
- 3.6K
- Last 24h
- +46
- Trending rank
- #3569
- Security
- Not audited
Install
Works with every agent the skills CLI supports.
npx skills add https://github.com/gjkim42/kanon-repo --skill gjkim-instruction- 01
Install
Run the command in your project. The CLI asks which agents to install for.
- 02
Describe the task
Ask your agent for something this skill covers. It loads gjkim-instruction automatically when relevant.
- 03
Review the result
The agent follows the SKILL.md steps, scripts and references bundled with the skill.
SKILL.md
The instructions your agent reads when the skill is triggered.
gjkim_instruction.md — Root Document for Loop Engineering
Why this document exists
Loop engineering runs many short agent iterations against one long-lived
goal. Each iteration starts with little context, so it needs one stable
place that says what must be true and what has already been decided. That
place is gjkim_instruction.md, kept at the root of the project the loop
works on.
The failure mode this document guards against is early decision lock-in. Whatever is written in the root document, every later iteration inherits as if it were a requirement. If unconfirmed details get written down — a library choice, a schema, a file layout that was only a first guess — wrong guesses become permanent and the loop loses the freedom to find better answers. So the document records only two kinds of content, and treats everything else as deliberately open.
What goes in
- Goal: one or two sentences on what the effort must achieve.
- Minimum requirements: the smallest set of outcomes that must hold true for the effort to succeed. Outcome-level, not implementation-level.
- Non-goals: outcomes the effort explicitly does not pursue, so iterations do not drift into them. A non-goal is a confirmed "we are not doing this", not merely something undecided — undecided things belong under "Deliberately open".
- Confirmed decisions: only decisions the user has explicitly confirmed. Each entry carries the date it was confirmed and a one-line why, so a later iteration can tell whether the reason still applies.
- Deliberately open (optional): choices that are known to be undecided, listed so iterations do not silently assume an answer. Listing an option here does not endorse it.
What stays out
- Implementation details that were not explicitly confirmed: libraries, frameworks, schemas, file layouts, API shapes, deployment targets.
- Task lists, progress logs, iteration status. Those belong in issues, PRs, or iteration notes — the root document describes the destination, not the journey.
- Speculative designs or options under consideration. Mentioning them at most under "Deliberately open", never as requirements or decisions.
- Anything derivable from the code itself.
Litmus test for requirement vs. detail: could two meaningfully different implementations both satisfy it? If only one implementation can, it is a detail — leave it out until the user confirms it as a decision.
Template
Create the document at the project root, named exactly
gjkim_instruction.md:
# <effort name>
Root document for loop engineering. Read this first in every iteration.
Anything not written here is an open choice.
## Goal
<one or two sentences>
## Minimum requirements
- <outcome that must hold>
## Non-goals
- <outcome explicitly not pursued>
## Confirmed decisions
- <decision> — confirmed <YYYY-MM-DD>. Why: <one line>
## Deliberately open
- <choice known to be undecided; do not assume an answer>
Omit the "Non-goals" or "Deliberately open" section when there is nothing useful to warn about. Keep the whole document around one page; if it grows past that, details are leaking in — prune them.
Maintaining the document
- Add a decision only when the user has explicitly confirmed it. "Leaning toward", "probably", or "maybe" is not confirmation.
- Record a non-goal only when the user has explicitly ruled it out. An option nobody has decided on yet stays under "Deliberately open".
- When an iteration must make a choice that is not in the document, make the best local choice, record it in that iteration's PR or notes as unconfirmed, and propose it to the user for confirmation. Do not write it into the root document yet.
- When a decision is reversed, replace the entry. The document describes only the current state; git history holds the old one.
- When updating, preserve existing requirements and decisions unless the user explicitly changes them.
FAQ
What does the gjkim-instruction skill do?
Create and maintain gjkiminstruction.md, the root document for a loop-engineering effort. The document holds only the minimum requirements and confirmed decisions, and deliberately leaves everything else open so that later iterations are not locked into early guesses. Use whenever the user mentions gjkiminstruction.md, a root document or root doc for a loop, loop engineering, starting a long-running agent loop on a goal, or asks to record a requirement or a confirmed decision for such an effort. Also use at the start of a loop iteration to check what is already decided versus still open.
How do I install gjkim-instruction?
Run npx skills add https://github.com/gjkim42/kanon-repo --skill gjkim-instruction in your project. The skills CLI detects the agents you use and copies the skill into the right folder. For Claude Code you can also place the skill folder at ~/.claude/skills/gjkim-instruction/ (personal) or .claude/skills/gjkim-instruction/ (project).
Which AI agents can use gjkim-instruction?
Any agent that supports the open Agent Skills format (a folder with a SKILL.md file), including Claude Code, Codex, Cursor, GitHub Copilot, Gemini CLI, Windsurf, Cline, OpenCode and more.
Is gjkim-instruction safe to install?
No partner security audit is available yet. Skills can run commands and scripts, so read the SKILL.md and any bundled files before installing.
Who maintains gjkim-instruction?
It is published by gjkim42 in gjkim42/kanon-repo. It has 3,607 recorded installs.
More from gjkim42/kanon-repo
review-all
gjkim42/kanon-repo
Run a two-agent code review: spawn two fresh, clean-context agents that examine the SAME committed branch diff in parallel. One agent runs Codex's native codex review --base command, while the other independently reviews the code against Google's "What to look for in a code review" guidance. Merge both outputs into one agreement-ranked report. Use this whenever the user asks for "review-all", a second-opinion review, a dual review, a cross-check before a PR, or a maximum-confidence review of committed branch changes. Do not use it to APPLY fixes; it is review-only.
api-review
gjkim42/kanon-repo
Review the current Kelos branch, or an explicitly specified PR, issue, or diff, for Kubernetes API and CRD design quality. Use when asked for a Kelos API review, CRD/API compatibility review, Kubernetes API convention review, or review of changes under api/, generated CRDs, examples/, or self-development/ manifests. Default to the current branch when no target is specified. This skill is review-only.
design-cleanup
gjkim42/kanon-repo
Sweep the current branch for leftovers of an abandoned design after a significant mid-work decision change, and rewrite the affected code, comments, tests, and docs so the result reads as if it had been designed this way from the beginning. Use when the user says "design cleanup", "clean up the old approach", "erase the journey", says a design decision changed and asks to clean up after it, or after a pivot in approach mid-branch. This is a rewrite pass over the code touched by the decision only — not a general refactoring or bug-hunting pass.
pre-session-end
gjkim42/kanon-repo
Use this skill PROACTIVELY when the user indicates they are done working, ending the session, wrapping up, or saying goodbye. Also use when significant work has been completed and the user hasn't explicitly asked to continue. Analyzes the session to evolve skills/commands/agents and propagates useful project permissions to global settings.
address-pr-review
gjkim42/kanon-repo
Review the comments on a PR and address the findings that are valid and required. Use when the user says "address-pr-review", asks to address the PR review, handle or apply the review comments or review feedback on a PR, or fix what the reviewers asked for. Defaults to the PR for the current branch when none is named. This skill changes code; it is not a review pass.
pr-finish
gjkim42/kanon-repo
Finish an open PR by batching review feedback, applying valid fixes, running verification, pushing once per batch, and monitoring CI with bounded waits. Use when the user asks to update code until PR review comments are handled, review-all has no valid blocking findings, and required checks pass.
Popular other skills
hyperframes-cli
heygen-com/hyperframes
The HyperFrames CLI by job - scaffold, check, look at frames, edit the timeline, preview, render locally or in the cloud, publish, project history - plus reading its JSON and recovering from build or render failures.
triage
mattpocock/skills
Move issues and external PRs through a state machine of triage roles, categorise, verify, grill if needed, and write agent-ready briefs.
ask-matt
mattpocock/skills
Ask which skill or flow fits your situation. A router over the skills in this repo.
to-questionnaire
mattpocock/skills
Turn a decision you can't fully answer into a questionnaire for someone else to fill in.
loop-me
mattpocock/skills
Grill me about specs for the workflows I want to build, within this workspace.