Agent skill

Challenge

by agentculture in agentculture/culture

Run a risk-scaled blind-spot discovery pass over a converged, exported frame BETWEEN /think and /spec-to-plan (the seventh origin skill, third leg in flow order): pressure-test the spec through…

Apache-2.0Auto-check passed

Install Challenge

skills CLI
$ npx skills add agentculture/culture --skill challenge -a claude-code

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

GitHub CLI
$ gh skill install agentculture/culture challenge --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/agentculture/culture.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.claude/skills/challenge .claude/skills/challenge && 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
challenge
GitHub stars
114
Token cost
~4.1k tokens
SKILL.md length
1,859 words
Files
1
Skills in repo
18
Repo updated
First seen
Licence
Apache-2.0

At a glance

Run a risk-scaled blind-spot discovery pass over a converged, exported frame BETWEEN /think and /spec-to-plan (the seventh origin skill, third leg in flow order): pressure-test the spec through…

  • Works in 7 steps: Confirm the entry condition. A converged… → Set the depth. Check the idea against… → Sweep the lenses read-only. Read the… → …
  • The user says challenge this spec
  • SKILL.md covers When it runs, Proportionality — scale the…, The lenses and The method, plus 6 more sections
  • Instructions only: no scripts, shell commands, URLs or credentials in SKILL.md

What it does

Challenge is an agent skill from agentculture/culture. Run a risk-scaled blind-spot discovery pass over a converged, exported frame BETWEEN /think and /spec-to-plan (the seventh origin skill, third leg in flow order): pressure-test the spec through structured lenses, route every finding back through the existing deterministic moves as proposed-only content the human adjudicates, and on a clean pass record the examined lenses/surfaces and residual uncertainty — never a claim that there are no unknown unknowns. Use when the user says "challenge this spec", "blind-spot…

Its SKILL.md is about 4.1k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.

The repository describes itself as: Culture turns isolated stochastic agents into cooperative, inspectable, improvable artificial colleagues. The licence is Apache-2.0.

When your agent uses it

  • The user says challenge this spec
  • Blind-spot pass
  • Pressure-test the frame
  • What are we missing

Example prompts

  • “challenge this spec”
  • “blind-spot pass”
  • “pressure-test the frame”
  • “/challenge”

Workflow steps

7 steps, taken from the first numbered list in SKILL.md.

  1. Confirm the entry condition. A converged frame that /think has
  2. Set the depth. Check the idea against the c19 escalation signals
  3. Sweep the lenses read-only. Read the exported spec claim by claim,
  4. Route every finding through an existing move. Use the routing table
  5. Let the human adjudicate. devague review lists every proposal with
  6. Reconverge and re-export. devague converge, then devague export —
  7. On a clean pass, record the pass itself. A sweep that finds nothing

What it can do on your machine

Read from SKILL.md and the folder at commit d5b5715. 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).

    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

Challenge loads about 4.1k tokens when it runs. Until then it costs about 219 tokens; SKILL.md has 1,859 words of instructions outside code blocks.

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

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 agentculture/culture at commit d5b5715, republished under its Apache-2.0 licence (© agentculture). 1,859 words, ~4,082 tokens.

Download SKILL.mdSave it as .claude/skills/challenge/SKILL.md (or your agent's skills folder).
name
challenge
description
Run a risk-scaled blind-spot discovery pass over a converged, exported frame BETWEEN /think and /spec-to-plan (the seventh origin skill, third leg in flow order): pressure-test the spec through structured lenses, route every finding back through the existing deterministic moves as proposed-only content the human adjudicates, and on a clean pass record the examined lenses/surfaces and residual uncertainty — never a claim that there are no unknown unknowns. Use when the user says "challenge this spec", "blind-spot pass", "pressure-test the frame", "what are we missing", "unknown unknowns", or after /think exports and before `devague plan new`. Authored and maintained in agentculture/devague (origin = devague); guildmaster pulls this skill from here and broadcasts it to the AgentCulture mesh — it is NOT vendored from guildmaster like the inbound skills here.
type
command

challenge — hunt the blind spots before the plan inherits them

The skill is named challenge; it is the blind-spot discovery leg of the devague method — the seventh origin skill, sitting third in flow order, between the spec leg and the plan leg:

text
scope -> think -> challenge -> spec-to-plan -> assign-to-workforce -> deviate -> summarize-delivery

Before this leg existed, a frame could converge on precisely stated claims while the original framing was still incomplete: open questions only captured uncertainty someone had already noticed — nothing actively hunted omitted dimensions, hidden dependencies, or assumptions shared by everyone in the frame, and no record existed of which surfaces were ever examined (issue 73's problem statement). Strictly speaking, an unknown unknown cannot be listed directly — once articulated, it becomes a known unknown. The useful capability is therefore to raise the odds of discovering blind spots and lower the cost of the surprises that remain, not to promise their elimination.

That is the surprise-cost rationale: an articulated blind spot becomes a known unknown the method can manage; an unexamined one surfaces later as a mid-run /deviate or a production surprise. Discovery before planning is cheaper than either — a proposed claim the human rejects costs minutes; the same gap found mid-fan-out stops a wave, and found in production it costs whatever the blast radius costs.

This doc is written for two readers. The operator — the main agent — runs the pass: sweeps the lenses, drives the deterministic CLI move by move, and proposes findings. The gate-owning human adjudicates: every finding lands proposed, and confirming, rejecting, or resolving it is the human exercising the existing spec gate (gate 1) — challenge adds no fourth gate, mirroring how /deviate amends gate 2 rather than adding one.

When it runs

The timing is a recorded decision — quote it, don't re-derive it:

the challenge pass runs after /think exports: challenge the converged, exported frame before devague plan new; findings reopen the frame, reconverge, and re-export the same dated spec file — /think stays self-contained (resolves q1)

— decision c17 in docs/specs/2026-07-15-challenge-skill.md.

Concretely: /think finishes its own arc (converge, export) untouched. Then /challenge pressure-tests the exported spec before devague plan new seeds a plan from it. Findings land as proposed claims, honesty conditions, questions, or parks — which reopens the frame — the human adjudicates, the frame reconverges, and devague export re-exports the same dated file (docs/specs/<created-date>-<slug>.md; exports are prefixed with the frame's creation date, so a re-export overwrites in place rather than spawning a duplicate). That reconverge-and-re-export loop repeats until the pass's findings are all adjudicated and the spec artifact carries them.

Proportionality — scale the pass to the risk

The pass is mandatory but proportional: lightweight for ordinary work, rigorous for high-risk work (integration option 1 from issue 73, per the issue author — a distinct operator skill, no new CLI engine until the workflow proves it needs one). Which work is high-risk is likewise a recorded decision:

the named escalation signals that deepen the pass from lightweight to rigorous: migrations, security-sensitive work, distributed state, hardware, destructive operations, other hard-to-reverse changes, concurrency hazards, and any surface that can lose user data (resolves q3)

— decision c19 in docs/specs/2026-07-15-challenge-skill.md.

If any escalation signal applies, run the rigorous form: every lens, deliberate counter-evidence hunting, and cheap probes where they would settle a real question. If none applies, a lightweight sweep — one pass over the lenses against the exported spec, minutes not hours — satisfies the method. Lightweight never means skipped: even the lightest pass leaves durable records (see the hard rules).

The lenses

Sweep the exported spec, the live frame, and the surfaces the idea touches through these structured lenses (from issue 73):

  • adjacent systems and hidden dependencies — what else reads, writes, or assumes the thing being changed;
  • unstated assumptions and missing counter-evidence — what everyone in the frame believes without a claim saying so, and what was never checked because nobody argued the other side;
  • overlooked actors, lifecycle stages, data flows, and failure modes — who and what the frame forgot: other users, upgrade/downgrade paths, half-completed operations;
  • security, migration, concurrency, operations, and reversibility — the classic hard surfaces, each also an escalation signal when present;
  • missing observability, containment, rollback, and recovery paths — when the surprise happens anyway, how it is seen, bounded, and undone;
  • cheap probes or experiments — small, scratch-space checks that could expose a surprise now instead of mid-run (probes never mutate the repo or .devague/ state).

The method

  1. Confirm the entry condition. A converged frame that /think has already exported, and no plan seeded from it yet (devague status shows where the frame stands; the exported spec-md is the artifact under challenge).
  2. Set the depth. Check the idea against the c19 escalation signals above. Any hit → rigorous; none → lightweight. Say which you chose and why — the depth decision is part of the pass's record.
  3. Sweep the lenses read-only. Read the exported spec claim by claim, the frame's parked vagueness and resolved questions, and the actual surfaces the idea touches. Nothing mutates during the sweep; the only mutations are the deterministic moves that record findings.
  4. Route every finding through an existing move. Use the routing table below. Everything the agent proposes carries --origin llm and lands proposed — the pass cannot silently convert speculation into confirmed requirements.
  5. Let the human adjudicate. devague review lists every proposal with ids; devague confirm / devague reject / devague question --resolve are user-only decisions. This is the existing spec gate doing its job.
  6. Reconverge and re-export. devague converge, then devague export — the same dated spec file now carries the adjudicated findings and the pass's provenance (the exported spec renders scope entries in its Scope exploration section).
  7. On a clean pass, record the pass itself. A sweep that finds nothing still records which lenses and surfaces were examined (devague scope entries, one per lens/surface, e.g. challenge pass / concurrency lens: devague/store.py) and what residual uncertainty remains (park). A bare "no issues found" is not an outcome this skill produces.

Where findings land

Challenge keeps no parallel prose-only artifact — the frame is the record, and every output category from issue 73 has an existing deterministic move to land in:

Output category (issue 73)What it isLanding move
known factssomething the pass established, with provenancecapture --kind requirement / --kind decision / --kind boundary (--origin llm → lands proposed)
assumptionsbeliefs the frame leaned on unstatedcapture --kind assumption --origin llm, then pressure-test with interrogate --honesty / --hard-question / --contradicts
known unknowns / open questionsarticulated uncertaintyquestion "<text>" when it needs a user decision; park --kind unknown_nonblocking|unknown_blocking when not decidable now
unexamined surfaceswhat this pass did not (or could not) look atdevague scope "<surface>" --finding "<what was and wasn't examined, and why>"
residual surprise riskuncertainty that survives the passpark on the frame while speccing; devague plan risk --kind <kind> once the plan exists
resilience measurescontainment, rollback, recovery the surprise cost demandsspec-side capture --kind requirement / --kind boundary; plan-side devague plan risk (see below)

Every finding names the lens and surface it came from (the challenge pass / <lens>: <surface> convention in scope entries; provenance citations inside claim text). That provenance bar is how the method hunts blind spots without encouraging speculative issue generation — a finding you cannot trace to something you actually read is speculation, not a finding.

Show full SKILL.md (669 more words)Show less

Resilience placement — spec-side or plan-side

Where a resilience measure lands is a recorded decision:

resilience measures land in both spec and plan by nature: spec-side as requirement/boundary claims when they change what to build, plan-side as plan risks or tasks when they change how to build it — the skill coaches which is which (resolves q2)

— decision c18 in docs/specs/2026-07-15-challenge-skill.md.

The coaching: ask "does this change what ships, or how it gets built?" A rollback path the user needs, a fail-closed version check, a containment boundary — those change the product: capture them spec-side as requirement / boundary claims so the re-exported spec carries them. A staging sequence, a merge-order constraint, an uncertainty the workforce must build around — those change the build: land them plan-side via devague plan risk --kind <kind> (blocking or nonblocking, honestly chosen) once /spec-to-plan seeds the plan, where the plan's convergence gate keeps blocking risks visible until resolved.

Hard rules (do not violate)

  • Never conclude there are no unknown unknowns. Not after a rigorous pass, not after a clean one. The only honest clean-pass output is a record of which lenses and surfaces were examined — devague scope entries — plus the residual uncertainty that remains — park — so the pass leaves durable provenance instead of a comforting absolute (issue 73 success criteria; the anti-fabrication contract in docs/llm-guidance.md).
  • LLM-origin findings stay proposed until the user confirms. Every finding the agent proposes carries --origin llm and lands proposed; only the user's confirm makes it real. The pass must not be able to silently convert speculation into confirmed requirements.
  • Findings route through existing deterministic moves only. capture, interrogate, question, park, devague scope, devague plan risk — nothing else. No parallel prose artifact, no new CLI verb, engine, or state model (issue 20; issue 73's stated preference). If it didn't land in a move, it didn't land.
  • Provenance on every finding. Name the lens and the surface it came from. If you didn't read it, don't claim it — same bar as /scope.
  • Proportional, never skipped. Lightweight is the floor, not an exemption; any c19 escalation signal makes the rigorous form mandatory. Skipping the pass entirely is not a depth setting.
  • Not a fourth standing gate. The three human gates stay: exported spec, implementation split plan, final PR. Challenge output is adjudicated inside the existing spec gate — mirroring how /deviate amends gate 2 rather than adding one.
  • The sweep is read-only until it routes. Reading spec, frame, and surfaces never edits files or state; probes run in scratch space. The only mutations are the recording moves themselves.

Worked example

Challenging the exported spec for a store-schema migration (illustrative slug store-schema-v3) — "migrations" and "any surface that can lose user data" are both c19 escalation signals, so the pass runs rigorous:

bash
# Entry condition: /think exported docs/specs/2026-07-15-store-schema-v3.md
# and no plan exists yet. Depth: rigorous (migration + data-loss signals).

# adjacent-systems lens: an older installed devague reads the same store
devague capture --origin llm --kind assumption "older installed devague binaries refuse a v3 store via the fail-closed schema_version check in devague/store.py"
devague interrogate c9 --origin llm --honesty "a v2-reading binary pointed at a v3 store exits with the version hint, not a traceback"
devague scope "challenge pass / adjacent-systems lens: devague/store.py schema_version gate" --finding "older binaries fail closed on v3; seeded the compat assumption" --seeds c9

# failure-mode lens: the migration can die halfway
devague capture --origin llm --kind requirement "migration writes to a temp file and renames — a killed run never leaves a half-written store"

# overlooked-actors lens: needs a user decision, not a guess
devague question "do mesh agents share one store, or does each checkout own its own?"

# reversibility lens: genuinely unknown, not decidable now
devague park "whether a v3->v2 downgrade path is ever needed" --kind unknown_nonblocking

# concurrency lens found nothing — record the clean pass, not a conclusion
devague scope "challenge pass / concurrency lens: devague/store.py + delivery_store.py" --finding "single-writer CLI, no locking today; clean pass — residual risk only if two agents ever share a checkout"

# --- HUMAN adjudicates: the existing spec gate at work ---
devague review
devague confirm c9 h4 c10
devague question --resolve q1 --decision "each checkout owns its own store"

# Reconverge and re-export — the SAME dated file, now carrying the pass
devague converge
devague export

# Residual risk that changes HOW to build lands plan-side once
# /spec-to-plan seeds the plan:
devague plan new --frame store-schema-v3
devague plan risk "two agents sharing a checkout could interleave store writes mid-migration" --kind unknown_nonblocking

Every finding above is traceable to a lens and a surface; the clean lens is recorded as examined rather than silently dropped; and nothing the agent proposed became confirmed without the human's confirm.

After the pass — hand off to /spec-to-plan

Once the frame reconverges and the same dated spec file is re-exported, the pass is done — the examined surfaces, residual uncertainty, and adjudicated findings all live in frame state and render into the spec artifact. Continue with /spec-to-plan as usual: the plan seeds from the challenged frame, and any residual surprise risk you routed plan-side lands via devague plan risk as first-class plan state. If a surprise still gets through mid-fan-out, that is /deviate's job — and every approved dN deviation record is evidence for what the next challenge pass's lenses should look harder at.

Provenance

This is a first-party skill — its origin is agentculture/devague, the seventh in the outbound family after /scope, /think, /spec-to-plan, /assign-to-workforce, /deviate, and /summarize-delivery, sitting third in flow order as the blind-spot discovery leg between /think and /spec-to-plan. guildmaster pulls it from here and broadcasts it to the AgentCulture mesh; because devague is upstream, it is never re-vendored back from guildmaster's re-broadcast copy. The cite, don't import policy still holds: downstream repos copy it, they don't symlink or depend on it. See docs/skill-sources.md.

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

Files

Just SKILL.md in .claude/skills/challenge of agentculture/culture.

Open the folder on GitHubat commit d5b5715

Compare with similar skills

Challenge 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.

Challenge compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Challenge this skillagentculture/culture114—~4.1kAutomated safety check: PassApache-2.0
Review Hog Blind Spots GeneralPostHog/posthog40k—~475Automated safety check: PassCustom licence
Blind Spot Passsangrokjung/claude-forge852—~2.2kAutomated safety check: PassMIT
Blind Spot Scanlijigang/ljg-skills7.5k—~1.7kAutomated safety check: PassMIT
Agent Challengesruvnet/ruflo74k2 repos~995Automated safety check: PassMIT
Challengealirezarezvani/claude-skills28k1 repos~1.7kAutomated safety check: PassMIT

Similar skills

  • Official

    The general blind-spot check for PostHog Review, the final sweep that runs after every enabled review perspective has reviewed a chunk.

    40k GitHub stars~475 tokensUpdated today
    Auto-check passed
  • Blind Spot Pass

    sangrokjung/claude-forge

    Use before starting work in a domain you don't know well, to surface the "unknown unknowns" — the things you don't even know to ask about — and learn just enough to prompt and decide well.

    852 GitHub stars~2.2k tokensUpdated 1 mo ago
    Media & CreativeAuto-check passed
  • Blind Spot Scan

    lijigang/ljg-skills

    Reads yesterday's AI conversations, identifies one thinking blind spot, picks a WeRead book chapter to address it and writes an analysis note.

    7.5k GitHub stars~1.7k tokensUpdated today
    Knowledge ManagementAuto-check passed
  • Agent Challenges

    ruvnet/ruflo

    Agent skill for challenges - invoke with $agent-challenges. An agent skill from ruvnet/ruflo.

    74k GitHub starsUsed in 2 repos~995 tokens
    Auto-check passed
  • Challenge

    alirezarezvani/claude-skills

    Pre-mortem plan analysis. An agent skill from alirezarezvani/claude-skills.

    28k GitHub starsUsed in 1 repo~1.7k tokens
    Business, Finance & HRAuto-check passed
  • Risk

    alsk1992/CloddsBot

    Unified risk engine with VaR, stress testing, volatility regimes, and automated controls

    2.9k GitHub stars~2.4k tokensUpdated 6 days ago
    Testing & QAAuto-check passed

More from agentculture/culture

All 18 skills in this repo
  • Agent Config

    agentculture/culture

    Show a Culture agent's full configuration in one read-only view: its system-prompt file (CLAUDE.md / AGENTS.md / GEMINI.md), the parallel culture.yaml, and the agent's local .claude/skills index.

    114 GitHub stars~1k tokensUpdated 1 mo ago
    Auto-check passed
  • Cicd

    agentculture/culture

    CI/CD lane for culture: branch, commit, push, create PR, wait for automated reviewers, fetch comments, fix or pushback, reply, resolve threads.

    114 GitHub stars~3.7k tokensUpdated 1 mo ago
    Auto-check passed
  • Communicate

    agentculture/culture

    All agent communication from culture: in-mesh chat (channels, DMs, mentions, knowledge sharing) via culture channel CLI, AND cross-repo hand-off briefs to sibling-repo agents (agentirc, steward…

    114 GitHub stars~2.8k tokensUpdated 1 mo ago
    Auto-check passed
  • Communicate

    agentculture/culture

    Cross-repo + mesh communication: file tracked GitHub issues on sibling repos, comment on existing issues, fetch issues with body + comments to inline current state into briefs, and send live…

    114 GitHub stars~2.7k tokensUpdated 1 mo ago
    Auto-check passed
  • Assign To Workforce

    agentculture/culture

    Fan out a converged devague plan's dependency waves to parallel agents in isolated git worktrees, one agent per task per wave, with TDD-gated merges by the main agent.

    114 GitHub stars~2.7k tokensUpdated 1 mo ago
    Auto-check: warnings
  • Pypi Maintainer

    agentculture/culture

    Switch a PyPI package install between the production index, TestPyPI pre-release builds, and a local editable checkout.

    114 GitHub stars~711 tokensUpdated 1 mo ago
    Auto-check passed

Questions about Challenge

What does Challenge do?

Run a risk-scaled blind-spot discovery pass over a converged, exported frame BETWEEN /think and /spec-to-plan (the seventh origin skill, third leg in flow order): pressure-test the spec through…. Challenge is an agent skill from agentculture/culture. Run a risk-scaled blind-spot discovery pass over a converged, exported frame BETWEEN /think and /spec-to-plan (the seventh origin skill, third leg in flow order): pressure-test the spec through structured lenses, route every finding back through the existing deterministic moves as proposed-only content the human adjudicates, and on a clean pass record the examined lenses/surfaces and residual uncertainty — never a claim that there are no unknown unknowns.

When should I use Challenge?

Challenge fits situations like: the user says challenge this spec; blind-spot pass; pressure-test the frame; what are we missing.

How do I install Challenge in Claude Code?

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

How do I install Challenge in Codex?

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

Can I use Challenge 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 agentculture/culture --skill challenge -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/challenge, .gemini/skills/challenge, .github/skills/challenge and .opencode/skills/challenge in your project.

What does Challenge need to run?

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

Does Challenge 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 Challenge 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 Challenge use?

Challenge is published under the Apache-2.0 licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Challenge use?

About 4.1k tokens (SKILL.md is roughly 16k 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 Challenge?

Skills that share tags, products or a category with Challenge: Review Hog Blind Spots General (PostHog/posthog, 40k stars), Blind Spot Pass (sangrokjung/claude-forge, 852 stars), Blind Spot Scan (lijigang/ljg-skills, 7.5k stars) and Agent Challenges (ruvnet/ruflo, 74k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Challenge?

agentculture (a GitHub organization) maintains it in agentculture/culture, which has 114 GitHub stars. The repository holds 18 skills in this directory. The repository was last updated on August 23, 2026.

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