Dual Axis Skill ReviewerSAFE
Claude Code skills for equity investors and traders — market analysis, technical charting, economic calendars, screeners, and trading strategy development.
Overview
Claude Code skills for equity investors and traders — market analysis, technical charting, economic calendars, screeners, and trading strategy development.
c91a4ba0d6ecOBSERVED · 2026-10-28Install
Commands as the repository documents them. They are shown, not run.
uv run "$REVIEWER" \
uv run "$REVIEWER" \
uv run "$REVIEWER" \
Host compatibility
What the documentation claims. We have not run a compatibility test.
| Host | Status | Notes |
|---|---|---|
| claude-code | mentioned |
What it tells the agent
The instruction file, verbatim from the audited commit — this is the text the model reads, and the surface the audit's instruction layer examines. Quoted here so you can judge it without cloning anything.
--- name: dual-axis-skill-reviewer description: "Review skills in any project using a dual-axis method: (1) deterministic code-based checks (structure, scripts, tests, execution safety) and (2) LLM deep review findings. Use when you need reproducible quality scoring for `skills/*/SKILL.md`, want to gate merges with a score threshold (for example 90+), or need concrete improvement items for low-scoring skills. Works across projects via --project-root." --- # Dual Axis Skill Reviewer Run the dual-axis reviewer script and save reports to `reports/`. The script supports: - Random or fixed skill selection - Auto-axis scoring with optional test execution - LLM prompt generation - LLM JSON review merge with weighted final score - Cross-project review via `--project-root` - Non-scoring display of `skills-index.yaml` production verification declarations ## When to Use - Need reproducible scoring for one skill in `skills/*/SKILL.md`. - Need improvement items when final score is below 90. - Need both deterministic checks and qualitative LLM code/content review. - Need to review skills in a **different project** from the command line. ## Prerequisites - Python 3.9+ - `uv` (recommended — auto-resolves `pyyaml` dependency via inline metadata) - For tests: `uv sync --extra dev` or equivalent in the target project - For LLM-axis merge: JSON file that follows the LLM review schema (see Resources) ## Workflow Determine the correct script path based on your context: - **Same project**: `skills/dual-axis-skill-reviewer/scripts/run_dual_axis_review.py` - **Global install**: `~/.claude/skills/dual-axis-skill-reviewer/scripts/run_dual_axis_review.py` The examples below use `REVIEWER` as a placeholder. Set it once: ```bash # If reviewing from the same project: REVIEWER=skills/dual-axis-skill-reviewer/scripts/run_dual_axis_review.py # If reviewing another project (global install): REVIEWER=~/.claude/skills/dual-axis-skill-reviewer/scripts/run_dual_axis_review.py ``` ### Step 1: Run Auto Axis + Generate LLM Prompt ```bash uv run "$REVIEWER" \ --project-root . \ --emit-llm-prompt \ --output-dir reports/ ``` When reviewing a different project, point `--project-root` to it: ```bash uv run "$REVIEWER" \ --project-root /path/to/other/project \ --emit-llm-prompt \ --output-dir reports/ ``` ### Step 2: Run LLM Review - Use the generated prompt file in `reports/skill_review_prompt_<skill>_<timestamp>.md`. - Ask the LLM to return strict JSON output. - When running inside Claude Code, let Claude act as orchestrator: read the generated prompt, produce the LLM review JSON, and save it for the merge step. ### Step 3: Merge Auto + LLM Axes ```bash uv run "$REVIEWER" \ --project-root . \ --skill <skill-name> \ --llm-review-json <path-to-llm-review.json> \ --auto-weight 0.5 \ --llm-weight 0.5 \ --output-dir reports/ ``` ### Step 4: Optional Controls - Fix selection for reproducibility: `--skill <name>` or `--seed <int>` - Review all skills at once: `--all` - Skip tests for quick triage: `--skip-tests` - Change report location: `--output-dir <dir>` - Increase `--auto-weight` for stricter deterministic gating. - Increase `--llm-weight` when qualitative/code-review depth is prioritized. ## Output - `reports/skill_review_<skill>_<timestamp>.json` - `reports/skill_review_<skill>_<timestamp>.md` - `reports/skill_review_prompt_<skill>_<timestamp>.md` (when `--emit-llm-prompt` is enabled) When the target project has a `skills-index.yaml` entry with a complete `verification` block, JSON and Markdown reports also show its declared axes, `not_verified` gaps, non-applicable axes, and `all_applicable_axes_passed`. This section is informational only. It is excluded from auto/LLM/final scores and does not replace a live high-severity issue check. ## Installation (Global) To use this skill from any project, symlink it into `~/.claude/skills/`: ```bash ln -sfn /path/to/claude-trading-skills/skills/dual-axis-skill-reviewer \ ~/.claude/skills/dual-axis-skill-reviewer ``` After this, Claude Code will discover the skill in all projects, and the script is accessible at `~/.claude/skills/dual-axis-skill-reviewer/scripts/run_dual_axis_review.py`. ## Resources - Auto axis scores metadata, workflow coverage, execution safety, artifact presence, and test health. - Auto axis detects `knowledge_only` skills and adjusts script/test expectations to avoid unfair penalties. - LLM axis scores deep content quality (correctness, risk, missing logic, maintainability). - Final score is weighted average. - If final score is below 90, improvement items are required and listed in the markdown report. - Script: `skills/dual-axis-skill-reviewer/scripts/run_dual_axis_review.py` - LLM schema: `references/llm_review_schema.md` - Rubric detail: `references/scoring_rubric.md`
Trust audit
SAFEgrade B · trust 89/100 Nothing in the source contradicts what it says it does. Grade A is reserved for packages that have also passed the behavioural sandbox.
| Layer | What it checks | Result |
|---|---|---|
| L0 | Provenance & inventory | PASS |
| L1 | Static analysis of the code | PASS |
| L2 | Instruction surface (what it tells the agent) | PASS |
| L3 | Class-specific surface | PASS |
| L4 | Behavioural (sandbox) | SKIPPED |
What the source does
- Filesystem
- none-observed
- Network
- none-observed
- Shell
- none-observed
- Dependencies
- not all pinned
- Secrets in source
- none-found
Findings (2)
examples/daily-market-dashboard/.claude/skills
PyYAML
Gates applied: no_behavioural_pass.
c91a4ba0d6ecfull audit observations/trust-audit/skill/tradermonty__dual-axis-skill-reviewer.json · Report an issue / request a re-scanAudit history
Every audit this skill has had.
| Date | Source | Verdict | Grade | Score | Change |
|---|---|---|---|---|---|
| 2026-10-28 | c91a4ba0d6ec | SAFE | B | 89 | first audit |
Questions
What does the dual-axis-skill-reviewer — tradermonty/claude-trading-skills skill do?
Claude Code skills for equity investors and traders — market analysis, technical charting, economic calendars, screeners, and trading strategy development.
Is dual-axis-skill-reviewer — tradermonty/claude-trading-skills safe to install?
The audit found nothing in the source that contradicts what it says it does, and graded it B (89/100). Grade A is held back for packages that have also passed a sandboxed behavioural run, which is why a clean skill reads B.
What can dual-axis-skill-reviewer — tradermonty/claude-trading-skills access on my machine?
The audit observed no filesystem, network or shell use at all in its source.
Which assistants does dual-axis-skill-reviewer — tradermonty/claude-trading-skills work with?
Its documentation mentions claude-code. That is what the text claims, not a compatibility test we ran.
How current is this page?
The grade is for one exact copy of the source (c91a4ba0d6ec), read on 2026-10-28. The repository is watched, and a new audit runs when it changes — this is the first audit.
Add this badge to your README
Shows this page's audit result and links back to it. It updates when the audit does.
[](https://modelsatlas.com/skills/tradermonty/dual-axis-skill-reviewer/)
Not your listing, or something out of date? Claim or update your listing.