agentleFS
MasonFlint44MasonFlint44/claude-spend-statusline/skills/calendar/SKILL.md

calendar

Skill0 starsChanged 2 months agoMITView on GitHub

View or edit the spend statusline's calendar — the work week, holidays, PTO and closures that the daily allowance is spread over. Use when the user wants to add time off ("I'm off next week", "add PTO"), change which days they work ("we work Sunday to Thursday", "I have Fridays off"), add or remove a holiday, change how holidays on non-workdays are observed, or see the calendar ("show my spend calendar", "how many workdays are left this month").

32 other projects use a version of this.

Adopted by

Most recently taken up by

Used with

Projects with it also use contacts, reminders and 10 more.

Other files people use alongside this one.

Files found in the same public projects as a version of this one, more often than they turn up anywhere else. Each project counts once, large collections count for less, and this file's own repository is left out.
  • seahycSkill

    contacts

    Look up employee information via Lark - find colleagues by ID, list department members, search users by name, search departments. Use when user asks about a person, colleague, job title, department, or org structure.

    Also in 3 projects that use this

  • MicrosoftSkill

    reminders

    Use when an employee asks something like \"Is there anything else I should know about my benefits or time off before the end of the year\"

    Also in 4 projects that use this

  • OpenAISkill

    email

    Email sending integration guidance — Resend (native Vercel Marketplace) with React Email templates. Covers API setup, transactional emails, domain verification, and template patterns. Use when sending emails from a Vercel-deployed application.

    Also in 6 projects that use this

  • QuixiAISkill

    trello

    List Trello boards, lists, and cards and create or update cards with explicit approval

    Also in 3 projects that use this

  • AnthropicSkill

    access

    Manage Discord channel access — approve pairings, edit allowlists, set DM/group policy. Use when the user asks to pair, approve someone, check who's allowed, or change policy for the Discord channel.

    Also in 3 projects that use this

  • claude-office-skillsSkill

    meeting-notes

    >

    Also in 3 projects that use this

The file

We split this skill into the rules it gives an agent

6 rules. 0 are common, 3 are distinctive, and 3 are very specific to this project.

  • 0

    Common

    Most of the 25 edited versions we read keep these.

  • 3

    Distinctive

    This author's own choices. Worth a look.

  • 3

    Very specific

    Tied to their project's names, files or tools. Probably skip.

  • Common
  • Distinctive
  • Very specific
  1. Very specific:

    Show the current state: Run the listing, with any inline knobs from the statusLine command in front, and show the user its output:

    line 31
  2. Very specific:

    When the work week changes, check the observe line with the user: nearest adapts automatically, but explicit DOW=MODE overrides may now …

    line 46
  3. Very specific:

    Do not edit the plugin's copy of calendar.conf or the script itself.

    line 56
  4. Distinctive:

    Do not write without showing the exact lines first (unless told not to ask).

    line 57
  5. Distinctive:

    Do not invent holidays the user did not ask for, and do not rewrite lines that are not part of the request.

    line 58
  6. Distinctive:

    Do not skip the verification listing.

    line 59

“Common” is measured: kept by at least 6 in 10 of the 25 edited versions of this file we could read. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.

Keep what fits and drop the rest. Your version, ready for your agents.
Files
SKILL.md

Edit the spend calendar

The statusline spreads the month's remaining budget over the remaining workdays, and calendar.conf defines what a workday is. This skill translates what the user wants into the file's grammar, edits the installed copy, and shows the resulting calendar so mistakes are visible immediately.

Where the file is

Read statusLine.command in $CFG/settings.json (CFG="${CLAUDE_CONFIG_DIR:-$HOME/.claude}"). It names the installed script, normally written as "${CLAUDE_CONFIG_DIR:-$HOME/.claude}/statusline/spend-statusline.sh" (shell text that resolves to $CFG/statusline/spend-statusline.sh; older installs spell out an absolute path), and may carry inline knobs such as CLAUDE_SPEND_CALENDAR=... or CLAUDE_SPEND_TZ=... before it, and names the interpreter (bash; older macOS installs name an absolute path such as /opt/homebrew/bin/bash). Run the listing with exactly those knobs, that interpreter and that script path, and it prints calendar: <path> on its first line: that path is the file to edit. Without an override it is $CFG/statusline/config/calendar.conf. Do not edit the plugin's own statusline/config/calendar.conf: it is the shipped default and is replaced on every plugin update. If the listing reports no file or the script is not installed, say so and point the user at /spend-statusline:install.

The grammar

One entry per line, # starts a comment, names run to the end of the line:

LineMeaning
workdays DAYSthe days the user works: a wrapping range (mon-fri, sun-thu), a list (mon,tue,wed,thu), a mix (mon-wed,fri) or all. Default mon-fri. Last line wins
observe MODE [DOW=MODE ...]how a yearly holiday on a non-workday is observed: nearest (nearest workday, ties forward; the default), next, prev, none. DOW=MODE overrides one day. Substitutes skip days already yearly holidays, not once days
fixed MM-DD nameyearly holiday on a fixed date
nth N DOW MM nameNth weekday of a month (nth 4 thu 11 Thanksgiving Day)
last DOW MM namelast weekday of a month
once YYYY-MM-DD[..YYYY-MM-DD] namea one-off date or inclusive range. Never shifted; one on a non-workday has no effect

Yearly rules follow the observe policy. once lines are literal, so a PTO range may include a weekend without side effects.

Steps

  1. Show the current state. Run the listing, with any inline knobs from the statusLine command in front, and show the user its output:
    [KNOBS] [BASH] "$CFG/statusline/spend-statusline.sh" --calendar
    It prints the calendar path, the work week, the observe policy, this year's holidays with their observed dates, warnings for lines that don't parse, and this month's total and remaining workday counts. Pass a year (--calendar 2027) to check another year. For a pure "show me" request, stop here.
  2. Translate the request into exact lines. Resolve relative dates against today's date on the spend clock (CLAUDE_SPEND_TZ if set, else local). Typical translations:

    • "I'm off the 14th through the 18th" → once 2026-09-14..2026-09-18 PTO
    • "Company closed Dec 24" → once 2026-12-24 Office closed
    • "I don't work Fridays" → workdays mon-thu
    • "We work Sunday to Thursday" → workdays sun-thu
    • "Add Boxing Day" → fixed 12-26 Boxing Day
    • "UK rules for weekend holidays" → observe next
    • Removing a holiday → delete its line (or comment it out with # if the user may want it back).

    When the work week changes, check the observe line with the user: nearest adapts automatically, but explicit DOW=MODE overrides may now name workdays (the listing warns) or be missing for the new off days.

  3. Confirm before writing. Show the exact lines to add, change or remove, and where in the file. Write only after the user agrees, unless the user has already said not to ask. Append once lines at the end of the file; keep workdays and observe near the top where the shipped file has them.
  4. Verify. Rerun the listing from step 1 and show the output. Every warning must be either resolved or explained; a new entry must appear on the expected date with the expected tag. If something is wrong, fix the line and rerun.
  5. Report what changed in one or two sentences. The bar reads the calendar on its next successful usage refresh (every CLAUDE_SPEND_REFRESH seconds, default 60, and only when the fetch succeeds), no restart needed.

Do not

  • Do not edit the plugin's copy of calendar.conf or the script itself. Edit the path the listing prints.
  • Do not write without showing the exact lines first (unless told not to ask).
  • Do not invent holidays the user did not ask for, and do not rewrite lines that are not part of the request.
  • Do not skip the verification listing.

Download now (ZIP)

Does it work?

Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.

No reviews yet

People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.

  • It worked
  • Partly
  • It didn't
What did you use it for? e.g. Reviewing pull requests in a Rails app

Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.

Your trail

Files you open will collect here, so you can find them again.

Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.

Now do this for your own.

Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.