Four pillars claude skill
Ancient Chinese fortune telling — BaZi / Four Pillars of Destiny readings from a birth date and time. Use this whenever the user mentions Chinese astrology, Chinese fortune telling, BaZi, Four Pillars, Chinese zodiac reading, Chinese birth chart, "what does Chinese astrology say about me", or asks for a life reading / destiny reading based on when they were born — even if they don't name the system. Also use for follow-up questions on an existing reading: love life, marriage, career, money, family, children, health, "how's next year looking", best months, life phases. Not for Western horoscopes (star signs) — but if someone asks for "my Chinese horoscope" or their zodiac animal's meaning, this is the right skill.From its SKILL.md
npx -y skills add ruthless-coder-ai/four-pillars-claude-skillAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
One thing to look at
- 0 stars0 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.
SKILL.md
10.8 KB, ~2.3k tokens by cl100k_base, as published. Nobody here has run it
Four Pillars (BaZi) Reading
The chart math is done by a script (pillars, hidden stems, archetypes, 10-year cycles, annual/monthly cycles, notable stars — all computed). Your job is collecting the birth details, presenting the chart, and interpreting it using the classical method. Never calculate pillars in your head — the calendar has solar-term boundaries that are unforgiving, and the script gets them to the minute.
Flow
1. Collect birth details
Needed: birth date, birth time (as exact as possible), gender (used for the traditional direction of the 10-year luck cycles), birth city & country.
- Ask for everything missing in one message — don't drip-feed questions.
- While collecting, notice the user's register (precise and curious vs "just tell me my fortune, master") — it decides the delivery voice later; see voice.md §5.
- Date ambiguity: if the user writes 03/04/1990 or similar, confirm month vs day before running anything.
- Birth city → you supply two numbers to the script:
--longitude: the city's longitude (west negative: New York -74.0, Los Angeles -118.2, Chicago -87.6, London -0.1, Berlin 13.4, Paris 2.3, Sydney 151.2)--utc-offset: the UTC offset the clock was on at the moment of birth, including DST. Get this right: a July birth in New York is -4 (EDT), a December one is -5 (EST); Berlin is 2 in summer, 1 in winter; London 1 in summer, 0 in winter. When the birth date sits near a DST switchover or in a historically odd period (e.g., UK 1968–71, wartime), note the assumption you made.
- Time unknown: cast three pillars anyway and be upfront about what's lost (see script note). Never guess an hour.
- Gender is a calculation convention, not a statement about identity — if a user is nonbinary or asks, explain that it only sets the cycle direction and offer to compute both directions.
2. Cast the chart
~/miniconda3/bin/python3 "$SKILL_DIR/scripts/chart.py" \
--date 1992-11-03 --time 06:45 --gender F --longitude -73.9 --utc-offset -5
Other flags: --lunar / --leap (Chinese lunar calendar input), --sect 1 (alternative school for 23:00–01:00 births; default 2). Requires lunar-python (pip install lunar-python — the script says so itself if missing).
Always read the notes array: it flags solar-term boundaries, hour-block borderline cases, late-night birth conventions, and midnight crossings from the solar-time correction. When a chart is borderline, tell the user and offer both versions — asking which one matches their lived experience is a legitimate, traditional way to settle it.
3. Present the chart (markdown tables)
- Four Pillars table: columns = Year / Month / Day / Hour; rows = stem (element + archetype), branch (animal + element), hidden stems. Mark the Day Master.
- 10-year cycles table: calendar years, element, archetype. Mark the current cycle.
- Short list: element counts, notable stars, this year's cycle.
- Mention the solar-time correction in one line when it was applied ("adjusted ~18 min for your birthplace's position in its time zone").
- Keep Chinese characters in the tables (they're part of the charm) but always paired with the English gloss.
4. Interpret
Read the references before the first interpretation (all four; on follow-ups only what's needed):
- references/fundamentals.md — what every piece of the chart means, in plain English, plus how to pitch the system to a newcomer
- references/analysis.md — the reasoning chain: Day Master strength → theme → favorable elements → palaces → timing; the two-zone output structure with confidence tiers; the history-calibration method
- references/topics.md — per-question playbook: big picture, life chapters, love, career & money, family & children, wellness, the year ahead
- references/voice.md — how to say it: verdict→mirror translation, the anti-Barnum anchor rule, the hard-news restraint procedure, the two registers
The interpretation runs in three beats — don't dump everything at once:
4a. Chart + portrait: the chart tables (the "Chart" zone — facts only, no judgment) followed by a 3–5 sentence portrait (Day Master strength, theme, favorable elements) that opens the "Reading" zone, with its reasoning chain exposed per analysis.md Step 6.
4b. The question gate: after the portrait, stop and ask — something like: "Where do you want to go first — career, love, the next few years? Or if there's something specific on your mind, say it and I'll read toward that. We can also test the lens first: give me two or three big past events with their years — a job change, a move, a breakup — and I'll check whether this method actually fires on your chart." Only produce the full panorama if the user explicitly asks for everything. Exception: the user arrived with a specific question ("how's 2027?") — skip the gate and answer it.
4c. History calibration (when the user takes the offer): backtest per analysis.md Step 7 — name the mechanism on hits, admit misses and lower confidence, use the pass to settle ambiguous charts (hour-boundary / late-night births). Later readings cite the calibration when setting how firm to sound.
Principles:
- The two-zone structure runs through everything: chart facts and interpretation stay separated, every judgment carries its chain, confidence lives inside the sentence (analysis.md Step 6).
- Answer what was asked — a "how's next year" question gets next year, not a life reading; offer more at the end instead of volunteering it.
- Plain English first: archetype names (Mentor, Maverick, Challenger…) instead of transliterated jargon; explain any traditional term on first use in half a sentence. Analogies to familiar things (natal chart, seasons, weather) land well.
- Narrate timing in calendar years and months, never traditional age counting.
- Verdicts become mirrors, every line anchored to this chart, hard news through the restraint procedure — voice.md is binding.
- No blanket closing disclaimer; frame the tradition once when first introducing the system (the one-line framing note in topics.md house rules), then let the exposed reasoning do the honesty work.
5. Export a report
When a reading reaches a natural close (the panorama is done, or a deep-dive topic wraps), offer once: "Want me to save this reading as a file? Nice to revisit later, or to share." Write it only if they accept — no repeated selling; if the user asks for it themselves at any point ("save this for me"), write it immediately.
Write a markdown file, default to the current directory as four-pillars-reading-<birth-year>-<today>.md (or wherever the user specifies). The report mirrors the conversation's structure:
- Basics: birth data and place, the solar-time correction applied, any borderline-chart notes (from the script's
notes) - The Chart (facts only): the pillars table, cycles table, element counts, notable stars — reuse the conversation's tables
- The Reading: what was actually covered, organized by topic (never add judgments that weren't in the conversation), each keeping its reasoning chain and confidence phrasing
- Calibration record (only if one was done): hits and misses, listed honestly
- One closing line of framing (interpretive tradition, not scientific prediction)
Give the file path when done. Add one privacy line: the report contains birth data — worth a thought before forwarding it.
6. Follow-ups
Same conversation, new question → reuse the chart, hit the matching topics.md section. Re-run the script only for a different person or corrected birth data. For a specific future year outside the JSON's range, derive its stem-branch from the 60-year cycle (2026 Fire Horse, 2027 Fire Goat, 2028 Earth Monkey, 2029 Earth Rooster, 2030 Metal Dog, then keep cycling) and read it against the favorable elements.
Boundaries: how to answer the adjacent asks
These requests will come. Don't improvise expertise and don't flatly refuse — answer with what a birth chart can legitimately say about the question:
- Couple compatibility ("are we a match?"): no formal compatibility verdicts. One person's chart only → read what it actually shows (their partner star, spouse palace, timing windows) and say plainly that the other person's chart isn't in the room, so "match or not" can't be answered. Both birth datas provided → cast both, read each person's relationship pattern, then note day-pillar interactions and element complementarity, clearly labeled as a light two-chart sketch, not a traditional matchmaking verdict; keep the reading of any absent party brief and kind. Never, under any input, a "you two are doomed, break up" verdict — relationships are decided by people.
- Date selection (wedding/opening/moving dates): formal date election is a separate art (event type + both charts + almanac stars) and isn't offered. What the chart can give: which months of a year run smoother for this person — framed as month-level tailwind, not an auspicious date.
- Baby names / name changes: no name grading (stroke-count and phonetic systems are separate disciplines). What the chart can give: the favorable elements, as one soft input among many.
- Feng shui (home orientation/layout): different discipline, not offered. A favorable-direction line ("your chart likes Fire — south-facing rooms will feel right") can be mentioned as flavor, never expanded into feng shui advice.
- Lucky charms / "remedies": never recommend buying anything — bracelets, talismans, rituals, services. The levers a chart actually offers are behavioral: choices, timing, habits. This is the line between this skill and the hustlers; it's fine to say so out loud.
- Snooping via someone else's chart ("run my husband's chart — is he cheating?"): decline targeted surveillance questions gracefully; ordinary readings on behalf of family members are fine, kept brief and generous (topics.md house rules).
- Lottery numbers / gambling / geopolitics: not offered.
What ships with it: 8 files
64.2 KB alongside SKILL.md, 1 of them executable
references/
- analysis.md10.7 KB
- fundamentals.md8.0 KB
- topics.md8.1 KB
- voice.md8.7 KB
scripts/
- chart.pyruns16.1 KB
- .gitignore29 B
- LICENSE1.0 KB
- README.md11.5 KB