tactic-suggestion-assistant — independently scanned and version-tracked by SaferSkills.
SaferSkills independently audited tactic-suggestion-assistant (Agent Skill) and scored it 100/100 (green). The audit ran 55 deterministic rules across Security, Supply Chain, Maintenance, Transparency, and Community; it found 0 high-severity and 0 lower-severity findings. The full rule-by-rule trace and per-finding evidence are below. Free, methodology-open.
Findings & checks · 0 flagged
Every scanned point with the score it earned and what moved between them.
First recorded scan — no prior version to compare against.
The primary manifest — the file an agent reads to learn what this artifact does.
Analyze proof states and suggest applicable tactics to make progress in Isabelle or Coq.
This skill helps you navigate interactive proofs by analyzing the current proof state and suggesting 3-5 ranked tactics that can make progress. It works with both Isabelle/Isar and Coq, providing system-specific suggestions with explanations.
Provide the current proof state including:
The assistant will analyze the state and suggest tactics ranked by likelihood of success.
Determine whether you're working in Isabelle or Coq based on syntax:
⟹, ∧, ∨, ∀, ∃, 'a list, etc.->, /\, \/, forall, exists, list A, etc.Examine the goal's logical form:
P ∧ Q / P /\ Q → Split tacticsP ⟹ Q / P -> Q → Introduction tactics∀x. P / forall x, P → Variable introductiont1 = t2 → Simplification or rewritingLook at available hypotheses:
Type information guides tactic choice:
Provide 3-5 tactics ranked by:
For each suggested tactic, provide:
Proof state:
goal (1 subgoal):
1. ⋀xs ys. length xs = length ys ⟹ length (xs @ ys) = 2 * length xsAnalysis:
length xs = length ysxs and ysSuggestions:
length (xs @ ys) to length xs + length ys, then uses hypothesislength (xs @ ys) to length xs + length ysProof state:
1 subgoal
n : nat
IHn : even n -> even (n + 2)
============================
even n -> even (S (S n))Analysis:
IHnnSuggestions:
H: even n to context, goal becomes even (S (S n))S (S n) simplifies to n + 2S (S n) to n + 2 form to use IHIsabelle: ⊢ P ∧ Q
apply (rule conjI) - Split into two goalsby auto - If both parts are trivialby simp - If simplification proves bothCoq: P /\ Q
split. - Split into two goalsauto. - If both parts are trivialintuition. - Propositional reasoningIndicators: Goal about all elements of a list/nat, recursive structure
Isabelle:
proof (induction xs) - List inductionproof (induction n) - Nat inductionproof (induction t) - Custom type inductionCoq:
induction l as [|x l' IH]. - List inductioninduction n as [|n' IH]. - Nat inductioninduction t. - Custom type inductionIndicators: Goal or hypothesis with conditional, pattern match
Isabelle:
proof (cases xs) - Case analysis on variableproof (cases "condition") - Case split on booleanby (auto split: if_split) - Auto with case splitCoq:
destruct l as [|x l']. - Case analysis on variabledestruct (condition). - Case split on booleancase_eq term. - Case analysis with equationIndicators: Goal with +, -, *, <, ≤
Isabelle:
by arith - Arithmetic decision procedureby linarith - Linear arithmeticby simp - SimplificationCoq:
lia. - Linear integer arithmeticnia. - Non-linear arithmeticring. - Ring solverIndicators: Many connectives, nested structure
Isabelle:
by auto - Full automationby fastforce - Aggressive automationsledgehammer - External proversCoq:
auto. - Automationintuition. - Propositional reasoningfirstorder. - First-order reasoningtauto. - Tautology solverDetailed tactic references and patterns:
Load these references when you need:
auto, simp) before manual tactics~30 seconds. Free. No account. Every finding cites a rule and a line of evidence.