pywayne-ahrs-tools

pywayne-ahrs-tools is a skill for Claude Code, Codex from wangyendt/wayne-skills. It costs 51 tokens per session (511 once invoked), scanned A, original, MIT.

A Python utility for working with AHRS orientation data represented as quaternions. AHRS means a system that estimates an object’s orientation; the tool converts quaternion rotations into angles and can remove roll and pitch.

In plain words
What is it for?
Use it to decompose a quaternion into overall, heading, and inclination angles, or compensate an orientation so roll and pitch are zero.
Why use it?
It avoids implementing quaternion angle calculations and roll-pitch correction yourself. The resulting orientation data is easier to use in applications that need heading or leveling information.

Skill for Claude CodeCodex

Written for no agent in particular: nothing here depends on one.

Good fit Use it to decompose a quaternion into overall, heading, and inclination angles, or compensate an orientation so roll and pitch are zero.

Compare 6 skills from other repositories ↓
Install with agentmods
npx agentmods add skills/wangyendt/wayne-skills/ahrs-tools
Install

Getting it into your agent

One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.

Any agent
npx skills add wangyendt/wayne-skills --skill ahrs-tools
Clone the repo
git clone --depth 1 https://github.com/wangyendt/wayne-skills

Made for: Claude Code, Codex.

Wrote this? Show the measurements

A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.

agentmods badge for pywayne-ahrs-tools

README.md
[![agentmods](https://agentmods.dev/badge/skills/wangyendt/wayne-skills/ahrs-tools/github.svg)](https://agentmods.dev/skills/wangyendt/wayne-skills/ahrs-tools)
Your own site
<a href="https://agentmods.dev/skills/wangyendt/wayne-skills/ahrs-tools"><img src="https://agentmods.dev/badge/skills/wangyendt/wayne-skills/ahrs-tools/github.svg" alt="Measured on agentmods" height="20"></a>

Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.

agentmods 80×15 button for pywayne-ahrs-tools

Your own site · 80×15
<a href="https://agentmods.dev/skills/wangyendt/wayne-skills/ahrs-tools"><img src="https://agentmods.dev/badge/skills/wangyendt/wayne-skills/ahrs-tools.svg" alt="Reviewed on agentmods" width="80" height="20"></a>
Per session 51 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 511 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. A grade says what 26 rules found in the file — not that it is safe.
Origin original No closer match found in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5.1 $0.00051 $0.00511
Opus 5 $0.00026 $0.00255
Sonnet 5 $0.00010 $0.00102
Haiku 4.5 $0.00005 $0.00051

Measured 11d ago against content hash d2f3e5655ca3, method: parsed. Prices are Anthropic first-party input rates as of 2026-09-10, from the pricing page.

Security

Grade A, and why

pywayne-ahrs-tools scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 11d ago.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Nothing flagged

None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.

pywayne/ahrs/ahrs-tools/SKILL.md · 66 lines

What it actually says

Pywayne AHRS Tools

This module provides quaternion-based AHRS (Attitude and Heading Reference System) utilities.

Quick Start

from pywayne.ahrs.tools import quaternion_decompose, quaternion_roll_pitch_compensate
import numpy as np

# Quaternion decomposition
q = np.array([0.70710678, 0, 0, 0.707962])  # w, x, y, z
angle_all, angle_heading, angle_inclination = quaternion_decompose(q)

# Roll/pitch compensation
q_comp = quaternion_roll_pitch_compensate(q)

Quaternion Decomposition

from pywayne.ahrs.tools import quaternion_decompose
import numpy as np

# Input quaternion (w, x, y, z)
q = np.array([w, x, y, z])

# Decompose into angles
angle_all, angle_heading, angle_inclination = quaternion_decompose(q)

# angle_all: Rotation angles around all axes (vertical + horizontal)
# angle_heading: Angle around vertical axis (inclination)
# angle_inclination: Angle around horizontal axis (bank)

Roll/Pitch Compensation

from pywayne.ahrs.tools import quaternion_roll_pitch_compensate
import numpy as np

# Input quaternion (w, x, y, z)
q = np.array([0.989893, -0.099295, 0.024504, -0.098242])

# Compensate pitch and roll to zero
q_comp = quaternion_roll_pitch_compensate(q)

Requirements

  • numpy - Array operations
  • qmt - OpenCV's quaternion module for conversions

Notes

  • Decomposition returns both angles (in radians) and heading/inclination
  • angle_all is computed using 2*arccos/abs(quaternion_z)
  • angle_heading uses arctan2(np.abs(quaternion_xy))
  • angle_inclination uses 2*arcsin(np.abs(quaternion_xy))
  • Roll/pitch compensation sets pitch and roll of q_comp to zero by using inverse rotation
Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. 11d ago First seen · 66 lines · 51 tokens per session scan A d2f3e5655ca3

Subscribe to this mod's changes

pywayne-ahrs-tools is a skill published in the GitHub repository wangyendt/wayne-skills (8 stars, last pushed yesterday), licensed MIT. It adds 51 tokens to every session and 511 once invoked, about $0.0003 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.

Related

Other skills, from other repositories

jupyter-notebook

Iterative Python via live Jupyter kernel (hamelnb).

NousResearch/hermes-agent · 18 tokens

matlab

Build, review, migrate, and safely plan MATLAB or GNU Octave numerical workflows, including arrays, tabular/time data, tests, projects, graphics, MAT files, and explicit Python interoperability.

K-Dense-AI/scientific-agent-skills · 42 tokens

bioservices

Unified Python interface to 40+ bioinformatics services. Use when querying multiple databases (UniProt, KEGG, ChEMBL, Reactome) in a single workflow with consistent API. Best for cross-database analysis, ID mapping across services. For quick single-database lookups use gget; for sequence/file manipulation use…

K-Dense-AI/scientific-agent-skills · 73 tokens

pennylane

Hardware-agnostic quantum ML framework with automatic differentiation. Use when training quantum circuits via gradients, building hybrid quantum-classical models, or needing device portability across IBM/Google/Rigetti/IonQ. Best for variational algorithms (VQE, QAOA), quantum neural networks, and integration with…

K-Dense-AI/scientific-agent-skills · 98 tokens

cuopt-numerical-optimization-api

LP, MILP, and QP (beta) with cuOpt — Python, C, and CLI. Use when the user is solving LP, MILP, or QP with any cuOpt interface.

NVIDIA/skills · 51 tokens

rocm-kernels

Provides guidance for writing and benchmarking optimized Triton kernels for AMD GPUs (MI355X, R9700) on ROCm, targeting HuggingFace diffusers (LTX-Video, SD3, FLUX) and transformers. Core kernels: RMSNorm, RoPE 3D, GEGLU, AdaLN. Includes XCD swizzle, autotune, diffusers integration patterns, and LTX-Video pipeline…

huggingface/kernels · 93 tokens