Skip to content
cccskills
FreePublished on GitHub

anti-sleep

Keep the user's MacBook awake reliably with macOS caffeinate for a set duration or while a process runs. Use for "don't let my Mac sleep", "keep the screen on", "anti-sleep", "caffeinate", overnight work, or long builds. Unlike a normal background job, it survives temporary agent-shell cleanup.

The English summary is being prepared. Showing the original description.

karanmrn/karanagentskills3 stars(GitHub 3 + cccskills 0)

Run score Not tested

See how to install

Files included (2)

  • SKILL.md2.7 KB
  • scripts/anti-sleep.sh7.6 KB

SKILL.md (original)

Review the instructions the agent will receive before you install.

Anti-Sleep (macOS caffeinate)

Use the bundled launcher from this skill directory. It creates a one-shot user LaunchAgent using only built-in macOS tools.

Required workflow

Never launch caffeinate with raw &, nohup, disown, or launchctl submit. Temporary execution shells can kill their descendants, and launchctl submit can restart a timed job.

Resolve scripts/anti-sleep.sh relative to this SKILL.md; never assume the user's current directory. Run:

  1. Inspect current state:
scripts/anti-sleep.sh status
  1. If status reports an active session and the user requested a new duration, automatically stop the old session. Never ask for confirmation.
scripts/anti-sleep.sh stop
  1. Start the new timer for the requested duration:
scripts/anti-sleep.sh start 10800    # 3 hours

For a specific process, use start-pid. Apply the same automatic replacement rule if another session is active.

scripts/anti-sleep.sh start-pid <PID>
  1. In a separate tool/shell call after the start command has returned, verify:
scripts/anti-sleep.sh verify

Only report success when verification returns STATUS=running and ASSERTIONS=active. Confirm the PID, flags, and wall-clock expiry. If verification fails, run stop and do not claim the Mac is protected.

Assertion flags

The default is -d -i: keep the display on and prevent idle system sleep. Pass explicit flags after the duration or PID when needed:

FlagsEffect
-iPrevent idle system sleep; display may dim
-dPrevent display sleep
-d -i -sAlso prevent system sleep while on AC power

Example:

scripts/anti-sleep.sh start 10800 -i

Status and stop

scripts/anti-sleep.sh status
scripts/anti-sleep.sh stop

The launcher tracks one exact LaunchAgent label, PID, start time, and expiry under ~/Library/Caches. It never uses broad pkill.

Fallback

If launchctl bootstrap fails, use a visible persistent terminal or cmux pane. Read the cmux skill before interacting with cmux. If no persistent surface is available, tell the user instead of starting an unreliable background job.

caffeinate cannot keep the keyboard backlight on. That setting is manual: System Settings → Keyboard → “Turn keyboard backlight off after inactivity” → Never.

Reviews

No reviews yet. Tell others what you thought.

Comments

No login needed. Share how it worked for you, ask a question, or note where it did not run.

No comments yet. Be the first to write one.

Comments are published right away. Do not include personal information such as email addresses or phone numbers. Up to 2 URLs.

0 / 1,000 characters

This form is protected by reCAPTCHA, and the Google Privacy Policy and Terms of Service apply.

More skills from this repository

Automate 21risk tasks via Rube MCP (Composio). Always search tools first for current schemas.

The English summary is being prepared. Showing the original description.

karanmrn/karanagentskills3Updated Aug 28, 2026

Automate 2chat tasks via Rube MCP (Composio). Always search tools first for current schemas.

The English summary is being prepared. Showing the original description.

karanmrn/karanagentskills3Updated Aug 28, 2026

Set up and use 1Password CLI for sign-in, desktop integration, and reading or injecting secrets.

The English summary is being prepared. Showing the original description.

karanmrn/karanagentskills3Updated Aug 28, 2026

Build integrated IS/BS/CF financial workbooks in Excel.

The English summary is being prepared. Showing the original description.

karanmrn/karanagentskills3Updated Aug 28, 2026

Entry point for 9Router — local/remote AI gateway with OpenAI-compatible REST for chat, image, TTS, embeddings, web search, web fetch. Use when the user mentions 9Router, NINEROUTER_URL, or wants AI without writing provider boilerplate. This skill covers setup + indexes capability skills; fetch the relevant capability SKILL.md from the URLs below when needed.

The English summary is being prepared. Showing the original description.

karanmrn/karanagentskills3Updated Aug 28, 2026

Chat / code generation via 9Router using OpenAI /v1/chat/completions or Anthropic /v1/messages format with streaming + auto-fallback combos. Use when the user wants to ask an LLM, generate code, summarize text, or run prompts through 9Router.

The English summary is being prepared. Showing the original description.

karanmrn/karanagentskills3Updated Aug 28, 2026

See all skills by karanmrn

Report a problem with this skill