본문으로 건너뛰기
cccskills
무료GitHub에 공개

ase-meta-quorum

Query multiple foreign AIs in parallel and synthesize a consensus ("quorum") answer with a consensus rating. Use when the user wants a quorum, a consensus answer, or the opinions of multiple AIs on a question.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

연동 도구OpenAIGemini
설치 방법 보기

포함된 파일(2)

  • SKILL.md8.5 KB
  • help.md2.1 KB

SKILL.md(원문)

설치하기 전에 에이전트에게 전달되는 지시 내용을 확인할 수 있습니다.

@${CLAUDE_SKILL_DIR}/../../meta/ase-control.md @${CLAUDE_SKILL_DIR}/../../meta/ase-skill.md @${CLAUDE_SKILL_DIR}/../../meta/ase-getopt.md

<purpose name="ase-meta-quorum"> Query Multiple AIs for Quorum Answer </purpose>

<expand name="getopt" arg1="ase-meta-quorum" arg2="--models|-m=(all|chatgpt|gemini|deepseek|grok|glm|qwen|claude|codex|copilot)..."> $ARGUMENTS </expand>

<objective> Find a *quorum answer* on an arbitrary question, by querying *multiple* AIs for an *optimal consensus*. </objective> <flow>
  1. <step id="STEP 1: Preview Own Answer"> <if condition="<getopt-arguments/> is empty"> Only output the following <template/> and then immediately *STOP* processing the entire current skill: <template> ⧉ **ASE**: ✪ skill: **ase-meta-quorum**, ▶ ERROR: expected a `<question>` argument </template> </if>

    The user-selectable foreign models are restricted by the --models/-m option, parsed into <getopt-option-models/> as a comma-separated list of model tokens. The getopt parser validates only the first token, so you MUST validate each remaining token yourself against the allowed set all, chatgpt, gemini, deepseek, grok, glm, qwen, claude, codex, copilot. If any token is not in this set, bind <token/> to that offending token, then only output the following <template/> and then immediately STOP processing the entire current skill:

    <template> ⧉ **ASE**: ✪ skill: **ase-meta-quorum**, ▶ ERROR: invalid `--models` token: **<token/>** </template>

    Prepare the LLM query by setting <query/> to the following <template/>:

    <template> <getopt-arguments/>. Please respond very concisely and briefly, with facts only, usually with just 1 to 7 corresponding bullet points and with short sentences. Optionally, mention potential cruxes which should be noticed. Besides bullet points, do not provide any additional explanations. Emphasize keywords or cruxes in your response with Markdown formatting. Format code parts with Markdown formatting. </template>

    For yourself (Anthropic Claude), first answer this <query/> in advance yourself by showing your own answer to the query as a sneak preview. For this, output the following <template/>:

    <template> **Anthropic Claude** (sneak preview in advance): - [...] - [...] </template> </step>
  2. <step id="STEP 2: Query Foreign AIs">

    The default is the single token all. If <getopt-option-models/> contains the token all, you MUST treat it as the full list chatgpt,gemini,deepseek,grok,glm,qwen (all API-based models). The harness-based models claude, codex, and copilot are never part of all and are queried only when their token is given explicitly (in addition to all, if wished). Anthropic Claude (yourself) is always included, independent of this option.

    <define name="agent"> Call the `Agent` tool:
        Agent(
            description:       "Query Foreign LLM: <arg1/>",
            subagent_type:     "ase:ase-meta-chat",
            prompt:            "<arg2/> <query/>",
            run_in_background: false
        )
    
    </define>

    Query only those foreign models whose token is contained in <getopt-option-models/> (where all selects every model); silently skip all others. Emit all these Agent tool invocations in one single message so they run in parallel:

    <if condition="<getopt-option-models/> contains `all` OR <getopt-option-models/> contains `chatgpt`"> <expand name="agent" arg1="OpenAI ChatGPT" arg2="chatgpt"></expand> </if> <if condition="<getopt-option-models/> contains `all` OR <getopt-option-models/> contains `gemini`"> <expand name="agent" arg1="Google Gemini" arg2="gemini"></expand> </if> <if condition="<getopt-option-models/> contains `all` OR <getopt-option-models/> contains `deepseek`"> <expand name="agent" arg1="DeepSeek" arg2="deepseek"></expand> </if> <if condition="<getopt-option-models/> contains `all` OR <getopt-option-models/> contains `grok`"> <expand name="agent" arg1="xAI Grok" arg2="grok"></expand> </if> <if condition="<getopt-option-models/> contains `all` OR <getopt-option-models/> contains `glm`"> <expand name="agent" arg1="Z.AI GLM" arg2="glm"></expand> </if> <if condition="<getopt-option-models/> contains `all` OR <getopt-option-models/> contains `qwen`"> <expand name="agent" arg1="Alibaba Qwen" arg2="qwen"></expand> </if> <if condition="<getopt-option-models/> contains `claude`"> <expand name="agent" arg1="Anthropic Claude (harness)" arg2="claude"></expand> </if> <if condition="<getopt-option-models/> contains `codex`"> <expand name="agent" arg1="OpenAI Codex" arg2="codex"></expand> </if> <if condition="<getopt-option-models/> contains `copilot`"> <expand name="agent" arg1="GitHub Copilot" arg2="copilot"></expand> </if>

    You MUST NOT output anything in this step.

    </step>
  3. <step id="STEP 3: Summarize Responses">

    Agents which returned a response with an ERROR: prefix are silently skipped and are treated as not available.

    Summarize all responses, of both yourself and all available agents, with just 1 to 7 corresponding bullet points and with short sentences.

    You MUST NOT output anything in this step.

    </step>
  4. <step id="STEP 4: Determine Consensus Rating">

    First, count the number of available foreign AIs (those queried in STEP 2 which did not return an ERROR: response). If this count is zero -- i.e., every foreign AI errored out or none were reachable and only yourself (Anthropic Claude) remains -- a quorum is not possible. In this case, set <c></c> and <n></n> to empty and instead set <disagreement/> to (no quorum: no foreign AIs were available), then skip the rest of this step.

    Otherwise, let <n/> be the total number of responders (yourself plus all available foreign AIs above). Then determine, on a Likert scale of 0..<n/>, the amount of the overall consensus <c/> of all the responses. If all responses disagree, the consensus <c/> is zero. If all responses agree, <c/> is <n/>.

    If not all AIs agree, determine <disagreement/> information, formatted as (disagreement: <ai/>, <ai/>, [...]) where <ai/> is a name of an AI which disagreed with the consensus. Else, if all AIs agree, set <disagreement></disagreement>.

    You MUST NOT output anything in this step.

    </step>
  5. <step id="STEP 5: Show Results">

    Finally, show the summary, the consensus, and the complete and unmodified responses of yourself and each of the queried foreign AIs, based on the following output <template/>:

    <template> **QUESTION**: <getopt-arguments/>

    ● CONSENSUS ANSWER:

    • [...]
    • [...]

    CONSENSUS RATE: <c/>/<n/> <disagreement/>

    ○ Anthropic Claude:

    • [...]
    • [...]

    ○ OpenAI ChatGPT:

    • [...]
    • [...]

    ○ Google Gemini:

    • [...]
    • [...]

    ○ DeepSeek:

    • [...]
    • [...]

    ○ xAI Grok:

    • [...]
    • [...]

    ○ Z.AI GLM:

    • [...]
    • [...]

    ○ Alibaba Qwen:

    • [...]
    • [...]

    ○ Anthropic Claude (harness):

    • [...]
    • [...]

    ○ OpenAI Codex:

    • [...]
    • [...]

    ○ GitHub Copilot:

    • [...]
    • [...] </template>

    In this output, when a quorum was not possible (see STEP 4), render the consensus rate line instead as just **CONSENSUS RATE**: *n/a* <disagreement/> (omitting the <c/>/<n/> fraction), as a single AI cannot form a consensus.

    In this output, remove the sections of those AIs which were not queried (excluded via --models/-m) or were not available. You MUST NOT output any further explanations yourself.

    </step>
</flow>

리뷰

아직 리뷰가 없습니다. 사용해 본 소감을 남겨 주세요.

댓글

로그인 없이 쓸 수 있습니다. 사용 후기, 질문, 작동하지 않은 환경 등을 편하게 남겨 주세요.

아직 댓글이 없습니다. 첫 댓글을 남겨 보세요.

보내면 바로 공개됩니다. 이메일 주소나 전화번호 같은 개인 정보는 쓰지 마세요. URL은 2개까지입니다.

0 / 1,000자

이 양식은 reCAPTCHA로 보호되며 Google 개인정보처리방침 및 서비스 약관이 적용됩니다.

같은 저장소의 스킬

Review software architecture, including package cohesion and inter-package coupling

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

rse/ase602026년 10월 19일 업데이트

Discover additional, third-party components (libraries/frameworks) for the technology stack to provide needed functionality.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

rse/ase602026년 10월 19일 업데이트

Analyze the source code for problems in either the logic and semantics and its related control flow, performance and efficiency, or security.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

rse/ase602026년 10월 19일 업데이트

Edit Source Code: Use when the user wants to "edit" the code base in one shot from a query or a bare analyzer issue id like "P1", fusing crafting, refactoring, and resolving with optional grilling, verification, looping, and Git worktree isolation.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

rse/ase602026년 10월 19일 업데이트

Explains code with WHAT, WHY, ANALOGY, DIAGRAM, CRUXES, and GOTCHAS. Use when you want to know how code works or when the user asks "how does this work?"

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

rse/ase602026년 10월 19일 업데이트

Give insights into the source code.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

rse/ase602026년 10월 19일 업데이트

rse의 스킬 모두 보기

이 스킬의 문제 신고