一键导入
deep-interview
Socratic deep interview with ambiguity gating before Antigravity execution
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
菜单
Socratic deep interview with ambiguity gating before Antigravity execution
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
基于 SOC 职业分类
[OMAGY] Run an anti-slop cleanup/refactor/deslop workflow
Run read-only deep repository analysis with ranked synthesis, concrete evidence, and explicit Evidence/Inference/Unknown boundaries.
Full OMX-style autonomous pipeline for Omagy: interview, plan, goal execution, optional team, review, and UltraQA.
Professor-critic research workflow with durable Omagy artifacts for agy.
Stateful validator-gated research loop with artifact-gated completion.
[Omagy] Bounded best-practice research wrapper using official/upstream evidence first
| name | deep-interview |
| description | Socratic deep interview with ambiguity gating before Antigravity execution |
| argument-hint | [--quick|--standard|--deep] [--autoresearch] <idea or vague description> |
<Use_When>
/omagy:plan, /omagy:ralplan, /omagy:ultrawork, /omagy:ralph, or /omagy:team
</Use_When><Do_Not_Use_When>
<Why_This_Exists> Execution quality is usually bottlenecked by intent clarity, not just missing implementation detail. A single expansion pass often misses why the user wants a change, where scope should stop, which tradeoffs are unacceptable, and which decisions still require user approval. This workflow applies Socratic pressure and quantitative ambiguity scoring so Omagy execution modes begin with an explicit, testable, intent-aligned spec. </Why_This_Exists>
<Depth_Profiles>
--quick): fast pre-PRD pass; target threshold <= 0.30; max rounds 5--standard, default): full requirement interview; target threshold <= 0.20; max rounds 12--deep): high-rigor exploration; target threshold <= 0.15; max rounds 20--autoresearch): Standard rigor specialized for /omagy:autoresearch validator-gated mission readiness, with /omagy:autoresearch-goal available for durable professor-critic goalsIf no flag is provided, use Standard.
<Mode_Flags>
--autoresearch: switch the interview into validator-gated autoresearch intake mode. Converge on a research mission, validation mode, completion artifact path, validator command or architect prompt, optional durable goal rubric, launch readiness, and explicit refine further vs start autoresearch vs create/start autoresearch-goal boundary. Do not migrate deprecated direct OMX omx autoresearch launch semantics into Omagy.
</Mode_Flags>
</Depth_Profiles><Execution_Policy>
questions[] form.omagy explore before asking the user about internals; use the explorer subagent only when the lookup is too broad for the bounded CLI./omagy:best-practice-research before treating that ambiguity as settled.omagy question source values, and never replace the runtime source: "deep-interview" contract for user-facing questions:
[from-code][auto-confirmed] - exact, high-confidence codebase facts from manifests/configs or direct source evidence, with no prescription attached.[from-code] - codebase findings that are useful but inferred, pattern-based, or low/medium confidence and therefore need a confirmation-style user-facing round before being treated as settled.[from-research] - externally sourced facts such as API limits, compatibility, or public documentation; facts only, not decisions.[from-user] - goals, preferences, business logic, scope, non-goals, acceptance criteria, tradeoffs, and any decision-bearing interpretation.[from-code][auto-confirmed] and other non-user fact discoveries as context/transcript updates, not interview rounds: do not call omagy question, do not create a pending deep-interview question obligation, and do not increment the user-facing round number for facts the agent can safely establish.[from-user] even when code or research facts are available.omagy question as the required Omagy-owned structured questioning path for every interview round.omagy question through attached-tmux Bash/tool paths, preserve the leader-pane return target by prefixing the command with OMAGY_QUESTION_RETURN_PANE=$TMUX_PANE or a concrete %pane value.omagy question in a background terminal, immediately wait for that process to finish and read its JSON answer before scoring ambiguity, asking another round, or handing off.answers[] as the primary omagy question success contract. For a single interview round, read answers[0].answer; use legacy top-level answer only as a compatibility fallback.omagy question, use Antigravity's native structured question surface when available; otherwise ask exactly one concise plain-text question and wait for the answer.Non-goals or Decision Boundaries remain unresolved, even if the weighted ambiguity threshold is met.omagy state write/read --input '<json>' --json.
</Execution_Policy>{{ARGUMENTS}}, choose depth profile, and derive a short task slug..omagy/context/{slug}-*.md.not_needed, needed, or recordedomagy artifact write --input '{"path":".omagy/context/<slug>-<timestamp>.md","content":"<markdown context snapshot>"}' --json
Use UTC timestamps in YYYYMMDDTHHMMSSZ form.
omagy memory read --json
omagy artifact list --json
omagy state write --input '{"mode":"deep-interview","state":{"active":true,"current_phase":"deep-interview","interview_id":"<uuid>","profile":"standard","type":"greenfield|brownfield","initial_idea":"<user input>","rounds":[],"current_ambiguity":1.0,"threshold":0.2,"max_rounds":12,"challenge_modes_used":[],"current_stage":"intent-first","current_focus":"intent","context_snapshot_path":".omagy/context/<slug>-<timestamp>.md","prompt_safe_initial_context_summary_status":"not_needed"}}' --json
Repeat until ambiguity <= threshold, readiness gates pass, pressure pass is complete, user exits with warning, or max rounds are reached.
If oversized initial context has no prompt-safe summary yet, the next question must be only a summary request. Do not score ambiguity, do not run readiness gates, and do not hand off until that summary answer is captured.
Use:
Target the lowest-scoring dimension while respecting stage priority:
Follow-up pressure ladder after each answer:
Maintain a Breadth Ledger across independent ambiguity tracks: scope, constraints, outputs, verification, brownfield integration, and any user-mentioned deliverable tracks. The ledger is a guard, not a rotation rule: stay deep on the current thread until it has been pressure-tested, then zoom out only when another material track remains unresolved and would change execution.
Detailed dimensions:
Non-goals and Decision Boundaries are mandatory readiness gates. Ask about them early and keep revisiting them until explicit.
Use the surface-appropriate structured questioning path for every interview round. In attached-tmux sessions, use Omagy-owned structured questioning through omagy question. Outside tmux, use native structured input when available; otherwise ask exactly one concise plain-text question and wait for the answer.
Present:
Round {n} | Target: {weakest_dimension} | Ambiguity: {score}%
{question}
omagy question payload guidance:
questions[] to combine multiple interview rounds.type values. type: "single-answerable" is the default for one-path decisions; type: "multi-answerable" is the canonical bounded multi-select shape.single-answerable when exactly one answer should drive the next branch, options are mutually exclusive, or selecting more than one answer would blur the decision boundary.multi-answerable when multiple options may all be true at once and you need a bounded set of coexisting constraints, non-goals, risks, or acceptance checks.allow_other:false when the valid answers are known; leave allow_other:true only when the interview genuinely needs one user-supplied option.answers[]. For a normal single-round response, use answers[0].answer as the source of truth.Canonical bounded single-choice payload:
{
"question": "Which execution lane should own this once the interview is complete?",
"type": "single-answerable",
"options": [
{
"label": "Plan first",
"value": "plan",
"description": "Need architecture and test-shape review before execution"
},
{
"label": "Execute directly",
"value": "ultrawork",
"description": "Requirements are explicit enough for direct execution"
},
{
"label": "Refine further",
"value": "refine",
"description": "Clarification is still needed before handoff"
}
],
"allow_other": false,
"other_label": "Other",
"source": "deep-interview"
}
Canonical bounded multi-select payload:
{
"question": "Which non-goals must stay out of scope for the first pass?",
"type": "multi-answerable",
"options": [
{
"label": "No UI redesign",
"value": "no-ui-redesign",
"description": "Keep layout and styling unchanged"
},
{
"label": "No new dependencies",
"value": "no-new-dependencies",
"description": "Work within the existing toolchain"
},
{
"label": "No API contract changes",
"value": "no-api-contract-changes",
"description": "Preserve external request and response shapes"
}
],
"allow_other": false,
"other_label": "Other",
"source": "deep-interview"
}
Canonical answer-shape reminders:
{
"answer": {
"kind": "option",
"value": "plan",
"selected_labels": ["Plan first"],
"selected_values": ["plan"]
}
}
{
"answer": {
"kind": "multi",
"value": ["no-new-dependencies", "no-api-contract-changes"],
"selected_labels": ["No new dependencies", "No API contract changes"],
"selected_values": ["no-new-dependencies", "no-api-contract-changes"]
}
}
Score each weighted dimension in [0.0, 1.0] with justification and gap.
Greenfield:
ambiguity = 1 - (intent * 0.30 + outcome * 0.25 + scope * 0.20 + constraints * 0.15 + success * 0.10)
Brownfield:
ambiguity = 1 - (intent * 0.25 + outcome * 0.20 + scope * 0.20 + constraints * 0.15 + success * 0.10 + context * 0.10)
Readiness gates:
Non-goals must be explicit.Decision Boundaries must be explicit.After each answer, show:
Non-goals, Decision Boundaries, Pressure Pass, Closure Audit)Append the round result and updated scores:
omagy state write --input '{"mode":"deep-interview","state":{"active":true,"current_phase":"deep-interview","rounds":["<append round summary>"],"current_ambiguity":0.42,"current_focus":"scope","challenge_modes_used":[]}}' --json
[from-code][auto-confirmed], [from-code], or [from-research]), the next material user-facing round must solicit direct human judgment ([from-user]) unless the closure audit says the interview is ready to crystallize.max_rounds and preserve residual risk.Use each mode once when applicable:
Track used modes in state to prevent repetition.
When threshold is met, the user exits with warning, or the hard cap is reached:
.omagy/interviews/{slug}-{timestamp}.md..omagy/specs/deep-interview-{slug}.md.Use artifact CLI only:
omagy artifact write --input '{"path":".omagy/interviews/<slug>-<timestamp>.md","content":"<markdown transcript summary>"}' --json
omagy artifact write --input '{"path":".omagy/specs/deep-interview-<slug>.md","content":"<execution-ready markdown spec>"}' --json
Spec must include:
When the clarified task is specifically a research mission, evaluator-backed
analysis, professor/critic deliverable, or the skill is invoked with
--autoresearch, keep the interview domain-specific without reviving deprecated
OMX $autoresearch runtime behavior.
topic, professor-critic rubric, optional
critic-command, slug, prior research draft, source constraints, and
expected deliverable shape..omagy/specs/deep-interview-autoresearch-{slug}.mdResearch TopicProfessor-Critic RubricEvidence StandardsLaunch ReadinessSeed InputsConfirmation Bridge<...>, TODO,
TBD, REPLACE_ME, CHANGEME, or your-command-here.task,
validation_mode, completion_artifact_path, mission_validator_command or
validator_prompt, optional output_artifact_path, topic, rubric,
criticCommand, slug, launchReady, and blockedReasons so
/omagy:autoresearch can start the validator-gated loop and
/omagy:autoresearch-goal can create a durable professor-critic goal when
requested:omagy autoresearch start --input '{"task":"<mission>","validation_mode":"mission-validator-script","completion_artifact_path":".omagy/specs/autoresearch-<slug>/result.json","mission_validator_command":"<validator command>"}' --json
omagy autoresearch-goal create --topic "<topic>" --rubric "<professor-critic rubric>" --slug <slug>
omagy autoresearch-goal start --slug <slug>
refine further, start autoresearch, and create/start autoresearch-goal; do not
run a detached sandbox launch or old direct omx autoresearch flow.Present execution options after artifact generation. Treat the deep-interview spec as the requirements source of truth and preserve intent, non-goals, decision boundaries, acceptance criteria, and residual-risk warnings.
/omagy:plan or /omagy:ralplan (Recommended).omagy/specs/deep-interview-{slug}.md/omagy:ultrawork.omagy/specs/deep-interview-{slug}.md/omagy:ralph.omagy/specs/deep-interview-{slug}.md/omagy:team.omagy/specs/deep-interview-{slug}.md/omagy:ultragoal.omagy/specs/deep-interview-{slug}.md.omagy/ultragoal/; preserve acceptance criteria, non-goals, and residual-risk warnings./omagy:autoresearch.omagy/specs/deep-interview-autoresearch-{slug}.mdomagy autoresearch start, keep running until the configured completion artifact passes, then finish with omagy autoresearch complete./omagy:autoresearch-goal.omagy/specs/deep-interview-{slug}.md or .omagy/specs/deep-interview-autoresearch-{slug}.mdomagy autoresearch-goal create/start, then record pass/fail/blocker evidence with verdict./omagy:performance-goal.omagy/specs/deep-interview-{slug}.mdResidual-Risk Rule: If the interview ended via early exit, hard cap, or above-threshold proceed-with-warning, explicitly preserve that residual-risk state in the handoff.
Important: Deep Interview is a requirements mode. On handoff, invoke the selected skill using the contract above. Do not implement directly inside Deep Interview.
<Tool_Usage>
omagy explore --prompt "<narrow lookup>" --json for bounded read-only codebase fact gathering before user questions.explorer subagent only when omagy explore returns unsupported_prompt or the investigation requires richer synthesis.omagy memory read --json when persistent project facts may answer a repo-context question.omagy question for every user-facing interview round when an attached tmux renderer is available.OMAGY_QUESTION_RETURN_PANE=$TMUX_PANE omagy question ... unless an explicit %pane return target is known.omagy question, use Antigravity native structured input when available; otherwise ask exactly one concise plain-text question and wait.omagy question returns JSON, prefer answers[0].answer and answers[]; use legacy answer only as a fallback.omagy state write/read --input '<json>' --json for resumable mode state.omagy question round, persist terminal blocked state with active:false and current_phase:"blocked"..omagy/context/..omagy/interviews/ and .omagy/specs/.
</Tool_Usage><Escalation_And_Stop_Conditions>
<Final_Checklist>
.omagy/context/{slug}-{timestamp}.md..omagy/interviews/{slug}-{timestamp}.md..omagy/specs/deep-interview-{slug}.md./omagy:plan or /omagy:ralplan, /omagy:ultrawork, /omagy:ralph, /omagy:team, plus context-sensitive /omagy:ultragoal, /omagy:autoresearch, /omagy:autoresearch-goal, /omagy:performance-goal, and refine further.[omagy.deepInterview]
defaultProfile = "standard"
quickThreshold = 0.30
standardThreshold = 0.20
deepThreshold = 0.15
quickMaxRounds = 5
standardMaxRounds = 12
deepMaxRounds = 20
enableChallengeModes = true
If interrupted, rerun /omagy:deep-interview. Resume from persisted mode state:
omagy state read --input '{"mode":"deep-interview"}' --json
deep-interview -> plan/ralplan -> ultrawork/ralph/team -> code-review
deep-interview clarity gateplan / ralplan feasibility and architecture gateultrawork / ralph / team execution and verificationcode-review read-only quality and architecture review