Agent skill

Deep Execution

by hex in hex/claude-council

Executes agent-enhanced council queries as one Workflow of parallel Claude analyst agents that each query a provider, evaluate response quality, ask follow-up questions, and return a schema-enforced…

MITAuto-check passedAI & LLM Engineering

Install Deep Execution

skills CLI
$ npx skills add hex/claude-council --skill deep-execution -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install hex/claude-council deep-execution --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/hex/claude-council.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/deep-execution .claude/skills/deep-execution && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
deep-execution
GitHub stars
848
Token cost
~2.5k tokens
SKILL.md length
756 words
Files
2
Skills in repo
10
Repo updated
First seen
Licence
MIT

At a glance

Executes agent-enhanced council queries as one Workflow of parallel Claude analyst agents that each query a provider, evaluate response quality, ask follow-up questions, and return a schema-enforced…

  • Works in 6 steps: Resolve Providers and Write the Questions → Run the Analyst Workflow → Read the Result → …
  • AI & LLM Engineering work in your project
  • SKILL.md covers Step 1: Resolve Providers and…, Step 2: Run the Analyst Workflow, Step 3: Read the Result and Step 4: Display Results, plus 3 more sections
  • Instructions only: no scripts, shell commands, URLs or credentials in SKILL.md

What it does

Deep Execution is an agent skill from hex/claude-council. Executes agent-enhanced council queries as one Workflow of parallel Claude analyst agents that each query a provider, evaluate response quality, ask follow-up questions, and return a schema-enforced analysis with confidence ratings and blind spot analysis. Invoked when the --agents flag is used or when complex architectural decisions are detected.

Its SKILL.md is about 2.5k tokens, which your agent loads only when the skill is triggered. The skill folder holds 1 other file (for example `agent-prompt-template.md`).

It sits in AI & LLM Engineering. The repository describes itself as: Claude Code plugin that asks several AI coding agents the same question and shows their answers side by side. Gemini, OpenAI, Grok, Perplexity, Kimi and any model OpenRouter… The licence is MIT.

When your agent uses it

  • AI & LLM Engineering work in your project

Example prompts

  • “Use the deep-execution skill to execute agent-enhanced council queries as one Workflow of parallel Claude analyst agents that each query a provider…”
  • “/deep-execution”

Workflow steps

6 steps, taken from the step headings in SKILL.md.

  1. Resolve Providers and Write the Questions
  2. Run the Analyst Workflow
  3. Read the Result
  4. Display Results
  5. Enhanced Synthesis
  6. Save Output

What it can do on your machine

Read from SKILL.md and the folder at commit 23867e1. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    No scripts in the folder and no shell commands in SKILL.md (its code samples are bash, javascript and json).

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Deep Execution loads about 2.5k tokens when it runs. Until then it costs about 91 tokens; SKILL.md has 756 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~91
When it runs · the whole SKILL.md, loaded when a task matches
~2.5k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from hex/claude-council at commit 23867e1, republished under its MIT licence (© hex). 756 words, ~2,535 tokens.

Download SKILL.mdSave it as .claude/skills/deep-execution/SKILL.md (or your agent's skills folder). This skill also uses 1 other file; get the full folder from GitHub.
name
deep-execution
description
Executes agent-enhanced council queries as one Workflow of parallel Claude analyst agents that each query a provider, evaluate response quality, ask follow-up questions, and return a schema-enforced analysis with confidence ratings and blind spot analysis. Invoked when the --agents flag is used or when complex architectural decisions are detected.

Agent-Enhanced Council Execution

Run one Workflow of parallel Claude analyst agents for deeper analysis. Each analyst queries its provider, evaluates response quality, can ask follow-up questions, and returns a structured analysis that the workflow enforces against the schema.

Step 1: Resolve Providers and Write the Questions

One shell call resolves what the workflow needs — each provider's model, its role, and the question file it will send — with the same helpers the standard flow uses. Paste the final question into the heredoc verbatim: the quoted marker means the shell does NOT interpret quotes, backticks or $() in it. The question is emitted once; each provider's role-injected variant is built in shell, not pasted again.

bash
source "${CLAUDE_PLUGIN_ROOT}/scripts/lib/providers.sh"
source "${CLAUDE_PLUGIN_ROOT}/scripts/lib/roles.sh"
PROVIDERS=(<the selected providers, space separated>)
ROLES="<the --roles value, or empty>"
RUN=$(date +%s)                                  # names this run's files; Step 6 reuses it
Q="$PWD/.claude/council-cache/.agents-$RUN"
mkdir -p "$PWD/.claude/council-cache"
# Self-ignoring, as cache.sh and run-council.sh keep it: these files carry the
# question and any --file contents, and must never land in a commit.
[[ -f "$PWD/.claude/council-cache/.gitignore" ]] || printf '*\n' > "$PWD/.claude/council-cache/.gitignore"
cat > "$Q.txt" <<'COUNCIL_Q_EOF'
<the question, verbatim>
COUNCIL_Q_EOF
# --file / auto-context: append the context to the question file here, e.g.
#   { printf '\n\nHere is the content of %s:\n\n```\n' "<path>"; cat "<path>"; printf '```\n'; } >> "$Q.txt"
# An unknown role is refused, as the standard flow refuses it; assigning it
# would hand that provider the bare question under a role heading.
[[ -z "$ROLES" ]] || validate_roles "$ROLES" || exit 1
# The model the ANALYST agents run on — distinct from the provider models below,
# which are what actually answer the question. Pinned rather than inherited: an
# omitted model makes every analyst run on whatever model the user's session
# happens to use, so the cost of a mode that already fans out one agent per
# provider varies by a factor of several for no stated reason. Sonnet handles
# the analyst's work — run a query, judge the answer, emit a structured object.
ANALYST_MODEL="${COUNCIL_AGENT_MODEL:-sonnet}"
case "$ANALYST_MODEL" in
    sonnet|opus|haiku|fable) ;;
    *) echo "COUNCIL_AGENT_MODEL must be one of: sonnet, opus, haiku, fable (got '$ANALYST_MODEL')" >&2; exit 1 ;;
esac
echo "analyst model $ANALYST_MODEL"
ASSIGNMENTS=""
[[ -n "$ROLES" ]] && ASSIGNMENTS=$(assign_roles_to_providers "$ROLES" "${PROVIDERS[@]}")
echo "run $RUN"
for p in "${PROVIDERS[@]}"; do
    role=""
    [[ -n "$ASSIGNMENTS" ]] && role=$(get_provider_role "$p" "$ASSIGNMENTS")
    qf="$Q.txt"
    if [[ -n "$role" ]]; then
        qf="$Q-$p.txt"
        build_prompt_with_role "$(cat "$Q.txt")" "$role" > "$qf"
    fi
    printf '%s\t%s\t%s\n' "$p" "$(get_model "$p")" "$qf"
done

It prints the run id, then the analyst model, then one line per provider: name, model (shown in the Step 4 header), and the absolute path of that provider's question file. Pass the analyst model to the workflow as analystModel; the workflow script cannot read the environment itself.

Step 2: Run the Analyst Workflow

Agent mode is one Workflow: one analyst agent per provider, in parallel, each returning its analysis through schema-enforced structured output. The user asked for agent mode (--agents, or yes to the prompt in ask.md Step 1.5), which is the opt-in the Workflow tool requires.

If the Workflow tool is not available in this session, stop here: tell the user that --agents needs a Claude Code with the Workflow tool, and offer to run the same question in standard mode instead. Do not fall back to another way of spawning agents.

Read ${CLAUDE_PLUGIN_ROOT}/schemas/agent-analysis.schema.json with the Read tool, then call the Workflow tool with this script, verbatim, via script:

js
export const meta = {
  name: 'council-agents',
  description: 'One analyst per council provider: query it, judge the answer, follow up, return a structured analysis',
  phases: [{ title: 'Analyze', detail: 'one analyst agent per provider, in parallel' }],
}
// The tool's schema validator does not know the draft-2020-12 dialect the
// file declares; without the declaration it validates the same keywords fine.
const schema = { ...args.schema }
delete schema.$schema
const template = `${args.pluginRoot}/skills/deep-execution/agent-prompt-template.md`
// Single stage: there is no later step for a finished analyst to move on to,
// so the barrier costs nothing.
const results = await parallel(args.providers.map(p => () =>
  agent(
    `You are the council analyst for the provider "${p.name}".\n` +
    `Read ${template} and carry out every step in it, with these values:\n` +
    `- {PROVIDER} = ${p.name}\n` +
    `- {PLUGIN_ROOT} = ${args.pluginRoot}\n` +
    `- {QUESTION_FILE} = ${p.questionFile}\n` +
    `Your final answer is the Round 3 analysis object, returned through the structured output tool.`,
    { label: p.name, phase: 'Analyze', schema, agentType: 'general-purpose',
      model: args.analystModel })))
// parallel() keeps a dead or skipped analyst's slot as null, index-aligned with args.providers.
const failed = args.providers.filter((_, i) => !results[i]).map(p => p.name)
if (failed.length) log(`no analysis from: ${failed.join(', ')}`)
return {
  // The label goes last so an analyst that emits its own "provider" key cannot rename itself.
  analyses: results.map((a, i) => a && { ...a, provider: args.providers[i].name }).filter(Boolean),
  failed,
}

and these args (real JSON values, not a string; pluginRoot is the real path of ${CLAUDE_PLUGIN_ROOT}, questionFile the path Step 1 printed):

json
{
  "pluginRoot": "<CLAUDE_PLUGIN_ROOT>",
  "analystModel": "<the model Step 1 printed>",
  "schema": { "...the parsed schema file..." },
  "providers": [
    { "name": "gemini", "questionFile": "<absolute path from Step 1>" }
  ]
}

The workflow returns { analyses, failed }. Every object in analyses satisfies the schema; failed names the providers whose analyst died or was skipped. A provider that returned an error is not in failed: its analyst reports it as a quality: poor, confidence: low analysis whose full_response is the error text (the template says so). Step 5 treats both as the same thing — a provider that did not answer.

Step 3: Read the Result

Nothing to validate: use each analysis's fields directly in Steps 4-5, and carry failed into Step 5's provider failures.

Step 4: Display Results

For each analysis, display it using this format. {MODEL} is the Step 1 model: a model-fallback re-run inside an analyst cannot change this header, and the displacement is visible only in the analysis text.

## {EMOJI} {PROVIDER} ({MODEL}) — Agent Analysis

**Quality**: {quality} | **Confidence**: {confidence} | **Retried**: {retried}

### Key Recommendations
{recommendations}

### Unique Perspective
{unique_perspective}

### Blind Spots
{blind_spots}

---

<details>
<summary>Full {PROVIDER} Response</summary>

{full_response}

</details>

Provider emojis (ALWAYS use emoji + space):

  • 🟦 Gemini
  • 🔳 OpenAI
  • 🟥 Grok
  • 🟩 Perplexity
Show full SKILL.md (322 more words)Show less

Step 5: Enhanced Synthesis

With pre-analyzed responses, generate a richer synthesis than the standard mode. The calibration rules in ${CLAUDE_PLUGIN_ROOT}/prompts/synthesis.md apply here too. Its "returned an error" case covers the providers in failed AND every quality: poor analysis whose full_response is a provider error: name them under failures and keep them out of consensus, whatever weight their confidence field would give them.

Confidence-Weighted Consensus

Weight agreement by each provider's confidence level. High-confidence agreement is stronger signal than low-confidence agreement — but only about the reasoning, never about the premises. Every provider read the same description of a system none of them can inspect, so confident unanimity can equally mean the question asserted something false and each provider reasoned from it correctly. When agreement is both broad and confident, say so and then name the premise the whole answer rests on, and whether anyone was in a position to check it.

Blind Spot Analysis

Cross-reference each provider's blind spots against other providers' recommendations. Flag risks that NO provider considered.

Divergence with Context

Where providers disagree, explain WHY they likely diverge (different assumptions, different optimization targets, different risk tolerance).

Recommendation

Synthesize the strongest approach, noting which providers support it and at what confidence level.

Step 6: Save Output

Save the complete output (all provider analyses + synthesis) to .claude/council-cache/council-agents-{RUN}.md, where RUN is the run id Step 1 printed (the directory exists since Step 1). Then remove the run's question files, which nothing prunes:

bash
rm -f .claude/council-cache/.agents-{RUN}*

Tell the user:


Full agent analysis saved to .claude/council-cache/council-agents-{RUN}.md

Error Handling

  • If a provider's analyst fails (it is listed in failed), say so and continue with the others
  • If ALL analysts fail, report clearly and suggest falling back to standard mode
  • If only one provider was selected and its analyst fails, suggest retrying without --agents
  • A killed or interrupted workflow can be resumed: relaunch with the same args and the scriptPath and resumeFromRunId from the tool result; the finished analysts return from cache

© hex, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

SKILL.md and 1 other file in skills/deep-execution of hex/claude-council.

  • SKILL.md
  • agent-prompt-template.md

Open the folder on GitHubat commit 23867e1

Compare with similar skills

Deep Execution next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Deep Execution compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Deep Execution this skillhex/claude-council848—~2.5kAutomated safety check: PassMIT
Agent BuildershareAI-lab/learn-claude-code78k6 repos~1.2kAutomated safety check: PassMIT
Add Uint Supportpytorch/pytorch104k2 repos~2.3kAutomated safety check: PassCustom licence
Peft Fine TuningOrchestra-Research/AI-Research-SKILLs13k9 repos~3.1kAutomated safety check: PassMIT
Segment Anything Model GuideOrchestra-Research/AI-Research-SKILLs13k9 repos~3.3kAutomated safety check: PassMIT
1passwordtrpc-group/trpc-agent-go1.8k15 repos~656Automated safety check: PassApache-2.0

Similar skills

  • Agent Builder

    shareAI-lab/learn-claude-code

    Design and build AI agents for any domain. An agent skill from shareAI-lab/learn-claude-code.

    78k GitHub starsUsed in 6 repos~1.2k tokens
    AI & LLM EngineeringAuto-check passed
  • Add Uint Support

    pytorch/pytorch

    Add unsigned integer (uint) type support to PyTorch operators by updating ATDISPATCH macros.

    104k GitHub starsUsed in 2 repos~2.3k tokens
    AI & LLM EngineeringAuto-check passed
  • Peft Fine Tuning

    Orchestra-Research/AI-Research-SKILLs

    Parameter-efficient fine-tuning for LLMs using LoRA, QLoRA, and 25+ methods.

    13k GitHub starsUsed in 9 repos~3.1k tokens
    AI & LLM EngineeringAuto-check passed
  • Segment Anything Model Guide

    Orchestra-Research/AI-Research-SKILLs

    Guide to using Meta's Segment Anything Model for zero-shot image segmentation with point, box or mask prompts, or automatic mask generation.

    13k GitHub starsUsed in 9 repos~3.3k tokens
    AI & LLM EngineeringAuto-check passed
  • 1password

    trpc-group/trpc-agent-go

    Set up and use 1Password CLI (op). An agent skill from trpc-group/trpc-agent-go.

    1.8k GitHub starsUsed in 15 repos~656 tokens
    AI & LLM EngineeringAuto-check passed
  • Chroma Vector Database

    Orchestra-Research/AI-Research-SKILLs

    Shows how to store documents and embeddings in Chroma, query them by similarity with metadata filters, and persist them to disk for RAG and semantic search projects.

    13k GitHub starsUsed in 8 repos~2.3k tokens
    AI & LLM EngineeringAuto-check passed

More from hex/claude-council

All 10 skills in this repo
  • Local Council Execution

    hex/claude-council

    Runs a local council when no external AI providers are configured.

    848 GitHub stars~1.6k tokensUpdated yesterday
    Auto-check passed
  • Council Execution

    hex/claude-council

    Executes council queries by running the query pipeline across selected AI providers (Gemini, OpenAI, Grok, Perplexity), displaying formatted responses verbatim, and generating a synthesis of…

    848 GitHub stars~824 tokensUpdated yesterday
    Auto-check passed
  • Provider Integration

    hex/claude-council

    Adds new AI providers to claude-council, configures provider API settings, troubleshoots provider connections, and documents the provider script interface.

    848 GitHub stars~635 tokensUpdated yesterday
    Auto-check passed
  • Bug Fixer

    hex/claude-council

    A bug reproduces, the expected behaviour is clear, and the fix stands apart from the current work.

    848 GitHub stars~991 tokensUpdated yesterday
    Auto-check passed
  • CI Fixer

    hex/claude-council

    A CI job fails on a named revision and the fix belongs in code, config or tests, not in the CI provider.

    848 GitHub stars~941 tokensUpdated yesterday
    Auto-check passed
  • Docs Updater

    hex/claude-council

    Docs must be updated or restructured to match code that already changed: README, reference pages, CLI help or config docs.

    848 GitHub stars~930 tokensUpdated yesterday
    Auto-check passed

Questions about Deep Execution

What does Deep Execution do?

Executes agent-enhanced council queries as one Workflow of parallel Claude analyst agents that each query a provider, evaluate response quality, ask follow-up questions, and return a schema-enforced…. Deep Execution is an agent skill from hex/claude-council. Executes agent-enhanced council queries as one Workflow of parallel Claude analyst agents that each query a provider, evaluate response quality, ask follow-up questions, and return a schema-enforced analysis with confidence ratings and blind spot analysis.

When should I use Deep Execution?

Deep Execution fits situations like: AI & LLM Engineering work in your project.

How do I install Deep Execution in Claude Code?

Run `npx skills add hex/claude-council --skill deep-execution -a claude-code`. Or copy the skill folder (skills/deep-execution in hex/claude-council) into .claude/skills/deep-execution in your project. Claude Code loads it when a task matches its description.

How do I install Deep Execution in Codex?

Run `npx skills add hex/claude-council --skill deep-execution -a codex`. Or copy the skill folder (skills/deep-execution in hex/claude-council) into .agents/skills/deep-execution in your project. Codex loads it when a task matches its description.

Can I use Deep Execution in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add hex/claude-council --skill deep-execution -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/deep-execution, .gemini/skills/deep-execution, .github/skills/deep-execution and .opencode/skills/deep-execution in your project.

What does Deep Execution need to run?

SKILL.md names no scripts, command-line tools or credentials: Deep Execution is instructions for the agent only.

Does Deep Execution access the network?

SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.

Is Deep Execution safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.

What licence does Deep Execution use?

Deep Execution is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Deep Execution use?

About 2.5k tokens (SKILL.md is roughly 10k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Deep Execution?

Skills that share tags, products or a category with Deep Execution: Agent Builder (shareAI-lab/learn-claude-code, 78k stars), Add Uint Support (pytorch/pytorch, 104k stars), Peft Fine Tuning (Orchestra-Research/AI-Research-SKILLs, 13k stars) and Segment Anything Model Guide (Orchestra-Research/AI-Research-SKILLs, 13k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Deep Execution?

hex (a GitHub user) maintains it in hex/claude-council, which has 848 GitHub stars. The repository holds 10 skills in this directory. The repository was last updated on October 6, 2026.

Source: hex/claude-council on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.