adding-skill-program

A guide for adding a new type of task to the PostHog wizard, such as revenue analytics, auditing, or error tracking. Each task installs a context-mill skill and then runs an agent with the resulting context.

In plain words
What is it for?
Use it when creating a wizard program with its own command, steps, skill, prompt, success message, abort cases, or follow-up actions.
Why use it?
It keeps new task types within the wizard's shared flow and avoids adding separate branches for each one. Common tasks can use a standard factory, while unusual ones can customize parts of the run.

Skill for Claude CodeCodex

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.

agentmods
npx agentmods add skills/posthog/wizard/adding-skill-program
Any agent
npx skills add PostHog/wizard --skill adding-skill-program
Clone the repo
git clone --depth 1 https://github.com/PostHog/wizard

Made for: Claude Code, Codex.

Per session 73 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 1,776 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. Scan, not verified.
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 $0.00073 $0.01776
Opus 5 $0.00036 $0.00888
Sonnet 5 $0.00015 $0.00355
Haiku 4.5 $0.00007 $0.00178

Measured yesterday against content hash 88b8e7557520, method: parsed. Prices are Anthropic first-party input rates as of 2026-08-30, from the pricing page.

Security

Grade A, and why

adding-skill-program 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 yesterday.

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.

.claude/skills/adding-skill-program/SKILL.md · 160 lines

How it starts

The opening of the file, as written. The whole thing — 160 lines — stays where its author put it; the contents beside it link to each section on GitHub.

Adding a Skill-Based Program

A skill-based program installs a context-mill skill and runs the agent against it. Examples in the codebase: the audit program (clean factory call), the revenue-analytics program (factory + custom intro screen + detect step).

Before reading this, read wizard-development/SKILL.md for the architectural context — particularly principle 4 ("New capability is a new program, not a new branch").

Architecture

The wizard's runner pipeline is fixed. What varies between programs is a ProgramRun configuration object that controls the skill ID, prompt, success message, abort cases, and post-run hooks. A ProgramConfig ties together: the CLI command, the step list, and the ProgramRun. The program registry derives all downstream wiring — CLI subcommands, TUI programs, the router — from a single array. Adding a program is configuration, not code.

The common case: createSkillProgram

For programs that just install a skill and let the agent run it (most programs), use the factory in agent-skill/index.ts:

// src/lib/programs/error-tracking/index.ts
import { createSkillProgram } from '../agent-skill/index.js';

export const errorTrackingConfig = createSkillProgram({
  skillId: 'error-tracking-setup',
  command: 'errors',
  flowKey: 'error-tracking',
  description: 'Set up PostHog error tracking',
  integrationLabel: 'error-tracking',
  successMessage: 'Error tracking configured!',
  reportFile: 'posthog-error-tracking-report.md',
  docsUrl: 'https://posthog.com/docs/error-tracking',
  spinnerMessage: 'Setting up error tracking...',
  estimatedDurationMinutes: 5,
  requires: ['posthog-integration'],  // optional: prior programs that must run first
});

Then register it in one place:

  1. src/lib/programs/program-registry.ts — add to PROGRAM_REGISTRY array

That's the entire program. bin.ts, the store, the agent runner, the router, and the screen sequences (src/ui/tui/screen-sequences.ts) all derive their wiring from the registry automatically. Don't add a yargs command. Don't add a runner function. Don't touch bin.ts. The ProgramId union type updates itself from the registry contents.

Read the full file on GitHub · 160 lines

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. yesterday First seen · 160 lines · 73 tokens per session scan A 88b8e7557520

Subscribe to this mod's changes

adding-skill-program is a skill published in the GitHub repository PostHog/wizard (190 stars, last pushed 2d ago), licensed MIT. It adds 73 tokens to every session and 1,776 once invoked, about $0.0004 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-30.

Related

Other skills, from other repositories

cep-wizard

Launch a local, localhost-only browser wizard with two journeys — layout onboarding for a project with ult-repo-layout installed, initialized or not — guides an uninitialized or not-yet-discovered repo through Run Discover, then shows resolved layer/slot state through four labeled boxes and a directory picker, and…

linkpranay-ai/context-engineering-protocol · 168 tokens

suanfish-design-system

算鱼设计系统(Suanfish)——多智能体界面设计系统。当用户要设计、制作、优化、重构或评审网页前端界面与交互体验时调用。常见说法包括:做个页面、做个登录页或注册页、搞个落地页或首屏、做个后台管理界面、加个弹窗或二次确认、做个多步表单或向导、画个图表或做数据看板/仪表盘、整个聊天或智能体对话界面、做个新手引导、加个动效动画、调个样式或配色、美化一下界面、优化交互体验、改改界面布局、做个空状态或图标、写界面文案、做响应式或移动端适配、做无障碍优化,以及需要多视角设计评审与辩证式批判体检时。由一支虚拟设计工作室的数十位专科匠人协作,保证品牌语言、设计令牌、动效、无障碍全程统一。技术栈以 React 与 Tailwind…

SuanFishXYY/suanfish-design-system · 293 tokens

find-your-level

Interactive quiz that maps your AI/ML knowledge to a starting point in the 523-lesson, 20-phase AI Engineering from Scratch curriculum. Trigger phrases: "where should I start", "find my level", "what do I know", "which phase", "assess my knowledge", "placement test", "skip ahead".

rohitg00/ai-engineering-from-scratch · 71 tokens

start-learning

One-time onboarding for the AI Engineering from Scratch curriculum (523 lessons, 20 phases). Interviews the learner, runs the placement quiz, and writes LEARNING.md, a persistent study plan the learn skill drives. Trigger phrases: "start learning", "set up the course", "begin the curriculum", "onboard me", "create my…

rohitg00/ai-engineering-from-scratch · 74 tokens

cudaq-guide

CUDA-Q onboarding guide for installation, test programs, GPU simulation, QPU hardware, and quantum applications.

NVIDIA/skills · 25 tokens

hr-onboarding

首周日程 + buddy + 学习路径 + 设备 + 完成标准.

nexu-io/html-anything · 21 tokens