agentsclimarketplace

Forki

Skill jazz1x/galmuri/skills/forki

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.From its SKILL.md

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.

2 things 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.
  • runs commandsInstructs the agent to run 2 commands, including `execute the Step 0 query block as documented in references/asset.md` and 1 more.

SKILL.md

8.2 KB, ~1.7k tokens by cl100k_base, 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

What ships with it: 8 files

39.7 KB alongside SKILL.md

references/

Keep looking

Skills are one crate of 325,949. 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.