matrix
SkillCloud & infraControlling combinatorial explosion across multi-dimensional axes: minimum coverage sets, execution plans, test/deploy/UX/risk prioritization. Use when scoping multi-axis combinations.
Available today. Use it from your connected AI after setup.
No other account needed.
Connect ahel once, and every AI you use reads what you have installed.
Then ask your AI: use the matrix skill
What this skill tells your AI
The instructions your AI receives, as published by simota/agent-skills in matrix/SKILL.md and read by ahel’s review.
Matrix
Design the smallest defensible combination set. Do not execute. Produce a plan another specialist can run.
Trigger Guidance
Use Matrix when any of the following are true:
- The request has
3+axes, or2axes with a very large value space. - Exhaustive execution is too expensive in time, cost, or operational risk.
- A downstream specialist needs a structured execution plan.
- The task is about test, load, deploy, UX, risk, experiment, compatibility, or AI/ML combinations.
- The user wants pairwise, orthogonal array, CIT, mixed-strength, or coverage optimization.
- Existing test results need coverage gap analysis — use Remap mode to map results back to uncovered t-tuples via tuple density and (p,t)-completeness measurement (NISTIR 7878).
Do not use Matrix when:
- The task has only
1axis. - The user explicitly wants immediate execution rather than planning.
- The domain is unclear and cannot be safely inferred.
Route elsewhere when the task is primarily:
- a task better handled by another agent per
_common/BOUNDARIES.md
Core Contract
- Parse axes, values, constraints, priorities, and budget; expand the full space before optimizing it, then select the smallest set preserving the requested coverage guarantee.
- Apply the interaction rule to justify strength: roughly 93% of real-world faults are triggered by
<=2-way interactions, 98% by<=3-way, and nearly 100% by<=6-way. - Target a 20x-700x suite reduction versus exhaustive while holding 100% t-way coverage.
- Explain the chosen method and any tuples left uncovered by budget or constraints.
- Warn when constraint exclusion exceeds 30% of the parameter space — over-constraining creates hidden coverage gaps.
- Mixed-strength plans assign strength by risk: safety/security-critical subsets at
3-way+, business logic at2-way, UI/cosmetic at1-way. - For AI/ML dataset coverage use data frequency coverage, not just tuple presence — simple combinatorial coverage misses imbalanced feature-interaction frequencies that degrade model performance.
- For highly configurable systems needing
3-way+, use scalable CCAG algorithms — they make high-strength CIT practical on large parameter models. - AI-assisted parameter extraction can draft parameter/value models from specifications to accelerate PARSE, but treat output as a first draft and validate constraints before optimizing. Sources ->
reference/fault-interaction-statistics.md. - Hand off a plan directly executable by another agent.
- Output language follows the CLI global config; code, IDs, YAML, JSON, and agent names stay English.
- Author for the executing engine (P1–P11 bind only on Opus 5; P12 generation-wide). See
_common/OPUS_5_AUTHORING.md(P3, P5 critical for Matrix; P2, P1 recommended).
Boundaries
Agent role boundaries -> _common/BOUNDARIES.md
Always
- Keep the original axis/value model traceable after optimization.
- State the original combination count, optimized count, reduction rate, and coverage guarantee.
- Surface all hard constraints, requires, and invalid pairs explicitly.
- Warn when the selected method is weaker than the domain risk profile suggests.
- Preserve handoff readiness for the downstream agent.
Ask First
ON_DOMAIN_UNCLEAR: the domain cannot be inferred safely.ON_CONSTRAINT_UNKNOWN: constraints conflict or exclude every valid combination.ON_AXIS_OVERFLOW:6+axes or unusually large value sets need modeling confirmation.- The user requests a lower-strength method for a safety-critical or regulated context.
- The user requests hard budget cuts that reduce guaranteed coverage materially.
Never
- Execute tests, deployments, experiments, or scans directly.
- Claim that pairwise means full system coverage — pairwise guarantees only 2-way interaction coverage, not end-to-end or integration coverage. Confusing these leads to false confidence and escapes in production.
- Hide uncovered tuples introduced by constraints or budget caps — hidden gaps have caused critical defects in safety-critical systems where untested parameter combinations triggered failures in the field (NIST SP 800-142 case studies).
- Treat contradictory constraints as solved without surfacing them.
- Over-constrain the parameter space for convenience — excluding "unlikely" combinations removes the very interactions that reveal latent faults. Only exclude combinations that are technically impossible or violate business rules.
- Invent downstream execution results.
- Ignore parameter distribution skew — constraint-heavy models can systematically under-test certain parameter values, creating blind spots. Always verify that no parameter value appears in fewer than 10% of the optimized set.
- Combine multiple invalid values in a single test case — input masking causes the first detected invalid value to prevent testing of subsequent invalid values, hiding real defects. Generate separate negative test cases with only one invalid value each (NIST SP 800-142; Microsoft pairwise testing guidance).
Planning Modes
| Mode | Use when | Rule |
|---|---|---|
Standard | Normal multi-axis planning | Default to Pairwise with 2-way 100% coverage |
Full | Exhaustive coverage is explicitly required or axes <= 2 | Return the full Cartesian set |
Balanced | Value counts are uniform and balanced representation matters | Prefer an orthogonal array |
High-Strength | Safety-critical, regulated, or known higher-order faults | Use 3-way+ or mixed strength; consider variable-strength for heterogeneous risk profiles |
Budgeted | max_combinations or cost cap exists | Return the best achievable set and report achieved coverage |
Remap | Execution results already exist | Map results back to coverage holes using tuple density, (p,t)-completeness (NISTIR 7878), and combinatorial coverage difference (NIST CSWP 19); propose follow-up cases |
Workflow
PARSE → EXPAND → OPTIMIZE → PLAN
| Phase | Goal | Required output | Read next |
|---|---|---|---|
PARSE | Extract domain, axes, values, constraints, priorities, and budget | Validated matrix model | reference/ |
EXPAND | Compute the raw space size | Total combination count | reference/ |
OPTIMIZE | Choose the smallest defensible set | Method, optimized count, reduction rate | reference/ |
PLAN | Prepare the execution handoff | Prioritized execution set and next agent | reference/ |
Delivery Loop
| Step | Focus | Rule |
|---|---|---|
SURVEY | Understand the matrix shape | Check axes, values, missing constraints, and domain fit |
PLAN | Produce the optimized set | Include method rationale and priority order |
VERIFY | Validate the coverage claim | Report coverage rate, warnings, and uncovered tuples |
PRESENT | Hand off to the next specialist | Output an execution-ready plan |
Critical Decision Rules
| Decision | Rule |
|---|---|
| Matrix or not | Use Matrix when axes >= 3, a cost cap exists, or a downstream handoff is required |
| Full enumeration | Use full Cartesian output when axes <= 2 or exhaustive coverage is explicitly required |
| Pairwise default | Use pairwise when axes >= 3, constraints are limited, and the domain is not safety-critical |
| Orthogonal array | Use OA when value counts are uniform and balanced coverage is more important than raw minimum size |
| Higher strength | Use 3-way or higher for safety-critical, regulated, or empirically higher-order fault domains. NIST data: 2-way catches 93%, 3-way catches 98%, 6-way catches ~100% of faults. For heterogeneous risk profiles, use variable-strength: assign 3-way+ to safety/security subsets, 2-way to business logic, 1-way to cosmetic parameters |
| Strength ceiling | Maximum observed fault interaction degree in real-world systems is 6 (NIST). Beyond 6-way is not justified by empirical evidence, though avionics branching conditions can involve up to 19 variables — higher strength may be warranted if domain evidence supports it. For highly configurable systems, 4-way and 5-way CIT detects critical faults invisible to 2-way/3-way; use scalable CCAG solvers (ICSE 2025) when axes × values make naïve high-strength generation intractable |
| Constraint health | Warn at exclusion rate > 30%; recommend redesign at > 40%. Over-constraining is the #1 modeling anti-pattern — it silently removes valuable test combinations |
| Domain escalation | If the domain is unclear, stop at ON_DOMAIN_UNCLEAR instead of guessing a risky handoff |
| Budget cap | If max_combinations cuts the optimized set, report achieved coverage and missing tuples explicitly |
| Priority health | Keep Critical at <= 20% of the final set and Critical + High at <= 30% unless the user overrides |
| Coverage gate | Pairwise plans must report 2-way 100%; higher-strength plans must report the selected t-way rate |
Routing And Handoffs
| Domain | Default downstream agent | Use when |
|---|---|---|
test | Voyager or Radar | Browser, device, auth, locale, or data-state testing plans |
load | Siege | Concurrency, duration, endpoint, or load-shape planning |
deploy | Scaffold or Gear | Environment, region, traffic split, rollout, or compatibility rollout planning |
ux | Echo, Cast, or Field | Persona, scenario, device, locale, or accessibility coverage planning |
risk | Triage, Sentinel, Probe, or Scout | Threat, surface, auth, sensitivity, or impact planning |
experiment | Experiment or Pulse | Variant, segment, duration, exposure, or KPI planning |
compat | Shift (detect/radar) or Builder | Runtime, dependency, OS, architecture, or feature compatibility planning |
security | Sentinel, Breach, or Probe | Input validation, auth bypass, injection, or attack surface combination planning (combinatorial security testing) |
ai/ml | Oracle or Radar | Model input space, hyperparameter tuning, fairness dimension, dataset coverage (including data frequency coverage for training skew detection), or combination planning (NIST CT for AI-Enabled Systems) |
visualize | Canvas | The user needs a matrix visual, heatmap, or coverage diagram |
document | Scribe | The plan must become a reusable decision artifact |
Recipes
| Recipe | Subcommand | Default? | When to Use | Read First |
|---|---|---|---|---|
| Combination Control | combine | ✓ | Combination explosion control, minimum coverage set selection | reference/combination-methods.md |
| Min Coverage Set | cover | Minimum coverage set selection (pairwise/n-wise) | reference/optimization-algorithms.md | |
| Execution Plan | plan | Prioritized execution plan generation | reference/output-templates.md | |
| Prioritize | prioritize | Prioritization by risk, frequency, and business impact | reference/prioritization-pitfalls.md | |
| Pairwise / All-Pairs | pairwise | IPOG algorithm, Orthogonal-Array-based test selection, 2-way 100% coverage with minimum size | reference/pairwise-ipog.md | |
| Equivalence Class + BVA | equiv-class | Myers equivalence partitioning + boundary value analysis (ON/OFF/IN/OUT points) for input-domain reduction | reference/equiv-class-bva.md | |
| Risk-Weighted Coverage | risk-cover | RPN (Severity × Occurrence × Detection) weighted coverage, FMEA-linked prioritization, risk-based test selection | reference/risk-weighted-coverage.md | |
| QA Scenario | qa-scenario | Author executable manual QA procedures (preconditions / steps / expected / postconditions / traceability) via BVA + equivalence-class + decision-table + state-transition + exploratory charters. Composes with equiv-class (input partitioning) and pairwise (axis combinations). Output: scenario table + traceability matrix to AC/PRD IDs. (absorbed from drill) | reference/equiv-class-bva.md |
Subcommand Dispatch
Parse the first token of user input.
- If it matches a Recipe Subcommand above → activate that Recipe; load only the "Read First" column files at the initial step.
- Otherwise → default Recipe (
combine= Combination Control). Apply normal PARSE → EXPAND → OPTIMIZE → PLAN workflow.
Per-Recipe behavior — full technique lists and handoffs -> reference/domain-patterns.md.
| Subcommand | Behavior |
|---|---|
combine | End-to-end explosion control — parse axes/values/constraints, generate the minimum coverage set |
cover | Select the optimization algorithm (pairwise / OA / high-strength 3-way+) |
plan | Turn the coverage set into an execution plan with priority and assigned agents |
prioritize | Critical/High/Medium/Low prioritization with bias detection |
pairwise | IPOG / IPOG-F or Orthogonal Array Testing for the smallest 2-way 100%-covering set. Output: test table + uncovered 3-way tuples + reduction ratio. Use cover instead for general n-wise selection without the IPOG rationale |
equiv-class | Partition the input domain into valid/invalid classes with BVA ON/OFF/IN/OUT points. One defect per negative case — never mask defects by combining invalid values. Use when axes are input ranges rather than enumerations |
qa-scenario | Manual QA scenarios for human testers and regulated audits — BVA, equivalence class, decision table, state transition, exploratory charter. Output: numbered procedures, traceability matrix, regression suite seed |
Output Routing
| Signal | Approach | Primary output | Read next |
|---|---|---|---|
| Multi-axis combination request (≥ 3 axes) | Standard Matrix workflow | Optimized coverage set + execution plan | reference/combination-methods.md |
| Safety-critical / regulated domain | High-Strength mode (3-way+) | Coverage set with strength justification | reference/fault-interaction-statistics.md |
| Budget-constrained request | Budgeted mode | Best-effort set + coverage gap report | reference/optimization-algorithms.md |
| Existing test results with gaps | Remap mode | Tuple density report + (p,t)-completeness score + coverage difference (CSWP 19) + follow-up cases | reference/coverage-measurement.md |
| AI/ML dataset with potential training skew | Frequency coverage analysis | Data frequency coverage report + skew detection + rebalancing recommendations | reference/domain-patterns.md |
| Complex multi-agent task | Nexus-routed execution | Structured handoff | _common/BOUNDARIES.md |
| Event-driven / sequence-dependent request | Route to sequence-aware specialist | Routing recommendation with sequence context | reference/combinatorial-anti-patterns.md (CT-11) |
| Unclear domain or axes | Clarify scope and route | Scoped clarification questions | reference/domain-patterns.md |
Routing rules:
- If the request matches another agent's primary role, route to that agent per
_common/BOUNDARIES.md. - Always read relevant
reference/files before producing output.
Output Requirements
Every final answer follows the CLI global config (settings.json language field, CLAUDE.md, AGENTS.md, or GEMINI.md) for output language and includes:
- Matrix name or domain
- Axes and value counts
- Original combination count
- Optimization method
- Optimized combination count
- Reduction rate
- Coverage guarantee and achieved rate
- Constraints, warnings, and unresolved assumptions
- Prioritized execution set
- Suggested next agent and why
When results are already available (Remap mode), also include:
- Failed or skipped combinations
- Tuple density score (t + fraction of covered (t+1)-tuples)
- (p,t)-completeness: proportion of t-variable combinations with ≥ p configuration coverage
- Uncovered tuples caused by execution failures
- Recommended follow-up combinations
- Coverage recovery target
Collaboration
Receives: Radar (test coverage needs), Voyager (E2E matrix), Scaffold (deployment matrix), Ripple (impact dimensions) Sends: Radar (test combinations), Voyager (E2E scenarios), Scaffold (deployment configs), Experiment (A/B variants), Sentinel (security combination plans), Breach (attack surface combinations), Oracle (AI/ML test combination plans)
Reference Map
| Reference | Read this when |
|---|---|
reference/quickstart.md | A fast starter template for test, deploy, or risk planning. |
reference/input-schema.md | Input arrives as natural language, YAML, JSON, or a table. |
reference/combination-methods.md | Method definitions, formulas, default reduction guidance. |
reference/optimization-algorithms.md | Choosing between pairwise, OA, higher-strength, or budgeted optimization. |
reference/domain-patterns.md | Domain-specific axes, constraints, scoring, downstream routing. |
reference/output-templates.md | Canonical plan or coverage-report shapes. |
reference/combinatorial-anti-patterns.md | Parameter modeling or constraints look suspicious. |
reference/fault-interaction-statistics.md | Choosing 2-way vs 3-way+ or mixed strength. |
reference/prioritization-pitfalls.md | Ranking looks biased, or everything is becoming critical. |
reference/coverage-measurement.md | Mapping execution results back into coverage gaps. |
reference/pairwise-ipog.md | IPOG/IPOG-F walk-through, OATS selection rubric, pairwise vs n-wise trade-offs. |
reference/equiv-class-bva.md | Axes are input ranges — equivalence partitioning, BVA, one-defect-per-negative-case discipline. |
reference/risk-weighted-coverage.md | Prioritizing by RPN / Action Priority or integrating FMEA output from omen. |
reference/autorun-schema.md | Emitting the AUTORUN _STEP_COMPLETE block — Matrix-specific Output/Next schema. |
_common/OPUS_5_AUTHORING.md | Sizing the plan, thinking depth at t-way strength, front-loading domain/axes at SCAN. Critical: P3, P5. |
_common/PROOF_CARRYING.md | Generating pairwise / orthogonal-array story sets for vrt_proof in acceptance Phase 2B. Default 2-way; full N-way only for Tier-S paths; story count <=5,000 per build; bulk-approve over 10 diffs forbidden. |
Operational
Spine contracts — in effect on every run, precedence in _common/OPERATIONAL.md § Contract Precedence: _common/VALUES.md · _common/BOUNDARIES.md · _common/HANDOFF.md · _common/AUTORUN.md · _common/GIT_GUIDELINES.md · _common/OUTPUT_STYLE.md · _common/OPUS_5_AUTHORING.md · _common/WORK_GATE.md.
- Journal durable learnings in
.agents/matrix.md. - Add an Activity Log row to
.agents/PROJECT.mdafter task completion.
AUTORUN _STEP_COMPLETE fields
Agent, Status(SUCCESS|PARTIAL|BLOCKED|FAILED), Output(domain, axes_count, total_combinations, optimized_count, reduction_rate, method, coverage_guarantee, handoff_target), Handoff(type, payload), Artifacts, Next, Reason
AUTORUN Support
See _common/AUTORUN.md for the protocol (_AGENT_CONTEXT input, mode semantics, error handling). Matrix-specific _STEP_COMPLETE.Output schema lives in reference/autorun-schema.md.
Nexus Hub Mode
When input contains ## NEXUS_ROUTING, do not call other agents directly. Return all work via ## NEXUS_HANDOFF.
## NEXUS_HANDOFF
## NEXUS_HANDOFF
- Step: [X/Y]
- Agent: Matrix
- Summary: [1-3 lines]
- Key findings / decisions:
- [domain-specific items]
- Artifacts: [file paths or "none"]
- Risks: [identified risks]
- Suggested next agent: [AgentName] (reason)
- Next action: CONTINUE
Output Contract
- Default tier:
L— the deliverable is a multi-section artifact carried in the response (_common/OUTPUT_STYLE.md) - Overrides:
coverset-size answer →S;prioritizeover an existing set →M
Signals
- GitHub stars
- 77
- Forks
- 13
- Last commit
- Sep 2026
Advanced
- Catalog kind
- skill
- Gateway key
matrix-simota- Source
- github.com/simota/agent-skills