--- name: ask description: Decision-tree questioning until no doubt remains. Check wiki QUESTION_CONTENTS and QUESTION_{HASH} first and never re-ask answered questions. Compute HASH with the shared 8-character wiki hash rule. Every option must state its impact scope. After each answer, save the record back to the wiki. Use whenever a jsc skill needs user input; skip recording when no {owner}/{repo} is known. --- # ask — decision-tree questioning Every jsc skill that needs user input MUST follow the rules in this skill. ## Before asking 1. Confirm the repository name `{owner}/{repo}` of the current work. Without one, skip steps 2 and 3: ask directly but do NOT record. 2. Compute `HASH` with the shared wiki hash rule: 8 characters, uppercase hex, and if the first character would be `0-9`, `A`, `B`, or `C`, replace it with `H` and keep the total length at 8. 3. Read `QUESTION_CONTENTS` and `QUESTION_{HASH}` via `jsc-gitea:wiki`. Never re-ask a question already answered in the record; use the recorded answer directly. When reusing an answer, read the section's intent to judge whether the answer fits the current situation and whether it extends to similar unrecorded decisions. If the intent differs from the current situation, ask again instead of forcing the old answer. ## Questioning rules 1. Present questions as decision-tree options (AskUserQuestion or an equivalent menu), one decision point at a time. 2. One question carries one concept; no compound questions. Ask the most important decision first — you may only get one round of answers. 3. Every option MUST state its impact scope (what happens if chosen; which files or flows it affects). Add one "why this matters" line to any question that is easy to misread. 4. Let each answer decide the next question. Continue until no doubt remains; keep asking while anything is undecided. 5. Ask only what the user alone can answer. Look up answers available in code, config files, or environment variables yourself. ## After asking 1. Without a repository name, do not record; stop here. 2. After each Q&A round, apply `templates/question-record.md` to create or update `QUESTION_{HASH}` (append new entries; never overwrite old records). Each section MUST open with the user's original intent (why this questioning round happened), per the template; it lets a later reader judge why the user chose as they did and whether the answer still applies. 3. Apply `templates/question-contents.md` to create or update `QUESTION_CONTENTS` (add the repository row if missing; otherwise refresh its last-updated time). 4. The wiki writes above MUST run as a sub agent; the main agent only confirms the write succeeded.