CommunityResearch & Data Analysisgithub.com

TOA Questioning

A question-by-question elicitation protocol for human-guided AI.

What is TOA Questioning?

The TOA (Topic-Oriented Asker) protocol provides a structured, human-guided questioning process for AI agents. Instead of the AI generating a monolithic output, it asks the user one question at a time, waits for a response, and then proceeds to the next question. This systematic elicitation ensures that the user's intent, preferences, and constraints are fully injected into the task. The protocol supports up to one follow-up question and one clarification per main question, with an optional 'one more ask' at the end. It enforces strict rules to prevent the AI from asking multiple questions at once or answering on behalf of the user. The full Q&A record is saved as a timestamped Markdown file. This approach is especially useful for complex requirements gathering, preference tuning, and scenario definition where the user must guide the AI step by step.

Works with~Claude Code~Codex CLI~Cursor
npx skills add tri-chinaroot/toa-questioning

Installed? Explore more Research & Data Analysis skills: affaan-m/uspto-database, affaan-m/scholar-evaluation, affaan-m/literature-review · View all 6 →

Ask in your favorite AI

Open a new chat with this agent skill pre-loaded.

Documentation

TOA Questioning (Topic-Oriented Asker Protocol)

TOA is a human-guided AI questioning protocol: the AI asks the user one question at a time about a topic, waits for each answer before continuing, and systematically injects the user's intent into the task. Proposed by tri-chinaroot.

Trigger Conditions

  • The user says "use the TOA questioning method", "TOA question", or "follow TOA".
  • The user describes a process of "presetting the number of questions, then asking one at a time".

Execution Rules (7)

  1. Preset Questions: Determine a fixed number of questions based on the topic (usually 3–10). Do not list all questions upfront, but inform the user of the total count.
  2. One-by-One Questioning: Ask only one question at a time, and indicate the number of remaining regular questions, e.g., (4 questions remaining). Wait for a reply before asking the next question.
  3. Follow-up: If you have questions or concerns about the reply, you may ask at most one follow-up.
  4. Clarification: If the reply is still unclear after the follow-up, you may request one clarification; the clarification response is the final answer to that question.
  5. One More Ask (optional): After all regular questions have been completed, if new questions not yet covered emerge from the previous Q&A, you may add one extra question, which also allows one follow-up and one clarification. If there are no new questions, do not ask.
  6. Save Record: After the interview, save the complete Q&A record as Markdown with the filename: TOA-ProjectName-StartTime.md (e.g., TOA-MemberScenarioValidation-20260812-110500.md).
  7. Await Reply: After asking a question, you must wait for the user to answer; do not answer on behalf of the user, and do not throw multiple questions in a row.

Usage Recommendations

  • Prefer A/B/C Options: Whenever possible, attach 2–4 concrete options to each question; the user can directly reply with "choose A" or give direction. Open-ended questions are only used when options cannot be preset.
  • If the Reply Reveals Answers to Subsequent Questions, Still Ask in Order: Record that information, but still ask subsequent questions in the preset order (you may note "You already mentioned…, is that correct?"). Do not skip or reorder.
  • Record Structure: Metadata (project name / topic / start time / end time / question count) + Q&A records (original question / initial answer / follow-up / clarification / final answer) + One More Ask + Project input summary (goals / constraints / key preferences / to-dos).

Pitfalls (Avoid)

  • Do not ask multiple questions at once: Violating "one question at a time" results in execution failure.
  • Do not answer for the user: When the user is silent, only wait or gently remind.
  • Follow-ups and clarifications are capped: At most 1 follow-up + 1 clarification per question. After exceeding, treat the clarification response as the final answer.
  • Do not ask One More Ask for the sake of asking: Only ask if new questions emerge from the previous Q&A. End directly if there are no new questions.
  • Filename must contain project name and start time.

References

  • templates/record-template.md — Record template (Chinese)
  • templates/record-template-en.md — Record template (English)
  • METHOD_CN.md / METHOD.md — Full execution procedure

Related Skills