Agent skill

Geiss Port

by ad-repo in ad-repo/nullplayer

Implementation reference for NullPlayer's Geiss visualization engine — the BSD-3-Clause port of Ryan Geiss's Win32/DirectDraw/Winamp-2 visualizer onto macOS as a ProjectM-peer engine.

Custom licenceAuto-check passedMobile

Install Geiss Port

skills CLI
$ npx skills add ad-repo/nullplayer --skill geiss-port -a claude-code

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

GitHub CLI
$ gh skill install ad-repo/nullplayer geiss-port --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/ad-repo/nullplayer.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/geiss-port .claude/skills/geiss-port && 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
geiss-port
GitHub stars
158
Token cost
~5.3k tokens
SKILL.md length
2,188 words
Files
1
Skills in repo
40
Repo updated
First seen
Licence
Custom licence

At a glance

Implementation reference for NullPlayer's Geiss visualization engine — the BSD-3-Clause port of Ryan Geiss's Win32/DirectDraw/Winamp-2 visualizer onto macOS as a ProjectM-peer engine.

  • Works in 8 steps: RenderFX() — effect overlays into VS1 → Process_Map(VS1, VS2) — bilinear-blend… → GetWaveData() — populate g_power[] /… → …
  • Modifying anything under Sources/CGeissCore/
  • SKILL.md covers File Layout, Architectural deviation:…, Render Pipeline and Audio path, plus 9 more sections
  • Reaches github.com

What it does

Geiss Port is an agent skill from ad-repo/nullplayer. Implementation reference for NullPlayer's Geiss visualization engine — the BSD-3-Clause port of Ryan Geiss's Win32/DirectDraw/Winamp-2 visualizer onto macOS as a ProjectM-peer engine. Covers the CGeissCore C ABI, upstream-vs-port file split, indexed-framebuffer + palette-LUT render pipeline, Accelerate-based spectrum push, threading model, persistence, and the architectural deviation around upstream/main.cpp. Use when modifying anything under Sources/CGeissCore/, GeissEngine.swift, the spectrum/PCM path in…

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

It sits in Mobile, covering iOS development. It works with C++, Windows and macOS. The repository describes itself as: nullPlayer is a free open source macOS media player with some unique features.

When your agent uses it

  • Modifying anything under Sources/CGeissCore/
  • GeissEngine.swift
  • The spectrum/PCM path in VisualizationGLView for Geiss
  • The engine-conditional Geiss menu in ModernProjectMView

Example prompts

  • “s Geiss visualization engine — the BSD-3-Clause port of Ryan Geiss”
  • “/geiss-port”

Workflow steps

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

  1. RenderFX() — effect overlays into VS1
  2. Process_Map(VS1, VS2) — bilinear-blend warp through DATA_FX (portable C; the upstream MSVC __asm dispatcher in proc_map.cpp is gated #if 0)
  3. GetWaveData() — populate g_power[] / g_power_smoothed[], beat-detect, smoothing, centroid
  4. RenderDots(VS2) — audio-driven dot bursts (NUCLIDE)
  5. RenderWave(VS2) — 7 waveform-render modes + beat detect + slide-shift
  6. Swap VS1 ↔ VS2
  7. memcpy(indexBuf, VS1, FXW*FXH) — copy to caller buffer
  8. GenerateChunkOfNewMap(false, 0) — advance warp-map generation by one row of pixels; when chunk completes (y_map_pos returns to -1), call…

What it can do on your machine

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

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    Hosts in commands or code, which the agent is likely to contact:

    • github.com

    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

Geiss Port loads about 5.3k tokens when it runs. Until then it costs about 153 tokens; SKILL.md has 2,188 words of instructions outside code blocks.

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

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

Its licence (Custom licence) doesn't allow us to republish the file, so here is its outline and opening line. It has 2,188 words (~5,267 tokens).

“Geiss is a second visualization engine in NullPlayer's modern visualizer window, switchable from the right-click Visualization Engine submenu alongside ProjectM. It is a port of the BSD-3-Clause upstream at https://github.com/geissomatik/geiss (HEAD pinned at 816f3f6a5ca70592da7583be70c06f6e3425d306).”

— opening of SKILL.md by ad-repo, Custom licence
name
geiss-port

Read the full SKILL.md on GitHub

Files

Just SKILL.md in skills/geiss-port of ad-repo/nullplayer.

Open the folder on GitHubat commit 3d87ce1

Compare with similar skills

Geiss Port 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.

Geiss Port compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Geiss Port this skillad-repo/nullplayer158—~5.3kAutomated safety check: PassCustom licence
Bump Swift Versionjamesmontemagno/tiny-clips121—~695Automated safety check: PassMIT
Build CmakeiPlug2/iPlug2OOS158—~1.2kAutomated safety check: PassNone
Lldbmohitmishra786/low-level-dev-skills252—~1.4kAutomated safety check: PassMIT
Windows Parityn1m21n/Infinite271—~4.6kAutomated safety check: PassCustom licence
macOS Spm App PackagingDimillian/Skills4k5 repos~1.2kAutomated safety check: PassMIT

Similar skills

  • Bump Swift Version

    jamesmontemagno/tiny-clips

    Bump the version for the TinyClips Swift app across Info.plist, Info-MAS.plist, and project.pbxproj.

    121 GitHub stars~695 tokensUpdated yesterday
    MobileAuto-check passed
  • Build Cmake

    iPlug2/iPlug2OOS

    Build an iPlug2 plugin project using CMake (Ninja or Xcode generator)

    158 GitHub stars~1.2k tokensUpdated 26 days ago
    MobileAuto-check passed
  • Lldb

    mohitmishra786/low-level-dev-skills

    LLDB debugger skill for C/C++/Swift/Objective-C programs. An agent skill from mohitmishra786/low-level-dev-skills.

    252 GitHub stars~1.4k tokensUpdated 3 mo ago
    MobileAuto-check passed
  • Windows Parity

    n1m21n/Infinite

    Writing Windows-safe Infinite code from macOS: keep WIN32 out of nodes, three-sided Platform:: obligation, Windows trap catalogue (WASAPI, WinMM, GDI glyphs, Media Foundation stride, wide paths…

    271 GitHub stars~4.6k tokensUpdated yesterday
    SecurityAuto-check passed
  • macOS Spm App Packaging

    Dimillian/Skills

    Scaffold, build, and package SwiftPM-based macOS apps without an Xcode project.

    4k GitHub starsUsed in 5 repos~1.2k tokens
    MobileAuto-check passed
  • iOS Simulator control from inside Orca, with the live device view in Orca's emulator pane. Use when driving a booted Apple Simulator on macOS: taps, gestures…

    89k GitHub starsUsed in 1 repo~584 tokens
    MobileAuto-check passed

More from ad-repo/nullplayer

All 40 skills in this repo
  • Skin Screenshots

    ad-repo/nullplayer

    Capture one centred main-window screenshot per skin across every skin system (Classic, Original, Original-Metal, Modern/.wal, Media Player/.wmz, Audion Faces) and assemble them into a fixed-duration…

    158 GitHub stars~2k tokensUpdated today
    Auto-check passed
  • Vis Classic Guide

    ad-repo/nullplayer

    Comprehensive implementation and profile reference for NullPlayer's visclassic mode (CVisClassicCore, VisClassicBridge, SpectrumAnalyzerView integration, menu/keyboard controls…

    158 GitHub stars~739 tokensUpdated today
    Auto-check passed
  • App Control

    ad-repo/nullplayer

    Launch, configure, drive, screenshot and measure the running NullPlayer app.

    158 GitHub stars~9.4k tokensUpdated today
    Auto-check passed
  • Chromecast Casting

    ad-repo/nullplayer

    Google Cast Protocol v2, message framing, debugging, and test scripts.

    158 GitHub stars~4.6k tokensUpdated today
    Auto-check passed
  • Emby Integration

    ad-repo/nullplayer

    Emby API, authentication flow, rating scale, streaming, scrobbling, and video playback.

    158 GitHub stars~3.2k tokensUpdated today
    Auto-check passed
  • Live UI Testing

    ad-repo/nullplayer

    How to debug a defect that only exists on screen — instrument first, drive the app yourself, and measure what is actually drawn.

    158 GitHub stars~4.1k tokensUpdated today
    Auto-check passed

Works with

Categories

Questions about Geiss Port

What does Geiss Port do?

Implementation reference for NullPlayer's Geiss visualization engine — the BSD-3-Clause port of Ryan Geiss's Win32/DirectDraw/Winamp-2 visualizer onto macOS as a ProjectM-peer engine. Geiss Port is an agent skill from ad-repo/nullplayer. Implementation reference for NullPlayer's Geiss visualization engine — the BSD-3-Clause port of Ryan Geiss's Win32/DirectDraw/Winamp-2 visualizer onto macOS as a ProjectM-peer engine.

When should I use Geiss Port?

Geiss Port fits situations like: modifying anything under Sources/CGeissCore/; geissEngine.swift; the spectrum/PCM path in VisualizationGLView for Geiss; the engine-conditional Geiss menu in ModernProjectMView.

How do I install Geiss Port in Claude Code?

Run `npx skills add ad-repo/nullplayer --skill geiss-port -a claude-code`. Or copy the skill folder (skills/geiss-port in ad-repo/nullplayer) into .claude/skills/geiss-port in your project. Claude Code loads it when a task matches its description.

How do I install Geiss Port in Codex?

Run `npx skills add ad-repo/nullplayer --skill geiss-port -a codex`. Or copy the skill folder (skills/geiss-port in ad-repo/nullplayer) into .agents/skills/geiss-port in your project. Codex loads it when a task matches its description.

Can I use Geiss Port 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 ad-repo/nullplayer --skill geiss-port -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/geiss-port, .gemini/skills/geiss-port, .github/skills/geiss-port and .opencode/skills/geiss-port in your project.

What does Geiss Port need to run?

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

Does Geiss Port access the network?

SKILL.md names 1 domain. In commands or code: github.com; the agent is likely to contact it when it follows the instructions. This is read from the text; nothing was executed.

Is Geiss Port 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 Geiss Port use?

Geiss Port has a licence file (the repository's licence) that doesn't match a standard licence. Read it on GitHub before reusing the skill.

How many tokens does Geiss Port use?

About 5.3k tokens (SKILL.md is roughly 21k 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 Geiss Port?

Skills that share tags, products or a category with Geiss Port: Bump Swift Version (jamesmontemagno/tiny-clips, 121 stars), Build Cmake (iPlug2/iPlug2OOS, 158 stars), Lldb (mohitmishra786/low-level-dev-skills, 252 stars) and Windows Parity (n1m21n/Infinite, 271 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Geiss Port?

ad-repo (a GitHub user) maintains it in ad-repo/nullplayer, which has 158 GitHub stars. The repository holds 40 skills in this directory. The repository was last updated on October 10, 2026.

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