agentsclimarketplace

Forki

Skill jazz1x/galmuri/skills/forki

갈무리 — the Korean art of putting things away properly. A Claude Code plugin that gathers scattered thoughts into something you'd want to keep.

Install
npx -y skills add jazz1x/galmuri --skill forki

Assembled from the repository path, not quoted from the project. Check it against their README if it does not work.

One thing to look at

  • 3 stars3 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.

What its author says it does

Copied from the file, not written here

Decision-forcing skill. Reduces a problem to a binary fork via role decomposition (Decision / Execution / Validation / Recovery), surfaces trade-offs, forces a single choice. Triggers: "forki", "결정", "선택", "어느 쪽", "두 길", "갈피", "trade-off", "둘 중 뭐", "이전에 결정한", "다시 결정", "결정 기록", "decide", "decision", "choose between", "fork", "torn between", "past decision", "decided before", "record decision". Scope: any domain. Pre-PRD, pre-implementation.

SKILL.md

8.2 KB, as published. Nobody here has run it

galmuri:forki — Decision Forcing

Pattern: binary → roles → trade-off → forced choice. This is a decision skill, not an explanation skill. If the user already has a verdict and only needs slides, route to galmuri:deck (preset decision-sandwich-6); if they need a summary of a decision doc, route to galmuri:distill / explain / doc.

Entry Check

If invoked with no context (no decision topic, no problem description): → Ask: "어떤 결정이 필요한가요? 고민 중인 상황을 설명해주세요. e.g. Postgres vs SQLite for the new service, hire vs contract for the data role." → Wait for user response before proceeding to Step 0.

Mode — HITL only

CategoryStepsLLM authority
Auto query0 (query)Full
Flow gate0 (decision)None — trust / reopen
Verdict gate1, 3, 6None — user states it
Confirmation gate2, 5Propose only
Scaffold (skippable)4, 7Propose, user skip
Side effect (opt-out)8y / n

LLM proposes; user confirms before next step. No autonomous mode.

References (load once, reuse)

FileFirst loaded atUsed for
references/protocol.mdStep 1 (first HITL)All HITL prompts, response rule parsing, report templates
references/asset.mdStep 0 entry, or Step 8 entry if Step 0 was skippedBash query/record blocks for .galmuri/

Each reference is loaded at most once per forki invocation and reused across all subsequent steps. See Context Budget below for the exhaustive read/write inventory.

Step 0: Past-Decision Query (optional)

→ Load references/asset.md and execute the Step 0 query block as documented there. The full branching logic (trust / reopen / skip on absent / skip on no match) lives in asset.md.

Step 1: Binary

Exactly 2 options. 3+ → collapse to "do A vs everything else". "It depends" → ask user to constrain.

→ HITL via Step 1 prompt in references/protocol.md. Wait for explicit confirmation. Output: A vs B, one line.

Step 2: One-Line Reduction

Compress to one sentence: "Who executes X?" / "Who owns X?" / "What changes when X?"

→ HITL via Step 2 prompt in references/protocol.md. Reject → propose alternative. Reject again → back to Step 1 (binary is wrong).

Step 3: Role Decomposition (D/E/V/R)

On entry, output first line: Step 3 attempt {n}/3. {n} starts at 1 on first Step 3 entry; +1 on each back-jump from Step 5/6/7. On attempt 3/3, this is the last allowed run (2 back-jumps total). If forki would back-jump to Step 3 again from this attempt, abort instead: "forki could not converge after 2 back-jumps. Gather more context outside this skill."

Fill all 4 roles per option:

RoleQuestion
DecisionWho judges?
ExecutionWho acts?
ValidationWho verifies?
RecoveryWho fixes when broken?

→ HITL via Step 3 prompt in references/protocol.md. LLM may draft; user confirms or overrides each cell. Empty ? → re-ask only those cells.

Step 4: Three Examples (scaffold)

→ HITL via Step 4 prompt in references/protocol.md. Skip when concrete enough or user says skip. Record skip in report.

Step 5: Trade-off

A: gains {X}, loses {Y}
B: gains {Y}, loses {X}

Axes: flexibility↔stability, speed↔safety, autonomy↔control.

→ HITL via Step 5 prompt in references/protocol.md.

  • User says "don't care about X" → strike axis, propose new (stay in Step 5).
  • Both options gain/lose the same → not real trade-off → back-jump to Step 3.

Step 6: Forced Choice

Choice: Option {A|B}. Reason: {one structural reason}.

→ HITL via Step 6 prompt in references/protocol.md. LLM must not answer for the user, must not signal a preference. "You choose" → reply: "forki cannot decide for you."

User truly cannot choose → back-jump to Step 3.

Step 7: Comprehension Check (scaffold)

→ HITL via Step 7 prompt in references/protocol.md. Cannot answer all 3 → back-jump to Step 3. Skip on skip.

Step 8: Record as Decision Asset (side effect, opt-out)

Trigger: runs only after Step 6 reaches a verdict (and Step 7 if not skipped). If forki aborts at any earlier step (counter 3/3, user Stop, Step 0 trust reuse, etc.), Step 8 does not run.

→ Load references/asset.md for sub-steps 8.0 / 8.1 / 8.2 (pre-check, HITL, write+record).

Side effect, not gate: the Step 6 verdict stands regardless of Step 8 outcome.

Context Budget

forki is a thinking skill, not a reading skill.

Reference loading: see References section above (single source of truth).

Filesystem I/O:

OperationWhen
Read .galmuri/assets/*.jsonl (tag-filtered)Step 0 only. Skip if directory absent.
Write /tmp/forki-{ts}.mdStep 8 sub-step 8.2 only, after y confirmation.
Append .galmuri/assets/decision-{ts}.jsonl (1 line)Step 8 sub-step 8.2 only, via scripts/record-asset.sh.

Maximum 2 references in context simultaneously (protocol.md + asset.md).

Prohibited

  • More than 2 options in Step 1
  • Skipping any verdict gate (Steps 1, 3, 6)
  • Treating Steps 4 / 7 as gates
  • LLM picking the final choice in Step 6
  • Interpreting yes / ok / as confirmation. Always re-ask.
  • Proceeding on silence
  • Both / depends / later as final choice
  • Reading files to "gather more info" (without explicit user request)
  • Trade-offs where both options gain / lose the same thing
  • Initializing .galmuri/ from forki
  • Recording an asset on user n. Honor opt-out.
  • Inlining HITL prompts or report templates in this file — they live in references/protocol.md
  • "FYI..." style supplementary information
  • Verbose decision reports

Keep looking

Skills are one crate of 328,083. Ordering is by how many stacks a row turns up in, so the top of any crate is what has actually been picked rather than what has the most stars.