Agent skill

Pneuma Mode Maker

by pandazki in pandazki/pneuma-skills

Develop a Pneuma mode package in the Mode Maker workspace — manifest, viewer, skill, seeds, publishing.

MITAuto-check: notes

Install Pneuma Mode Maker

skills CLI
$ npx skills add pandazki/pneuma-skills --skill pneuma-mode-maker -a claude-code

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

GitHub CLI
$ gh skill install pandazki/pneuma-skills pneuma-mode-maker --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/pandazki/pneuma-skills.git skills-src && mkdir -p .claude/skills && cp -r skills-src/modes/mode-maker/skill .claude/skills/pneuma-mode-maker && 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
pneuma-mode-maker
GitHub stars
161
Token cost
~4k tokens
SKILL.md length
1,861 words
Files
3 (incl. references)
Skills in repo
30
Repo updated
First seen
Licence
MIT

At a glance

Develop a Pneuma mode package in the Mode Maker workspace — manifest, viewer, skill, seeds, publishing.

  • Works in 3 steps: The server spawns a child Pneuma process… → The child loads your latest manifest.ts,… → An iframe shows the child running. The…
  • ANY task in this workspace
  • SKILL.md covers Core Rules, Working with the viewer, Mode Package Structure and Development Workflow, plus 9 more sections
  • Calls bun, bunx and claude

What it does

Pneuma Mode Maker is an agent skill from pandazki/pneuma-skills. Develop a Pneuma mode package in the Mode Maker workspace — manifest, viewer, skill, seeds, publishing. Use for ANY task in this workspace. Defines the ModeManifest reference, ViewerContract patterns, and publishing workflow.

Its SKILL.md is about 4k tokens, which your agent loads only when the skill is triggered. The skill folder holds 3 other files, including reference files (for example `references/manifest-reference.md` and `references/viewer-guide.md`).

The repository describes itself as: Co-creation infrastructure for humans and code agents — visual environment, skills, continuous learning, and distribution. The licence is MIT.

When your agent uses it

  • ANY task in this workspace

Example prompts

  • “/pneuma-mode-maker”

Workflow steps

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

  1. The server spawns a child Pneuma process at Vite 18996 / backend 18997, pointing at the current workspace as a local mode source, with a…
  2. The child loads your latest manifest.ts, viewer/, and skill/ from disk — every saved file is what the next Play click sees.
  3. An iframe shows the child running. The user clicks through it like a real session.

What it can do on your machine

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

    Shell commands in SKILL.md call:

    • bun
    • bunx
    • claude

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

  • Network

    No URLs in SKILL.md. Its commands use bunx, which can reach the network depending on how they are called.

    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

Pneuma Mode Maker loads about 4k tokens when it runs, and up to ~9.6k if it reads all its reference files. Until then it costs about 61 tokens; SKILL.md has 1,861 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~61
When it runs · the whole SKILL.md, loaded when a task matches
~4k
With references · SKILL.md plus every file in references/, read only if the agent opens them
~9.6k

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: notes

The automated check noted patterns worth knowing about, such as sudo or a known installer.

  • NoteMentions a .env fileSKILL.md:135
    **`envMapping`** — Maps init params to `.env` entries AND agent process env vars.
  • NoteMentions a .env fileSKILL.md:137
    key → saved in `.pneuma/config.json` → `.env` generated → agent process gets env var → `${VAR}` in `.mcp.json` resolves

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

The full file from pandazki/pneuma-skills at commit 0023d3c, republished under its MIT licence (© pandazki). 1,861 words, ~3,962 tokens.

Download SKILL.mdSave it as .claude/skills/pneuma-mode-maker/SKILL.md (or your agent's skills folder). This skill also uses 2 other files; get the full folder from GitHub.
name
pneuma-mode-maker
description
Develop a Pneuma mode package in the Mode Maker workspace — manifest, viewer, skill, seeds, publishing. Use for ANY task in this workspace. Defines the ModeManifest reference, ViewerContract patterns, and publishing workflow.

Pneuma Mode Maker Skill

The workspace IS the mode package you are building. The user sees a live dashboard of the mode's structure, seed previews, and skill content as files change.

Core Rules

  • Follow existing mode patterns (doc, slide, draw) for consistency — see "Existing Mode Examples" below.

Working with the viewer

Mode-maker's viewer is a development IDE for the mode package — not a content canvas. It lists the package files, shows the active file's contents, surfaces a completeness checklist (manifest, pneuma-mode, viewer, skill, seed), and exposes user-driven buttons: Fork, Play, Publish, Reset. The agent's role is to keep the package files correct so the next Play click loads cleanly.

Reading what the user sees

Each turn, you receive a <viewer-context> block describing the package state. For mode-maker it looks like:

xml
<viewer-context mode="mode-maker" file="viewer/Preview.tsx">
Developing mode: "Quiz" (quiz)
Status: 3/5 components
  - manifest.ts: done
  - pneuma-mode.ts: done
  - viewer component: done
  - skill/SKILL.md: missing
  - seed content: missing
Selected: highlight "useSource(sources.files)"
</viewer-context>

What it tells you:

  • file="..." — which file the user is currently focused on in the dashboard. If they ask "fix this" or "rename this", they almost always mean this file.
  • Status: N/5 components — completeness checklist. Missing entries are your default backlog when the user says "finish the mode".
  • Selected: <type> "<content>" — present only when the user highlighted text or selected an item; otherwise omitted. Treat viewing (no selection) as "they're just looking, don't assume scope".
  • Address: {...} — present alongside a Selected: line. A machine-readable ViewerAddress — the round-trippable handle for the selected object.

There are no <user-actions> events in mode-maker — file selection and Play/Fork/Publish/Reset are reflected in <viewer-context> (active file, completeness) and in workspace file changes, not as a separate action stream.

ViewerAddress — naming an object in the package

Mode-maker addresses objects at file granularity — a mode package is a set of files, and the agent edits files directly, so there is nothing finer to point at. The Address: line in <viewer-context> carries this shape.

KeyHalfMeaning
filecoarseA package file path relative to the workspace root (viewer/Preview.tsx, manifest.ts).

Mode-maker has no fine (element-level) keys — there is no selector / anchor, because the viewer's dashboard never reports an element-level selection.

Locator cards

Mode-maker does not surface <viewer-locator> cards — there are no domain objects (slides, paper pages, board tiles) to anchor to. When you want to point the user at something, link the file directly in chat:

Take a look at [`viewer/Preview.tsx`](viewer/Preview.tsx) — the `useSource` call on line 12 is what's wrong.
Viewer actions (agent → viewer)

The mode-maker manifest does not declare any actions, so the viewer is read-only from your side — there is no POST $PNEUMA_API/api/viewer/action endpoint to invoke for this mode. You drive the package by editing files (Read/Edit/Write); the viewer reflects them automatically via the file watcher.

The HTTP routes under /api/mode-maker/* (play, play/stop, fork, publish, reset, modes) are wired to buttons in the dashboard, not to the agent. Do not call them from your tools — when the user says "play it" or "publish it", point them at the corresponding button rather than curling the endpoint yourself.

Play harness — the primary feedback loop

Play is the heartbeat of mode-maker. Clicking Play in the dashboard does this:

  1. The server spawns a child Pneuma process at Vite 18996 / backend 18997, pointing at the current workspace as a local mode source, with a fresh temp workspace as its target.
  2. The child loads your latest manifest.ts, viewer/, and skill/ from disk — every saved file is what the next Play click sees.
  3. An iframe shows the child running. The user clicks through it like a real session.

Your job around Play:

  • Before the user clicks Play, make sure the package compiles: manifest.ts is pure data (no React, no side effects), pneuma-mode.ts exports a ModeDefinition, and the viewer component renders without throwing on an empty workspace. A crashed Play is the most common bug class — read the existing files first, don't wing it.
  • When the user reports a bug after Play, ask what they did in the child (which seed they hit, which button they clicked) before changing anything. The child's session state is in its own temp workspace and you can't see it from here.
  • Only one Play instance runs at a time. If POST /api/mode-maker/play is already active, the dashboard shows Stop instead of Play; tell the user to stop and restart after a structural change (new init param, new seed file) so the child reloads cleanly.

Native desktop APIs ($PNEUMA_API/api/native/*) are available the same as in any other mode — use them for file pickers or shell-open if you need to pull external assets into the package.

Mode Package Structure

A complete Pneuma mode package:

my-mode/
├── manifest.ts        ← ModeManifest export (required, pure data — no React imports, no side effects)
├── pneuma-mode.ts     ← ModeDefinition export (required, binds manifest + viewer)
├── viewer/
│   └── Preview.tsx    ← React component implementing ViewerPreviewProps (required)
├── skill/
│   └── SKILL.md       ← Agent skill prompt (required)
└── seed/
    └── ...            ← Template files for new workspaces (recommended)

For the full ModeManifest TypeScript reference, claudeMdSection best practices, icon format, and workspace types, read {SKILL_PATH}/references/manifest-reference.md.

For the ViewerContract implementation guide (ViewerPreviewProps, viewer patterns, extractContext, System Bridge API), read {SKILL_PATH}/references/viewer-guide.md.

Development Workflow

  1. Start with manifest.ts — define mode identity, viewer.watchPatterns, and (if the mode has structured state beyond a flat file list) declare sources
  2. Create viewer/Preview.tsx — implement the preview component. Files arrive via sources, not as a files prop — subscribe with useSource(sources.files). See viewer-guide.md for examples
  3. Write pneuma-mode.ts — bind manifest + viewer, implement extractContext, and provide a runtime workspace model (TopBar tabs, createEmpty, etc.)
  4. Write skill/SKILL.md — guide the Agent on how to work in this mode
  5. Add seed/ files — template files for new workspaces

Keep manifest.ts as pure data — it's imported by both backend and frontend, so side effects or React imports would crash the server.

Read the mode's own skill first

Before your first edit in any new conversation, read the workspace's skill/SKILL.md (and anything under skill/references/). That file is the skill that will be installed when someone runs this mode — it's the authoritative description of the mode's domain (slide design principles, kami paper discipline, webcraft Impeccable.style rules, etc.). Mode-maker's own skill teaches you how to build modes; the target mode's skill teaches you what the mode is for.

This matters especially for forks. A workspace forked from slide still has slide's skill/SKILL.md and references — read them to learn slide's design vocabulary before editing. Otherwise you'll rebuild domain knowledge from scratch (fetching external docs, reading builtin sources) when the answer was sitting in skill/ the whole time.

Rule of thumb: if the user asks you to change the design aesthetic, content conventions, or domain workflow of the mode, skill/SKILL.md is where that vocabulary lives. If they ask you to change manifest config, viewer plumbing, or publish flow, consult {SKILL_PATH}/references/ in the mode-maker skill.

The Source abstraction

Pneuma's viewer runtime does not hand your component a files array directly. Instead, every data channel declared in manifest.sources becomes a Source<T> under props.sources, which the viewer subscribes to via the useSource hook. The runtime synthesizes a default files source from viewer.watchPatterns so legacy modes keep working, but new modes should declare their sources explicitly — file-glob for a flat file list, json-file for typed settings, aggregate-file for a derived domain object, memory for ephemeral state. This makes writes type-safe and origin-tagged (no manual echo suppression) and keeps viewer code decoupled from storage layout. Full details in viewer-guide.md.

Show full SKILL.md (739 more words)Show less

MCP Servers and Skill Dependencies

Modes can declare external tool servers and skill dependencies in manifest.ts:

  • mcpServers — MCP tool servers (e.g. Playwright, Brave Search). On install, Pneuma writes entries to workspace .mcp.json. Supports {{param}} template in args/env/headers, and ${VAR} for runtime env resolution.
  • skillDependencies — External skills bundled with the mode. On install, copied to the backend's skills directory (.claude/skills, .agents/skills, or .kimi-code/skills) and injected into the active instructions file (CLAUDE.md or AGENTS.md).
  • envMapping — Maps init params to .env entries AND agent process env vars.

Sensitive value flow: user enters API key → saved in .pneuma/config.json → .env generated → agent process gets env var → ${VAR} in .mcp.json resolves at runtime.

Adding a Skill Dependency

When the user wants to bundle an external skill:

  1. Acquire via Claude Code marketplace: claude marketplace add rbouschery/marketplace then claude plugin install -s project apple-mail@rbouschery-marketplace
  2. Locate and copy the installed dependency using its real skill-catalog path (substitute <INSTALLED_APPLE_MAIL_SKILL_DIR>), into the mode package: cp -r "<INSTALLED_APPLE_MAIL_SKILL_DIR>" deps/apple-mail
  3. Declare in manifest.ts:
    typescript
    skillDependencies: [{
      name: "apple-mail",
      sourceDir: "deps/apple-mail",
      claudeMdSnippet: "**apple-mail** — Send and manage emails via Apple Mail",
    }],

The skill gets bundled with the mode — consumers don't need marketplace access.

Proxy for External APIs

If the mode's viewer needs to fetch external APIs (weather data, stock prices, third-party services), declare a proxy field in manifest.ts. This enables a server-side reverse proxy that avoids CORS issues and can inject headers (auth tokens, User-Agent).

typescript
proxy: {
  myapi: {
    target: "https://api.example.com",
    headers: { "User-Agent": "Mozilla/5.0 ..." },  // optional
    methods: ["GET"],                                // optional, default GET only
    description: "Example API",                      // shown in the active instructions file (CLAUDE.md or AGENTS.md)
  },
},

What this does:

  • Pneuma auto-generates a "Proxy" section in the active instructions file (CLAUDE.md or AGENTS.md), so the agent knows to use /proxy/myapi/... in viewer code
  • Server forwards /proxy/myapi/path → https://api.example.com/path with configured headers
  • Users can add more proxies at runtime by writing proxy.json in the workspace

When to use: Any time the viewer fetches data from an external domain. Even APIs that work without proxy today may break in other browsers or environments. The proxy also enables header injection (auth, UA) without exposing secrets in viewer code.

See manifest-reference.md for the full proxy field schema.

Template Variables

Seed files and skill files support {{key}} template variables from init params. Use {{modeName}} and {{displayName}} for mode identity. Conditional blocks: {{#key}}...{{/key}} (rendered only if key is non-empty).

Testing

Play (covered in Working with the viewer) is the primary loop. As a CLI fallback when the user wants to test outside the mode-maker window:

bash
# From pneuma-skills project root — any local mode directory works as the first arg
bun run dev /path/to/your-mode --workspace /tmp/test-workspace

# Or if your mode is registered as a builtin under modes/:
bun run dev your-mode --workspace /tmp/test-workspace

Distribution

Push to GitHub, then load remotely:

bash
pneuma github:user/my-mode --workspace ~/my-project

The mode is cloned to ~/.pneuma/modes/ and loaded automatically.

Publishing to Pneuma Registry

bash
# Publish the current workspace as a mode
bunx pneuma-skills mode publish [--workspace .] [--force]

# List all published modes
bunx pneuma-skills mode list
Pre-publish Checklist
  1. manifest.ts has valid name (lowercase, starts with letter), version (semver), and displayName
  2. pneuma-mode.ts exists and exports a ModeDefinition
  3. viewer/ directory contains the preview component
  4. skill/SKILL.md contains the agent skill prompt
  5. Bump version in manifest.ts before each publish (existing versions cannot be overwritten unless --force)
Third-Party Dependencies

Modes can use any npm package in their viewer. Install with bun add <package>, import normally. Dependencies are inlined at publish time via Bun.build() — consumers don't need to install anything. React and React-DOM are provided by the host runtime and should not be bundled.

Existing Mode Examples

Read the ones closest to what you're building — they're the best reference for the current contracts:

ModesourcesViewer PatternWorkspace TypeGood reference for
Docdefault filesreact-markdownall, multi-file, topBarNavigationSimple text-first modes
Kamidefault files + paper size via init paramssrcdoc iframe + paper canvasmanifest, multi-fileFixed-size canvas layouts, editorial typography
Slidecustom deck aggregate-filesrcdoc iframe + slide navigatormanifest, orderedStructured multi-file domain objects
WebCraftsite aggregate-file + assets file-glob + files file-globsrcdoc iframe + responsive previewmanifest, multi-file, content setsWeb design with multiple switchable content sets
Drawdefault filesExcalidraw React componentsingleCanvas-driven single-file modes
GridBoarddefault filesdnd-kit tile gridall, multi-fileCompile-at-runtime tile systems

Theme CSS Hygiene

Modes with custom styling (e.g. theme.css) must scope their CSS to content classes — not bare elements like h1, body, *. The platform scopes theme CSS automatically during export, but using semantic class selectors (.slide h1 instead of h1) and :root variables is critical for clean isolation. See {SKILL_PATH}/references/viewer-guide.md → "Theme CSS Best Practices" for the full guide.

What NOT to Do

  • Do not modify .claude/ or .pneuma/ — managed by the runtime, edits get overwritten
  • Do not create circular imports between manifest.ts and pneuma-mode.ts
  • Do not import React in manifest.ts — it must be safe for backend import (this crashes the server)
  • Do not hardcode absolute paths — use relative paths within the mode package
  • Do not put dynamic computation in manifest.ts — keep it as pure data

© pandazki, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

SKILL.md and 2 other files (references) in modes/mode-maker/skill of pandazki/pneuma-skills.

  • SKILL.md
  • references/manifest-reference.md
  • references/viewer-guide.md

Open the folder on GitHubat commit 0023d3c

Compare with similar skills

Pneuma Mode Maker 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.

Pneuma Mode Maker compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Pneuma Mode Maker this skillpandazki/pneuma-skills161—~4kAutomated safety check: NotesMIT
Developing PDF ViewerTriliumNext/Trilium38k—~1.8kAutomated safety check: PassAGPL-3.0
MCP Developmentcoollabsio/coolify63k1 repos~949Automated safety check: PassMIT
Game Developmentsickn33/agentic-awesome-skills47k1 repos~1.3kAutomated safety check: PassMIT
Twenty App Entity Developmenttwentyhq/twenty58k—~1.8kAutomated safety check: PassCustom licence
Developmentccusage/ccusage19k—~433Automated safety check: PassCustom licence

Similar skills

  • Developing PDF Viewer

    TriliumNext/Trilium

    A skill your agent uses when changing Trilium's built-in PDF viewer — anything under packages/pdfjs-viewer (the code injected into Mozilla's PDF.js viewer: bootstrap.ts, annotations.ts, pages.ts…

    38k GitHub stars~1.8k tokensUpdated today
    Documents & OfficeAuto-check passed
  • MCP Development

    coollabsio/coolify

    A skill your agent uses for Laravel MCP development. An agent skill from coollabsio/coolify.

    63k GitHub starsUsed in 1 repo~949 tokens
    Frontend & DesignAuto-check passed
  • Game Development

    sickn33/agentic-awesome-skills

    Game development orchestrator. An agent skill from sickn33/agentic-awesome-skills.

    47k GitHub starsUsed in 1 repo~1.3k tokens
    Game DevelopmentAuto-check passed
  • Guides changes to an existing Twenty app: adding or editing objects, layouts, logic functions and front components, with a plan stated before multi-entity edits.

    58k GitHub stars~1.8k tokensUpdated today
    DevelopmentAuto-check passed
  • Development

    ccusage/ccusage

    Guides ccusage monorepo development. An agent skill from ccusage/ccusage.

    19k GitHub stars~433 tokensUpdated today
    DevelopmentAuto-check passed
  • Frontend Development

    OpenHands/OpenHands

    This skill should be used when the user asks to "add UI copy", "add a translation", "optimize the frontend bundle", "change onboarding", "change conversation UI", "add a query key", "change MSW…

    90k GitHub stars~324 tokensUpdated today
    Frontend & DesignAuto-check passed

More from pandazki/pneuma-skills

All 30 skills in this repo
  • Pneuma Bansho

    pandazki/pneuma-skills

    Explain something by writing it on a board. An agent skill from pandazki/pneuma-skills.

    161 GitHub stars~6.9k tokensUpdated yesterday
    Auto-check passed
  • Pneuma Clipcraft

    pandazki/pneuma-skills

    AI-orchestrated video production on @pneuma-craft. An agent skill from pandazki/pneuma-skills.

    161 GitHub stars~7.5k tokensUpdated yesterday
    Auto-check: notes
  • Pneuma Lucid

    pandazki/pneuma-skills

    Pneuma Lucid Mode workspace guidelines. An agent skill from pandazki/pneuma-skills.

    161 GitHub stars~4.6k tokensUpdated yesterday
    Auto-check: warnings
  • Pneuma Plotwise

    pandazki/pneuma-skills

    Pneuma Plotwise workspace guidelines. An agent skill from pandazki/pneuma-skills.

    161 GitHub stars~8.9k tokensUpdated yesterday
    Auto-check passed
  • Pneuma Sprite

    pandazki/pneuma-skills

    Pneuma Sprite Mode workspace guidelines. An agent skill from pandazki/pneuma-skills.

    161 GitHub stars~16k tokensUpdated yesterday
    Auto-check passed
  • Pneuma Webcraft

    pandazki/pneuma-skills

    Pneuma WebCraft Mode workspace guidelines with Impeccable.style design intelligence.

    161 GitHub stars~7.5k tokensUpdated yesterday
    Auto-check: notes

Questions about Pneuma Mode Maker

What does Pneuma Mode Maker do?

Develop a Pneuma mode package in the Mode Maker workspace — manifest, viewer, skill, seeds, publishing. Pneuma Mode Maker is an agent skill from pandazki/pneuma-skills. Develop a Pneuma mode package in the Mode Maker workspace — manifest, viewer, skill, seeds, publishing.

When should I use Pneuma Mode Maker?

Pneuma Mode Maker fits situations like: ANY task in this workspace.

How do I install Pneuma Mode Maker in Claude Code?

Run `npx skills add pandazki/pneuma-skills --skill pneuma-mode-maker -a claude-code`. Or copy the skill folder (modes/mode-maker/skill in pandazki/pneuma-skills) into .claude/skills/pneuma-mode-maker in your project. Claude Code loads it when a task matches its description.

How do I install Pneuma Mode Maker in Codex?

Run `npx skills add pandazki/pneuma-skills --skill pneuma-mode-maker -a codex`. Or copy the skill folder (modes/mode-maker/skill in pandazki/pneuma-skills) into .agents/skills/pneuma-mode-maker in your project. Codex loads it when a task matches its description.

Can I use Pneuma Mode Maker 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 pandazki/pneuma-skills --skill pneuma-mode-maker -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/pneuma-mode-maker, .gemini/skills/pneuma-mode-maker, .github/skills/pneuma-mode-maker and .opencode/skills/pneuma-mode-maker in your project.

What does Pneuma Mode Maker need to run?

Going by SKILL.md and its folder, Pneuma Mode Maker needs the command-line tools its instructions call (bun, bunx and claude).

Does Pneuma Mode Maker access the network?

SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.

Is Pneuma Mode Maker safe to install?

Our automated static check of SKILL.md found notes only (mentions a .env file), nothing it rates as a warning. It is not a guarantee. Review the folder before installing.

What licence does Pneuma Mode Maker use?

Pneuma Mode Maker is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Pneuma Mode Maker use?

About 4k tokens (SKILL.md is roughly 16k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full. Its references folder adds about 5.6k tokens, read only when the agent opens those files.

What are the alternatives to Pneuma Mode Maker?

Skills that share tags, products or a category with Pneuma Mode Maker: Developing PDF Viewer (TriliumNext/Trilium, 38k stars), MCP Development (coollabsio/coolify, 63k stars), Game Development (sickn33/agentic-awesome-skills, 47k stars) and Twenty App Entity Development (twentyhq/twenty, 58k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Pneuma Mode Maker?

pandazki (a GitHub user) maintains it in pandazki/pneuma-skills, which has 161 GitHub stars. The repository holds 30 skills in this directory. The repository was last updated on October 9, 2026.

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