setup

An interactive setup wizard for Standup Ghost, a tool that prepares and shares daily work updates. It discovers account details, checks the configuration, makes an initial post, and sets up a Mac background schedule.

In plain words
What is it for?
Use it to connect the required services, confirm your identity and channels, test the first update, install the schedule, and verify that Standup Ghost is running.
Why use it?
It avoids entering account identifiers by hand and catches setup problems before the scheduled updates begin. Setup can resume from its saved progress if interrupted.

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/jerry7991/standup-ghost/setup
Any agent
npx skills add jerry7991/standup-ghost --skill setup
Clone the repo
git clone --depth 1 https://github.com/jerry7991/standup-ghost

Made for: Claude Code, Codex.

Per session 66 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 1,199 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.00066 $0.01199
Opus 5 $0.00033 $0.00600
Sonnet 5 $0.00013 $0.00240
Haiku 4.5 $0.00007 $0.00120

Measured 2d ago against content hash adbeb7b9f1be, method: parsed. Prices are Anthropic first-party input rates as of 2026-08-30, from the pricing page.

Security

Grade A, and why

setup 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 2d 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.

skills/setup/SKILL.md · 49 lines

How it starts

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

Standup Ghost — setup wizard

State machine in ~/.local/state/standup-ghost/setup-state.json: configured → verified-post → scheduled → live. Re-running RESUMES from the recorded state. Setup is complete ONLY at live.

1 — Config (state: configured) — DISCOVER FIRST, ask only what can't be discovered

The connected tools identify their own authenticated user — the user confirms values, they don't type IDs:

Field Discovery recipe
identity.email, display name seed from git config user.email / user.name; authoritative from Atlassian atlassianUserInfo
Jira site / cloudId getAccessibleAtlassianResources (JQLs use currentUser() — no Jira account ID is ever stored)
identity.github_login cli flavor: gh api user --jq .login; mcp flavor: queries can use author:@me (login stored for display only)
identity.slack_user_id slack_search_users with the discovered email → confirm by display name (needed for review-mode self-DM)
identity.handle default = Slack display name (it's the canvas idempotency key — offer override)
identity.timezone system date; confirm
canvas / channel IDs ask for the NAME ("#team-updates", "Stand-up canvas"), resolve via slack_search_channels / slack_search_public, echo the resolved name, write the ID

Then ask only the genuinely personal choices: schedule, which sources/sinks to enable, absence patterns + optional company-holiday calendar, behavior knobs (review_mode, notify_on_post, min-content). Write ~/.config/standup-ghost/config.json from config.example.json and echo the finished config back as a table (names, not raw IDs).

2 — Doctor pass + flavor resolution

Run the doctor (below) inline. Critically: PROBE which connector flavor exists per card (tools-local vs tools-claudeai candidates) and write the winner into config.flavors.<connector>. Zero live sources or zero live sinks ⇒ STOP with remediation; do not schedule.

3 — Dry-run + destination confirmation

/standup-ghost:standup dry-run with real data. Show the composed standup AND each resolved destination by NAME (channel name, canvas title — not raw IDs). User confirms. Rejection ⇒ back to step 1 (state stays configured; doctor reports "setup incomplete").

Read the full file on GitHub · 49 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. 2d ago First seen · 49 lines · 66 tokens per session scan A adbeb7b9f1be

Subscribe to this mod's changes

setup is a skill published in the GitHub repository jerry7991/standup-ghost (2 stars, last pushed 1mo ago), licensed MIT. It adds 66 tokens to every session and 1,199 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

model-compatibility

Model family compatibility matrix covering loaders, resolutions, samplers, CFG, VAE, ControlNet, and LoRA compatibility for SD 1.5, SDXL, Flux, SD3, and video models.

artokun/comfyui-mcp · 47 tokens

comfyui-node-registry

Authoring & publishing ComfyUI custom nodes to the Comfy Registry, covering node structure, pyproject.toml spec, comfy-cli publishing, and CI.

artokun/comfyui-mcp · 38 tokens

flux-txt2img

Build Flux txt2img workflows with Flux.1 Dev (SRPO), Flux 2 Klein 9B, Turbo LoRAs, FluxGuidance, and DualCLIPLoader patterns.

artokun/comfyui-mcp · 44 tokens

civitai

Discover Civitai models with the BUILT-IN downloadmodel action:"searchcivitai" and install/generate them locally. Find a checkpoint/LoRA/embedding on Civitai, download it into ComfyUI, and use its trigger words. Optionally pair the official Civitai MCP for community features (images browsing, posting, collections).

artokun/comfyui-mcp · 76 tokens

chief-strategy-officer

Owns where the business plays and how it wins over a multi-year horizon — portfolio choices, corporate development, strategic partnerships, and planning under uncertainty. Use this for a decision about which markets or businesses to be in, whether to build, buy, or partner, how to allocate capital across business…

cbrock84/headcount · 93 tokens

performance-analysis

Measurement approaches, profiling patterns, bottleneck identification, and optimization guidance. Use when diagnosing performance issues, establishing baselines, identifying bottlenecks, or planning for scale. Always measure before optimizing.

rsmdt/the-startup · 42 tokens